Node-Red Serielle Schnittstelle für Weidmann IR Lesekopf auswerten ohne EDL21

Hallo zusammen,

seit geraumer Zeit nutzte ich einen Weidmann IR Lesekopf um meinen Logarex Stromzähler auszulesen. Nach meinem Umstieg zu Home Assistant musste ich feststellen, dass dieser nicht unterstützt wird von der Integration, da das D0-Protokoll nicht ausgewertet werden kann.

In der Hardware von Home Assistant kann ich unter:

Einstellungen > System > Hardware > Gesamte Hardware

den Gerätepfad /dev/ttyUSB0 sehen.

Im Terminal (Add-on von Home Assistant) kann ich mit dem Befehl

cat /dev/ttyUSB0

sehen, dass die Daten ankommen (siehe Bild unten).
image

Jetzt wollte ich mit Node-Red die Serielle Schnittstelle auswerten.

image

Im debug Block kann ich sehen, dass die Daten ankommen
image

Jetzt wollte ich die einzelnen strings auswerten und in einem Templatehelfer abspeichern um es dann beim Energy-Dashboard einzubinden.

Wie gehe ich hier am besten in Node-Red vor? Oder gibt es bessere Möglichkeiten die Schnittstelle auszuwerten? Ich bin bei Home Assistant / Node-Red noch ein Neuling.

Grüße M20

Hallo zusammen,
ich hab das jetzt wie folgt mit einer kleinen Einschränkung hinbekommen.

Konfiguration vom seriellen Port

Werte Sammeln

Bezug

Bezug (rechts) - Werte einkürzen

Sensor Node Stomzahler_Bezug (HACS)
image

Einspeisen

Einspeisen (rechts)

Sensor Node Stromzahler_Einspeisen (HACS)
image

Leistung

Leistung (rechts)

Stromzahler_Leistung
image

Bei der Leistung ist die Einschränkung, dass beim Einspeisen der Wert um Faktor 10 zu klein ist. Scheint daran zu liegen, dass die Zahl im Negativen das - Zeichen davor hat. Verschiebe ich den Bereich, dann passt mein Bezug nicht mehr. Durch einen Smartmetereinbau in meinem Schaltschrank benötige ich die Leistungsangabe nicht mehr.

Node-red code

