OpenHAB steuert Hue Leuchten

OpenHAB und Philips Hue

Noch vor einigen Jahren war es undenkbar, intelligente Glühbirnen zu verwenden. Wozu auch? Seit Jahrzehnten geht das Licht an, wenn man auf den Lichtschalter drückt, und auf demselben Weg auch wieder aus. Erst mit der LED-Technik konnten Leuchtmittel auf einmal mehr: die Farbtemperatur ändern oder in verschiedenen Farben zu leuchten. Das aus meiner Sicht mit Absicht das beste System kommt in diesem Bereich von Philips mit Hue. Die Produkte sind sehr durchdacht, stromsparend. Leider aber auch relativ teuer.

Bei Hue gibt es einen Hub, der in das lokale Netzwerk integriert wird. Die Lampen und Leuchtmittel selbst kommunizieren mit dem Hub über den Industriestandard Zigbee - und hier wird es richtig interessant: Leuchten anderer Hersteller, die denselben Standard unterstützen, können in das Hue-System integriert werden. So habe ich z.B. von Osram Gartenleuchten; aber auch IKEA hat mit der TRÅDFRI-Reihe kompatible Leuchten im Angebot (und natürlich gibt es noch zahlreiche andere Hersteller). 

Im Normalfall werden die Lampen über eine App oder über einen zusätzlichen Schalter gesteuert. Wie ich bereits in der Einleitung geschrieben habe, finde ich beides nicht sonderlich erstrebenswert: ich möchte, dass das Haus wirklich intelligent arbeitet. Alle manuellen Aktionen sollen von jedermann über einen normalen Schalter (der sich im Idealfall nicht von anderen Schaltern unterscheidet) gesteuert werden können.

Die Verkabelung

Damit die Hausautomatik eine Lampe schalten kann, braucht diese Strom - und zwar immer. Konventionelle Verkabelung muss also teilweise verändert werden; wenn der normale Lichtschalter verhindert, dass an der Lampe Spannung anliegt, kann nichts und niemand diese Lampe einschalten - außer der Schalter. Es muss also sichergestellt werden, dass bei allen Leuchten, die (auch) automatisch ein- und ausgeschaltet werden sollen, immer Spannung anliegt. 

Wie das am Besten funktioniert, ist eine Frage des Einzelfalls. Ich habe eine Stehlampe, die über eine Steckdose mit Strom versorgt wird. Hier genügt es, die Lampe am Gerät selbst nicht ausszuschalten. Deckenlampen hingegen werden typischerweise mit einem Schalter gesteuert, der die Stromversorgung unterbricht. Hier habe ich gute Erfahrungen mit Schaltern von HomeMatic gemacht: diese gibt es als Aktoren, die tatsächlich Strom schalten (aber auch von der Hausautomatik gesteuert werden können) oder als reine Sensoren; hier wird die Deckenlampe also einfach immer mit Spannung versorgt. Ich habe beide Versionen im Einsatz: für die Hue-Steuerung sind die Lampen immer mit Strom versorgt und werden über den HomeMatic-Schalter über den Umweg der Hausautomatisierung geschaltet. 

Magie, die keiner sieht

Bei den HomeMatic-Tastern kann man die Original-Blenden der vorhanden Schalter verwenden; für viele Hersteller gibt es hier entsprechende Adapter. Der Taster sieht also genauso aus wie der Lichtschalter, den er ersetzt. Und mit der entsprechenden Konfiguration funktioniert er auch genauso - zumindest für Besucher. Drückt man drauf, geht das Licht an. Und wieder aus. :) 

Im Hintergrund passiert etwas mehr: Der Druck auf den Taster meldet dies an die Hausautomatik. Diese wiederum meldet den gewünschten Befehl an den Hue-Hub, der dies an die Leuchten über den Zigbee-Standard weitergibt. All das passiert in wenigen Millisekunden. 

Und: die Hausautomatik ist jetzt in der Lage, das Licht selbständig zu schalten. So ist z.B. eine intelligente Urlaubssteuerung denkbar, in der das Haus Anwesenheit simuliert. Oder eine zeit- oder kontextabhängige Ansteuerung der Lampe: es ist 3 Uhr nachts und jemand drückt auf den Schalter? Vermutlich geht jemand im Halbschlaf ins Badezimmer; es liegt also nahe, den Bewohner nicht zu blenden und die Leuchte nur mit 30% einzuschalten. Oder die Hausautomatik erkennt, dass der Fernseher eingeschaltet wurde und schaltet die dazu passende Lichtszene an. 

