Basics: Szenen starten (Trigger)

Basics: Szenen starten (Trigger)

25. Januar 2017 4 874 Von Bastian

Bisher drehen sich die meisten meine Artikel um aufwändigere Themen rund um das Smart Home mit Fibaro und Z-Wave. Immer häufiger kommen jedoch Fibaro-Neulinge auf mich zu und fragen nach einfachen Texten in denen die Basics erklärt werden. Daher habe ich mich dazu entschlossen auch diesen Themen ein wenig mehr Aufmerksamkeit zu schenken. So gibt es seit heute eine neue Kategorie Basics. In dieser Kategorie werde ich in den nächsten Wochen ein paar Artikel zu den Grundlagen des Home Center 2 veröffentlichen. Den Anfang macht heute das Thema Szenen-Trigger. Also die Auslöser von Szenen. Welche gibt es und wie werden sie verwendet?

Trigger im HC2

Trigger im HC2

Szenenkonzept

Automatismen in der Fibaro Welt werden durch die Programmierung von Szenen realisiert. Neben den in meinem Blog verwendeten Lua Szenen kennt Fibaro noch Block- und Magic-Szenen mit denen sich durch Point&Click einfache Schaltungen realisieren lassen. Alles was in einem Fibaro Smart Home automatisiert werden soll basiert auf diesen Szenen. Damit eine solche Szene automatisiert ausgeführt werden Auslöser, sogenannte Trigger, benötigt. Diese sorgen dafür, dass die „Programme“ – also die Szenen – ausgeführt und die gewünschten Aktionen durchgeführt werden.

Trigger-Arten

Das Home Center 2 kennt 5 Arten von Szenen-Trigger. Diese werden auf unterschiedliche Art und Weise genutzt um Aktionen auszuführen. Neben dem automatischen Start können Szenen durch Geräteeigenschaften, globale Variablen und Events gestartet werden.

Autostart

Wie der Name schon sagt werden Szenen mit dem Attribut „Autostart“ automatisch gestartet. Dies gilt gleichermaßen für den Start des Home Center 2 als auch für das Speichern von Szenen im Webinterface. Zeitgesteuerte Szenen sind grundsätzlich automatisch gestartete Szenen welche zyklisch die Erreichung des gewünschten Ausführungszeitpunktes überprüfen.

Properties

Z-Wave Geräte verfügen über eine ganze Reihe von Eigenschaften die ihren Zustand und allgemeine Daten beinhalten. Änderungen dieser Geräteeigenschaften können dafür genutzt werden um Szenen zu starten. So führt beispielsweise das Auslösen eines Bewegungsmelders zur Änderung der Eigenschaft Value und kann genutzt werden um eine Szene zur automatischen Steuerung einer Lampe zu starten.

Globale Variablen

Im Home Center 2 können globale Variablen hinterlegt werden um Zustände oder Daten abzulegen und systemweit zur Verfügung zu stellen. Es gibt in der Community eine ganze Reihe von globalen Variablen die sich als Quasi-Standard durchgesetzt haben (Siehe Artikel Grundausstattung globale Variablen). Der Inhalt einer globale Variable lässt sich durch interne und externe Funktionen verändern. Diese Veränderung kann ebenfalls als Trigger für Szenen verwendet werden. Beispielsweise ist in der globalen Variable PresentState der An- und Abwesenheitsstatus abgebildet. Verlässt man das Haus und setzt diese entsprechend auf „Away“ lässt sich damit z.B. prüfen, ob beim Verlassen des Hauses alle Fenster geschlossen sind.

Events

Insbesondere Z-Wave Fernbedienungen senden bei Betätigung ein sogenanntes centralSceneEvent an das Home Center 2. Dieses beinhaltet nebem der Nachricht, dass eine Taste bedient wurde auch die Information um welche Taste es sich handelt. So kann mit der Betätigung eine Szene gestartet werden die – je nach dem welche Taste gedrückt wurde – unterschiedliche Automatismen startet. Weiterhin lässt sich eine Trennung von Aktionen in unterschiedliche Szenen realisieren.

Weather

In einer der letzten Versionen frisch dazu gekommen ist die Möglichkeit des Triggern von Szenen abhängig vom Wetter. Hier lassen sich Vorhersagen, Temperatur, Luftfeuchtigkeit und Wind als Trigger für Szenen verwenden.

Header einer Lua Szene

Jede Lua Szene verfügt über Kopfzeilen, dem sogenannten Header. In diesem werden die Trigger definiert. Hier wird also hinterlegt, wann die Szene gestartet werden soll. Der Headers ist von entscheidender Bedeutung wenn es um die Automatisierung von Szenen geht. Zwar lässt sich jede Szene auch manuell ausführen, wird jedoch erst durch den gezielten Einsatz von Triggern so richtig „smart“.

