Idee: Thermostathochheizen nach Lüften verzögern

Begonnen von jhohmann, 12 Februar 2021, 15:44:38

Vorheriges Thema - Nächstes Thema

jhohmann

Hallo,
ich wollte bei mir das schnelle Hochheizen nach dem Lüften etwas mehr verzögern als es die Thermostate von sich aus machen und habe mir dafür eine gewisse Logik zusammen gestellt und möchte diese einfach mal teilen.
Voraussetzungen sind, dass man Fensterkontakte und passende Thermostate im Einsatz hat (früher hatte ich MAX! im Einsatz, bin jetzt aber zu HomematicIP gewechselt, beide geht sehr ähnlich).
Ich habe mir für jeden Raum ein notify erstellt. Das war für mich übersichtlicher und einfacher. Und ich wollte in mindestens einem Raum eine, längere Verzögerung haben.
Aber mit passenden Kenntnissen in Regex geht das bestimmt auch kompakter, wer mag.

Hier exemplarisch ein notify in der RAW-Definition:
defmod ntArbeitszimmerFenster_STATE notify ArbeitszimmerFenster:1.STATE.* {\
my $state=ReadingsVal("ArbeitszimmerFenster", "1.STATE", "");;\
fhem("delete atAZHeizungToAuto") if (defined($defs{atAZHeizungToAuto}));;\
if ($state eq "closed") {\
  fhem("set ArbeitszimmerHeizung datapoint SET_POINT_TEMPERATURE 14");;\
  fhem("define atAZHeizungToAuto at +00:03:00 set ArbeitszimmerHeizung Auto");;\
}\
}

Die erste Zeile kann man vermutlich auch aus dem $EVENT von dem notify auslesen. Aber so weiß ich genau, wo die Daten herkommen.
Bei MAX! hatte ich vorher da etwas Schwierigkeiten (weiß aber nicht mehr welche) und habe die alte Lösung einfach stehen gelassen. Sie funktioniert so in jedem Fall.
Zuerst wird ein bestimmtes AT gelöscht, falls es definiert sein sollte.
Wenn das Fenster geschlossen wird, wird die Temperatur sofort auf 14 Grad gesetzt und es wird ein Timer mittels AT erzeugt, der in 3 Minuten die Temperatur auf Auto setzen soll. Das AT hat einen eindeutigen Namen, damit es für den Fall der Fälle explizit gelöscht werden kann.
Das ist z.B. dann notwendig, wenn das Fenster innerhalb der drei Minuten erneut geöffnet werden sollte.
Für das Setzen der Temperatur oder des Auto-Modus müsst ihr natürlich die Kommandos einsetzen, die zu eurer Gerätschaft passt.
Der Name des AT muss für jeden Raum eindeutig gepflegt werden, da sonst diese Logik nicht funktioniert.
Falls es jemand gebrauchen kann, viel Erfolg damit.
Raspberry Pi 4 - bookworm / EnOcean - Rollo+Licht, deCONZ - Licht+Sensoren, ZWave - CO Messung, HMCCU mit piVCCU - Heizung+Rollo
plus dovecot, minidlna