ioBroker Node-RED – Teil 8.2 – Lichtsteuerung über Astrofunktion

In diesem Teil der ioBroker Node-RED Artikelreihe zeige ich Dir, wie Du Node-Red in ioBroker verwenden kannst.

Im Teil 8.2 der ioBroker Node-RED Artikelreihe werden wir uns ein weiteres Beispiel der Lichtsteuerung ansehen. In diesem Beispiel basiert die Steuerung eines Leuchtmittels auf dern Astro-Funktionen. Über einen zusätzlichen Node, welchen wir im ersten Schritt gemeinsam installieren werden, können aufgrund der angegebenen GPS-Koordinaten des Standorts verschiedene Tageszeiten ermittelt werden. So werden wir in der Dämmerung das Licht im Esszimmer einschalten.

 

Im ersten Schritt öffnen wir nun die Node-Einstellungen unter „Manage Palette“.

 

Auf dem Fenster wechseln wir auf die Tab-Lasche „Install“ und suchen über die Suchfunktion nach „node-red-contrib-schedex“. Über die Schaltfläche „install“ können wir den Node nun zu unserer Node-RED Instanz hinzufügen. Wir können dann das Fenster über die Schaltfläche „Close“ schließen und mit der Implementierung des Flows beginnen.

 

Wir können die Steuerung in einem bestehendem Flow implementieren, oder dafür einen neuen Flow anlegen. Im ersten Schritt fügen wir nun den Node „schedex“ ein. Der Node fungiert als Input-Node, da er aufgrund der Astrofunktion ausgelöst wird.

 

Im nächsten Schritt fügen wir nun unser zu steuerndes Licht ein und verbinden es wie angegeben mit dem Schedex-Node.

 

Jetzt beginnen wir mit der Konfiguration des Astrofunktion. In der Konfiguration des Schedex-Nodes können wir zunächst einen Namen vergeben. Zusätzlich können hier auch die Wochentage gewählt werden, an denen der Node aktiv sein soll. Ich belasse das hier bei allen Tagen. Um die genaue Sonnenposition ermitteln zu können wird zudem die GPS-Koordinate benötigt. Diese könnt ihr euch z.B. über Google Maps ermitteln. Achtet bei der Eingabe darauf hier ein Punkt und kein Komma zu verwenden.

 

Wenn wir auf dem Fenster weiter scrollen sehen wir nun die On- und Off-Konfiguration der Node. Hier definieren wir zunächst die Einschaltzeit (On time). Optional kann der Topic sowie der Payload (true = einschalten) definiert werden. Als „On time“ verwende ich hier „sunsetStart“, da das Licht in der Dämmerung eingeschaltet werden soll. Am Ende des Artikels hänge ich eine Tabelle mit allen verfügbaren Werten an. Zudem können wir hier auch eine direkte Stunden-und Minutenangabe definieren. Über die Einstellung „On offset“ kann zudem ein Offset in Minuten definiert werden, um den Einschaltzeitpunkt zu verschieben (+/- Minuten). Mit dem Haken „Use random on time within offset period“ können wir definieren, dass innerhalb des Zeitfensters (Einschaltzeit – Offset) der Event zu einem zufälligen Zeitpunkt ausgelöst und somit das Leuchtmittel eingeschaltet werden soll.

 

Die selben Einstellungen können wir zudem für die „Off time“ (Ausschaltzeit) definieren. Als „Off payload“ verwenden wir hier „false“.

 

Der Payload muss natürlich immer an den jeweiligen Aktor angepasst werden. (true, false, on, off, 0, 1, etc. )

 

Der Flow sieht nun wie folgt aus:

 

Tabelle der verfügbaren Zeitpunkte

Quelle: https://flows.nodered.org/node/node-red-contrib-schedex

 

 

 

 

Über Kommentare unterhalb des Artikels oder per E-Mail freue ich mich wie immer 🙂

 

 

 

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.

Ein Gedanke zu „ioBroker Node-RED – Teil 8.2 – Lichtsteuerung über Astrofunktion

  • 8. Dezember 2019 um 18:05
    Permalink

    Hallo,

    ich kann auch nur die Node-Sammlung node-red-contrib-sun-position empfehlen. Damit gibt es alle Möglichkeiten der Astrosteuerung. Ob ein Inject Knoten oder eine Art zeitabhängiger switch Knoten, alles was Zeit und Astro-Steuerung möglich ist.

    Gruß

    Antwort

Schreibe einen Kommentar

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