Das Szenario

Licht mit dem Fibaro Motion Sensor automatisch schalten, aber nur, wenn es auch Sinn macht, ist die Aufgabe. Hier zunächst die Rahmenparameter, für das hier beschriebene Szenario. Was gibt es alles zu beachten?

  • Das Licht ist aus, jemand betritt den Flur => Licht soll angehen
  • Das Licht soll nach 30 Sekunden automatisch wieder ausgehen
  • Das Licht ist an und jemand befindet sich nach 30 Sekunden weiterhin im Flur => das Licht soll nicht angehen sondern für weitere 30 Sekunden anbleiben
  • Das obige Verhalten soll nur dann stattfinden, wenn nicht das Licht zuvor über einen Schalter manuell auf ein geschaltet wurde.
  • Das obige Verhalten soll nur dann stattfinden, wenn die Helligkeit im Flur unterhalb von 50 Lux ist.
  • Das obige Verhalten soll nur in der Zeit von 8:00h bis 1:00h stattfinden. Ansonsten bleibt das Flurlicht aus, um nicht die Nachtruhe der anderen Bewohner zu stören.

Licht mit dem Fibaro Motion Sensor automatisch schalten – so gehts!

Machen wir uns an die Umsetzung, Licht mit dem Fibaro Motion Sensor automatisch schalten zu können. Aufgrund des kleines Formats des Fibaro Motion Sensors FGMS-001 lässt er sich eigentlich fast überall unauffällig montieren. Eine geschickte Positionierung, um auch wirklich von allen Eingängen des Flurs erfassen zu können ist natürlich wichtig, muss aber jeder individuell für sich festlegen. Es kann auch durchaus Sinn machen, den Sensor so zu platzieren, dass er nur Bewegungen zwischen bestimmten Räumen mitbekommt. Bei mir ist er so platziert, dass er nicht aktiviert wird, wenn ich vom Arbeitszimmer ins Schlafzimmer wechsel, da die beiden Räume direkt gegenüber liegen und hier das Anschalten durch die 1s, welche ich im Flur bin eher nervig ist als dass es hilfreich wäre..

Kleiner Tipp: Beim Konfigurieren ist es empfehlenswert, den Fibaro Motion Sensor direkt neben die Tastatur zu legen. So kann man bequem in der Oberfläche von fhem konfigurieren und die Tests mit einem einfachen Handwisch durchführen. 🙂

Zurück zum eigentlichen Thema: Wie kann ich Licht mit dem Fibaro Motion Sensor automatisch schalten? Das möchte ich Euch in diesem Artikel anhand der obigen Liste Stück für Stück erklären.

Grundkonfiguration

Um Licht mit dem Fibaro Motion Sensor automatisch schalten zu können, müssen wir zunächst ein paar grundlegende Parameter des Fibaro FGMS-001 einstellen. Ich nenne das Ganze Grundkonfiguration, da die ersten drei Punkte der Anforderungsliste damit abgeschlossen sein werden und wir so bereits rudimentär Licht mit dem Fibaro Motion Sensor automatisch schalten können.

Um diese drei Punkte geht es:

  • Das Licht ist aus, jemand betritt den Flur => Licht soll angehen
  • Das Licht soll nach 30 Sekunden automatisch wieder ausgehen
  • Das Licht ist an, und jemand befindet sich nach 30 Sekunden weiterhin im Flur => das Licht soll nicht ausgehen, sondern für weitere 30 Sekunden anbleiben

Inklusion

Zunächst einmal muss der FGMS-001 Bewegungsmelder in das Z-Wave Netzwerk eingebunden werden. Dies geht wie üblich, indem Ihr das Z-Wave Gateway in den Inclusion Mode setzt. Bei mir heißt es Zwave1:

Danach drückt Ihr am Fibaro Motion Sensor den B-Button 3x kurz hintereinander. Dieser ist in untenstehendem Bild oberhalb der Batterie zu erkennen. Achtet bei der Inklusion darauf, dass der FGMS-001 sich in Reichweite Eures Gateways befindet.

Lage des B-Buttons beim Fibaro Motion Sensor FGMS-001

