Siemens Module ab 1.9.251

Fragen zur Nutzung, Features, usw..
thesorrow101
Beiträge: 718
Registriert: Mo Okt 12, 2020 7:41 am

Re: Rückmeldungen Nightly 1.9.251

Beitrag von thesorrow101 »

LutzB hat geschrieben: Mo Jan 24, 2022 1:48 pm Ohne jegliche Logmeldungen wird Dir niemand helfen können.
Hallo Lutz,

so hier nochmal alles auf einen Blick:

Fehler-Log:

Code: Alles auswählen

2022-01-25 12:10:05: **** Regulation loop needs 4 seconds (LV0) at 55 cleanup /var/www/html/openWB/regel.sh
2022-01-25 12:10:04: ##### cron5min.sh finished ##### (LV0) at 426 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:04: chargestatlp1 0	chargestatlp2 0	chargestatlp3 0 (LV1) at 1275 loadvars loadvars.sh
2022-01-25 12:10:04: plugstatlp1 0	plugstatlp2 0	plugstatlp3 0 (LV1) at 1274 loadvars loadvars.sh
2022-01-25 12:10:04: lp1enabled 1	lp2enabled 1	lp3enabled 1 (LV1) at 1273 loadvars loadvars.sh
2022-01-25 12:10:04: EVU 1:V/0A 2: V/0A 3: V/0A (LV1) at 1272 loadvars loadvars.sh
2022-01-25 12:10:04: lla3 0	llv3 230.8	llas13  llas23  soclp1 70 soclp2 (LV1) at 1271 loadvars loadvars.sh
2022-01-25 12:10:04: lla2 0	llv2 230.1	llas12  llas22  sofortll 16 hausverbrauch 0 wattbezug -22 uberschuss 1397 (LV1) at 1270 loadvars loadvars.sh
2022-01-25 12:10:04: lla1 0	llv1 229.6	llas11  llas21  mindestuberschuss 1500 abschaltuberschuss 5 lademodus 3 (LV1) at 1269 loadvars loadvars.sh
2022-01-25 12:10:04: pv1watt -1380 pv2watt  pvwatt -1380 ladeleistung 0 llalt 0 nachtladen 0 nachtladen 0 minimalA 10 maximalA 32 (LV1) at 1268 loadvars loadvars.sh
2022-01-25 12:10:04: speicherleistung 1375 speichersoc 12 (LV1) at 1263 loadvars loadvars.sh
2022-01-25 12:10:04: EVU RET: 0 (LV2) at 21 main modules/bezug_siemens/main.sh
2022-01-25 12:10:04: PID: 2499: legacy run server: Completed running command in 0.05s: ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:10:04: PID: 2499: ValueStore: Saving CounterState(currents=[0.0, 0.0, 0.0], power=-22, voltages=[230, 230, 230], exported=4177.292116261986, powers=[0, 0, 0], frequency=50, power_factors=[0, 0, 0], imported=59677.04944444444)
2022-01-25 12:10:04: PID: 2499: root: Siemens Zähler Leistung[W]: -22
2022-01-25 12:10:04: PID: 2499: root: simcount Zwischenergebnisse atkuelle Berechnung: Import: 214837378 Export: 15038251.618543148 Power: -22
2022-01-25 12:10:04: PID: 2499: root: simcount Ergebnis: Bezug[Wh]: 59677.04944444444, Einspeisung[Wh]: 4177.292116261986
2022-01-25 12:10:04: PID: 2499: root: simcount aufsummierte Energie: Bezug[Ws]: 214837378, Einspeisung[Ws]: 15038251.618543148
2022-01-25 12:10:04: PID: 2499: root: simcount Gesamtenergie im Zeitintervall: -288.61854314804077
2022-01-25 12:10:04: PID: 2499: root: simcount Berechnungsgrundlage: vergangene Zeit [s]19.241236209869385, vorherige Leistung[W]: -8, aktuelle Leistung[W]: -22
2022-01-25 12:10:04: PID: 2499: root: simcount Zwischenergebnisse letzte Berechnung: Import: 214837378 Export: 15037963 Power: -8
2022-01-25 12:10:04: PID: 2499: pymodbus.payload: [b'\xff\xff', b'\xff\xea']
2022-01-25 12:10:04: PID: 2499: pymodbus.payload: [65535, 65514]
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: Adding transaction 1
2022-01-25 12:10:04: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:10:04: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xff 0xea
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: RECV: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xff 0xea
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:10:04: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0xe 0x0 0x2
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:10:04: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:10:04: PID: 2499: root: Komponente Siemens Zähler auslesen.
2022-01-25 12:10:04: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.counter.SiemensCounter object at 0x73d681d0>}
2022-01-25 12:10:04: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:10:04: PID: 2499: legacy run server: Received command ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:10:04: logfile cleanup triggered (LV1) at 423 main /var/www/html/openWB/runs/cron5min.sh
AttributeError: 'ModbusIOException' object has no attribute 'registers'
    pf2 = struct.unpack('>f',struct.pack('>HH',*resp.registers))[0]
  File "/var/www/html/openWB/modules/mpm3pmll/readmpm3pm.py", line 165, in <module>
