Hauptmenü

DOIF zum Lüften

Begonnen von WolfgangV, 28 Juli 2018, 23:01:38

Vorheriges Thema - Nächstes Thema

WolfgangV

Hallo,

kann mir mal jemand bei meinem DOIF zum Lüften auf die Sprünge helfen?
Ich kann mir nicht erklären, warum es überhaupt nicht triggert!

(
[Sommerzeit_Winterzeit:summer]
   and
   ([06:00]-[12:00])
       and
       ({([WS1600:temperature]-1)} <= [Wohnzimmer_links_Clima:measured-temp])
)
      (set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Die Fenster sollten jetzt geschlossen werden)
DOELSEIF
(
[Sommerzeit_Winterzeit:summer]
   and
   ([06:00]-[12:00])
       and
          {([WS1600:temperature]-1)} <= [Wohnzimmer_links_Clima:measured-temp]
)
      (set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Jetzt kann gelüftet werden)
/code]

Danke im Voraus



Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL

moskito

Hallo Wolfgang,

ich sehe zwei mal die selben Bedingungen. Ich glaube das passt so nicht.
Auch solltest du nach dem DOELSEIF noch mal die Klammern überprüfen.

Verschwitzte Grüße
Danny
FHEM auf Intel NUC/Proxmox & Debian 12 + HM-CFG-USB + zigbee2mqtt + Zwave + Enocean

WolfgangV

Hallo verschwitzter Danny  :),

Danke für die Antwort.
Da ist mir beim Hin- und Herkopieren der Fehler mit der Uhrzeit unterlaufen.
Aber Auch mit der korrekten Uhrzeit (16:00-23:00) funktioniert es leider nicht.

Was meinst du mit der Klammer?


Gruß


Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL

moskito

Du hast in der ersten Bedingung:
({([WS1600:temperature]-1)} <= [Wohnzimmer_links_Clima:measured-temp])
und
{([WS1600:temperature]-1)} <= [Wohnzimmer_links_Clima:measured-temp]
in der Zweiten.
Wenn nur die Uhrzeit unterschiedlich ist, dann sollte der Rest gleich sein. :)
Gibt es denn Einträge im Logfile?
FHEM auf Intel NUC/Proxmox & Debian 12 + HM-CFG-USB + zigbee2mqtt + Zwave + Enocean

WolfgangV

Hallo,

ob mit oder ohne Klammer, irgendwie scheinen die beiden Temperaturwerte nicht vergleichbar zu sein, warum auch immer. Auch wenn ich das ganze reduziere auf

([Wohnzimmer_links_Clima:measured-temp] > [WS1600:temperature] ))
      (set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Die Fenster sollten jetzt geschlossen werden)/code]

oder [code]([Wohnzimmer_links_Clima:measured-temp] < [WS1600:temperature] ))
      (set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Die Fenster sollten jetzt geschlossen werden)/code]

erfolgt keine Auslösung.

mit ratlosen Grüßen


Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL

Otto123

Moin Wolfgang,

wenn Du ein list vom DOIF postest sieht man mehr und kann manchmal die Ursache erkennen.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

WolfgangV

Biddeschöön:

Internals:
   DEF        (
[Sommerzeit_Winterzeit:summer]
   and
   ([07:00]-[12:00])
       and
          {([WS1600:temperature]+1)} >= [Wohnzimmer_links_Clima:measured-temp]
)
      (set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Die Fenster sollten jetzt geschlossen werden)
