Skip to content

Handler: GiraAwningActuator

Raoul edited this page Nov 15, 2016 · 2 revisions

Gira Giersiepen GIRA 216100

Dieser Handler ist gedacht eine Jalousiesteuerung von Gira zur Steuerung einer Markise anzubinden.
Dieses Add-in basiert auf dem GiraJalousieAktor, mit einer kleinen Änderung bei der Richtung der Fahrten.

Zuordnung der Objekte

Dabei werden die KNX-Objekte so zugeordnet:

Objektfunktion in ETS Bedeutung DPT Characteristic im Handler
Langzeitbetrieb Rolladen Fahrt DPT1, Subtype auf/ab ShutterMove
Rückmeldung Rolladenposition Rückmeldung in Prozent DPT5.001 CurrentPosition
Position Rollade/Markise Anfahrt Position DPT5.001 TargetPosition

pro Ausgang verwendet.
Zusätzlich werden das Characteristic PositionState und eine Maximallaufzeit TimeOutSecs als lokale Konstante benötigt. Dabei wird PositionState nur deklariert, aber nicht mit Gruppenadressen verknüpft. Diese Eigenschaft müssen wir nur deklarieren, damit das Add-in darauf in Richtung HomeKit schreiben kann. Die Markisenlaufzeit brauchen wir, falls mal keine Positionsmeldung zurückkommt, ansonsten könnte der Status in HomeKit dauerhaft auf "öffnend" oder "schließend" stehen bleiben.

Die CurrentPosition ist aus Sicht von HomeKit nicht beschreibbar - wir bekommen diesen Wert nur vom Aktor, daher brauchen wir keine Set-Einträge.
Die TargetPosition ist aus Sicht von HomeKit beschreibbar (das heisst, man kann auf dem iPhone eine neue Zielposition vorgeben, so dass der Markise diese Position anfährt), brauchen wir (mindestens) eine Set-Adresse. Damit das iPhone auch den Zielwert richtig anzeigt, falls wir über KNX die Position ändern, lauschen wir mit Listen auf der gleichen Adresse.
ShutterMove ist nicht mit einer echten HomeKit-Eigenschaft verknüpft, deshalb taucht es nicht bei den Characteristics, sondern in den KNXObjects auf - diese werden nur vom Handler beschrieben/gelesen. Wir benötigen hier nur eine hörende Adresse. Die Angabe des DPT ist zwingend und es funktioniert in diesem Handler für diese Adresse nur DPT1!

Für die Positionen gilt, und das ist fest verdrahtet: In KNX: 100% ist ausgefahren/geöffnet; 0% ist eingefaheren/geschlossen.
Es gibt bei diesem Add-in keine Möglichkeit die Bedeutung der Positionen umzudrehen!

Das Beispiel sieht daher folgendermaßen aus: ###Beispiel

{
	"ServiceType": "WindowCovering",
	"Handler": "GiraAwningActuator",
	"ServiceName": "Porch Awning",
	"Characteristics": [
           {
		"Type": "TargetPosition",
		"Set": "1/2/3",
		"Listen": "1/2/3",
		"DPT": "DPT5.001"
	   },
	   {
		"Type": "CurrentPosition",
		"Listen": "1/3/2"
	   },
	   {
		"Type": "PositionState"
	   }
        ],
	"KNXObjects": [
            {
		"Type": "ShutterMove",
		"Listen": "1/2/1",
		"DPT": "DPT1"
	    }
        ],
	"KNX-ReadRequests": [
           "1/2/1",
	   "1/3/2"
        ],
	"LocalConstants": {
            "TimeOutSecs": 60
        }
}