Traceback (most recent call last):
2022-01-25 12:10:02: BAT RET: 0 (LV2) at 21 main modules/speicher_siemens/main.sh
2022-01-25 12:10:02: PID: 2499: legacy run server: Completed running command in 0.07s: ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:10:02: PID: 2499: ValueStore: Saving BatState(exported=37260016.97111111, soc=12, power=1375, imported=14423.773483550614)
2022-01-25 12:10:02: PID: 2499: root: simcount Zwischenergebnisse atkuelle Berechnung: Import: 51925584.54078221 Export: 134136061096 Power: 1375
2022-01-25 12:10:02: PID: 2499: root: simcount Ergebnis: Bezug[Wh]: 14423.773483550614, Einspeisung[Wh]: 37260016.97111111
2022-01-25 12:10:02: PID: 2499: root: simcount aufsummierte Energie: Bezug[Ws]: 51925584.54078221, Einspeisung[Ws]: 134136061096
2022-01-25 12:10:02: PID: 2499: root: simcount Gesamtenergie im Zeitintervall: 25535.54078221321
2022-01-25 12:10:02: PID: 2499: root: simcount Berechnungsgrundlage: vergangene Zeit [s]18.331328630447388, vorherige Leistung[W]: 1411, aktuelle Leistung[W]: 1375
2022-01-25 12:10:02: PID: 2499: root: simcount Zwischenergebnisse letzte Berechnung: Import: 51900049 Export: 134136061096 Power: 1411
2022-01-25 12:10:02: PID: 2499: pymodbus.payload: [b'\x00\x00', b'\x00\x0c']
2022-01-25 12:10:02: PID: 2499: pymodbus.payload: [0, 12]
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Getting transaction 2
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Adding transaction 2
2022-01-25 12:10:02: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:10:02: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x2 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0x0 0x0 0x0 0xc
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: RECV: 0x0 0x2 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0x0 0x0 0x0 0xc
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:10:02: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: SEND: 0x0 0x2 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x8 0x0 0x2
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Running transaction 2
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Current transaction state - TRANSACTION_COMPLETE
2022-01-25 12:10:02: PID: 2499: pymodbus.payload: [b'\xff\xff', b'\xfa\xa1']
2022-01-25 12:10:02: PID: 2499: pymodbus.payload: [65535, 64161]
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Adding transaction 1
2022-01-25 12:10:02: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:10:02: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfa 0xa1
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: RECV: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfa 0xa1
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:10:02: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x6 0x0 0x2
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:10:02: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:10:02: PID: 2499: root: Komponente Siemens Speicher auslesen.
2022-01-25 12:10:02: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.bat.SiemensBat object at 0x73d68950>}
2022-01-25 12:10:02: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:10:02: starting evsecheck (LV1) at 419 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:02: PID: 2499: legacy run server: Received command ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:10:02: PID: 2499: legacy run server: Completed running command in 0.02s: ["modules.siemens.device","inverter","192.168.178.56","1"]

modules.common.fault_state.FaultState: ('TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen.', <FaultStateLevel.ERROR: 2>)
" aufbauen. Bitte Einstellungen (IP-Adresse, ..) und " + "Hardware-Anschluss pruefen.") from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 89, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(16, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/inverter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.178.56:502)]
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.execute(request)
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
address, number_of_addresses, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 79, in __read_registers
Traceback (most recent call last):
2022-01-25 12:10:02: PID: 2499: root: Siemens Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen., Traceback:
2022-01-25 12:10:02: PID: 2499: pymodbus.client.sync: Connection to (192.168.178.56, 502) failed: [Errno 111] Connection refused
2022-01-25 12:10:02: PID: 2499: root: Komponente Siemens Wechselrichter auslesen.
2022-01-25 12:10:02: PID: 2499: root: Start device reading{'component1': <modules.siemens.inverter.SiemensInverter object at 0x768f3f50>}
2022-01-25 12:10:02: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:10:02: PID: 2499: legacy run server: Received command ["modules.siemens.device","inverter","192.168.178.56","1"]
2022-01-25 12:10:02:  Load: 3.50 3.08 2.08
2022-01-25 12:10:02: pingcheck configured; starting (LV1) at 409 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:02: modbus tcp server already running (LV1) at 401 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: external openWB or daemon mode not configured; checking network setup (LV1) at 336 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: smarthome handler is already running (LV1) at 319 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: legacy_run_server is already running (LV1) at 313 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: mqtt handler is already running (LV1) at 300 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: current ip: 192.168.178.114 (LV1) at 295 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: updating daily yield stats (LV1) at 165 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: electricity provider not set up; skipping price update (LV2) at 161 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: Netzschutz konfiguriert; aktuelle Frequenz: 4995 (LV1) at 110 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: daily csv updated: /var/www/html/openWB/web/logging/data/daily/20220125.csv (LV1) at 102 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: ##### cron5min.sh started ##### (LV0) at 23 main /var/www/html/openWB/runs/cron5min.sh
2022-01-25 12:10:01: **** Regulation loop start **** (LV1) at 70 main /var/www/html/openWB/regel.sh
2022-01-25 12:09:56: **** Regulation loop needs 5 seconds (LV0) at 55 cleanup /var/www/html/openWB/regel.sh
2022-01-25 12:09:55: PID: 2499: legacy run server: Completed running command in 3.04s: ["modules.siemens.device","inverter","192.168.178.56","1"]

modules.common.fault_state.FaultState: ("modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>)", <FaultStateLevel.ERROR: 2>)
str(e)) from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 97, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(16, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/inverter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

modules.common.fault_state.FaultState: ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>)
raise FaultState.error(__name__+" "+str(response))
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 81, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:55: PID: 2499: root: Siemens Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>), Traceback:
2022-01-25 12:09:55: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:55: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:09:55: PID: 2499: pymodbus.framer.socket_framer: Processing:
2022-01-25 12:09:55: PID: 2499: pymodbus.transaction: Transaction failed. (Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received))
2022-01-25 12:09:54: chargestatlp1 0	chargestatlp2 0	chargestatlp3 0 (LV1) at 1275 loadvars loadvars.sh
2022-01-25 12:09:54: plugstatlp1 0	plugstatlp2 0	plugstatlp3 0 (LV1) at 1274 loadvars loadvars.sh
2022-01-25 12:09:54: lp1enabled 1	lp2enabled 1	lp3enabled 1 (LV1) at 1273 loadvars loadvars.sh
2022-01-25 12:09:54: EVU 1:V/0A 2: V/0A 3: V/0A (LV1) at 1272 loadvars loadvars.sh
2022-01-25 12:09:54: lla3 0	llv3 230.7	llas13  llas23  soclp1 70 soclp2 (LV1) at 1271 loadvars loadvars.sh
2022-01-25 12:09:54: lla2 0	llv2 230.3	llas12  llas22  sofortll 16 hausverbrauch 0 wattbezug -8 uberschuss 1419 (LV1) at 1270 loadvars loadvars.sh
2022-01-25 12:09:54: lla1 0	llv1 229.7	llas11  llas21  mindestuberschuss 1500 abschaltuberschuss 5 lademodus 3 (LV1) at 1269 loadvars loadvars.sh
2022-01-25 12:09:54: pv1watt -1380 pv2watt  pvwatt -1380 ladeleistung 0 llalt 0 nachtladen 0 nachtladen 0 minimalA 10 maximalA 32 (LV1) at 1268 loadvars loadvars.sh
2022-01-25 12:09:54: speicherleistung 1411 speichersoc 12 (LV1) at 1263 loadvars loadvars.sh
2022-01-25 12:09:54: EVU RET: 0 (LV2) at 21 main modules/bezug_siemens/main.sh
2022-01-25 12:09:54: PID: 2499: legacy run server: Completed running command in 0.02s: ["modules.siemens.device","counter","192.168.178.56"]

