Schalten zu unterschiedlichen Uhrzeiten bei unterschiedlichen Bedingungen

Begonnen von m8ichael, 25 Oktober 2016, 18:56:14

Vorheriges Thema - Nächstes Thema

m8ichael

Hallo Gemeinde,

in Abhängigkeit zu verschiedenen Bedingungen soll ein Aktor zu unterschiedlichen Zeiten ein-, aber zu einer festen Zeit ausgeschaltet werden. Ich habe das folgende DOIF entworfen:


([06:45-{sunrise_abs("REAL")}] and ArbeitstagBewohner("Bewohner1",$we,1) and ArbeitstagBewohner("Bewohner2",$we,1) and sunrise_abs("REAL") gt "06:45:00") ((set eg.fl.Eingang.Licht,eg.ku.Hauptbeleuchtung,eg.fl.Licht on))
DOELSEIF
([06:51-{sunrise_abs("REAL")}] and !ArbeitstagBewohner("Bewohner1",$we,0) and ArbeitstagBewohner("Bewohner2",$we,0) and sunrise_abs("REAL") gt "06:51:00") ((set eg.fl.Eingang.Licht,eg.ku.Hauptbeleuchtung on))
DOELSEIF
([06:39-{sunrise_abs("REAL")}] and ArbeitstagBewohner("Bewohner1",$we,0) and !ArbeitstagBewohner("Bewohner2",$we,0) and sunrise_abs("REAL") gt "06:39:00") ((set eg.fl.Eingang.Licht on))
DOELSE
((set eg.fl.Eingang.Licht,eg.fl.Licht,eg.ku.Hauptbeleuchtung off))


Die Funktion "ArbeitstagBewohner" habe ich in meiner myUtils definiert - diese liefert je nach Eingangsparameter 0 oder 1 zurück. Leider klappt das DOIF so noch nicht. Wo liegt mein Denkfehler?

Viele Grüße

Michael

Ellert

Was genau meinst Du mit "noch nicht so klappen"? Was "klappt" denn schon?

m8ichael

Hallo,

aktuell sind beide Bewohner anwesend. Dies führt dazu, dass das DOIF um 6:39 alles ausschaltet, um 6:45 dann alles an und um 6:51 wieder alles aus.  >:(

Viele Grüße

Michael

Ellert

ZitatWo liegt mein Denkfehler?
DOIF prüft um  6:39, 6:45, 6:51 und {sunrise_abs("REAL")} die betreffende Bedingung, falls sie unwahr ist, tritt der DOELSE-Fall ein.

Du könntest statt DOELSE DOELSEIF verwenden und die Ausschaltbedingung nach Deinen Erfordernissen spezifizieren.

m8ichael

Alles klar. Ich habe nun die einzelnen DOELSEIFs im oberen Teil zusammengefasst

((a und b) oder (c und b)) DOELSE ...

und nun funzt es. Danke!