FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: WolfgangV am 28 Juli 2018, 23:01:38

Titel: DOIF zum Lüften
Beitrag von: WolfgangV am 28 Juli 2018, 23:01:38
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
Titel: Antw:DOIF zum Lüften
Beitrag von: moskito am 28 Juli 2018, 23:53:33
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
Titel: Antw:DOIF zum Lüften
Beitrag von: WolfgangV am 29 Juli 2018, 00:12:55
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
Titel: Antw:DOIF zum Lüften
Beitrag von: moskito am 29 Juli 2018, 00:37:46
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?
Titel: Antw:DOIF zum Lüften
Beitrag von: WolfgangV am 29 Juli 2018, 09:52:29
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
Titel: Antw:DOIF zum Lüften
Beitrag von: Otto123 am 29 Juli 2018, 10:09:23
Moin Wolfgang,

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

Gruß Otto
Titel: Antw:DOIF zum Lüften
Beitrag von: WolfgangV am 29 Juli 2018, 10:24:05
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
Titel: Antw:DOIF zum Lüften
Beitrag von: Damian am 29 Juli 2018, 11:59:10
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)
Titel: Antw:DOIF zum Lüften
Beitrag von: WolfgangV am 29 Juli 2018, 14:10:25
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
Titel: Antw:DOIF zum Lüften
Beitrag von: Per am 06 August 2018, 14:22:07
Zeiten werden doch nicht
([06:00]-[12:00])
geschrieben, sondern
[06:00-12:00]
Titel: Antw:DOIF zum Lüften
Beitrag von: WolfgangV am 07 August 2018, 12:22:32
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