@homoran
Du hast recht. Ist D0.
Apollon77 hat mir im Discord geholfen. Geht jetzt.
Danke euch beiden.
@homoran
Du hast recht. Ist D0.
Apollon77 hat mir im Discord geholfen. Geht jetzt.
Danke euch beiden.
Hallo zusammen,
ich möchte gerne meinen Gasverbrauch erfassen und visualisieren. Hierzu habe ich mich an dieser Anleitung entlang gehangelt:
https://wiki.volkszaehler.org/hardware/controllers/bk-g4m_lesekopf
Inzwischen bin ich soweit, dass ich in meinem Raspi die Feldstärke des Magneten in dem Gaszähler erfassen kann. Nun möchte ich aber ungern auf den Volkszähler umsteigen, sondern würde gerne beim ioBroker bleiben.
In dem Beispielcode im oberen Link, ließt der Zählercode über die i2c Schnittstelle die Feldstärke des Magneten. Mittels Hysterese zählt es die Null-Durchläufe. Die Informationen werden dann über einen lokal geöffneten Socket weiter an ein Python Skript gegeben. Dieses wandelt die Infos in JSON um und schreibt sie in den Syslog. Von dort ließt es dann wohl der Volkszähler.
Das scheint mir alles viel zu aufwändig. Ich werde meinen eigenen C-Code schreiben, welcher stets die aktuelle Verbrauchsanzeige berechnet, und welche zur Not korrigiert werden kann.
Meine Frage wäre nun, wie bekomme ich diese Information so einfach wie möglich aus meinem C-Code heraus in meine ioBroker Visualisierung?
Aktuell läuft bereits (sehr erfolgreich) der "smartmeter"-Adapter, welcher via Infrarot meinen Stromzähler ausließt. Dazu läuft der "history"-Adapter, welcher den Stromverbrauch mitloggt. Zuetzt läuft noch der "flot-Diagramme"-Adapter und der "web"-Adapter, über welche ich sehr schöne Graphen zum Stromverbrauch per Browser angezeigt bekomme.
In den history Adapter und das flot-Diagramm hätte ich nun auch gern meine Gaszähler Infos eingespeist.
Hat mir jemand einen Rat wie ich das möglichst simpel hinbekommen kann?
Danke und Gruß.
@homoran
Du hast recht. Ist D0.
Apollon77 hat mir im Discord geholfen. Geht jetzt.
Danke euch beiden.
Hallo zusammen,
ich versuche aktuell meinen Stromverbrauch zu erfassen und zu visualisieren.
Mein Stromzähler ist ein Q3DA2004. Daran angeklebt ist ein Hichi IR v1.1 Schreib/Lese-Kopf. Dieser wiederum ist per USB an einen "Raspberry Pi 4 Modell B, 4GB RAM" angeschlossen. Auf dem Raspi läuft der ioBroker. Das Webinterface funktioniert und der "Smartmeter devices support" Adapter ist installiert.
Allerdings behält die smartmeter.0 Instanz das rote X bei "Connected to device or service". "Connected to host" und "Heartbeat" sind grün.
Die Konfiguration der Smartmeter Instanz scheint auch korrekt zu sein. Denn sobald (und auch nur dann) wenn ich die Smartmeter Instanz korrekt konfiguriere und starte, erhalte ich bereits mit " cat /dev/ttyUSB0" die korrekten Werte über die Kommandozeile im 2 Sekunden Takt. (Wenn ich teste läuft das cat nicht.)
XXX@raspberrypi:~ $ cat /dev/ttyUSB0
/XXXXQ3DA2004 V3.04
1-0:0.0.0*255(XXXXXX)
1-0:1.8.0*255(00010202.6302747*kWh)
1-0:21.7.0*255(000380.58*W)
1-0:41.7.0*255(000025.78*W)
1-0:61.7.0*255(000020.27*W)
1-0:1.7.0*255(000426.63*W)
1-0:96.5.5*255(80)
0-0:96.1.255*255(XXXXXXXXXXXXXX)
!
[...]
Der Fehlerlog vom Smartmeter in der "Info"-Einstellung ist:
smartmeter.0 warn No or too long answer from Serial Device after last request.
smartmeter.0 info Error: No or too long answer from Serial Device after last request.
Der Fehlerlog vom Smartmeter in der "debug"-Einstellung ist anscheinend bei jedem ankommendem Datensatz ein riesiger Block an Log-Einträgen:
2023-07-16 18:50:32.997 - info: smartmeter.0 (871) starting. Version 3.3.4 in /opt/iobroker/node_modules/iobroker.smartmeter, node: v18.16.1, js-controller: 4.0.24
2023-07-16 18:50:33.033 - debug: smartmeter.0 (871) SmartmeterObis options: {"debug":2,"protocol":"SmlProtocol","transport":"SerialResponseTransport","requestInterval":"0","anotherQueryDelay":"1000","transportSerialPort":"/dev/ttyUSB0","transportSerialBaudrate":9600,"transportSerialDataBits":7,"transportSerialStopBits":1,"transportSerialParity":"even","transportSerialMessageTimeout":null,"protocolSmlIgnoreInvalidCRC":true}
2023-07-16 18:50:33.036 - debug: smartmeter.0 (871) CREATE SERIALPORT: 9600 7 1 even
2023-07-16 18:50:33.058 - debug: smartmeter.0 (871) SERIALPORT OPEN
2023-07-16 18:50:33.065 - debug: smartmeter.0 (871) SET MESSAGE TIMEOUT TIMER: 120000
2023-07-16 18:50:33.074 - debug: smartmeter.0 (871) connected set to false
2023-07-16 18:50:34.544 - debug: smartmeter.0 (871) ADD NEW DATA (0 + NEW 2)
2023-07-16 18:50:34.549 - debug: smartmeter.0 (871) MATCH-RESULT MESSAGE: "2f45" -> null
2023-07-16 18:50:34.555 - debug: smartmeter.0 (871) ADD NEW DATA (2 + NEW 9)
Dabei wiederholt sich das "ADD NEW DATA" und "MATCH-RESULT MESSAGE" jeweils ständig und der "2f45" String wird immer länger.
Hat jemand eine Idee?