FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Kai-Alfonso am 20 Juli 2017, 15:48:31

Titel: Zeitinterval mit Twilight (Sunrise und Sunset)
Beitrag von: Kai-Alfonso am 20 Juli 2017, 15:48:31
Hallo,

ich benutzte das Twilight Module um Sunset und Sunrise berechnen.  In meinem DOIF ist ein IF, welches nur in der Zeit zwischen sr_indoor und ss_civil ausführen soll. Ausführen tut er das IF aber immer. Wo habe ich einen Denkfehler oder gehen Zeitintervalle mit Readings nicht? Dann die Frage, wie ich es anders lösen kann.

Vielen Dank schon einmal 

Zitat([?$SELF:mybutton] eq "Automatik" and
[rr_Kai:state] eq "home" )
(setreading doif.beschattung_automatik mybutton An,
setreading doif.rollladen_automatik mybutton An,
   IF ([Twilight:sr_indoor]-[Twilight:ss_civil])
   (set dummy.rollladen Automatik_Rollladen_hoch)
Titel: Antw:Zeitinterval mit Twilight (Sunrise und Sunset)
Beitrag von: amenomade am 20 Juli 2017, 16:03:58
([Twilight:sr_indoor]-[Twilight:ss_civil]) ist immer wahr, solange sr_indoor und ss_civil nicht gleich sind (Egebnis der Substraktion = 0).... was eigentlich ganz selten passiert.

Deswegen wirdIF ([Twilight:sr_indoor]-[Twilight:ss_civil])
immer ausgeführt.
Titel: Antw:Zeitinterval mit Twilight (Sunrise und Sunset)
Beitrag von: Otto123 am 20 Juli 2017, 16:12:20
IF kann keine Zeitintervalle abfragen, DOIF könnte Zeitintervalle verarbeiten, dann aber meiner Meinung nach so
([[Twilight:sr_indoor]-[Twilight:ss_civil]])

https://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung

Gruß Otto
Titel: Antw:Zeitinterval mit Twilight (Sunrise und Sunset)
Beitrag von: Kai-Alfonso am 20 Juli 2017, 16:53:33
Zitat von: Otto123 am 20 Juli 2017, 16:12:20
IF kann keine Zeitintervalle abfragen, DOIF könnte Zeitintervalle verarbeiten, dann aber meiner Meinung nach so
([[Twilight:sr_indoor]-[Twilight:ss_civil]])

https://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung

Gruß Otto

Danke, hab das DOIF ein wenig umgestrickt und das in ein eigenes DOIFELSE gepackt - funktioniert anscheinend :-)
Titel: Antw:Zeitinterval mit Twilight (Sunrise und Sunset)
Beitrag von: Otto123 am 20 Juli 2017, 17:17:20
 ;)
Ich muss mal meine Aussage präzisieren: klar könnte man z.B. { FmtTime(time()) } abfragen  (https://forum.fhem.de/index.php?topic=11348.0) und zwei Zeitgrenzen einen Vergleich bauen. Aber eben einfach so IF (Zeitintervall) geht meines Wissens nicht.