Was ist Node-RED

Werbung
Smarthome-Training-openHAB2-Kurs-de

Was ist Node-RED?

Im heutigen Beitrag beantworte ich die Frage „Was ist Node-RED“? Ihr erfahrt ein wenig über die Geschichte und erstellt euren ersten Flow.

Was ist Node-RED – Geschichte

Nod-RED wurde von IBM in 2013 entwickelt. Bereits 2013 wurde es Open Source und somit einer breiten Masse zur Verfügung gestellt. 2016 wurde Node-RED Teil der JS Foundation.

Werbung
Smarthome-Training-openHAB2-Kurs-de

Was ist Node-RED – Funktionsweise

Der Hauptfokus liegt auf der Verbindung von Hardware, Schnittstellen und Services so wie wir sie in der neuen Welt der Internet of Things (IoT) kennen. Node-RED nutzt dabei eine grafische Programmierung. Einige kenne die visuelle Programmierung von Blockly. Node-RED ist dabei aber völlig andres. Es nutzt dabei sogenannte nodes, welche zu einem flow verbunden werden. Durch die logische Verknüpfung der nodes in der Oberfläche lassen sich so einfache bis hin zu komplexen Programmabläufen realisieren. Allerdings ist Node-RED dabei durchaus mächtiger als Blockly, da ihr hier auch Erweiterungen installieren könnt. So lässt sich z.B. auch eine KNX-Installation mit Node-RED steuern oder openHAB 2 integrieren. Falls ihr etwas bestimmtes anbinden wollt, lohnt sich daher immer ein Blick in die Node-RED Bibliothek. Hier findet ihr nodes und flows von anderen Nutzern. 

Node-RED – Installation

Node-RED kann im Grunde auf beliebiger Hardware installiert werden, welche in der Lage ist Linux (Debian, Ubuntu), OSX oder Windows auszuführen. Im Beitrag  Node-RED in Docker installieren ist beschrieben wie ihr Node-RED unter Docker installiert. Auch eine direkte Installation auf einem Raspberry Pi ist möglich. Ansonsten bietet die Node-RED Dokumentation eine gute Grundlage wie er dies unter den verschiedenen Betriebssystemen umsetzt. 

Node-RED – Die Programmieroberfläche

Nach der Installation erreicht ihr die grafische Programmieroberfläche von Node-RED durch Aufruf der IP gefolgt vom Standard Port 1880

Die Oberfläche teilt sich in 4 Bereiche. 

  1. Menüleiste
  2. Palette mit Nodes
  3. Flow Bereich
  4. Seitenleiste mit z.B. Infos, Debug Meldungen
node-red-user-interface-ui

Node-RED – Der erste Flow

what-isa-node-red-first-flow

Damit ihr ein besser Verständnis von Node-RED bekommt, erstellen wir unseren ersten flow. Als erstes klickt einfach mit der linken Maustaste (1) auf die Inject node (Bereich 2) und zieht diese in den Flow (Bereich 3). Die Seitenleiste (Bereich 4) mit den Infos wird sich direkt anpassen. Wenn die nodes richtig eine Hilfe (2) haben, seht ihr diese direkt in der Seitenleiste.

node-red-first-flow-1

Zweitens zieht eine debug node in den flow. Eure Flow sollte nun wie folgt aussehen.

node-red-first-flow-2

Als drittes verbindet die nodes miteinander. Eine Verbindung stellt ihr her, indem ihr von den Ausgang (1) mit der linken Maustaste anklickt und zu einem Eingang (2) zieht. 

node-red-first-flow-3

Im Anschluss sollte eine Linie (1) zwischen den nodes sein. Weiterhin müsste ihr die Änderungen noch implementieren. Hierfür drückt auf deploy (2)node-red-first-flow-4

Glückwunsch ihr habt nun bereits den ersten Fluss erstellt, der über eine inject node einen Zeitstempel an eine debug node weitergibt. 

Im Anschluss testet die Funktion, in dem ihr auf dem ihr das Debugfenster (1) öffnet. Im Anschluss drückt auf den Knopf links (2) von der inject node. Das Ergebnis seht ihr direkt in der Seitenleiste (3). Nicht wundern, der Zeitstempel ist in Millisekunden angegeben und entspricht dem aktuellen Datum und der Uhrzeit. Wenn ihr auf die blaue Schrift klickt, könnt ihr das Anzeigeformat ändern.

node-red-first-flow-5

Falls ihr nun anstatt des Zeitstempels einen anderen Wert einfügen wollt, klickt doppelt auf die inject node.

Hier könnt ihr den zu übergebenden Wert unter Payload (1) ändern.

node-red-first-flow-6

Wählt hier z.B. string (Zeichenkette) aus tragt als Wert „Hallo“ (1) ein. Im Anschluss klickt Done (2).

node-red-first-flow-7
Tipp
Nach jeder Änderung, müsst ihr Deploy drücken, da ansonsten die Änderung nicht wirksam ist. Ihr erkennt, ob Änderungen implementiert werden müssen, wenn der Deploy Knopf aktiv (rot) ist. Die einzelnen Änderungen im Flow erkennt ihr an kleinen blauen Punkt im Flow.

Nachdem wir die inject node wieder ausgeführt haben sehen wir den Text „Hallo“ (1) im debug Fenster.

node-red-first-flow-8

Ich hoffe ihr habt verstanden was Node-RED ist und wie es Grundlegend funktioniert. So langweilig der erste Flow auch ist, er bildet das Grundverständnis der Funktionsweise. 

Ich bin Thomas. Ich bin hauptberuflich SAP Berater und Softwareentwickler. Das Thema Smart Home hat mich nach der Sanierung unseres 60er Jahre Hauses gepackt. Es wurde alles in Eingenleistung geplant und die Buskabel verlegt. Ich betreibe seit einiger Zeit einen openHAB 2 Praxis Blog. Hier schreibe ich Schritt für Schritt Anleitungen (Tutorials) zur Umsetzung des eigenen Smart Home. Weiterhin engagiere ich mich in unserem MyFreeLife e.V. und helfe bei der Erstellung barrierefreier Smart Homes. Nun wird es Zeit mein breites Wissen im Bereich Smart Home mit Euch zu teilen.

Was meint ihr dazu?

    Hinterlasse einen Kommentar