Lars Gregori SAP Hybris

Node-RED ist ideal, um schnell einen IoT-Prototypen mit einem Schalter und einer Leuchtdiode aufzubauen.

Node-RED ist ein visuelles Tool, mit dem sich IoT-Prototypen erstellen lassen, indem es Onlineservices, APIs und Hardwaregeräte miteinander grafisch verbindet. Dieser Artikel geht zunächst auf Node-RED ein, zeigt, wie sich ein einfacher „Flow“ anlegen lässt, Node-Module installiert und schließlich eigene Nodes geschrieben werden.

Das Open-Source-Tool Node-RED steht unter der Apache-2.0-Lizenz und wird hauptsächlich von IBM Emerging Technologies entwickelt. Serverseitig basiert es auf Node.js, während der Browser die grafische Oberfläche darstellt. Mit Node-RED können in einem Flow verschiedene Eingabe-, Ausgabe- und Processing Nodes miteinander verbunden werden. Dadurch lassen sich Daten verarbeiten, verschiedene Dinge kontrollieren und steuern.

Die Node-RED-Oberfläche besteht aus drei Hauptbereichen, dem Node-Panel, dem Sheets-Panel und dem Info- und Debug-Panel. Das Node-Panel ist auf der linken Seite und enthält eine Liste der installierten und zur Verfügung stehenden Nodes. Diese werden in jeweilige Kategorien, wie zum Beispiel Eingabe- und Ausgabekategorien, gruppiert. Das Sheets-Panel in der Mittel definiert die so genannten Flows. Hier werden durch Drag and Drop die Nodes vom Node-Panel hineingezogen, miteinander verbunden und konfiguriert. Das Info- und Debug-Panel auf der rechten Seite ist in Tabs unterteilt. Der Infobereich zeigt für einen ausgewählten Node dessen Beschreibung an. Im Debug-Panel werden die Ausgaben der Debug Nodes oder interne Fehler aufgelistet.

Installation von Node-RED

Node-RED benötigt Node.js und den Package-Manager npm. Sie müssen auf dem System installiert sein. Eine ausführliche Installationsanleitung ist auf der Getting-Started-Seite von Node-RED zu finden. Nach der Installation und dem Start ist Node-RED standardmäßig im Browser unter http://localhost:1880 erreichbar.

Auf der aktuellen Raspbian Version, bei der es sich um ein Debian-Betriebssystem für den Raspberry Pi handelt, ist Node-RED bereits vorinstalliert. Node-RED bietet auch eigene Nodes für den Raspberry Pi an, um zum Beispiel auf die GPIO-Pins des Raspberry Pi zuzugreifen.

Flow anlegen

Node-RED Nodes verschicken untereinander Message-Objekte, bei denen es sich um JSON-Daten handelt, die einen payload-Parameter enthalten (siehe Screenshot im Debug-Panel).

Input-Nodes, die am weißen Quadrat an der rechten Seite zu erkennen sind, erzeugen Daten, die als Eingabe für eine oder mehrere Output-Nodes dienen. Bei Output-Nodes hingegen liegt das Quadrat auf der linken Seite, und sie verarbeiten die eingehenden Daten. Processing Nodes sind an den weißen Quadraten auf beiden Seiten zu erkennen. Sie lesen die Eingabedaten der Input-Nodes, verarbeiten sie (intern) und geben das Ergebnis an einen Output-Node oder weitere Processing Nodes weiter. Dadurch lassen sich zum Beispiel Daten in andere Formate umwandeln.

Den vollständigen Artikel lesen Sie in der Ausgabe:

Entwickler Magazin 2.17 - "Der Widerspenstigen Zähmung"

Alle Infos zum Heft
579764716Mit Node-RED IoT-Prototypen erstellen
X
- Gib Deinen Standort ein -
- or -