Benutzer-Werkzeuge

Webseiten-Werkzeuge


howto:node-red

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
howto:node-red [2018/05/13 17:09] – SDM630 jauhowto:node-red [2019/11/04 11:13] – V2.0 Push aktiv jau
Zeile 11: Zeile 11:
 </code> </code>
  
 +==== Hintergrunddienst ====
 Um Node-RED als Hintergrunddienst einzurichten folgende Befehle nacheinander ausführen: Um Node-RED als Hintergrunddienst einzurichten folgende Befehle nacheinander ausführen:
 <code> <code>
Zeile 24: Zeile 25:
 Um den Dienst beim Boot automatisch zu starten: Um den Dienst beim Boot automatisch zu starten:
 <code>sudo systemctl enable nodered.service</code> <code>sudo systemctl enable nodered.service</code>
 +
 +==== Volkszaehler nodes ====
 +Es gibt ein paar vorgefertigte nodes für komplexere Abfragen. Zu finden bei [[http://github.com/andig/node-red-contrib-volkszaehler|github]]. Um sie in Node-RED einzubinden sind folgende Befehle an der Konsole einzugeben:
 +<code>
 +cd ~
 +git clone git://github.com/andig/node-red-contrib-volkszaehler
 +cd ~/.node-red
 +npm ~/install node-red-contrib-volkszaehler/
 +node-red-stop
 +node-red-start
 +</code>
  
 ===== Editor ===== ===== Editor =====
Zeile 44: Zeile 56:
 Für Echtzeitdaten eignet sich zum Beispiel der [[software/middleware/push-server|Push-Server]] als Datenquelle. Zählerstände und Impulseingänge werden in Leistung umgerechnet. Es werden nur Kanäle ausgeliefert die in der Middleware angelegt sind. Parallelbetrieb mit Push fürs Frontend ist möglich. Für Echtzeitdaten eignet sich zum Beispiel der [[software/middleware/push-server|Push-Server]] als Datenquelle. Zählerstände und Impulseingänge werden in Leistung umgerechnet. Es werden nur Kanäle ausgeliefert die in der Middleware angelegt sind. Parallelbetrieb mit Push fürs Frontend ist möglich.
  
-Der Push-Server muss, wie in der [[software/middleware/push-server#konfiguration|Anleitung]] beschrieben in Betrieb genommen werden. Die zusätzliche websocket-Ausgabe aktiviert man indem die vorhandene Zeile in der volkszaehler.conf.php geändert wird:+Seit Version 2.0 ist der Push-Server ab Haus aktiviert. In älteren Versionen muss er, wie in der [[software/middleware/push-server#konfiguration|Anleitung]] beschriebenin Betrieb genommen werden. Die zusätzliche websocket-Ausgabe aktiviert man indem die vorhandene Zeile in der volkszaehler.conf.php geändert wird:
 <code>sudo nano /var/www/volkszaehler.org/etc/volkszaehler.conf.php</code> <code>sudo nano /var/www/volkszaehler.org/etc/volkszaehler.conf.php</code>
 <code | volkszaehler.conf.php> <code | volkszaehler.conf.php>
Zeile 55: Zeile 67:
 ==== Push-Server empfangen ==== ==== Push-Server empfangen ====
 Zum Empfang der Daten wird der PS [[howto/node-red#push-server_einrichten|wie oben beschrieben]] eingerichtet und in Node-RED ein websocket-Eingang angelegt. Zum Empfang der Daten wird der PS [[howto/node-red#push-server_einrichten|wie oben beschrieben]] eingerichtet und in Node-RED ein websocket-Eingang angelegt.
-{{ :howto:node-red_pushserver.jpg?400|}}+{{ :howto:node-red_pushserver.jpg?500|}}
  
 <code | flow> <code | flow>
Zeile 232: Zeile 244:
  
 ==== vzlogger empfangen ==== ==== vzlogger empfangen ====
-{{ :howto:node-red_vzlogger.jpg?400|}}+{{ :howto:node-red_vzlogger.jpg?500|}}
 Die Echtzeitdaten des [[software/controller/vzlogger|vzloggers]] können auch direkt an Node-RED übergeben werden. Es werden für alle //channel// (auch //"api": "null"//) die Rohdaten (Zählerstände, Impulse) ausgegeben.\\ Die Echtzeitdaten des [[software/controller/vzlogger|vzloggers]] können auch direkt an Node-RED übergeben werden. Es werden für alle //channel// (auch //"api": "null"//) die Rohdaten (Zählerstände, Impulse) ausgegeben.\\
  
Zeile 442: Zeile 454:
  
 ==== API: GET data ==== ==== API: GET data ====
-//Ausstehend//+Um Parameter Daten aus Node-RED von der Middleware zu erhalten können wir auf die [[/howto/node-red#volkszaehler_nodes|fertigen VZ-nodes]] zurück greifen. 
 + 
 +{{ :howto:node-red_get_api.jpg?500|}} 
 +<code | flow> 
 +
 +    { 
 +        "id": "de7c28c5.414368", 
 +        "type": "uri", 
 +        "z": "815188ba.c35718", 
 +        "name": "", 
 +        "middleware": "792445ef.949aec", 
 +        "context": "data", 
 +        "format": "json", 
 +        "x": 158, 
 +        "y": 171, 
 +        "wires":
 +            [ 
 +                "4af40d51.a7c234" 
 +            ] 
 +        ] 
 +    }, 
 +    { 
 +        "id": "8911848d.d34a38", 
 +        "type": "inject", 
 +        "z": "815188ba.c35718", 
 +        "name": "", 
 +        "topic": "", 
 +        "payload": "true", 
 +        "payloadType": "bool", 
 +        "repeat": "", 
 +        "crontab": "", 
 +        "once": false, 
 +        "onceDelay": 0.1, 
 +        "x": 104, 
 +        "y": 78, 
 +        "wires":
 +            [ 
 +                "e6c60ef.b5cfdf" 
 +            ] 
 +        ] 
 +    }, 
 +    { 
 +        "id": "e6c60ef.b5cfdf", 
 +        "type": "template", 
 +        "z": "815188ba.c35718", 
 +        "name": "UUID", 
 +        "field": "uuid", 
 +        "fieldType": "msg", 
 +        "format": "handlebars", 
 +        "syntax": "plain", 
 +        "template": "c673b290-fdac-11e0-a470-1d9351203a00", 
 +        "output": "str", 
 +        "x": 247, 
 +        "y": 79, 
 +        "wires":
 +            [ 
 +                "de7c28c5.414368" 
 +            ] 
 +        ] 
 +    }, 
 +    { 
 +        "id": "4af40d51.a7c234", 
 +        "type": "http request", 
 +        "z": "815188ba.c35718", 
 +        "name": "", 
 +        "method": "GET", 
 +        "ret": "txt", 
 +        "url": "", 
 +        "x": 340, 
 +        "y": 172, 
 +        "wires":
 +            [ 
 +                "69c762a4.50c69c" 
 +            ] 
 +        ] 
 +    }, 
 +    { 
 +        "id": "69c762a4.50c69c", 
 +        "type": "debug", 
 +        "z": "815188ba.c35718", 
 +        "name": "", 
 +        "active": true, 
 +        "tosidebar": true, 
 +        "console": false, 
 +        "tostatus": false, 
 +        "complete": "false", 
 +        "x": 305, 
 +        "y": 255, 
 +        "wires": [] 
 +    }, 
 +    { 
 +        "id": "792445ef.949aec", 
 +        "type": "middleware", 
 +        "z": "", 
 +        "middleware": "https://demo.volkszaehler.org/middleware.php" 
 +    } 
 +
 +</code>
  
 ---- ----
howto/node-red.txt · Zuletzt geändert: 2023/07/07 21:11 von jau