modules.common.fault_state.FaultState: ('TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen.', <FaultStateLevel.ERROR: 2>)
" aufbauen. Bitte Einstellungen (IP-Adresse, ..) und " + "Hardware-Anschluss pruefen.") from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 89, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(14, ModbusDataType.INT_32, unit=1)
File "/var/www/html/openWB/packages/modules/siemens/counter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.178.56:502)]
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.execute(request)
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
address, number_of_addresses, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 79, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:54: PID: 2499: root: Siemens Zähler: FaultState FaultStateLevel.ERROR, FaultStr TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen., Traceback:
2022-01-25 12:09:54: PID: 2499: pymodbus.client.sync: Connection to (192.168.178.56, 502) failed: [Errno 111] Connection refused
2022-01-25 12:09:54: PID: 2499: root: Komponente Siemens Zähler auslesen.
2022-01-25 12:09:54: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.counter.SiemensCounter object at 0x73d68f10>}
2022-01-25 12:09:54: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:54: PID: 2499: legacy run server: Received command ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:09:53: BAT RET: 0 (LV2) at 21 main modules/speicher_siemens/main.sh
2022-01-25 12:09:53: PID: 2499: legacy run server: Completed running command in 0.03s: ["modules.siemens.device","bat","192.168.178.56"]

modules.common.fault_state.FaultState: ('TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen.', <FaultStateLevel.ERROR: 2>)
" aufbauen. Bitte Einstellungen (IP-Adresse, ..) und " + "Hardware-Anschluss pruefen.") from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 89, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(6, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/bat.py", line 36, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.178.56:502)]
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.execute(request)
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
address, number_of_addresses, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 79, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:53: PID: 2499: root: Siemens Speicher: FaultState FaultStateLevel.ERROR, FaultStr TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen., Traceback:
2022-01-25 12:09:53: PID: 2499: pymodbus.client.sync: Connection to (192.168.178.56, 502) failed: [Errno 111] Connection refused
2022-01-25 12:09:53: PID: 2499: root: Komponente Siemens Speicher auslesen.
2022-01-25 12:09:53: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.bat.SiemensBat object at 0x73d68ed0>}
2022-01-25 12:09:53: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:53: PID: 2499: legacy run server: Received command ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:09:52: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:52: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:52: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x10 0x0 0x2
2022-01-25 12:09:52: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:09:52: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:09:52: PID: 2499: root: Komponente Siemens Wechselrichter auslesen.
2022-01-25 12:09:52: PID: 2499: root: Start device reading{'component1': <modules.siemens.inverter.SiemensInverter object at 0x73db1d10>}
2022-01-25 12:09:52: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:52: PID: 2499: legacy run server: Received command ["modules.siemens.device","inverter","192.168.178.56","1"]
2022-01-25 12:09:52: **** Regulation loop start **** (LV1) at 70 main /var/www/html/openWB/regel.sh
2022-01-25 12:09:45: **** Regulation loop needs 4 seconds (LV0) at 55 cleanup /var/www/html/openWB/regel.sh
2022-01-25 12:09:44: chargestatlp1 0	chargestatlp2 0	chargestatlp3 0 (LV1) at 1275 loadvars loadvars.sh
2022-01-25 12:09:44: plugstatlp1 0	plugstatlp2 0	plugstatlp3 0 (LV1) at 1274 loadvars loadvars.sh
2022-01-25 12:09:44: lp1enabled 1	lp2enabled 1	lp3enabled 1 (LV1) at 1273 loadvars loadvars.sh
2022-01-25 12:09:44: EVU 1:V/0A 2: V/0A 3: V/0A (LV1) at 1272 loadvars loadvars.sh
2022-01-25 12:09:44: lla3 0	llv3 230.8	llas13  llas23  soclp1 70 soclp2 (LV1) at 1271 loadvars loadvars.sh
2022-01-25 12:09:44: lla2 0	llv2 230.3	llas12  llas22  sofortll 16 hausverbrauch 0 wattbezug -8 uberschuss 1419 (LV1) at 1270 loadvars loadvars.sh
2022-01-25 12:09:44: lla1 0	llv1 229.6	llas11  llas21  mindestuberschuss 1500 abschaltuberschuss 5 lademodus 3 (LV1) at 1269 loadvars loadvars.sh
2022-01-25 12:09:44: pv1watt -1380 pv2watt  pvwatt -1380 ladeleistung 0 llalt 0 nachtladen 0 nachtladen 0 minimalA 10 maximalA 32 (LV1) at 1268 loadvars loadvars.sh
2022-01-25 12:09:44: speicherleistung 1411 speichersoc 12 (LV1) at 1263 loadvars loadvars.sh
2022-01-25 12:09:44: EVU RET: 0 (LV2) at 21 main modules/bezug_siemens/main.sh
2022-01-25 12:09:44: PID: 2499: legacy run server: Completed running command in 0.05s: ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:09:44: PID: 2499: ValueStore: Saving CounterState(currents=[0.0, 0.0, 0.0], power=-8, voltages=[230, 230, 230], exported=4177.211990908914, powers=[0, 0, 0], frequency=50, power_factors=[0, 0, 0], imported=59677.04944444444)
2022-01-25 12:09:44: PID: 2499: root: Siemens Zähler Leistung[W]: -8
2022-01-25 12:09:44: PID: 2499: root: simcount Zwischenergebnisse atkuelle Berechnung: Import: 214837378 Export: 15037963.16727209 Power: -8
2022-01-25 12:09:44: PID: 2499: root: simcount Ergebnis: Bezug[Wh]: 59677.04944444444, Einspeisung[Wh]: 4177.211990908914
2022-01-25 12:09:44: PID: 2499: root: simcount aufsummierte Energie: Bezug[Ws]: 214837378, Einspeisung[Ws]: 15037963.16727209
2022-01-25 12:09:44: PID: 2499: root: simcount Gesamtenergie im Zeitintervall: -323.16727209091187
2022-01-25 12:09:44: PID: 2499: root: simcount Berechnungsgrundlage: vergangene Zeit [s]19.00983953475952, vorherige Leistung[W]: -26, aktuelle Leistung[W]: -8
2022-01-25 12:09:44: PID: 2499: root: simcount Zwischenergebnisse letzte Berechnung: Import: 214837378 Export: 15037640 Power: -26
2022-01-25 12:09:44: PID: 2499: pymodbus.payload: [b'\xff\xff', b'\xff\xf8']
2022-01-25 12:09:44: PID: 2499: pymodbus.payload: [65535, 65528]
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: Adding transaction 1
2022-01-25 12:09:44: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:09:44: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xff 0xf8
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: RECV: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xff 0xf8
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:44: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0xe 0x0 0x2
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:09:44: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:09:44: PID: 2499: root: Komponente Siemens Zähler auslesen.
2022-01-25 12:09:44: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.counter.SiemensCounter object at 0x73db1c10>}
2022-01-25 12:09:44: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:44: PID: 2499: legacy run server: Received command ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:09:43: BAT RET: 0 (LV2) at 21 main modules/speicher_siemens/main.sh
2022-01-25 12:09:43: PID: 2499: legacy run server: Completed running command in 0.06s: ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:09:43: PID: 2499: ValueStore: Saving BatState(exported=37260016.97111111, soc=12, power=1411, imported=14416.680366713637)
2022-01-25 12:09:43: PID: 2499: root: simcount Zwischenergebnisse atkuelle Berechnung: Import: 51900049.32016909 Export: 134136061096 Power: 1411
2022-01-25 12:09:43: PID: 2499: root: simcount Ergebnis: Bezug[Wh]: 14416.680366713637, Einspeisung[Wh]: 37260016.97111111
2022-01-25 12:09:43: PID: 2499: root: simcount aufsummierte Energie: Bezug[Ws]: 51900049.32016909, Einspeisung[Ws]: 134136061096
2022-01-25 12:09:43: PID: 2499: root: simcount Gesamtenergie im Zeitintervall: 26643.320169091225
2022-01-25 12:09:43: PID: 2499: root: simcount Berechnungsgrundlage: vergangene Zeit [s]18.96996808052063, vorherige Leistung[W]: 1398, aktuelle Leistung[W]: 1411
2022-01-25 12:09:43: PID: 2499: root: simcount Zwischenergebnisse letzte Berechnung: Import: 51873406 Export: 134136061096 Power: 1398
2022-01-25 12:09:43: PID: 2499: pymodbus.payload: [b'\x00\x00', b'\x00\x0c']
2022-01-25 12:09:43: PID: 2499: pymodbus.payload: [0, 12]
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Getting transaction 2
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Adding transaction 2
2022-01-25 12:09:43: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:09:43: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x2 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0x0 0x0 0x0 0xc
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: RECV: 0x0 0x2 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0x0 0x0 0x0 0xc
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:43: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: SEND: 0x0 0x2 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x8 0x0 0x2
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Running transaction 2
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Current transaction state - TRANSACTION_COMPLETE
2022-01-25 12:09:43: PID: 2499: pymodbus.payload: [b'\xff\xff', b'\xfa}']
2022-01-25 12:09:43: PID: 2499: pymodbus.payload: [65535, 64125]
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Adding transaction 1
2022-01-25 12:09:43: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:09:43: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfa 0x7d
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: RECV: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfa 0x7d
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:43: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x6 0x0 0x2
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:09:43: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:09:43: PID: 2499: root: Komponente Siemens Speicher auslesen.
2022-01-25 12:09:43: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.bat.SiemensBat object at 0x73da4d70>}
2022-01-25 12:09:43: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:43: PID: 2499: legacy run server: Received command ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:09:42: PID: 2499: legacy run server: Completed running command in 0.02s: ["modules.siemens.device","inverter","192.168.178.56","1"]

