PUZZELN FÜR FORTGESCHRITTENE – NODE-RED I

Mitte 2020 haben wir euch im Artikel PUZZELN KINDERLEICHT – die Rule-Engine vorgestellt, wie mit der in SEVEN|O integrierten Rule-Engine eigene Logiken kinderleicht durch Zusammensetzen von Puzzleteilen abgebildet werden können.

Um die kinderleichte Bedienung zu ermöglichen musste jedoch enormer Aufwand ins Backend gesteckt werden. Der Zeitaufwand und die Tatsache, dass sich das von IBM entwickelte und 2016 als Open-Source-Projekt an die JS-Foundation übertragene grafische Entwicklungswerkzeug Node-RED auf dem Markt durchgesetzt hat, führt dazu, dass wir Node-RED einsetzen werden. Aktuell sind wir dabei, eine SEVEN|O Anbindung zu implementieren.

Aber der Reihe nach – Was ist eigentlich Node-RED?

Node-RED ist eine auf Node.js basierende IoT-Automatisierungssoftware, deren Fokus darauf liegt, Hardware, Schnittstellen und Services grafisch zu verbinden. Node-RED besteht aus einer vielfältigen Palette an „Nodes“, die dann per grafischem Editor zu einem „Flow“ kombiniert werden können. Einer der großen Vorteile dieser Lösung ist dabei die Tatsache, dass das Node-RED-Backend welches für die Auswertung der Flows verantwortlich ist, durch eine große Community getrieben und weiterentwickelt wird. Das führt dazu, dass das Backend robust und hochperformant ist und darüber hinaus auch in Zukunft weiter gepflegt werden wird.

Ein Node bildet dabei entweder einen Eingang, Ausgang, Timer oder eine Funktion ab. Ein paar Beispiele sind unter anderem ein einfaches zeitgesteuertes Ereignis, ein Logik-Gatter wie ein logisches UND, eine einfache Log-Nachricht oder eben Schnittstellen wie z.B. zu KNX, DALI, oder eben SEVEN|O.

Ein Flow ist dabei die Verbindung mehrerer Nodes, die dann gemeinsam eine Logik abbilden und das Smart-Home automatisch kontrollieren und steuern können.

Wer sucht nicht nach neuen Herausforderungen? Wer kennt es nicht: Immer schneller, immer mehr Teile, immer kompliziertere Motive?

Nein, das soll nicht heißen, dass die Verwendung von Node-RED nur von Puzzle-Profis verwendet werden kann. Jedoch kann es sein, dass es den einen oder anderen Versuch benötigt, bis die richtigen Puzzleteile (Nodes) zusammenpassen. Das liegt zum einen daran, dass Node-RED von Haus aus extrem viele unterschiedliche Puzzleteile (unterschiedlichster Technologien und IoT-Komponenten) bereitstellt und zum anderen sämtliche Puzzleteile verbunden werden können.
Ist jedoch das Grundgerüst analog zum Puzzlerand gelegt, dann können auch die komplexesten Puzzlemotive (ja, damit meine ich Logiken) gelöst werden. Und genau das ist auch der Hauptgrund warum wir Node-RED verwenden werden. Mit der grafischen Entwicklungsumgebung ist der Komplexität der Logiken keine Grenze gesetzt – es gilt also „immer schneller, immer mehr, immer größer“.

Ein einfaches Beispiel

In diesem einfachen Beispiel geht es um die Steuerung der Weihnachtsbeleuchtung.

Zum einen gibt es zwei zeitgesteuerte Trigger, welche um 0 Uhr die Weihnachtsbeleuchtung aus und um 4 Uhr morgens wieder einschaltet.

Ein bisschen komplizierter wird es nun beim abendlichen bzw. morgendlichen Ein- bzw Ausschalten. Hierzu wird nun der aktuelle Helligkeitswert der Wetterstation berücksichtigt. Sobald die Abenddämmerung erkennbar einsetzt, wird die Weihnachtsbeleuchtung eingeschaltet. In diesem Beispiel haben wir festgelegt, dass wir die Weihnachtsbeleuchtung einschalten, sobald der Helligkeitswert 50 Lux unterschreitet. Überschreitet der Helligkeitswert am nächsten Morgen 50 Lux, dann wird die Weihnachtsbeleuchtung wieder ausgeschaltet.

Im nächsten Artikel werde ich auf die SEVEN|O Anbindung eingehen. Darüber hinaus werden wir uns im Detail anschauen wie auf Sensordaten, die von SEVEN|O publiziert werden, reagiert werden kann und wie Aktionen ausgeführt werden können.

By Published On: 30.1.2021Categories: Blog, KNX, Node-RED, SEVEN|O, Smart Home0 Comments