Kleines Update zu den Fehlern: Ich habe am 26.8. ein Update auf 2.1.5 Beta 1 gemacht, neu gestartet und die Versionsliste aktualisiert. Ein weiteres Update wurde angeboten, welches ich auch eingespielt habe. Und schon wieder stimmen die Zähler nicht
Kann es sein, das die Sungrow-Integration gar nicht die Zählerstände ausliest, sondern nur Deltas speichert? Und diese dann bei einem Update mit Reboot verloren gehen? Weder im Home Assistant (spricht ebenfalls mit dem gleichen MODBUS Proxy), noch in der iSolar Cloud habe ich irgendwelche Probleme. Und die (nicht aktualisierte) Testinstallation der openWB hat ja auch keine Aussetzer bei den Zählerständen.
Eine Analyse des der daily Logs zeigt einen Sprung im Hausverbrauch nach dem 1. Update nach 22:25 Uhr und einen Sprung bei der PV-Erzeugung nach dem 2. Update nach 23:00 Uhr:
Code: Alles auswählen
#### openWB Custom daily_log\20240826.json
date cp.cp1.imp counter.counter2.imp counter.counter2.exp pv.pv3.exp hc.all.imp bat.all.imp bat.all.exp
---- ---------- -------------------- -------------------- ---------- ---------- ----------- -----------
00:00 1582975 63065 3604792 5217378 39302 723197 594174
00:05 1582975 63066 3604792 5217378 39337 723197 594209
00:10 1582975 63066 3604792 5217378 39364 723197 594236
[...]
22:10 1582975 63139 3644374 5274367 53882 731070 599147
22:15 1582975 63139 3644374 5274367 53937 731070 599202
22:20 1582975 63140 3644374 5274367 53989 731070 599254
22:25 1582975 63140 3644375 5274367 54039 731070 599298
22:30 1582975 63140 3644375 5274367 36 731070 599335
22:35 1582975 63140 3644375 5274367 80 731070 599379
22:40 1582975 63140 3644375 5274367 125 731070 599425
22:45 1582975 63140 3644376 5274367 170 731070 599469
22:50 1582975 63140 3644376 5274367 215 731070 599515
22:55 1582975 63141 3644376 5274367 264 731070 599564
23:00 1582975 63141 3644377 5274367 313 731070 599613
23:05 1582975 63141 3644377 131445 348 731070 599648
23:10 1582975 63141 3644377 131445 382 731070 599682
23:15 1582975 63141 3644377 131445 415 731070 599715
23:20 1582975 63142 3644377 131445 446 731070 599746
23:25 1582975 63142 3644377 131445 477 731070 599777
23:30 1582975 63142 3644377 131445 508 731070 599808
23:35 1582975 63142 3644378 131445 541 731070 599841
23:40 1582975 63142 3644378 131445 570 731070 599869
23:45 1582975 63142 3644378 131445 600 731070 599900
23:50 1582975 63142 3644378 131445 627 731070 599927
23:55 1582975 63142 3644378 131445 657 731070 599956
#### Testinstallation daily_log\20240826.json
date cp.cp1.imp counter.counter2.imp counter.counter2.exp pv.pv3.exp hc.all.imp bat.all.imp bat.all.exp
---- ---------- -------------------- -------------------- ---------- ---------- ----------- -----------
00:00 1154280 63060 3604770 5217377 1169395 723198 594983
00:05 1154280 63060 3604770 5217377 1169433 723198 595020
00:10 1154280 63061 3604770 5217377 1169464 723198 595051
[...]
22:10 1154280 63133 3644356 5274371 1184129 731071 600094
22:15 1154280 63133 3644357 5274371 1184159 731071 600124
22:20 1154280 63133 3644357 5274371 1184191 731071 600156
22:25 1154280 63133 3644357 5274371 1184223 731071 600188
22:30 1154280 63133 3644357 5274371 1184248 731071 600213
22:35 1154280 63133 3644357 5274371 1184270 731071 600235
22:40 1154280 63133 3644357 5274371 1184295 731071 600260
22:45 1154280 63133 3644357 5274371 1184325 731071 600291
22:50 1154280 63134 3644357 5274371 1184354 731071 600320
22:55 1154280 63134 3644357 5274371 1184381 731071 600346
23:00 1154280 63134 3644357 5274371 1184406 731071 600371
23:05 1154280 63134 3644358 5274371 1184431 731071 600396
23:10 1154280 63134 3644358 5274371 1184451 731071 600416
23:15 1154280 63134 3644358 5274371 1184473 731071 600438
23:20 1154280 63134 3644358 5274371 1184495 731071 600460
23:25 1154280 63134 3644358 5274371 1184516 731071 600481
23:30 1154280 63135 3644358 5274371 1184543 731071 600508
23:35 1154280 63135 3644358 5274371 1184567 731071 600533
23:40 1154280 63135 3644359 5274371 1184594 731071 600559
23:45 1154280 63135 3644359 5274371 1184618 731071 600583
23:50 1154280 63135 3644359 5274371 1184643 731071 600608
23:55 1154280 63135 3644359 5274371 1184665 731071 600630
Sowohl Wallbox als auch die Testinstallation fragen über einen MODBUS Proxy den Sungrow Hybrid Wechselrichter SH10RT ab. Die Testinstallation zeigt keine Aussetzer (CP und HC weichen natürlich voneinander ab, da die Testinstallation den echten Ladepunkt als Hausverbrauch sieht).
Im main.log der Wallbox tauchen ab 22:24:31 Uhr plötzlich Modbus Exceptions auf (kann es durch das angeworfene Update ausgelöst werden?):
Code: Alles auswählen
2024-08-25 15:57:30,482 - {control.counter_all:107} - {ERROR:MainThread} - Ungültiger Hausverbrauch: -398.4899999999998W, Berücksichtigte Komponenten neben EVU [{'id': 3, 'type': 'inverter', 'children': [{'id': 4, 'type': 'bat', 'children': []}]}, {'id': 1, 'type': 'cp', 'children': []}, {'id': 4, 'type': 'bat', 'children': []}]
2024-08-25 15:57:41,298 - {modules.common.simcount._simcount:51} - {WARNING:MainThread} - Time difference between previous state and current state is too large. Set time difference to control interval.
2024-08-26 22:24:31,038 - {pymodbus.client.sync:218} - {ERROR:device1} - Connection to (192.168.4.124, 502) failed: [Errno 111] Connection refused
2024-08-26 22:24:31,042 - {modules.common.fault_state:49} - {ERROR:device1} - Sungrow Zähler: FaultState FaultStateLevel.ERROR, FaultStr <class 'pymodbus.exceptions.ConnectionException'> ('Failed to connect[ModbusTcpClient(192.168.4.124:502)]', 'Modbus-Client konnte keine Verbindung zu 192.168.4.124:502 aufbauen. Bitte Einstellungen, IP-Adresse und Port sowie Netzwerk-Anschluss prüfen.'), Traceback:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/devices/sungrow/device.py", line 60, in update
with self.client:
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 65, in __enter__
raise e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 61, in __enter__
self._delegate.__enter__()
File "/home/openwb/.local/lib/python3.9/site-packages/pymodbus/client/sync.py", line 120, in __enter__
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.4.124:502)]
2024-08-26 22:24:31,048 - {modules.common.fault_state:49} - {ERROR:device1} - Sungrow Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr <class 'pymodbus.exceptions.ConnectionException'> ('Failed to connect[ModbusTcpClient(192.168.4.124:502)]', 'Modbus-Client konnte keine Verbindung zu 192.168.4.124:502 aufbauen. Bitte Einstellungen, IP-Adresse und Port sowie Netzwerk-Anschluss prüfen.'), Traceback:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/devices/sungrow/device.py", line 60, in update
with self.client:
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 65, in __enter__
raise e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 61, in __enter__
self._delegate.__enter__()
File "/home/openwb/.local/lib/python3.9/site-packages/pymodbus/client/sync.py", line 120, in __enter__
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.4.124:502)]
[...]
2024-08-26 22:25:50,817 - {modules.common.fault_state:49} - {ERROR:device1} - Sungrow Speicher: FaultState FaultStateLevel.ERROR, FaultStr <class 'pymodbus.exceptions.ConnectionException'> ('Failed to connect[ModbusTcpClient(192.168.4.124:502)]', 'Modbus-Client konnte keine Verbindung zu 192.168.4.124:502 aufbauen. Bitte Einstellungen, IP-Adresse und Port sowie Netzwerk-Anschluss prüfen.'), Traceback:
Traceback (most recent call last):
File "/var/www/html/openWB/packages/modules/devices/sungrow/device.py", line 60, in update
with self.client:
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 65, in __enter__
raise e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 61, in __enter__
self._delegate.__enter__()
File "/home/openwb/.local/lib/python3.9/site-packages/pymodbus/client/sync.py", line 120, in __enter__
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.4.124:502)]
2024-08-26 22:25:50,839 - {modules.common.utils.component_parser:33} - {ERROR:MainThread} - Fehlerstatus in Komponente Sungrow Speicher. Werte werden nicht aktualisiert.
2024-08-26 22:25:50,849 - {modules.common.utils.component_parser:33} - {ERROR:MainThread} - Fehlerstatus in Komponente Sungrow Wechselrichter. Werte werden nicht aktualisiert.
2024-08-26 22:25:50,978 - {modules.common.utils.component_parser:33} - {ERROR:MainThread} - Fehlerstatus in Komponente Sungrow Zähler. Werte werden nicht aktualisiert.
2024-08-26 22:25:51,912 - {helpermodules.setdata:389} - {WARNING:Setdata} - Keine ID 0 mit gültiger Konfiguration für Topic openWB/set/counter/0/set/reserved_surplus mit Payload 0 gefunden.
2024-08-26 22:25:51,915 - {helpermodules.setdata:389} - {WARNING:Setdata} - Keine ID 0 mit gültiger Konfiguration für Topic openWB/set/counter/0/set/released_surplus mit Payload 0 gefunden.
2024-08-26 22:25:51,957 - {helpermodules.setdata:379} - {ERROR:Setdata} - Unbekanntes set-Topic: openWB/set/bat/4/get/currents, [0.0, 0.0, 0.0]
2024-08-26 22:26:00,674 - {modules.common.simcount._simcount:51} - {WARNING:device1} - Time difference between previous state and current state is too large. Set time difference to control interval.
2024-08-26 22:26:00,734 - {modules.common.simcount._simcount:51} - {WARNING:device1} - Time difference between previous state and current state is too large. Set time difference to control interval.
2024-08-26 22:26:00,752 - {modules.common.simcount._simcount:51} - {WARNING:device1} - Time difference between previous state and current state is too large. Set time difference to control interval.
2024-08-26 22:26:00,761 - {modules.common.utils.component_parser:33} - {ERROR:MainThread} - Fehlerstatus in Komponente Sungrow Speicher. Werte werden nicht aktualisiert.
2024-08-26 22:26:01,018 - {modules.common.simcount._simcount:51} - {WARNING:MainThread} - Time difference between previous state and current state is too large. Set time difference to control interval.
Danach habe ich leider keine Logs mehr...
Die Monats- und Jahresauswertungen sind jedenfalls nicht mehr zu gebrauchen. Der PV-Ertrag im August ist nun höher als für das ganze Jahr
Backups kann ich ggf. diverse zur Verfügung stellen - falls es zur Fehlerbehebung beitragen kann (tägliche Sicherung in die Cloud).