[{"id":"9345e82d7bfa55cc","type":"tab","label":"Stromzahler","disabled":false,"info":"","env":[]},{"id":"81016fc3315bc7fe","type":"comment","z":"9345e82d7bfa55cc","name":"Beispielcode","info":"return [\n    { payload: parseFloat(msg.payload[\"6-0:6.8\"].rawValue.replace(/[^\\d.-]/, '')) },\n    { payload: parseFloat(msg.payload[\"6-0:6.26\"].rawValue.replace(/[^\\d.-]/, '')) },\n    { payload: parseFloat(msg.payload[\"6-0:6.31\"].rawValue.replace(/[^\\d.-]/, '')) },\n    { payload: parseFloat(msg.payload[\"6-0:6.32\"].rawValue.replace(/[^\\d.-]/, '')) },\n    { payload: parseFloat(msg.payload[\"6-0:9.31\"].rawValue.replace(/[^\\d.-]/, '')) },\n];","x":110,"y":40,"wires":[]},{"id":"399d5ffe2baebaea","type":"serial in","z":"9345e82d7bfa55cc","name":"","serial":"3a226d287c87dffd","x":340,"y":140,"wires":[["060af6c86f2500a1"]]},{"id":"060af6c86f2500a1","type":"string","z":"9345e82d7bfa55cc","name":"Werte Sammeln","methods":[{"name":"left","params":[{"type":"num","value":"159"}]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":180,"y":400,"wires":[["3f966f0a4a14cea8","8c2c9b6f1f9feb3b","60a9c74f0c2c1e16"]]},{"id":"3f966f0a4a14cea8","type":"string","z":"9345e82d7bfa55cc","name":"Bezug","methods":[{"name":"left","params":[{"type":"num","value":"80"}]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":370,"y":320,"wires":[["38ada92e2b892b1f"]]},{"id":"8c2c9b6f1f9feb3b","type":"string","z":"9345e82d7bfa55cc","name":"Einspeisen","methods":[{"name":"left","params":[{"type":"num","value":"112"}]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":390,"y":400,"wires":[["d1b4dbc596078c25"]]},{"id":"38ada92e2b892b1f","type":"string","z":"9345e82d7bfa55cc","name":"Bezug","methods":[{"name":"right","params":[{"type":"num","value":"11"}]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":550,"y":320,"wires":[["ec1e3985022bf43c"]]},{"id":"d1b4dbc596078c25","type":"string","z":"9345e82d7bfa55cc","name":"Einspeisen","methods":[{"name":"right","params":[{"type":"num","value":"11"}]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":570,"y":400,"wires":[["5fbdf9a560586ba7"]]},{"id":"60a9c74f0c2c1e16","type":"string","z":"9345e82d7bfa55cc","name":"Leistung","methods":[{"name":"left","params":[{"type":"num","value":"140"}]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":380,"y":480,"wires":[["71d533227275cfd6"]]},{"id":"71d533227275cfd6","type":"string","z":"9345e82d7bfa55cc","name":"Leistung","methods":[{"name":"right","params":[{"type":"num","value":"6"}]}],"prop":"payload","propout":"payload","object":"msg","objectout":"msg","x":560,"y":480,"wires":[["4eecc96d15a18dff"]]},{"id":"ec1e3985022bf43c","type":"ha-sensor","z":"9345e82d7bfa55cc","name":"Stromzahler_Bezug","entityConfig":"6d082b05100d5e5f","version":0,"state":"payload","stateType":"msg","attributes":[],"inputOverride":"allow","outputProperties":[],"x":910,"y":320,"wires":[[]]},{"id":"4eecc96d15a18dff","type":"ha-sensor","z":"9345e82d7bfa55cc","name":"Stromzahler_Leistung","entityConfig":"6b9d253849def289","version":0,"state":"payload","stateType":"msg","attributes":[],"inputOverride":"allow","outputProperties":[],"x":920,"y":480,"wires":[[]]},{"id":"5fbdf9a560586ba7","type":"ha-sensor","z":"9345e82d7bfa55cc","name":"Stromzahler_Einspeisen","entityConfig":"4c9599d471b59b90","version":0,"state":"payload","stateType":"msg","attributes":[],"inputOverride":"allow","outputProperties":[],"x":930,"y":400,"wires":[[]]},{"id":"3a226d287c87dffd","type":"serial-port","serialport":"/dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_DK0DW1X1-if00-port0","serialbaud":"9600","databits":"8","parity":"none","stopbits":"1","waitfor":"/","dtr":"none","rts":"none","cts":"none","dsr":"none","newline":"100","bin":"false","out":"interbyte","addchar":"","responsetimeout":"15000"},{"id":"6d082b05100d5e5f","type":"ha-entity-config","server":"10478b7a.0e4bb5","deviceConfig":"0104f4daaf4a4c74","name":"Stromzahler_Bezug","version":"6","entityType":"sensor","haConfig":[{"property":"name","value":"Stromzahler_Bezug"},{"property":"icon","value":""},{"property":"entity_picture","value":""},{"property":"entity_category","value":""},{"property":"device_class","value":"energy"},{"property":"unit_of_measurement","value":"kWh"},{"property":"state_class","value":"total_increasing"},{"property":"last_reset","value":"2024-01-06T22:12:00.000Z"}],"resend":false,"debugEnabled":false},{"id":"6b9d253849def289","type":"ha-entity-config","server":"10478b7a.0e4bb5","deviceConfig":"05593140918aff22","name":"Stromzahler_Leistung","version":"6","entityType":"sensor","haConfig":[{"property":"name","value":"Stromzahler_Leistung"},{"property":"icon","value":""},{"property":"entity_picture","value":""},{"property":"entity_category","value":""},{"property":"device_class","value":"power"},{"property":"unit_of_measurement","value":"W"},{"property":"state_class","value":"measurement"},{"property":"last_reset","value":"2024-01-06T22:18:00.000Z"}],"resend":false,"debugEnabled":false},{"id":"4c9599d471b59b90","type":"ha-entity-config","server":"10478b7a.0e4bb5","deviceConfig":"8bd2d4f00b1cc408","name":"Stromzahler_Einspeisen","version":"6","entityType":"sensor","haConfig":[{"property":"name","value":"Stromzahler_Einspeisen"},{"property":"icon","value":""},{"property":"entity_picture","value":""},{"property":"entity_category","value":""},{"property":"device_class","value":"energy"},{"property":"unit_of_measurement","value":"kWh"},{"property":"state_class","value":"total_increasing"},{"property":"last_reset","value":"2024-01-06T22:15:00.000Z"}],"resend":false,"debugEnabled":false},{"id":"10478b7a.0e4bb5","type":"server","name":"Home Assistant","addon":true},{"id":"0104f4daaf4a4c74","type":"ha-device-config","name":"Stromzahler_Bezug","hwVersion":"","manufacturer":"Node-RED","model":"","swVersion":""},{"id":"05593140918aff22","type":"ha-device-config","name":"Stromzahler_Leistung","hwVersion":"","manufacturer":"Node-RED","model":"","swVersion":""},{"id":"8bd2d4f00b1cc408","type":"ha-device-config","name":"Stromzahler_Einspeisen","hwVersion":"","manufacturer":"Node-RED","model":"","swVersion":""}]

Grüße M20