DOELSEIF
(
[Sommerzeit_Winterzeit:summer]
   and
   ([16:00]-[24:00])
       and
          {([WS1600:temperature]-1)} <= [Wohnzimmer_links_Clima:measured-temp]
)
      (set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Jetzt kann gelüftet werden)
   MODEL      FHEM
   NAME       Temperaturgleichstand
   NR         1028
   NTFY_ORDER 50-Temperaturgleichstand
   STATE      initialized
   TYPE       DOIF
   READINGS:
     2018-07-29 10:22:05   Device          Wohnzimmer_links_Clima
     2018-07-29 10:21:07   cmd             0
     2018-07-29 10:21:42   e_WS1600_temperature 22.3
     2018-07-29 10:22:05   e_Wohnzimmer_links_Clima_measured-temp 23.6
     2018-07-29 10:21:07   mode            enabled
     2018-07-29 10:21:07   state           initialized
     2018-07-29 10:21:07   timer_01_c01    30.07.2018 07:00:00
     2018-07-29 10:21:07   timer_02_c01    29.07.2018 12:00:00
     2018-07-29 10:21:07   timer_03_c02    29.07.2018 16:00:00
     2018-07-29 10:21:07   timer_04_c02    30.07.2018 00:00:00
   Regex:
   attr:
     cmdState:
   condition:
     0           ReadingValDoIf($hash,'Sommerzeit_Winterzeit','summer')    and    (DOIF_time_once($hash,0,$wday)-DOIF_time_once($hash,1,$wday))        and            {(ReadingValDoIf($hash,'WS1600','temperature')+1)} >= ReadingValDoIf($hash,'Wohnzimmer_links_Clima','measured-temp')
     1           ReadingValDoIf($hash,'Sommerzeit_Winterzeit','summer')    and    (DOIF_time_once($hash,2,$wday)-DOIF_time_once($hash,3,$wday))        and            {(ReadingValDoIf($hash,'WS1600','temperature')-1)} <= ReadingValDoIf($hash,'Wohnzimmer_links_Clima','measured-temp')
   days:
   devices:
     0           Sommerzeit_Winterzeit WS1600 Wohnzimmer_links_Clima
     1           Sommerzeit_Winterzeit WS1600 Wohnzimmer_links_Clima
     all         Sommerzeit_Winterzeit WS1600 Wohnzimmer_links_Clima
   do:
     0:
       0          set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Die Fenster sollten jetzt geschlossen werden
     1:
       0          set Sonos_Kueche Speak 30 Die Temperaturen außen und innen sind fast gleich. Jetzt kann gelüftet werden
     2:
   helper:
     event      ValvePosition: 0,boostTime: -,controlMode: manual,desired-temp: off,measured-temp: 23.6,partyEnd: -,partyStart: -,partyTemp: -,T: 23.6 desired: off valve: 0
     globalinit 1
     last_timer 4
     sleeptimer -1
     triggerDev Wohnzimmer_links_Clima
     triggerEvents:
       ValvePosition: 0
       boostTime: -
       controlMode: manual
       desired-temp: off
       measured-temp: 23.6
       partyEnd: -
       partyStart: -
       partyTemp: -
       T: 23.6 desired: off valve: 0
     triggerEventsState:
       ValvePosition: 0
       boostTime: -
       controlMode: manual
       desired-temp: off
       measured-temp: 23.6
       partyEnd: -
       partyStart: -
       partyTemp: -
       state: T: 23.6 desired: off valve: 0
   internals:
   intervalfunc:
   itimer:
   localtime:
     0          1532926800
     1          1532858400
     2          1532872800
     3          1532901600
   readings:
     0           Sommerzeit_Winterzeit:summer WS1600:temperature Wohnzimmer_links_Clima:measured-temp
     1           Sommerzeit_Winterzeit:summer WS1600:temperature Wohnzimmer_links_Clima:measured-temp
     all         Sommerzeit_Winterzeit:summer WS1600:temperature Wohnzimmer_links_Clima:measured-temp
   realtime:
     0          07:00:00
     1          12:00:00
     2          16:00:00
     3          00:00:00
   time:
     0          07:00:00
     1          12:00:00
     2          16:00:00
     3          24:00:00
   timeCond:
     0          0
     1          0
     2          1
     3          1
   timer:
     0          0
     1          0
     2          0
     3          0
   timers:
     0           0  1
     1           2  3
   trigger:
   triggertime:
     1532858400:
       localtime  1532858400
       hash:
     1532872800:
       localtime  1532872800
       hash:
     1532901600:
       localtime  1532901600
       hash:
     1532926800:
       localtime  1532926800
       hash:
   uiState:
   uiTable:
Attributes:
   do         always
   group      Umwelt
   room       Wetter/code]

Gruß


Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL

Damian

Das hatte wir doch erst vor Kurzem:

{([WS1600:temperature]+1)}

ist nicht korrekt.

Die Bedingung im DOIF ist im Gegensatz zum Ausführungsteil, weitgehend Perl und nicht FHEM, daher werden hier keine geschweiften Klammern verwendet.

([WS1600:temperature]+1)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

WolfgangV

Hallo,

auch ohne geschweifte Klammern löst das DOIF nicht aus.
Ich hatte es vorher schon mal ohne. Die Klammern waren ein anscheinend misslungener Korrekturversuch.

Gruß


Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL

Per

Zeiten werden doch nicht
([06:00]-[12:00])
geschrieben, sondern
[06:00-12:00]

WolfgangV

Hallo Per,

danke fürs Beseitigen der Tomaten auf den Augen!
Da habe ichs dank deiner Hilfe ja gerade noch rechtzeitig vor dem hoffentlichen Ende der Hitzewelle geschafft!!!


Gruß


Wolfgang
Raspi5  HmUART, Jeelink, VU+Duo2, Viera, Sonos, HM-CC-RT-DN,     
HM-WDS30-OT2-SM, HM-LC-Dim1TPBU-FM,    
Jeelink, TUL