FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: der_da am 25 Januar 2016, 09:06:51

Titel: DOIF Bedingung falsch formuliert
Beitrag von: der_da am 25 Januar 2016, 09:06:51
Hallo,

ich habe ein DOIF
([[6:30]|8] < [{twilight("T","sr","6:31","8:29")}] ) (set Licht on)

Das soll eigentlich folgendes tun:
Werktags um 6:30 Uhr soll das Licht eingeschaltet werden, aber nur, solange der Sonnenaufgang NACH 6:30 erfolgt. Offensichtlich habe ich diese Bedingung aber falsch formuliert, denn um 6:30 passierte nichts. Stattdessen ging 7:59 das Licht an (Sonnenaufgang). Wie müsste ich die Bedingung formulieren? Ich hatte gehofft, mit den Twilight-Parametern dafür zu sorgen, dass Sonnenaufgang frühestens 6:31 Uhr und spätestens 8:29 Uhr gemeldet wird, die Bedingung "6:30" < "Sonnenaufgang" also immer wahr bliebe.



Titel: Antw:DOIF Bedingung falsch formuliert
Beitrag von: Ellert am 25 Januar 2016, 09:28:16
Probier es mal so:[?06:30-08:00|8] and [{twilight ...}]

? verhindert dass die Zeitspanne triggert
Zitat[[6:30]|8]
die doppelten Klammern gelten für indirekte Zeitangaben
Titel: Antw:DOIF Bedingung falsch formuliert
Beitrag von: der_da am 25 Januar 2016, 11:07:58
Zitat von: Ellert am 25 Januar 2016, 09:28:16
Probier es mal so:[?06:30-08:00|8] and [{twilight ...}]
? verhindert dass die Zeitspanne triggertdie doppelten Klammern gelten für indirekte Zeitangaben
Danke, aber führt denn das zum gewünschten Effekt?  :o Ich verstehe das so, dass nun zwischen 6:30 und 8:00 Uhr zum Zeitpunkt des Sonnenaufgangs geschaltet wird.

Ich möchte aber fix um 6:30 schalten, aber nur, wenn der Sonnenaufgang nicht schon vorbei ist.
Titel: Antw:DOIF Bedingung falsch formuliert
Beitrag von: moonsorrox am 25 Januar 2016, 13:28:08
nur, wenn dein Twilight auch da ist mit den gewünschten Einstellungen..!
Titel: Antw:DOIF Bedingung falsch formuliert
Beitrag von: Ellert am 25 Januar 2016, 13:32:22
ZitatDanke, aber führt denn das zum gewünschten Effekt?  :o Ich verstehe das so, dass nun zwischen 6:30 und 8:00 Uhr zum Zeitpunkt des Sonnenaufgangs geschaltet wird.
Da liegst Du richtig.
Dann mach es so, wie Du es vor hattest, beachte die eckigen Klammern und die richtige Zeitschreibweise.
Titel: Antw:DOIF Bedingung falsch formuliert
Beitrag von: l2r am 25 Januar 2016, 13:53:46
define test DOIF ([?{sunrise()}] > 6:30 and [6:30|8]) (set Licht on)
attr test do always


so würde ich das lösen...
Titel: Antw:DOIF Bedingung falsch formuliert
Beitrag von: der_da am 25 Januar 2016, 16:45:37
Zitat von: l2r am 25 Januar 2016, 13:53:46
define test DOIF ([?{sunrise()}] > 6:30 and [6:30|8]) (set Licht on)
attr test do always


so würde ich das lösen...
Danke! Ich werde das testen und berichten. Falls es funktioniert muss ich mein "Licht aus"-DOIF noch anpassen, da das derzeit nicht exakt zum sunrise wieder abschaltet.