Node-RED ist ein Programmiertool zum Verbinden von Hardwaregeräten, APIs und Onlinediensten auf neue und interessante Weise. Über einen browserbasierten Editor können Objekte (Flows) mit einer Vielzahl von verfügbaren Objekten verbunden werden.
Innerhalb des Editors können Funktionen mit einem erweiterten Texteditor geschrieben werden. In einer integrierten Bibliothek können Sie nützliche Funktionen, Vorlagen oder Streams für deren Wiederverwendung speichern. Die Laufzeit basiert darauf, dass Node.js sein ereignisbasiertes nicht blockierendes Modell voll ausnutzt. Mit einem Repository von mehr als 225.000 Node-Paketmodulen können problemlos neue Funktionen hinzugefügt werden.
Installation
Da Node-RED auf Node.js basiert, muss es installiert werden, um direkt oder über eine SSH-Verbindung mit Putty auf die Unix-Shell (Bash) zuzugreifen. Hier sind die zu verwendenden Befehle.
sudo apt-get update sudo apt-get dist-upgrade curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt-get install -y nodejs
Nach Abschluss der Installation können Sie die installierte Version überprüfen.
node -v npm -v
Wenn alles gut gegangen ist, können Sie Node-RED mit dem folgenden Befehl installieren weitere Informationen.
sudo apt install build-essential git sudo apt-get install nodered
So stellen Sie die automatische Ausführung beim Einschalten ein oder brechen sie ab:
sudo systemctl enable nodered.service Attiva esecuzione automatica sudo systemctl disable nodered.service Disattiva esecuzione automatica
Nach Abschluss der Installation können Sie Node-RED mit den folgenden Befehlen ausführen und stoppen:
node-red-start To start Node-RED node-red-stop To stop Node-RED node-red-log To view the recent log output
Nach dem Start des Dienstes kann über einen Browser eine Verbindung zur IP-Adresse des 1880-Port-Systems hergestellt werden (Beispiel: http://xxx.xxx.xxx.xxx:1880). Hier ist die Anzeige eines einfachen Programmablaufs, der alle 10 Sekunden die Temperatur des Raspberry-Prozessors benötigt und diese im Debug anzeigt.
Programm importieren / exportieren
Es sind viele Websites online folgendermaßen In der Erläuterung zur Verwendung von Node-RED wird das Importieren / Exportieren eines Programms beschrieben.
Um ein Programm zu importieren, kopieren Sie das Programm aus einem Texteditor in die Zwischenablage Import->Clipboard überträgt es in den Programmstrom.
Um ein Programm zu exportieren, wählen Sie die Objekte aus dem Programmfluss aus, den Befehl Export->Clipboard überträgt sie in die Zwischenablage, die Sie in einem Texteditor speichern können.
Beispielprogramm
Hier ist ein Programm, das jede 10-Sekunde die Raspberry-Prozessortemperatur erkennt, den Code in die Zwischenablage kopiert und ihn dann in einen leeren Stream importiert.
[{"id":"4fc6081.04873f8","type":"inject","z":"7ee6a4a2.17e8fc","name":"","topic":"","payload":"","payloadType":"num","repeat":"10","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":160,"wires":[["4853f85f.215388"]]}]
Dashboard-Installation
Ich empfehle auch die Installation des Moduls node-red-dashboard Damit können Sie auf äußerst einfache Weise eine HMI-Oberfläche mit attraktiven Dashboards erstellen weitere Informationen.
Aus dem Menü wählen Sie Manage paletteSuchen Sie dann nach dem Node-Red-Dashboard-Modul und fahren Sie mit der Installation fort. Nach Abschluss der Installation finden Sie eine zusätzliche Schaltfläche, über die Sie auf die Dashboard-Definition zugreifen können.
Messgerät hinzufügen
Wir haben die Möglichkeit hinzugefügt, Anzeigedashboards zu verwalten, damit wir ein Messgerät mit dem Temperaturwert anzeigen können. Über das Dashboard-Menü mit dem Tab + fügen wir ein Dashboard von nonme Tab1 hinzu. In unserem Programmablauf fügen wir ein Gauge-Objekt hinzu, das wir mit dem Temperaturwert in der Ausgabe der Funktion verbinden.
In den Eigenschaften des Messgeräts wird es mit der Tab1-Gruppe abgeglichen. Nach dem Deploy kann durch Drücken der Display-Taste das Messgerät mit dem angezeigten Temperaturwert angezeigt werden. Das Dashboard ist vom Browser aus für die IP-Adresse des 1880 / ui-Port-Systems sichtbar (Beispiel: http://xxx.xxx.xxx.xxx:1880/ui). Hier ist der Code:
[{"id":"42c02dd2.013664","type":"ui_gauge","z":"7ee6a4a2.17e8fc","name":"","group":"e61c9881.e38c98","order":0,"width":0,"height":0,"gtype":"gage","title":"gauge","label":"units","format":"{{value}}","min":0,"max":"100","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":620,"y":100,"wires":[]},{"id":"e61c9881.e38c98","type":"ui_group","z":"","name":"Default","tab":"24d206cc.2dfcaa","disp":true,"width":"6","collapse":false},{"id":"24d206cc.2dfcaa","type":"ui_tab","name":"Tab 1","icon":"dashboard","order":1}]
Beratungsecke
Eliminare un flusso dal dispositivo
Es kann vorkommen, dass ein Fehler in einem Stream dazu führt, dass die Ausführung von Node-RED abgebrochen wird (auf die Webseite kann nicht mehr zugegriffen werden) und beim Ausführen von Node-Red-Start über die Befehlszeile ein Ausführungsfehler angezeigt wird, der das Programm beendet. Die Flows befinden sich im Ordner /home/user/.node-red (Es ist ein versteckter Ordner), es sind Dateien .json lösche sie einfach.