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/12/04 16:02] – contrib-volkszaehler jauhowto:node-red [2020/05/03 19:07] – [vzlogger empfangen] typo boenki
Zeile 32: Zeile 32:
 git clone git://github.com/andig/node-red-contrib-volkszaehler git clone git://github.com/andig/node-red-contrib-volkszaehler
 cd ~/.node-red cd ~/.node-red
-npm ~/install node-red-contrib-volkszaehler/+npm install ~/node-red-contrib-volkszaehler/
 node-red-stop node-red-stop
 node-red-start node-red-start
Zeile 56: 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 62: Zeile 62:
 </code> </code>
 Danach den Push-Server neu starten: Danach den Push-Server neu starten:
-<code>sudo systemctl stop push-server +<code>sudo systemctl restart push-server</code>
-sudo systemctl start push-server</code>+
  
 ==== 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 244: Zeile 243:
  
 ==== 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.\\
  
 Dazu die vzlogger.conf erweitern: Dazu die vzlogger.conf erweitern:
-<code>sudo nano /ect/vzlogger.conf</code>+<code>sudo nano /etc/vzlogger.conf</code>
 <code | vzlogger.conf> <code | vzlogger.conf>
 "push": [ "push": [
Zeile 454: Zeile 453:
  
 ==== 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>
  
 ---- ----
Zeile 476: Zeile 572:
 [[http://flows.nodered.org/flow/dc9754a796fac49c918ab5a94f0af58a|Node-RED Library: Push Volkszaehler Readings to Influxdb via MQTT]] [[http://flows.nodered.org/flow/dc9754a796fac49c918ab5a94f0af58a|Node-RED Library: Push Volkszaehler Readings to Influxdb via MQTT]]
  
-==== Stromzähler per Modbus auslesen ====+==== Stromzähler per Modbus ====
 Beispiel für [[/hardware/channels/meters/power/eastron_sdm630_modbus|Eastron SDM630]]:\\ Beispiel für [[/hardware/channels/meters/power/eastron_sdm630_modbus|Eastron SDM630]]:\\
 [[https://flows.nodered.org/flow/eb051b360f09c315ac961f85b94a0c05|Node-RED Library: SDM630 Modbus Gateway - Starter Kit]] [[https://flows.nodered.org/flow/eb051b360f09c315ac961f85b94a0c05|Node-RED Library: SDM630 Modbus Gateway - Starter Kit]]
 +
 +==== Messwerte von Schaltaktor per MQTT ====
 +Messwerte von Modulwechselrichtern an [[https://shelly.cloud/shelly-25-wifi-smart-relay-roller-shutter-home-automation/|Shelly 2.5]] Funkaktoren erfasst und per [[https://de.wikipedia.org/wiki/MQTT|MQTT]] an Volkszähler weitergereicht:\\
 +[[https://www.photovoltaikforum.com/thread/142674-shelly-mqtt-integrieren/]]
howto/node-red.txt · Zuletzt geändert: 2023/07/07 21:11 von jau