Hallo zusammen,
ich habe scheinbar eine völlig verrückte Idee. Ich möchte meinen Handtuchheizkörper im Bad über einen Taster an bzw. ausschalten können.
Ich möchte hierbei die Zwangsstellung nutzen.
Zum Einsatz kommen ein MDT Glastaster 2 und ein MDT Heizungsaktor ( AKH-088.02)
Die Steuerung ist einfach. Ich binde eine Gruppenandresse an eine Taste des Tasters.
Einzel-Tastenfunktion: Schalten
Unterfunktion: Umschalten
Gruppenadresse: HZ_OG_EB_2HK_ZWANGSSTELLUNG (1/1/111)
Die Anzeige des aktuellen Status ist nicht einfach. Dieser lässt sich meines Wissens nur über Umwege ermitteln. Falls der Diagnosetext „Zwangssteuerung“ enthält, dann ist diese aktiv, ansonsten nicht.
Gruppenadresse für Status (wird an den Taster gebunden): HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS (1/1/211)
Für die „Übersetzung“ von Diagnosetext in Schaltzustand nutze ich OPENHAB, die aktuellste Version via Docker-Image (3.1.x) . Ich habe hier zwei funktionierende Konfigurationen gefunden.
Kennt ihr eine einfachere Lösung?
Option A
=======
Ich nutze einen Switch-Control im OpenHAB
und folgende Regel:
Anmerkung: Natürlich lässt sich die Regel noch kompakter beschrieben. Ich hatte aber Log-Statements drin und daher so „ausführlich“
Das Funktioniert zwischen KNX Taster und KNX Aktor (über die OPENHAB Regel).
Leider lässt sich aber die Zwangsstellung nicht über OPENHAB aktivieren.
Ich habe folgenden Test gemacht:
Keine Antwort. Kein Event in events.log. Nichts.
Warum ist das so?
Was funktioniert: Zusätzlich einen TRIGGER einrichten:
Dieser lässt sich dann über meine UI nutzen und triggert das Event. Unschön
Option B
=======
Ich nutze zwei Switches im OpenHAB
und folgende Regel
Ich brauche hier tatsächlich beides. Der sendCommand sorgt dafür das die Statusänderung am KNX Bus ankommt und der postUpdate sorgt dafür das der Zustand in der UI richtig dargestellt wird.
Ich freue mich auf euer Feedback!
ich habe scheinbar eine völlig verrückte Idee. Ich möchte meinen Handtuchheizkörper im Bad über einen Taster an bzw. ausschalten können.
Ich möchte hierbei die Zwangsstellung nutzen.
Zum Einsatz kommen ein MDT Glastaster 2 und ein MDT Heizungsaktor ( AKH-088.02)
Die Steuerung ist einfach. Ich binde eine Gruppenandresse an eine Taste des Tasters.
Einzel-Tastenfunktion: Schalten
Unterfunktion: Umschalten
Gruppenadresse: HZ_OG_EB_2HK_ZWANGSSTELLUNG (1/1/111)
Die Anzeige des aktuellen Status ist nicht einfach. Dieser lässt sich meines Wissens nur über Umwege ermitteln. Falls der Diagnosetext „Zwangssteuerung“ enthält, dann ist diese aktiv, ansonsten nicht.
Gruppenadresse für Status (wird an den Taster gebunden): HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS (1/1/211)
Für die „Übersetzung“ von Diagnosetext in Schaltzustand nutze ich OPENHAB, die aktuellste Version via Docker-Image (3.1.x) . Ich habe hier zwei funktionierende Konfigurationen gefunden.
Kennt ihr eine einfachere Lösung?
Option A
=======
Ich nutze einen Switch-Control im OpenHAB
Code:
Type switch-control : HZ_OG_EB_2HK_ZWANGSSTELLUNG "Handtuchheizkörper Elternbad" [ ga="1/1/211+1/1/111" ]
Code:
rule "Handtuchheizkörper Status für Zwangsstellung ermitteln" when System started or Item HZ_OG_EB_2HK_DIAGNOSETEXT received update then var diagnosetext = "" + HZ_OG_EB_2HK_DIAGNOSETEXT.state if(diagnosetext.contains("Zwangsbetrieb")) { HZ_OG_EB_2HK_ZWANGSSTELLUNG.postUpdate(ON) } else { HZ_OG_EB_2HK_ZWANGSSTELLUNG.postUpdate(OFF) } end
Das Funktioniert zwischen KNX Taster und KNX Aktor (über die OPENHAB Regel).
Leider lässt sich aber die Zwangsstellung nicht über OPENHAB aktivieren.
Ich habe folgenden Test gemacht:
Code:
curl -X POST --header "Content-Type: text/plain" --header "Accept: application/json" -d "ON" "http://<ip>:8080/rest/items/HZ_OG_EB_2HK_ZWANGSSTELLUNG
Warum ist das so?
Was funktioniert: Zusätzlich einen TRIGGER einrichten:
Code:
Type switch : HZ_OG_EB_2HK_ZWANGSSTELLUNG_TRIGGER "Handtuchheizkörper Elternbad" [ ga="1/1/111" ]
Option B
=======
Ich nutze zwei Switches im OpenHAB
Code:
Type switch : HZ_OG_EB_2HK_ZWANGSSTELLUNG "Zwangsstellung" [ ga="1.003:1/1/111" ] Type switch : HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS "Zwangsstellung Kinderbad Status" [ ga="1.003:1/1/211" ]
Code:
rule "Handtuchheizkörper Kinderbad Status für Zwangsstellung ermitteln" when System started or Item HZ_OG_EB_2HK_DIAGNOSETEXT received update or Item HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS changed to NULL then var diagnosetext = "" + HZ_OG_EB_2HK_DIAGNOSETEXT.state if(diagnosetext.contains("Zwangsbetrieb")) { HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS.sendCommand(ON) HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS.postUpdate(ON) } else { HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS.sendCommand(OFF) HZ_OG_EB_2HK_ZWANGSSTELLUNG_STATUS.postUpdate(OFF) } end
Ich freue mich auf euer Feedback!
Kommentar