Nun sollte der Fibaro Motion Sensors FGMS-001 unter Everything (und höchstwahrscheinlich auch unter ZWave) in der fhem Oberfläche erscheinen. Nennt Ihn nach Euren Vorstellungen um – ich habe ihn fl_MotionSensor genannt:

Detailliert ist das Ganze in der Anleitung von Fibaro beschrieben.

Als erstes widmen wir uns den „inneren Werten“ des FGMS-001, Also den internen Parametern.

Parameter des Fibaro Motion Sensors FGMS-001 einstellen

Die in diesem Abschnitt beschriebenen Einstellungen sind nicht zwingend notwendig, um Licht mit dem Fibaro Motion Sensor automatisch schalten zu können. Sie helfen aber, dei Batterielebensdauer des Bewegungsmelders signifikant zu verlängern, bzw. zu verhindern, dass Ihr durch unsachgemäße Konfiguration selbige stark verkürzt.

Wakeup Intervall einstellen – wakeupIntervall

Ein kleiner Tipp zum WakeUp Intervall: Standardmäßig ist dieses auf 7200s (zwei Stunden) gesetzt. Mir kam das am Anfang viel zu groß vor. Was man aber wissen muss: Immer, wenn sich ein Ereignisswert des Fibaro FGMS-001 ändert (Temperatur, Bewegung, Alarm, etc.), sendet er automatisch ein Update an das Gateway. D.h., nur wenn innerhalb von zwei Stunden nichts passiert ist (die Temperatur blieb gleich, kein Alarm wurde ausgelöst, nichts hat sich bewegt UND die Helligkeit blieb gleich), wird erst nach zwei Stunden eine Werteübertragung forciert.

Daher sollte man diese Grundeinstellung nicht verändern (außer man hat einen sehr guten Grund, z.B. Testen eines neuen Setups), da eine Verringerung dieses Werts zu einer deutlich geringeren Batterielebensdauer führt. Bei einem Wert von 1200s (= 20 Minuten), hielt die Batterie bei mir gerade einmal zwei Monate.

wakeupReport Ziel überprüfen und anpassen

Standardmäßig wird der Fibaro Motion Sensors FGMS-001 so eingebunden, dass er via broadcast versucht, das Gateway zu erreichen. Zunächst sollten wir daher den Broadcast abstellen und gezielt das Z-Wave Gateway benachrichtigen. Erkennen könnt Ihr das, wenn bei Euch in den Readings wakeupReport als letzten Parameter eine 255 stehen hat. Die 255 steht für Broadcast. Vermutlich steht bei Euch (wenn Ihr nichts verändert habt) dort: interval 7200 target 255.

Das Standardbenachrichtigungsintervall sollten wir, wie oben erläutert, bei 7200s belassen. In meinem Beispiel habe ich den Bewegungsmelder fl_MotionSensor genannt. Um Batterie zu sparen und die Routingfunktion des Z-Wave Netzwerks nutzen zu können, sollte unser FGMS-001 Bewegungsmelder direkt mit dem Gateway sprechen – und kein Broadcast ausführen. Das Z-Wave Gatewy hat für gewöhnlich die NodeID 1. Der entsprechende Befehlt sieht dann wie folgt aus:

configMotionAlarmCancelationDelay – Aktivierungsdauer des Bewegungsalarms anpassen

Standardmäßig ist der Motion Sensor so eingestellt, dass der Bewegungsalarm nach 30 Sekunden wieder ausgeht. Dies ist auch ein für mich passender Wert. Der Parameter kann in FHEM wie folgt angepasst werden:

Der FGMS-001 Bewegungsmelder bleibt nun 30 Sekunden lang im State open, ehe er wieder auf closed zurückschaltet. Wenn innerhalb dieser Zeit eine Bewegung erkannt wird, verlängert der Sensor die open Zeit automatisch wieder auf 30 Sekunden. Somit können wir über den Status open feststellen, ob sich gerade jemand im Erfassungsbereich des Sensors befindet.

configMotionSensorSBlindTime2 – „Blindzeit“ des Bewegungssensors einstellen

