Hauptmenü

DoIf reagiert nicht wie erwartet

Begonnen von Heatseeker, 07 August 2024, 06:51:41

Vorheriges Thema - Nächstes Thema

Heatseeker

Wenn ich xxx ebenfalls in vmd4 als Bedingung mit aufführen sodass diese immer true ist, funktioniert es aber nicht wenn ich es nicht als Bedingung betrachte...
Für mich nicht wirklich ein logisches Verhalten... :-X

tobi01001

Deinen Ausführungen zufolge vermute ich, dass du xxx:yyy gar nicht als Trigger benötigst, sondern zum gegebenen Zeitpunkt in Abhängigkeit des dummy [AussenlichtSteuerung:state] das Licht einschalten möchtest.

Dann kannst du den trigger mit
[?Yyy:xxx] > 400 unterdrücken. Damit wird beim Eintreten der verbleibenden Ereigniss yyy:xxx nur geprüft abr nicht auf Events von yyy:xxx reagiert.

Was  du eigentlich erreichen möchtest im Automatikbetrieb:
  • Wenn genug Reserve da ist, ist Licht an von Sonnenuntergang bis Sonnenaufgang (frühestens ab 16:31, spätestens ab 22:20 bis frühestens 06:21 und spätestens 08:00).
  • Wenn zu wenig Reserve da ist oder die Aussenlichtseuerung inaktiv, ist Licht aus zwischen 22:30 und 06:20 aus.
  • zwischen Sonnenaufgang und Sonnenuntergasng ist das Licht aus

Zwischen 22:20 und 22:30 ist das Licht übrigens immer an. Ebenso zwischen 06:20 und 06:21... Soll das so?

Das lässt sich mit umgekehrter Logik wohl einfacher erreichen:

([{sunrise("CIVIL",1800,"06:21","08:00")}-{sunset("CIVIL",-1500,"16:31","22:20")}] or (([AussenlichtSteuerung:state] eq "off" or [Yyy:xxx] <= 400) and [22:30-06:20]))
(set Licht off)
DOELSE
(set Licht on)

Zwischen Sonnenaufgang und Untergang ist das Licht auf jeden Fall aus. Nachts ist das Licht aus wenn entweder die Automatiksteuerung aus ist oder yyy:xxx <= 400 ist (oder wird). Ansonsten ist das Licht an.

Fällt in der Zeit von 22:30 - 06:20 yyy:xxx unter 400, geht das Licht aus...
FHEM@UbuntuServer on Lenovo ThinkCentre M900 [i5-6500T / 8GB RAM] MySQL-DbLog, Grafana, FTUI3 / HmIP incl. CCU3 / LGESS / Wärempumpe über TA CMI und CANoE / Shellies u.v.m.