modules.common.fault_state.FaultState: ('TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen.', <FaultStateLevel.ERROR: 2>)
" aufbauen. Bitte Einstellungen (IP-Adresse, ..) und " + "Hardware-Anschluss pruefen.") from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 89, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(16, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/inverter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.178.56:502)]
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.execute(request)
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
address, number_of_addresses, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 79, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:42: PID: 2499: root: Siemens Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen., Traceback:
2022-01-25 12:09:42: PID: 2499: pymodbus.client.sync: Connection to (192.168.178.56, 502) failed: [Errno 111] Connection refused
2022-01-25 12:09:42: PID: 2499: root: Komponente Siemens Wechselrichter auslesen.
2022-01-25 12:09:42: PID: 2499: root: Start device reading{'component1': <modules.siemens.inverter.SiemensInverter object at 0x7683ba10>}
2022-01-25 12:09:42: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:42: PID: 2499: legacy run server: Received command ["modules.siemens.device","inverter","192.168.178.56","1"]
2022-01-25 12:09:42: **** Regulation loop start **** (LV1) at 70 main /var/www/html/openWB/regel.sh
2022-01-25 12:09:36: **** Regulation loop needs 5 seconds (LV0) at 55 cleanup /var/www/html/openWB/regel.sh
2022-01-25 12:09:36: PID: 2499: legacy run server: Completed running command in 3.03s: ["modules.siemens.device","inverter","192.168.178.56","1"]

modules.common.fault_state.FaultState: ("modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>)", <FaultStateLevel.ERROR: 2>)
str(e)) from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 97, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(16, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/inverter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

modules.common.fault_state.FaultState: ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>)
raise FaultState.error(__name__+" "+str(response))
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 81, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:36: PID: 2499: root: Siemens Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>), Traceback:
2022-01-25 12:09:36: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:36: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:09:36: PID: 2499: pymodbus.framer.socket_framer: Processing:
2022-01-25 12:09:36: PID: 2499: pymodbus.transaction: Transaction failed. (Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received))
2022-01-25 12:09:34: chargestatlp1 0	chargestatlp2 0	chargestatlp3 0 (LV1) at 1275 loadvars loadvars.sh
2022-01-25 12:09:34: plugstatlp1 0	plugstatlp2 0	plugstatlp3 0 (LV1) at 1274 loadvars loadvars.sh
2022-01-25 12:09:34: lp1enabled 1	lp2enabled 1	lp3enabled 1 (LV1) at 1273 loadvars loadvars.sh
2022-01-25 12:09:34: EVU 1:V/0A 2: V/0A 3: V/0A (LV1) at 1272 loadvars loadvars.sh
2022-01-25 12:09:34: lla3 0	llv3 230.1	llas13  llas23  soclp1 70 soclp2 (LV1) at 1271 loadvars loadvars.sh
2022-01-25 12:09:34: lla2 0	llv2 230.5	llas12  llas22  sofortll 16 hausverbrauch 0 wattbezug -26 uberschuss 1424 (LV1) at 1270 loadvars loadvars.sh
2022-01-25 12:09:34: lla1 0	llv1 229.5	llas11  llas21  mindestuberschuss 1500 abschaltuberschuss 5 lademodus 3 (LV1) at 1269 loadvars loadvars.sh
2022-01-25 12:09:34: pv1watt -1380 pv2watt  pvwatt -1380 ladeleistung 0 llalt 0 nachtladen 0 nachtladen 0 minimalA 10 maximalA 32 (LV1) at 1268 loadvars loadvars.sh
2022-01-25 12:09:34: speicherleistung 1398 speichersoc 12 (LV1) at 1263 loadvars loadvars.sh
2022-01-25 12:09:34: EVU RET: 0 (LV2) at 21 main modules/bezug_siemens/main.sh
2022-01-25 12:09:34: PID: 2499: legacy run server: Completed running command in 0.02s: ["modules.siemens.device","counter","192.168.178.56"]