Um Batterien sparen zu können, wenn sich jemand im Raum aufhält, kann man dem Fibaro FGMS-001 mitteilen, dass er nach Auslösen des open Events für eine gewisse Zeit nichts tun soll – sich sozusagen blind stellen. Hierzu dient der Parameter configMotionSensorSBlindTime2. Ich empfehle den Sensor 10 Sekunden vor Ablauf des MotionAlarmCancelationDelays einzustellen. Steht dieser auf 30 Sekunden, so sollte die MontionSensorSSensitivity auf 20 Sekunden eingestellt werden: Update (09.05.2016) Der Maximalwert für den Parameter configMotionSensorSBlindTime2 ist 15. Daher empfehle ich hier, den Maximalwert, 15 Sekunden einzustellen. Vielen Dank an jeep aus dem fhem Forum für diesen Hinweis.

Innerhalb der 15 Sekunden kann dann auch ein „Husten“ im Z-Wave Netzwerk abgefangen werden und das Licht geht nicht aus, wenn sich noch jemand im Raum befindet.

Achtung: Innerhalb dieser 15 Sekunden ist der Sensor blind. D.h. findet eine bemerkte Bewegung das letzte mal nach 10 Sekunden seit der erstmaligen Aktivierung des open Events statt, so geht der Sensor nach insgesamt 30 Sekunden in den closed state und nicht wie manche vermuten mögen nach 40 Sekunden! Probiert einfach verschiedene Werte aus und wählt dann die für Euch passendste Kombination.

Parameter mittels forciertem Wakeup aktualisieren

Die Grundkonfiguration des Fibaro Motion Sensors FGMS-001 ist damit abgeschlossen. Bitte beachtet: Die neuen Parameter werden erst nach einem erfolgreichen Wakeup des FGMS-001 gesetzt! Dies könnt Ihr auch manuell forcieren. Hierzu gibt es einen schönen Thread im fhem Forum.

Von seiten des Bewegungsmelders ist nun alles vorbereitet, um Licht mit dem Fibaro Motion Sensor automatisch schalten zu können. Die Ereignisse open und closed müssen wir in fhem nun nur noch sinnvoll verarbeiten.

Grundkonfiguration in fhem

Der Fibaro Motion Sensors FGMS-001 schaltet mit obiger Konfiguration in den Status open, sobald eine Bewegung stattfindet und 30 Sekunden, nachdem er das letzte Mal eine Bewegung feststellen konnte, in den Status closed.

Diese beiden Ereignisse können wir nun in FHEM abfragen und an Ereignisse, z.B. das Schalten einer Lampe, koppeln. Das wäre bei dem Titel dieses Aritkels „Licht mit dem Fibaro Motion Sensor automatisch schalten“ hilfreich. 😉

DOIF – Dein Freund und Helfer

Innerhalb von fhem realisieren wir die Verknüpfung des Bewegungsmelders mit der Lampe über die DoIf Anweisung. Hier der Link zum DoIf-Wiki für die Interessierten.

Das Licht in meinem Flur wird über eine Wechselschaltung angesteuert. Um dieses über fhem schalten zu können, verwende ich den Fibaro FGS-221. Ich nutze den FGMS-001 auch, um einen Einfach Schalter (Fibaro FGS-212) im Gäste WC zu schalten. Mit dem Dimmer von Fibaro (Fibaro Dimmer 2 FGD-212) habe ich es noch nicht ausprobiert – ich wüßte aber nicht, warum das nicht auch funktionieren sollte. 🙂

Im Artikel Wechselschaltung ohne COM-Link mit Fibaro Switch habe ich den Anschluss bei mir im Flur beschrieben. Der entsprechende Aktor in FHEM heißt fl_Licht.

Was wir letztendlich benötigen, sind zwei DoIf Statements: Eines, welches auf das Event open des Fibaro Bewegungsmelders reagiert und eins, welches auf das Event closed reagiert:

Der Befehlt reagiert, sobald der Bewegungsmelder eine Bewegung registriert (Status: open). Ist das der Fall, wird das Licht angeschaltet (fl_Licht on).

