Mein Garagentor ist über KNX angebunden und kann somit (theoretisch) über ein Rollershutter Item in openHAB gesteuert werden. Leider gibt es aber pro Befehl eine separate Gruppenadresse, also eine Adresse für AUF und eine Adresse für ZU. Somit ist es nicht direkt möglich in openHAB ein Rollershutter Item direkt mit KNX zu konfigurieren. Es müsste für jeden Befehl einen eigenen Schalter (Switch) geben. Das kam aber für mich nicht in Frage.
Dummy Rollershutter Item anlegen
Das lässt sich mit einem Dummy Item und einer entsprechenden Regel lösen. Zuerst wird in der .items Datei ein Rollershutter Item angelegt. Diesem wird keine Thing oÄ zugeteilt. Zusätzlich müssen natürlich die KNX Switches für den AUF und den ZU Befehl der Garage angelegt werden. Wie KNX an openHAB angebunden wird, erkläre ich hier.
1 2 3 |
Switch Garage_AUF "Garage Auf" (Garage) {knx="6/1/1+<5/1/51"} Switch Garage_ZU "Garage Zu" (Garage) {knx="6/1/2+<5/1/50"} Rollershutter Garage_Steuerung "Garage" (Garage) |
Regel für Garagentor anlegen
Damit die Garage jetzt über das Rollershutter Item und somit in der Sitemap mit der gewohnten Auf und Ab Steuerung bedient werden kann, müssen die Befehle in einer Regel übersetzt werden. Während der Rollershutter die Befehle „UP“ und „DOWN“ sendet, versteht der Switch nur „AN“ bzw. „AUS“
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
rule "Garage" when Item Garage_Steuerung received command then if(receivedCommand==UP) { Garage_AUF.sendCommand(ON) Thread::sleep(300) Garage_AUF.sendCommand(OFF) } else if(receivedCommand==DOWN) { Garage_ZU.sendCommand(ON) Thread::sleep(300) Garage_ZU.sendCommand(OFF) } end |
Was macht die Regel im Detail? Sobald das Dummy Item „Garage_Steuerung“ ein Kommando erhält wird Folgendes ausgeführt:
Sofern das erhaltene Kommando UP, also hochfahren, erhält, dann wird das Kommando ON an den Switch Garage_AUF gesendet. Damit der Switch nicht dauerhaft angeschaltet bleibt und eventuell andere Befehle blockiert wird er nach 300ms wieder ausgeschaltet.
In umgekehrter Reihenfolge funktioniert es beim Kommando DOWN, also schließen. Jetzt kann das Garagentor über openHAB gesteuert werden. Diese Art Regel kann für ähnliche Übersetzungen natürlich auch an anderer Stelle verwendet werden – und zwar immer dann, wenn der ursprüngliche Befehl am Ziel nicht passend ankommt.
Hinterlasse einen Kommentar