modules.common.fault_state.FaultState: ('TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen.', <FaultStateLevel.ERROR: 2>)
" aufbauen. Bitte Einstellungen (IP-Adresse, ..) und " + "Hardware-Anschluss pruefen.") from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 89, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(14, ModbusDataType.INT_32, unit=1)
File "/var/www/html/openWB/packages/modules/siemens/counter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.178.56:502)]
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.execute(request)
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
address, number_of_addresses, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 79, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:34: PID: 2499: root: Siemens Zähler: FaultState FaultStateLevel.ERROR, FaultStr TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen., Traceback:
2022-01-25 12:09:34: PID: 2499: pymodbus.client.sync: Connection to (192.168.178.56, 502) failed: [Errno 111] Connection refused
2022-01-25 12:09:34: PID: 2499: root: Komponente Siemens Zähler auslesen.
2022-01-25 12:09:34: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.counter.SiemensCounter object at 0x73da4b50>}
2022-01-25 12:09:34: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:34: PID: 2499: legacy run server: Received command ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:09:33: BAT RET: 0 (LV2) at 21 main modules/speicher_siemens/main.sh
2022-01-25 12:09:33: PID: 2499: legacy run server: Completed running command in 0.02s: ["modules.siemens.device","bat","192.168.178.56"]

modules.common.fault_state.FaultState: ('TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen.', <FaultStateLevel.ERROR: 2>)
" aufbauen. Bitte Einstellungen (IP-Adresse, ..) und " + "Hardware-Anschluss pruefen.") from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 89, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(6, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/bat.py", line 36, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.178.56:502)]
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.execute(request)
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
address, number_of_addresses, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 79, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:33: PID: 2499: root: Siemens Speicher: FaultState FaultStateLevel.ERROR, FaultStr TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen., Traceback:
2022-01-25 12:09:33: PID: 2499: pymodbus.client.sync: Connection to (192.168.178.56, 502) failed: [Errno 111] Connection refused
2022-01-25 12:09:33: PID: 2499: root: Komponente Siemens Speicher auslesen.
2022-01-25 12:09:33: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.bat.SiemensBat object at 0x73db1cf0>}
2022-01-25 12:09:33: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:33: PID: 2499: legacy run server: Received command ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:09:32: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:32: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:32: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x10 0x0 0x2
2022-01-25 12:09:32: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:09:32: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:09:32: PID: 2499: root: Komponente Siemens Wechselrichter auslesen.
2022-01-25 12:09:32: PID: 2499: root: Start device reading{'component1': <modules.siemens.inverter.SiemensInverter object at 0x73d682d0>}
2022-01-25 12:09:32: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:32: PID: 2499: legacy run server: Received command ["modules.siemens.device","inverter","192.168.178.56","1"]
2022-01-25 12:09:32: **** Regulation loop start **** (LV1) at 70 main /var/www/html/openWB/regel.sh
2022-01-25 12:09:25: **** Regulation loop needs 4 seconds (LV0) at 55 cleanup /var/www/html/openWB/regel.sh
2022-01-25 12:09:24: chargestatlp1 0	chargestatlp2 0	chargestatlp3 0 (LV1) at 1275 loadvars loadvars.sh
2022-01-25 12:09:24: plugstatlp1 0	plugstatlp2 0	plugstatlp3 0 (LV1) at 1274 loadvars loadvars.sh
2022-01-25 12:09:24: lp1enabled 1	lp2enabled 1	lp3enabled 1 (LV1) at 1273 loadvars loadvars.sh
2022-01-25 12:09:24: EVU 1:V/0A 2: V/0A 3: V/0A (LV1) at 1272 loadvars loadvars.sh
2022-01-25 12:09:24: lla3 0	llv3 230.5	llas13  llas23  soclp1 70 soclp2 (LV1) at 1271 loadvars loadvars.sh
2022-01-25 12:09:24: lla2 0	llv2 230.6	llas12  llas22  sofortll 16 hausverbrauch 0 wattbezug -26 uberschuss 1424 (LV1) at 1270 loadvars loadvars.sh
2022-01-25 12:09:24: lla1 0	llv1 229.5	llas11  llas21  mindestuberschuss 1500 abschaltuberschuss 5 lademodus 3 (LV1) at 1269 loadvars loadvars.sh
2022-01-25 12:09:24: pv1watt -1380 pv2watt  pvwatt -1380 ladeleistung 0 llalt 0 nachtladen 0 nachtladen 0 minimalA 10 maximalA 32 (LV1) at 1268 loadvars loadvars.sh
2022-01-25 12:09:24: speicherleistung 1398 speichersoc 12 (LV1) at 1263 loadvars loadvars.sh
2022-01-25 12:09:24: EVU RET: 0 (LV2) at 21 main modules/bezug_siemens/main.sh
2022-01-25 12:09:24: PID: 2499: legacy run server: Completed running command in 0.05s: ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:09:24: PID: 2499: ValueStore: Saving CounterState(currents=[0.0, 0.0, 0.0], power=-26, voltages=[230, 230, 230], exported=4177.122426696444, powers=[0, 0, 0], frequency=50, power_factors=[0, 0, 0], imported=59677.04954591734)
2022-01-25 12:09:24: PID: 2499: root: Siemens Zähler Leistung[W]: -26
2022-01-25 12:09:24: PID: 2499: root: simcount Zwischenergebnisse atkuelle Berechnung: Import: 214837378.3653024 Export: 15037640.736107197 Power: -26
2022-01-25 12:09:24: PID: 2499: root: simcount Ergebnis: Bezug[Wh]: 59677.04954591734, Einspeisung[Wh]: 4177.122426696444
2022-01-25 12:09:24: PID: 2499: root: simcount aufsummierte Energie: Bezug[Ws]: 214837378.3653024, Einspeisung[Ws]: 15037640.736107197
2022-01-25 12:09:24: PID: 2499: root: simcount exportierte Energie im Zeitintervall: -230.73610719612665
2022-01-25 12:09:24: PID: 2499: root: simcount Gesamtenergie im Zeitintervall: -229.37080478668213
2022-01-25 12:09:24: PID: 2499: root: simcount Berechnungsgrundlage: vergangene Zeit [s]19.11423373222351, vorherige Leistung[W]: 2, aktuelle Leistung[W]: -26
2022-01-25 12:09:24: PID: 2499: root: simcount Zwischenergebnisse letzte Berechnung: Import: 214837377 Export: 15037410 Power: 2
2022-01-25 12:09:24: PID: 2499: pymodbus.payload: [b'\xff\xff', b'\xff\xe6']
2022-01-25 12:09:24: PID: 2499: pymodbus.payload: [65535, 65510]
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: Adding transaction 1
2022-01-25 12:09:24: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:09:24: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xff 0xe6
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: RECV: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xff 0xe6
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:24: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0xe 0x0 0x2
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:09:24: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:09:24: PID: 2499: root: Komponente Siemens Zähler auslesen.
2022-01-25 12:09:24: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.counter.SiemensCounter object at 0x73d68450>}
2022-01-25 12:09:24: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:24: PID: 2499: legacy run server: Received command ["modules.siemens.device","counter","192.168.178.56"]
2022-01-25 12:09:23: BAT RET: 0 (LV2) at 21 main modules/speicher_siemens/main.sh
2022-01-25 12:09:23: PID: 2499: legacy run server: Completed running command in 0.05s: ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:09:23: PID: 2499: ValueStore: Saving BatState(exported=37260016.97111111, soc=12, power=1398, imported=14409.279464098612)
2022-01-25 12:09:23: PID: 2499: root: simcount Zwischenergebnisse atkuelle Berechnung: Import: 51873406.070755005 Export: 134136061096 Power: 1398
2022-01-25 12:09:23: PID: 2499: root: simcount Ergebnis: Bezug[Wh]: 14409.279464098612, Einspeisung[Wh]: 37260016.97111111
2022-01-25 12:09:23: PID: 2499: root: simcount aufsummierte Energie: Bezug[Ws]: 51873406.070755005, Einspeisung[Ws]: 134136061096
2022-01-25 12:09:23: PID: 2499: root: simcount Gesamtenergie im Zeitintervall: 26608.070755004883
2022-01-25 12:09:23: PID: 2499: root: simcount Berechnungsgrundlage: vergangene Zeit [s]19.039764404296875, vorherige Leistung[W]: 1397, aktuelle Leistung[W]: 1398
2022-01-25 12:09:23: PID: 2499: root: simcount Zwischenergebnisse letzte Berechnung: Import: 51846798 Export: 134136061096 Power: 1397
2022-01-25 12:09:23: PID: 2499: pymodbus.payload: [b'\x00\x00', b'\x00\x0c']
2022-01-25 12:09:23: PID: 2499: pymodbus.payload: [0, 12]
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Getting transaction 2
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Adding transaction 2
2022-01-25 12:09:23: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:09:23: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x2 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0x0 0x0 0x0 0xc
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: RECV: 0x0 0x2 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0x0 0x0 0x0 0xc
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:23: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: SEND: 0x0 0x2 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x8 0x0 0x2
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Running transaction 2
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Current transaction state - TRANSACTION_COMPLETE
2022-01-25 12:09:23: PID: 2499: pymodbus.payload: [b'\xff\xff', b'\xfa\x8a']
2022-01-25 12:09:23: PID: 2499: pymodbus.payload: [65535, 64138]
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Getting transaction 1
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Adding transaction 1
2022-01-25 12:09:23: PID: 2499: pymodbus.factory: Factory Response[ReadHoldingRegistersResponse: 3]
2022-01-25 12:09:23: PID: 2499: pymodbus.framer.socket_framer: Processing: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfa 0x8a
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: RECV: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfa 0x8a
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Changing transaction state from 'WAITING FOR REPLY' to 'PROCESSING REPLY'
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
2022-01-25 12:09:23: PID: 2499: pymodbus.client.sync: New Transaction state 'SENDING'
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: SEND: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x0 0x6 0x0 0x2
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Running transaction 1
2022-01-25 12:09:23: PID: 2499: pymodbus.transaction: Current transaction state - IDLE
2022-01-25 12:09:23: PID: 2499: root: Komponente Siemens Speicher auslesen.
2022-01-25 12:09:23: PID: 2499: root: Start device reading{'componentNone': <modules.siemens.bat.SiemensBat object at 0x73d68e30>}
2022-01-25 12:09:23: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:23: PID: 2499: legacy run server: Received command ["modules.siemens.device","bat","192.168.178.56"]
2022-01-25 12:09:23: PID: 2499: legacy run server: Completed running command in 0.02s: ["modules.siemens.device","inverter","192.168.178.56","1"]