Gleiches für den Befehl zum Ausschalten: Sobald der Bewegungsmelder vermeldet, dass innerhalb seines Sensorbereichs keine Bewegung mehr stattfindet, soll die Lampe wieder ausgeschaltet werden.

Nach Eingabe der beiden obigen Zeilen, sollte nun, sobald der Bewegungsmelder eine Bewegung registriert das Licht angehen. Sobald für 30 Sekunden keine Bewegung mehr registriert wird, geht das Licht 30 Sekunden später wieder aus.

Fertig! Wir können jetzt unser Licht mit dem Fibaro Motion Sensor automatisch schalten. 🙂

Allerdings gibt es noch ein paar Feinheiten zu beachten. Wenn wir die Schaltung so betreiben, um Licht mit dem Fibaro Motion Sensor automatisch schalten zu können, werden wir sehen, dass es noch nicht so ganz rund läuft. Daher widmen wir uns jetzt dem Finetuning…

Bereits eingeschaltetes Licht nicht ungewollt ausschalten

Was passiert, wenn das Licht im Flur an ist und in diesem Moment der Fibaro Bewegungsmelder eine Bewegung meldet? Mit unserer bisherigen Konfiguration ist es so, dass das Licht nach 30 Sekunden einfach ausgeschaltet wird. Dieser Effekt ist in obiger Situation sicherlich nicht erwünscht. Zum einen muss das Licht gar nicht erst aktiviert werden, wenn das open Event eintritt. Zum anderen muss es beim Eintreten des closed Events nur dann ausgeschaltet werden, wenn es zuvor an gewesen ist. Daher kümmern wir uns jetzt um den vierten Punkt unseres Szenarios:

  • Das obige Verhalten soll nur dann stattfinden, wenn nicht das Licht zuvor über einen Schalter manuell auf ein geschaltet wurde.

Betrachten wir zuerst den Einschaltvorgang, also die Aktion, welche beim Event open des FGMS-001 ausgeführt wird. An dieser Stelle können wir festhalten, ob das Licht bereits an war. Beim Ausschalten können wir auf diese Eigenschaft prüfen und abhängig davon das Licht ausschalten oder einfach nichts machen.

Hilfsvariable zur Speicherung der Schalterstellung

Zunächst benötigen wir eine Variable, in der wir speichern, ob das Licht durch den Bewegungsmelder angeschaltet wurde oder nicht:

Wir geben der Variablen den Wert „on“, wenn wir das Licht durch den Fibaro Bewegungsmelder einschalten und den Wert „off“, wenn wir es wieder ausschalten.

DoIfs mit korrekter Erkennung der Schalterstellung

So sehen die modifizierten Befehle zum automatisierten Ein- bzw. Ausschalten aus:

Das DoIf-Statement wird aufgerufen, sobald der Bewegungsmelder eine Bewegung registriert (open). Nun prüfen wir, ob das Licht aus ist – ansonsten brauchen wir es ja nicht zu schalten. Sind beide Bedingungen erfüllt, schreiten wir zur Tat: Licht anschalten und in unserer Hilfsvariablen speichern, dass wir den Einschaltvorgang durch den Bewegungsmelder getriggert haben.

Dieses DoIf-Statement wird aufgerufen, sobald der Fibaro Motion Sensor unscharf wird (closed). Das passiert 30 Sekunden, nachdem keine Bewegung mehr wahrgenommen wurde. Um zu wissen, ob das Licht auch wirklich ausgeschaltet werden muss, fragt die Bedinugng den Status unserer Hilfsvariablen ab. Nur wenn diese auf on steht – und das sollte nur der Fall sein, wenn das Licht durch das erste DoIf angeschaltet wurde – wird das Licht ausgeschaltet und gleichzeitig unsere Hilfsvariable wieder auf off zurückgesetzt.

Diese Konfiguration erfüllt die Aufgabe, Licht mit dem Fibaro Motion Sensor automatisch schalten, schon sehr gut.

Wir können noch weiter feintunen…

Nur unterhalb eines bestimmten Helligkeitswert schalten

