Node Red Einführung

4 Minuten zum lesen

console.log('It´s time to code');

Heute möchte ich euch eine kurze Einführung in Node-RED geben. Node-RED ist ein Visuelles Tool um einfache und anspruchsvolle Anwendungen für das “Internet der Dinge” kurz. IOT zu schaffen. Node-RED baut auf die leichtgewichtige Node.js Laufzeitumgebung auf die als Grundlage zum ausführen des erzeugten Javascript code von Node-RED dient. Dadurch ist die Ausführung auf verschiedensten Hardwareplattformen möglich.

Kompatible Node-RED Hardware:

Meine Aufmerksamkeit hat Node-RED geweckt weil es unglaublich schnell und einfach einsatzbereit ist und eine breite Palette an Funktionen abdeckt die im Bereich IOT gefordert sind. In der NPM Bibliothek sind bereits über 120,000 Module zu finden um die Funktionen von Node-RED zu erweitern.

image-center

nodered.org

Node-RED Quellcode auf Github Node-RED Quellcode

Installation Node.js

Bevor wir mit der Installation von Node-Red starten können müssen wir noch Node js installieren. Hierzu braucht ihr nur dem unten aufgeführten Link für euer Betriebssystem folgen. Ist Node.js bereits auf euren Computer installiert könnt ihr diesen Punkt überspringen und mit der Installation von Node-Red Fortfahren.

Node.js Installation Ubuntu
Node.js Installation Windows
Node.js Installation OSX

Um zu überprüfen das Node.js ordnungsgemäß installiert ist reicht folgende Befehl.

$ node -v
v4.4.7

Es sollte nun die aktuelle installierte Version von Node.js ausgegeben werden.

Installation Node-RED

Um Node-Red zu installieren reicht es die unten angeführten Befehle in das Terminal einzugeben.

$ sudo npm install -g node-red
$ node-red

Wurde die Installation von Node-RED Erfolgreich Abgeschlossen sollte folgende Ausgabe im Terminal erscheinen.

Welcome to Node-RED
===================

20 Oct 17:50:51 - [info] Node-RED version: v0.14.5
20 Oct 17:50:51 - [info] Node.js  version: v4.4.7
20 Oct 17:50:51 - [info] Linux 4.4.0-43-generic x64 LE
20 Oct 17:50:51 - [info] Loading palette nodes
20 Oct 17:50:53 - [warn] ------------------------------------------------------
20 Oct 17:50:53 - [info] Settings file  : /home/dgrill/.node-red/settings.js
20 Oct 17:50:53 - [info] User directory : /home/dgrill/.node-red
20 Oct 17:50:53 - [info] Flows file     : /home/dgrill/.node-red/flows_ServerGrill.json
20 Oct 17:50:53 - [info] Server now running at http://127.0.0.1:1880/
20 Oct 17:50:53 - [info] Starting flows
20 Oct 17:50:53 - [info] Started flows

Ersten Flow Erstellen

Erreichbar ist Node-RED nun unter http://127.0.0.1:1880/

Nun sollte folgende Seite im Browserfenster aufgerufen werden.

placeholder-1

Auf der linken Seite sehen wir ein Menü wo alle Steuerelemente nach Gruppen (input, output, function usw.) sortiert diese können einfach per Drag und drop auf dem Flow Board platziert werden. In der Mitte befindet sich das Flow Board wo alle Steuerelemente frei platziert werden können.

Auf der rechten Seite gibt es einmal das Info Fenster und das wohl wichtigste Fenster Debug. Gleich darüber befindet sich der Deploy Button der jetzt noch grau hinterlegt ist. Und genau das wollen wir jetzt ändern :)

Zum Einstieg wollen wir “Hello Node-RED” im Debug Fenster ausgeben. Hierzu ziehen wir uns das inject Steuerelemente von der rechten Seite auf das Flow Board.

placeholder-2

Durch einen Doppelklick auf das Steuerelemente öffnet sich der Eigenschaften Dialog. Hier wählen wir bei Payload die Eigenschaft string, und geben “Hello Node-RED” ein. Anschließend speichern wir die eingabe durch das Drücken des Button Done.

placeholder-2

placeholder-2

Jetzt ziehen wir uns das Steuerelemente Debug auf das Flow Board, und verbinden einfach beide Elemente mit der Maus.

placeholder-2

Jetzt brauchen wir nur noch den Button Deploy drücken und die Anwendung wird generiert. Um jetzt die Meldung in das Debug Fenster zu schreiben genügt ein Klick auf den Inject Button und es sollte nun Hello Node-RED in der Debug Konsole ausgegeben werden.

placeholder-2

Import eines Flows

Ein Flow kann ganz einfach über die Optionen in der rechten oberen ecke importiert werden. Im sich nun öffnenden Dropdown Menü wähl man die Option Import > Clipboard.

placeholder-2

In den nun geöffneten Dialog kopieren wir folgendes:

[{"id":"58c77306.a9bc6c","type":"inject","z":"f2cee3fc.2d2df8","name":"","topic":"",
"payload":"Hello Node-RED","payloadType":"str","repeat":"","crontab":"",
"once":false,"x":156,"y":128,"wires":[["8b5d31de.8a8bb"]]},
{"id":"8b5d31de.8a8bb","type":"debug","z":"f2cee3fc.2d2df8",
"name":"","active":true,"console":"false","complete":"false","x":407,"y":128,"wires":[]}]

placeholder-2

placeholder-2

Die nun importierten Elemente können nun frei am Flow Board platziert werden.

console.log('See you !');

Mehr Informationen

Hier findet ihr eine Menge Beispiele die ihr ganz einfach über die Importfunktion importiert könnt.
Node-RED Library

Ein sehr guter Guide zum Einstieg in Node-RED
Node-RED Guide

NPM Package zum erstellen eines schnellen User interfaces (UI)
Node-RED UI NPM Package

Aktualisiert: