Blockly – Beispiel – ComingHome

In dieser Artikelserie möchte ich das Thema Blockly in ioBroker näher erklären. Im Artikel zeige ich euch mein Coming Home Script zur Lichtsteuerung.

Einführung

In dieser kurzen Einführung erkläre ich den Hintergrund für dieses Script. Wenn meine Frau oder ich abends nach Hause kommen soll automatisch im Vorgarten das Licht eingeschaltet werden. Sobald dann die Haustür geöffnet wird, soll das Licht wieder ausgeschaltet werden. In der Haussteuerung ist eine Anwesenheitserkennung integriert, wodurch ich über einen entsprechenden Datenpunkt ermitteln kann welche Person den definierten GPS-Bereich betritt. Zudem wird die gesamte Vorgarten-Beleuchtung über HomeMatic gesteuert. An der Haustür ist ein Türsensor installiert, wodurch das Öffnen der Haustür erkannt werden kann. Somit muss ich im nächsten Schritt nur noch alle Komponenten miteinander verbinden.

Hier findet Ihr den Artikel zur ioBroker Anwesenheitserkennung mit IFTTT:

Script

Das Script zur Steuerung der Beleuchtung ist relativ einfach. In der Erklärung unterhalb des Scripts werden die einzelnen Bereiche erläutert.


Erklärung des Scripts

Das Script besteht aus zwei Triggern. Im ersten Trigger wird die Anwesenheit der Personen getriggert. Sobald sich der Wert ändert, wird das Script im Aktionsbereich des Triggers ausgeführt. Im ersten Schritt prüfe ich über einen „falls“ Block ob der Wert auf wahr (true) geändert wurde. Im nächsten „falls“ Block wird der Sonnenstand geprüft. Hierbei steht in einem Datenpunkt der jeweilige Sonnenstand zur Verfügung, mit dem die Astrozeit „night“ (Nacht) erkannt werden kann. Wenn der Sonnenstand auf „night“ steht, wird die Beleuchtung des Vorgartens aktiviert. Zudem wird in einem Datenpunkt der „ComingHome“ Status aktiviert. Mit diesem Status kann ich nun bei der Öffnung der Haustür entsprechend reagieren.

Im Trigger des Haustür-Sensors kann ich nun überprüfen, ob der ComingHome Status aktiv ist. Wenn der Status aktiv ist, wird die Vorgarten-Beleuchtung mit einer Verzögerung von 5 Sekunden ausgeschaltet. Zudem wird der Datenpunkt wieder auf „unwahr“ „false“ gesetzt.

Download

Blockly - Beispielscript - ComingHome (379 Downloads)

Matthias Korte

Hauptberuflich Software-Entwickler und seit einigen Jahren Smart-Home Fan. Angefangen hat alles mit einem RaspberryMatic und einer schaltbaren Steckdose. Mittlerweile habe ich einige Steckdosen, Sensoren, und Thermostate sowie ioBroker zur Visualisierung im Einsatz.

3 Gedanken zu „Blockly – Beispiel – ComingHome

  • 27. Oktober 2019 um 22:03
    Permalink

    Welchem Objekt/Datenpunkt oder was auch immer sind die Objekt ID’s „Matthias/Jasmin“ zugeordnet?

    Antwort
    • 29. Oktober 2019 um 6:16
      Permalink

      Moin,

      das sind eigene Datenpunkte, in denen ich den Anwesendheits-Status (true/false) der jeweiligen Person im Haus speichere. Ich werde dazu demnächst einen Artikel veröffentlichen 🙂

      Viele Grüße,
      Matthias

      Antwort
  • 6. Juni 2020 um 11:44
    Permalink

    Hallo Matthias,
    erst einmal vielen Dank für diese schöne Seite mit vielen Tipps!

    Ein grundsätzliche Frage zu Blokly: Hier – wie auch bei anderen Beispielen, hast Du zwei Scripte mit unterschiedlichen Triggern offenbar als eins abgespeichert. Kann man das beliebig so machen? Gibt es eine Reihenfolge, max. Anzahl von Blocklys oder so? Gelten definierte Variable für alle Blöcke?

    Freue mich über einen kurzen Kommentar
    Gruß Thilo

    Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.