Wenn Du eine neue Lua Szene im HC2 erstellst, stellt sich der Header folgendermaßen dar:


Dies ist die Grundkonfiguration in der kein Trigger definiert ist. Es werden lediglich die Gruppen von möglichen Triggern (properties, events und globals) definiert. Unter die jeweiligen Zeilen mit den 2 Prozentzeichen am Anfang werden später die eigentlichen Trigger hinterlegt.

Beispiele

In den nachfolgenden Beispielen möchte ich die Verwendung von Triggern demonstrieren. Die dargestellten Szenen haben lediglich Symbolcharakter um die Funktionsweise zu demonstrieren.

Szenario 1 – Properties, Parameter oder Geräteeigenschaften

Im Hausflur sind ein Fibaro Motion Sensor (ID 37) und ein Fibaro Switch 2 (ID 42) installiert. Erkennt der Motion Sensor Bewegung soll der Switch – und damit das Licht – ein- und nach einer Minute wieder ausgeschaltet. Erkennt der Motion Sensor Bewegung wird der Parameter (Geräteeigenschaft) „value“ von 0 auf 1 gesetzt. Diese Veränderung wird als Trigger für die folgende Szene benutzt.


In Zeile 3 wird der Trigger definiert. Zur Definition gehört immer die Geräte ID (37) sowie der zu überwachende Parameter (value). Eine Szene kann durch verschiedenste Trigger gestartet werden. Die Angabe mehrere Trigger erfolgt durch hinzufügen weiterer Zeilen.

Szenario 2 – Globale Variablen

Wie oben bereits erwähnt verfügt das Smart Home in unserem Beispiel über eine globale Variable in der die An- und Abwesenheit dargestellt wird. Diese globale Variable kennt zwei Zustände „Home“ und „Away“. Der Zustandswechsel kann über ein kleines virtuelles Device geändert werden. Diese Änderung wird folgendermaßen als Trigger verwendet.


Bei jeder Änderung der globalen Variable wird diese Szene gestartet. Mit globals-Triggern lassen sich beispielsweise Aktionen automatisieren die beim Verlassen des Hauses durchgeführt werden sollen.

Szenario 3 – Events

Die Trigger-Art events wird verwendet um Geräte mit der Commandoklasse centralSceneEvent als Trigger zu verwenden. Dies sind für gewöhnlich Schalter oder Fenrbedienungen die über mehrere Tasten verfügen. Wie oben bereits erwähnt, wird bei der Betätigung eines solchen Schalters neben dem centralSceneEvent noch die Information übertragen, welche Taste betätigt wurde. Dies vereinfacht die Trennung von Szenen und Tasten denn im Trigger lässt sich zusätzlich zum centralSceneEvent noch die ID der Taste angeben und so sicherstellen, dass die Szene nur gestartet wird, wenn auch die dafür vorgesehene Taste gedrückt wird.


Durch Betätigung der Taste 1 des Schalter / der Fernbedienung wird diese Szene getriggert. Jedoch nicht durch das drücken der Taste 2.

Szenario 4 – Wetterkonditionen

Wetterabhängige Szenen lassen sich mit über die im Home Center 2 verfügbaren Wetterdaten starten. Im Grund funktionieren Wetter-Trigger analog zum Triggern mit globalen Variablen. Ändert sich die Wetter-Werte werden die globalen Variablen WeatherCondition, Temperature, Humidity und Wind geändert. Mit diesen Änderungen lassen sich Szenen starten.

Szenarion 5 – Zeitgesteuerte Szenen

Auf Grund der möglichen Komplexität habe ich den zeitgesteuerten Szenen einen eigenen Artikel gewidmet.

Feedback und Hilfe

Dir fehlt etwas oder Du benötigst weitere Hilfe bei der Realisierung Deiner Szenen-Trigger? Dann nutze die Kommentarfunktion oder das Fibaro Forum.

 

Moin, ich heiße Bastian und bin Autor dieser kleinen bescheidenen Seite. Zwanghaft, ja fast schon neurotisch beschäftige ich mich seit Jahren mit jedem erdenklichen technischen Schnick-Schnack. Nichts, was einen Stecker hat ist vor mir sicher. So war es klar, dass ich eines Tages das Haus auf den Kopf stellen und alles vernetzen würde.

Da ich bei meinem Vorhaben sehr viel Hilfe und Unterstützung in diversen Foren, Blogs und Boards erfahren habe, möchte ich diesen Blog zum sammeln meiner Smarthome- und Technikerrungenschaften nutzen um der Community zumindest ein klein wenig was zurückgeben zu können.

Artikel teilen