Auch wenn wir jetzt Licht mit dem Fibaro Motion Sensor automatisch schalten können: Wir wollen im nächsten Schritt die Schaltung um die Überprüfung der aktuellen Helligkeit erweitern, also den nächstern Punkt unserer Liste:

  • Das obige Verhalten soll nur dann stattfinden, wenn die Helligkeit im Flur unterhalb von 50 Lux ist.

implementieren.

Kleiner Tipp vorweg: Beachtet, dass die Helligkeit an der Stelle, wo sich der Bewegungsmelder befindet und demzufolge auch misst eventuell anders ist als die, die Ihr mitten in dem Raum, der automatisch beleuchtet werden soll, wahrnehmt. Hier ist ein wenig Ausprobieren angesagt, um den optimalen Helligkeitswert für Euer Szenario zu ermitteln.

Der Fibaro FGMS-001 misst ebenfalls die Helligkeit. Dies wird in der Eigenschaft „luminance“ zurückgegeben. Wir müssen die Abfrage demzufolge einfach zu unseren Bedingungen im Einschaltvorgang hinzufügen:

Das war doch einfach, oder? 🙂

Einen können wir aber noch draufsetzen…

Zeitfenster definieren

Es macht durchaus Sinn, ein automatisch geschaltetes Licht nur zu bestimmten Zeiten angehen zu lassen. Z.B. nicht in der Nacht, wenn andere Bewohner durch ein automatisch angehendes Licht gestört werden könnten.

Dies entspricht dem Punkt aus unserer Liste:

  • Das obige Verhalten soll nur in der Zeit von 8:00h bis 01:00h stattfinden. Ansonsten bleibt das Flurlicht aus, um nicht die Nachtruhe der anderen Bewohner zu stören.

Ein Zeitfenster lässt sich sehr einfach in einem DoIf-Statement integrieren, welches wir als weitere Bedingung in das DoIf für das Anschalten hinzufügen. Der Übersichtlichkeit halber definiere ich Zeitfenster immer zu Beginn einer DoIf-Abfrage; prinzipiell sind alle mit and verknüpften Bedinungen gleichrangig:

Das war es auch schon!

So macht Licht mit dem Fibaro Motion Sensor automatisch schalten doch Spaß, oder?

Fazit

Wir haben einen Fibaro Motion Sensors FGMS-001 so in FHEM konfiguriert, dass er abhängig von der Zeit, der Helligkeit, der Länge, die eine Person im Raum verbringt, sowie des Zustands des angesprochenen Lichtschalters (gesteuert über einen Fibaro FGS-221) eine Lampe für eine bestimmte Zeit an und dann wieder ausschaltet.

Durchaus kann man das Skript so modifizieren, dass der Fibaro Motion Sensor einen Fibaro Dimmer 2 schaltet. Hier könnte man dann in Abhängigkeit von der Tageszeit und der gemessenen Umgebungshelligkeit die Dimmhelligkeit einstellen. Leider sind die Lampen bei mir im Flur nicht dimmbar, weshalb ich das nicht implementiert habe.

Wenn genügend Interesse besteht, kann ich das Vorgehen, um Dimmer-Licht mit dem Fibaro Motion Sensor automatisch schalten zu können gerne in einem anderen Artikel beschreiben.

Ich hoffe, Euch hat der Artikel gefallen. Über konstruktives Feedback sowie eine Weiterempfehlung in den Sozialen Channels Eurere Wahl freue ich mich!

Bezugsquellen

Für die Realisierung zur Steuerung des Flurlichts mit dem Fibaro Motion Sensor habe ich folgende Hardware verwendet (alles Affiliate Links).

Die Batterie war bei meinem Motion Sensor dabei. Daher benötigt man die Ersatzbatterien zu Beginn erst einmal nicht. Andererseits ist es schon nervig, wenn man sich an die automatische Steuerung gewöhnt hat, die Batterien alle sind und man dann für die Übergangszeit, bis die Ersatzbatterien da sind, wieder „normal“ schalten muss. 🙂

Folgende Hardware habe ich bereits erfolgreich mit dem Fibaro Motion Sensor FGMS-001 in der Wohnung kombiniert:

 

 

Print Friendly, PDF & Email