set desired-temp bei geöffnetem Fenster (HM-CC-RT-DN)

Begonnen von StbX, 29 September 2014, 21:10:49

Vorheriges Thema - Nächstes Thema

StbX

Einen schönen guten Abend zusammen,

ich betreibe seit knapp einem Jahr mehrere HM-CC-RT-DN Thermostate in meiner Wohnung. Diese sind gekoppelt mit den Fenstersensoren HM-SEC-SC, damit bei offenen Fenstern nicht weiter geheizt wird. Mit dem Modul LightScene habe ich verschiedene Temperatur-Profile angelegt, welche manuell, ereignis- oder zeitgesteuert aktiviert werden. Soweit ist auch alles super (:

Mein Problem: wenn das Thermostat eine neue Soll-Temperatur erhält, stellt es sich unmittelbar auf diese ein - auch wenn das Fenster geöffnet ist. Dies hat zur Folge, dass trotz geöffnetem Fenster geheizt wird.
Gibt es eine erprobte Lösung für das Problem? Gewünscht wäre, dass das Thermostat die winOpnTemp so lange hält, bis das Fenster geschlossen ist und sich dann auf die neue Soll-Temperatur einstellt.
Sicherlich könnte man dies mit einer Vielzahl von Notifys und Dummy-Deviceses lösen. Gefällt mir aber nicht so gut, so etwas sollte doch eleganter gehen...

Bin auch schon über das Modul Heating Control gestolpert, welches genau diese Funktionalität unterstützen sollte. Leider passt das Modul auch nicht für meinen Anwendungsfall, da meine Steuerung nicht (nur) auf zeitlichen Ereignissen beruht.
Hatte auch schon mal in Erwägung gezogen, ein Proxy-Modul zu schreiben, welches die set desired-temp Befehle so lange zurückhält, bis alle Fenster wieder geschlossen sind. Aber bevor ich mich daran begebe, wollte ich erst einmal nachfragen, ob das Problem nicht evtl. schon gelöst ist.

Vielen Dank!

Moo2Mee

Ich habs unelegant mit If-Abfragen, Notifys und Dummys gelöst. Wenn es was besseres gibt, dann her damit.

Dietmar63

Versucht es mal mit Heating_Control. Es ist möglich eine Liste mit Fensterkontakten anzugeben. Sollte einer von ihnen offen melden wird die Schaltung entsprechend verzögert.

Ich meine, dass HM FHT bereits direkt unterstützt werden.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

Zitatauch nicht für meinen Anwendungsfall, da meine Steuerung nicht (nur) auf zeitlichen Ereignissen beruht.

Und was soll das sein?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

betateilchen

Zitat von: StbX am 29 September 2014, 21:10:49
Mein Problem: wenn das Thermostat eine neue Soll-Temperatur erhält, stellt es sich unmittelbar auf diese ein - auch wenn das Fenster geöffnet ist. Dies hat zur Folge, dass trotz geöffnetem Fenster geheizt wird.

Welche Firmware haben Deine RTs?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

StbX

@ Dietmar63: ich nutze eifrig das RESIDENTS / ROOMMATE + GEOFANCY Modul für Anwesenheitserkennung. Heating_Control ist leider für mich unpraktisch, da dort Zeitprofile mit angegeben werden müssen.

@ betateilchen: die meisten sind noch auf 1.0 (bisher zu faul zum updaten gewesen). Habe aber auch ein Thermostat mit der aktuellen 1.3 im Einsatz. Bei allen ist das Verhalten in dem Punkt leider gleich.

StbX

Hallo Zusammen,

da es hier ja offensichtlich auch keine guten Tipps für das Problem gibt, habe ich mich diesem mal selber angenommen und ein Makro geschrieben.
Aktueller Stand liegt unter: https://github.com/StbX/fhem/blob/master/FHEM/99_tempUtils.pm

Der Subroutine temp_set wir das Device (nicht der _Clima Channel) und die gewünschte Temperatur übergeben. Wenn alle gepairten Fenstersensoren geschlossen sind, wird direkt der set desired-temp Befehl an das Thermostat gesendet. Bei einem oder mehr geöffneten Fenstern erstellt das Makro einen Notify, welcher beim Schließen des Fensters die neue Wunschtemperatur setzt. Der Notify wird danach dann wieder entfernt.
Darüber hinaus kann man noch die beiden Subroutinen temp_inc und temp_dec nutzen, welche die Temperatur erhöhen bzw. absenken, sofern die aktuelle Temperatur nicht bereits höher / tiefer ist.

Beispiele:
{ temp_set "CUL_HM_HM_CC_RT_DN_XXXXXX", 20.0 }
{ temp_dec "CUL_HM_HM_CC_RT_DN_XXXXXX", 18.0 }
{ temp_inc "CUL_HM_HM_CC_RT_DN_XXXXXX", 19.0 }

Wenn dies auch jemand nutzen möchte, nur zu. Bei Problemen oder Anregungen gerne melden.

Viel Spaß,
Steffen

Hollo

Klingt interessant.

Habe den Effekt ebenfalls bemerkt (4 Thermostate mit aktuellster FW).

Bevor ich das jetzt bei mir um-/einbaue...
Funktioniert das auch wenn ich "Sammelbefehle" absetze, in meinem Fall bisher "set .*_Heizung_Clima desired-temp 20.0"?
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

martinp876

Bitte beachten, dass der integrierte fenstersensor deaktiviert sein sollte. Den kann man leider nicht erfassen. Sollte man in der anleitung vermerken, wenn man sie veroeffentlicht