modules.common.fault_state.FaultState: ('TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen.', <FaultStateLevel.ERROR: 2>)
" aufbauen. Bitte Einstellungen (IP-Adresse, ..) und " + "Hardware-Anschluss pruefen.") from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 89, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(16, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/inverter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):

The above exception was the direct cause of the following exception:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.178.56:502)]
raise ConnectionException("Failed to connect[%s]" % (self.__str__()))
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/sync.py", line 107, in execute
return self.execute(request)
File "/usr/local/lib/python3.5/dist-packages/pymodbus/client/common.py", line 114, in read_holding_registers
address, number_of_addresses, **kwargs)
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 79, in __read_registers
Traceback (most recent call last):
2022-01-25 12:09:23: PID: 2499: root: Siemens Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr TCP-Client konnte keine Verbindung zu 192.168.178.56:502 aufbauen. Bitte Einstellungen (IP-Adresse, ..) und Hardware-Anschluss pruefen., Traceback:
2022-01-25 12:09:23: PID: 2499: pymodbus.client.sync: Connection to (192.168.178.56, 502) failed: [Errno 111] Connection refused
2022-01-25 12:09:23: PID: 2499: root: Komponente Siemens Wechselrichter auslesen.
2022-01-25 12:09:23: PID: 2499: root: Start device reading{'component1': <modules.siemens.inverter.SiemensInverter object at 0x76845e10>}
2022-01-25 12:09:23: PID: 2499: root: Siemens IP-Adresse: 192.168.178.56
2022-01-25 12:09:23: PID: 2499: legacy run server: Received command ["modules.siemens.device","inverter","192.168.178.56","1"]
2022-01-25 12:09:22: **** Regulation loop start **** (LV1) at 70 main /var/www/html/openWB/regel.sh
2022-01-25 12:09:16: **** Regulation loop needs 5 seconds (LV0) at 55 cleanup /var/www/html/openWB/regel.sh
2022-01-25 12:09:16: PID: 2499: legacy run server: Completed running command in 3.04s: ["modules.siemens.device","inverter","192.168.178.56","1"]