Die Möglichkeiten sind unbegrenzt - und ich werde die ein oder andere Idee auf diesem Blog noch ausführen. 

 

Die Hue-Zentrale bei OpenHAB bekannt machen

Zunächst einmal müssen wir OpenHAB beibringen, mit dem Hue-Hub zu kommunizieren. Hierfür installieren wir in der PaperUI zunächst das passende Binding ("Add-ons" -> "Bindings" -> "Hue Binding" -> install).

Für die Authorisizerung der Brigde muss der Button des Hue-Gateways gedrückt werden; in den OpenHAB-Logs (/var/log/openhab.log) erscheint dabei zunächst die Aufforderung

 

Creating new user on Hue bridge 192.168.91.100 - please press the pairing button on the bridge.

 

 und sobald man dieser nachgekommen ist ein kryptischer Benutzername. Mit diesem können wir die Bridge dauerhaft bekannt machen. In /etc/openhab2/things/hue.things tragen wir dies ein: 

 

Bridge hue:bridge:1 [ ipAddress="192.168.91.100", userName="oU*******************" ]

 

Die im Hue-System konfigurierten Leuchten sind dann in der Inbox inkl. der internen Adresse sichtbar.

Es werde Licht

Die Lampen können in /etc/openhab2/items definiert werden. Hierzu habe ich eine Datei hue.items angelegt und die entsprechenden Lampen und ihre Eigenschaften definiert: 

 

Switch  WZ_Stehlampe_Schalter "Stehlampe" (Licht, Hue) { channel="hue:0100:0017********:6:brightness" }
Dimmer  WZ_Stehlampe_Dimmer "Stehlampe dimmen" (Licht, Hue) { channel="hue:0100:0017********:6:brightness" }

 

Als ersten einfachen Anwendungsfall machen nun eine Leuchte über den im letzten Teil konfigurieren HomeMatic-Taster schaltbar. In /etc/openhab2/rules legen wir eine neue Datei wohnzimmer_hm_schalter.rules an

 

rule "HM_Stehlampe_TOGGLE"
when
  Channel "homematic:HG-HM-RC-2-PBU-FM:0eb8f8ab:NEQ******:1#BUTTON" triggered SHORT_PRESSED
then
  val state = if(WZ_Stehlampe_Schalter.state == OFF || WZ_Stehlampe_Schalter.state == 0) ON else OFF
  WZ_Stehlampe_Schalter.sendCommand(state)
end

 

Dimmbare Hue-Leuchten sind aus, wenn der State auf 0 oder auf OFF steht; daher müssen wir beide Fälle abdecken. 

Möchte man die Lampen über den Schalter auch dimmen, geht das z.B. wie folgt: 

 

rule "HM_Deckenlampe_DIMMDOWN"
when
  Channel "homematic:HG-HM-RC-2-PBU-FM:0eb8f8ab:NEQ******:1#BUTTON" triggered LONG_PRESSED
then
  var bright=WZ_Deckenlampe_Dimmer.state as Number
  bright = bright - 25;
  EZ_Deckenlampe_Dimmer.sendCommand(bright.intValue);
  WZ_Deckenlampe_Dimmer.sendCommand(bright.intValue);
end

rule "HM_Deckenlampe_DIMMUP"
when
  Channel "homematic:HG-HM-RC-2-PBU-FM:0eb8f8ab:NEQ******:2#BUTTON" triggered LONG_PRESSED
then
  var bright=EZ_Deckenlampe_Dimmer.state as Number
  bright = bright + 25;
  EZ_Deckenlampe_Dimmer.sendCommand(bright.intValue);
  WZ_Deckenlampe_Dimmer.sendCommand(bright.intValue);
end

 

erhöht/reduziert durch langen Druck auf den Schalter die Lichtstärke (in diesem Fall von zwei Lampen).

Kommentare (0)

Keine Kommentare gefunden!

Neuen Kommentar schreiben