modules.common.fault_state.FaultState: ("modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 8 bytes (0 received)', <FaultStateLevel.ERROR: 2>)", <FaultStateLevel.ERROR: 2>)
str(e)) from e
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 97, in __read_registers
self.delegate.read_holding_registers, address, types, byteorder, wordorder, **kwargs
File "/var/www/html/openWB/packages/modules/common/modbus.py", line 115, in read_holding_registers
power = self.__tcp_client.read_holding_registers(16, ModbusDataType.INT_32, unit=1) * -1
File "/var/www/html/openWB/packages/modules/siemens/inverter.py", line 37, in update
self._components[component].update()
File "/var/www/html/openWB/packages/modules/siemens/device.py", line 55, in update
Traceback (most recent call last):
•Die IP der Batterie ist 192.168.178.56. Das ist sie auch, ist zum einen mehrfach überprüft, zum anderen haben alle Geräte die irgendwie an Smarthome beteiligt sind die gleiche IP
•Alle hängen im selben Netzwerk
•Die Batterie funktioniert einwandfrei, Modbus auf dieser Seite wurde überprüft. Die Hardware kann ich also sehr sicher ausschließen.
•Mehrfache Neustarts brachten keinen Erfolg
•Die Abfrage friert tatsächlich einfach öfter ein: Es kommen schon ab und an Werte, aber dann wieder plötzlich gar nichts und ich bekomme den Fehler:
Fehler OpenWB.JPG
oder auch diesen
Fehler2 OpenWB.JPG
Die Fehler traten zu 99% erst nach dem Update auf die Nightly 251 auf (ich nutze die Android-App von Philipp und checke die Mehrfach täglich und da wäre mir aufgefallen, wenn Werte nicht passen (z.B. Nachts 1,5 kW PV Leistung so wie jetzt manchmal wenn der Wert nicht aktualisiert wird).

Was auch interessant scheint: Wenn das eine geht, geht das andere nicht.... gestern habe ich PV Daten bekommen, aber keine Batterie Daten (SoC etc). Heute geht Batterie, dafür spuckt ein anderes Modbus Register den Fehler aus.

Vor den Update lief alles reibungslos, ich muss eigentlich jeden Tag Wäsche waschen und schaue daher im Smarthomelog nach wie die Anschlaltbedingungen sind, da wäre mir ein Fehler auch aufgefallen.

Wenn ihr noch mehr zur Analyse braucht sagt einfach Bescheid, ich helfe wo ich kann!

Liebe Grüße,

Simon
thesorrow101
Beiträge: 718
Registriert: Mo Okt 12, 2020 7:41 am

Re: Rückmeldungen Nightly 1.9.251/252

Beitrag von thesorrow101 »

Bei der durchsicht der Module für Siemens in der Stable im Vergleich zur Nightly ist mir folgendes aufgefallen:

Früher wurden folgende Parameter übergeben für Beispielsweise den SOC der Batterie übergeben

Code: Alles auswählen

resp= client.read_holding_registers(8,2,unit=1)
in dem neuen Modul ist es

Code: Alles auswählen

soc = int(self.__tcp_client.read_holding_registers(8, ModbusDataType.INT_32, unit=1))
.

Kann es sein, dass es Probleme mit dem Parameter "ModbusDataType.INT_32" gibt?

Das SMA Modul ist z.B. noch nicht umgeschrieben und hat als zweiten Parameter auch eine Zahl und das läuft einwandfrei bei mir ohne dass es zu einem Fehler kommt.

Liebe Grüße,

Simon
thesorrow101
Beiträge: 718
Registriert: Mo Okt 12, 2020 7:41 am

Re: Rückmeldungen Nightly 1.9.251/252

Beitrag von thesorrow101 »

Komisch ist halt, dass es manchmal Werte liefert und manchmal nicht.

Leider habe ich dafür nicht so den Einblick, deshalb verzeiht die vermutlich laienhafte Art der Fragestellung, aber kann es sein, dass die Art der Anfrage für eine Überlastung sorgt? Dass quasi jedes der Skripte für PV, EVU und Batterie (läuft ja alles über Junelight) gleichzeitig versuchen über Modbus eine Verbindung aufzubauen und die Junelight deshalb immer zwei davon ablehnt?

Das würde zumindest erklären warum der Fehler immer nur jeweils bei zwei Skripten und den dazugehörigen Registern auftritt und bei einem die Werte ankommen.
LutzB
Beiträge: 3781
Registriert: Di Feb 25, 2020 9:23 am
Has thanked: 4 times
Been thanked: 25 times

Re: Siemens Module ab 1.9.251

Beitrag von LutzB »

Ich habe mir das Modul nochmal genauer angesehen und ein paar Fragen dazu.

In den verschiedenen Modulkonfigurationen (Speicher, PV, EVU) muss aktuell jeweils eine IP angegeben werden. Macht das überhaupt Sinn? Nach meinem Verständnis laufen alle Abfragen über ein Gerät mit einer IP.

Wenn meine Vermutung bestätigt wird, dann kann das Modul entsprechend angepasst werden, dass nur eine Verbindung geöffnet wird. Aktuell wird bei Initialisierung für jede Komponente eine Verbindung geöffnet (oder zumindest versucht). Der Legacy Run Server sorgt in diesem Fall dafür, dass die Module nach dem Durchlauf im Speicher bleiben und sich gegenseitig blockieren, falls Siemens nur eine Verbindung zulässt.

Bei der Anpassung würde die Verbindung eine Ebene runter in "device.py" verlagert und kann dann von allen Komponenten genutzt werden.

@yannik
Da der Legacy Run Server von Dir kam und ich noch nicht so fit in Python bin: wie verhält sich der Server, wenn nacheinander verschiedene Komponenten mit dem selben Gerätetyp angefragt werden? Werden die Komponenten dann zum bestehenden Gerät hinzugefügt oder lediglich die neue Komponente ergänzt? Letzteres wäre Voraussetzung, damit die Umstrukturierung überhaupt erfolgreich sein kann.
yankee
Beiträge: 481
Registriert: Sa Mai 16, 2020 11:34 am

Re: Siemens Module ab 1.9.251

Beitrag von yankee »

LutzB hat geschrieben: Mi Jan 26, 2022 8:30 am @yannik
Da der Legacy Run Server von Dir kam und ich noch nicht so fit in Python bin: wie verhält sich der Server, wenn nacheinander verschiedene Komponenten mit dem selben Gerätetyp angefragt werden? Werden die Komponenten dann zum bestehenden Gerät hinzugefügt oder lediglich die neue Komponente ergänzt? Letzteres wäre Voraussetzung, damit die Umstrukturierung überhaupt erfolgreich sein kann.
Der Legacy run server kümmert sich da garnicht drum. Das Einzige was der macht ist die Pythonumgebung aufrecht zu erhalten, Aufrufe per Unix-Socket entgegennehmen und in der laufenden Pythonumgebung auszuführen.

Wie du schon sagst ist es sinnvoll mehrere Aufrufe an das selbe Gerät zusammenzufassen. Das passt besser zu oWB2-Struktur und kann bei korrekter Anwendung auch ein Performancevorteil sein.

Als Beispiel kann ich #1918 anbieten, dort habe ich das für Discovergy gemacht. Da es möglich ist, dass sowohl die Wechselrichterleistung als auch die EVU-Leistung von Discovergy kommen, können beide Zähler über die selbe TCP-Verbindung abgefragt werden. Alles was du dafür machen musst, dass das geht ist die Parameter so zu designen, dass es möglich ist mehrere Module auf einen Schlag aufzurufen. Siehe als Beispiel packages/modules/discovergy/device.py die Funktionen "main" und "read_legacy".
LutzB
Beiträge: 3781
Registriert: Di Feb 25, 2020 9:23 am
Has thanked: 4 times
Been thanked: 25 times

Re: Siemens Module ab 1.9.251

Beitrag von LutzB »

Danke, sehe ich mir an.
thesorrow101
Beiträge: 718
Registriert: Mo Okt 12, 2020 7:41 am

Re: Siemens Module ab 1.9.251

Beitrag von thesorrow101 »

Vielen Dank euch beiden auf jeden Fall schon mal!

Eine Frage aus Interesse: Wo werden denn die Einstellungen gespeichert für Module etc? Sonst kann man ja grundsätzlich alle Werte einfach abfragen sobald ein Modul "Siemens" ist und nur prüfen ob auch andere Module Siemens haben und dann die Werte entsprechend in die Ramdisk schreiben.

Ist glaube ich auch das, auf das ihr raus möchtest, wenn ich euch beide richtig verstanden habe?
LutzB
Beiträge: 3781
Registriert: Di Feb 25, 2020 9:23 am
Has thanked: 4 times
Been thanked: 25 times

Re: Siemens Module ab 1.9.251

Beitrag von LutzB »

Aktuell wird für jedes Modul eine eigene Verbindung aufgebaut. Das ist vermutlich so umgesetzt worden, weil man in der Konfiguration auch verschiedene IPs für EVU, PV und Speicher angeben kann.

Alle Infos liegen aber vermutlich auf dem selben Gerät, daher könnte man die Verbindung auf ein Modul reduzieren.

@thesorrow101
Kannst Du die letzte Vermutung so bestätigen? Könnte es potentiell auch so sein, dass z.B. EVU von einer anderen IP gelesen wird als der Speicher?
thesorrow101
Beiträge: 718
Registriert: Mo Okt 12, 2020 7:41 am

Re: Siemens Module ab 1.9.251

Beitrag von thesorrow101 »

LutzB hat geschrieben: Mi Jan 26, 2022 10:54 am Aktuell wird für jedes Modul eine eigene Verbindung aufgebaut. Das ist vermutlich so umgesetzt worden, weil man in der Konfiguration auch verschiedene IPs für EVU, PV und Speicher angeben kann.

Alle Infos liegen aber vermutlich auf dem selben Gerät, daher könnte man die Verbindung auf ein Modul reduzieren.

@thesorrow101
Kannst Du die letzte Vermutung so bestätigen? Könnte es potentiell auch so sein, dass z.B. EVU von einer anderen IP gelesen wird als der Speicher?
Genau und nein :) . Die Batterie hat ein eigenes Gerät zum auslesen am EVU und bezieht für PV die Daten vom Wechselrichter (soweit ich weiß).

Heißt alle Daten sind auf der Batterie, diese stellt auch alle Daten über Modbus zur Verfügung. Ich habe also auf allen drei Modulen (PV, EVU und Speicher) Siemens ausgewählt. Je nachdem werden nur andere Register angefragt.

Meine Vermutung ist jetzt, dass alles drei Module (plus die device.py) gleichzeitig versuchen ihre Register auszulesen und das zu einem Fehler führt, bei welchem die Batterie immer nur einem dem Zugriff gewährt und die anderen blockiert.

Der EVU ist nur von Siemens und wird nur von der Batterie ausgelesen. Diese sind meine ich direkt verbunden und das Gerät zur Messung am EVU taucht im Netzwerk auch gar nicht auf.

Heißt in allen Modulen ist aber auch die eingetragene IP gleich.

Und insoweit stimmt es: es würde ein Modul reichen, dass alle Register in einem Zug abfragt.
Anwendungsbeispiel.pdf
(413.57 KiB) 123-mal heruntergeladen
Hier die Doku von Siemens
LutzB
Beiträge: 3781
Registriert: Di Feb 25, 2020 9:23 am
Has thanked: 4 times
Been thanked: 25 times

Re: Siemens Module ab 1.9.251

Beitrag von LutzB »

Ok, dann können wir das zusammenfassen.
Antworten