Seite 6 von 6

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: Sa Feb 03, 2024 3:14 pm
von evchab
Meldung aus Status:

Code: Alles auswählen

 Modulmeldung:
modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>)
Hier mal das Log

Code: Alles auswählen

2024-02-03 16:08:10,239 - {root:74} - {INFO:MainThread} - # ***Start*** 
2024-02-03 16:08:10,294 - {modules.common.component_context:51} - {DEBUG:device0} - Update Komponenten ['Huawei Zähler', 'Huawei Wechselrichter']
2024-02-03 16:08:10,301 - {modules.common.component_context:24} - {DEBUG:set values cp2} - Update Komponente ['Ladepunkt']
2024-02-03 16:08:11,049 - {modules.common.fault_state:55} - {ERROR:device0} - Huawei Zähler: FaultState FaultStateLevel.ERROR, FaultStr modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/modbus.py", line 90, in __read_registers
    raise FaultState.error(__name__+" "+str(response))
modules.common.fault_state.FaultState: ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>)

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

Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_device.py", line 36, in __call__
    self.__updater(components_list)
  File "/var/www/html/openWB/packages/modules/devices/huawei/device.py", line 31, in update_components
    regs = c.read_holding_registers(32064, [ModbusDataType.INT_32]*5701, unit=modbus_id)
  File "/var/www/html/openWB/packages/modules/common/modbus.py", line 123, in read_holding_registers
    return self.__read_registers(
  File "/var/www/html/openWB/packages/modules/common/modbus.py", line 105, in __read_registers
    raise FaultState.error(__name__+" "+str(type(e))+" " +
modules.common.fault_state.FaultState: ("modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>)", <FaultStateLevel.ERROR: 2>)

2024-02-03 16:08:11,052 - {modules.common.fault_state:55} - {ERROR:device0} - Huawei Wechselrichter: FaultState FaultStateLevel.ERROR, FaultStr modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>), Traceback: 
Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/modbus.py", line 90, in __read_registers
    raise FaultState.error(__name__+" "+str(response))
modules.common.fault_state.FaultState: ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>)

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

Traceback (most recent call last):
  File "/var/www/html/openWB/packages/modules/common/configurable_device.py", line 36, in __call__
    self.__updater(components_list)
  File "/var/www/html/openWB/packages/modules/devices/huawei/device.py", line 31, in update_components
    regs = c.read_holding_registers(32064, [ModbusDataType.INT_32]*5701, unit=modbus_id)
  File "/var/www/html/openWB/packages/modules/common/modbus.py", line 123, in read_holding_registers
    return self.__read_registers(
  File "/var/www/html/openWB/packages/modules/common/modbus.py", line 105, in __read_registers
    raise FaultState.error(__name__+" "+str(type(e))+" " +
modules.common.fault_state.FaultState: ("modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>)", <FaultStateLevel.ERROR: 2>)

2024-02-03 16:08:11,055 - {modules.common.component_context:24} - {DEBUG:component1} - Update Komponente ['Huawei Wechselrichter']
2024-02-03 16:08:11,058 - {modules.common.component_context:24} - {DEBUG:update values cp2} - Update Komponente ['Ladepunkt']
2024-02-03 16:08:11,157 - {modules.common.component_context:24} - {DEBUG:component0} - Update Komponente ['Huawei Zähler']
2024-02-03 16:08:11,207 - {helpermodules.setdata:339} - {ERROR:Setdata} - Payload ungültig: Topic openWB/set/chargepoint/2/get/soc, Payload None darf nicht 'None' sein.
2024-02-03 16:08:11,214 - {helpermodules.setdata:339} - {ERROR:Setdata} - Payload ungültig: Topic openWB/set/chargepoint/2/get/soc_timestamp, Payload None darf nicht 'None' sein.
2024-02-03 16:08:11,322 - {modules.ripple_control_receiver:30} - {DEBUG:MainThread} - RSE1-Status: False, RSE2-Status: False
2024-02-03 16:08:11,324 - {control.counter:138} - {INFO:MainThread} - Verbleibende Ströme an Zähler 0: [35.0, 35.0, 35.0]A
2024-02-03 16:08:11,325 - {control.counter:161} - {INFO:MainThread} - Verbleibende Leistung an Zähler 0: 24046.0W
2024-02-03 16:08:11,328 - {control.chargepoint.chargepoint:277} - {INFO:MainThread} - LP 2: Keine Ladung, da kein Auto angesteckt ist.
2024-02-03 16:08:11,332 - {modules.common.simcount._simcount:38} - {DEBUG:MainThread} - Previous state: SimCounterState(timestamp=1705480173.8526406, power=0, imported=0.0, exported=0)
2024-02-03 16:08:11,337 - {modules.common.simcount._calculate:13} - {DEBUG:MainThread} - time passed: 414.644, power1: 0, power2: 42
2024-02-03 16:08:11,338 - {modules.common.simcount._calculate:29} - {DEBUG:MainThread} - power did not change sign. Total energy: 8707.52
2024-02-03 16:08:11,338 - {modules.common.simcount._simcount:47} - {DEBUG:MainThread} - imported: 8707.52 Wh, exported: 0 Wh, new state: SimCounterState(timestamp=1706972891.332088, power=42, imported=8707.518630109627, exported=0)
2024-02-03 16:08:11,341 - {control.data:236} - {INFO:MainThread} - bat_all_data
BatAllData(config=Config(configured=False), get=Get(soc=0, daily_exported=0, daily_imported=0, fault_str='Kein Fehler.', fault_state=0, imported=0, exported=0, power=0), set=Set(charging_power_left=0, switch_on_soc_reached=False))
2024-02-03 16:08:11,342 - {control.data:237} - {INFO:MainThread} - cp_all_data
AllChargepointData(get=AllGet(daily_imported=0.0, daily_exported=0, power=0, imported=7231752.93, exported=0))
2024-02-03 16:08:11,344 - {control.data:266} - {INFO:MainThread} - cp2
ChargepointData(control_parameter=ControlParameter(chargemode=<Chargemode.STOP: 'stop'>, current_plan=None, imported_at_plan_start=None, imported_instant_charging=None, limit=None, phases=0, prio=False, required_current=0, required_currents=[0.0, 0.0, 0.0], state=<ChargepointState.NO_CHARGING_ALLOWED: 0>, submode=<Chargemode.STOP: 'stop'>, timestamp_auto_phase_switch=None, timestamp_perform_phase_switch=None, timestamp_switch_on_off=None), get=Get(charge_state=False, connected_vehicle=ConnectedVehicle(config=ConnectedConfig(average_consumption=17, charge_template=0, chargemode='stop', current_plan=0, ev_template=0, priority=False, time_charging_in_use=False), info=ConnectedInfo(id=0, name='Ladepunkt'), soc=ConnectedSoc(fault_str='Kein Fehler.', fault_state=0, range_charged=0, range_unit='km', range=0, soc=0, timestamp=None)), currents=[0.0, 0.0, 0.0], daily_imported=0.0, daily_exported=0, evse_current=0, exported=0, fault_str='Kein Fehler.', fault_state=0, imported=7231752.93, phases_in_use=0, plug_state=False, power=0, rfid_timestamp=None, rfid=None, soc=None, soc_timestamp=None, state_str='Keine Ladung, da kein Auto angesteckt ist.', voltages=[238.72, 238.3, 238.67]), set=Set(change_ev_permitted=False, charging_ev=-1, charging_ev_prev=-1, current=0, energy_to_charge=0, loadmanagement_available=True, log=Log(chargemode_log_entry='_', imported_at_mode_switch=0, imported_at_plugtime=0, imported_since_mode_switch=0, imported_since_plugged=0, range_charged=0, time_charged='00:00', timestamp_start_charging=None), manual_lock=False, phases_to_use=0, plug_state_prev=False, plug_time=None, required_power=0, rfid=None, target_current=0, charging_ev_data=<control.ev.Ev object at 0x7153fe80>), config=Config(configuration={'mode': 'series', 'ip_address': 'localhost', 'duo_num': 0}, ev=0, name='Interne openWB', type='internal_openwb', template=0, connected_phases=3, phase_1=0, auto_phase_switch_hw=False, control_pilot_interruption_hw=False, id=2))
2024-02-03 16:08:11,346 - {control.data:266} - {INFO:MainThread} - cpt0
CpTemplateData(autolock=Autolock(active=False, plans={}, wait_for_charging_end=False), id=0, max_current_multi_phases=32, max_current_single_phase=32, name='Standard Ladepunkt-Profil', rfid_enabling=False, valid_tags=[])
2024-02-03 16:08:11,347 - {control.data:266} - {INFO:MainThread} - cpt1
CpTemplateData(autolock=Autolock(active=False, plans={}, wait_for_charging_end=False), id=1, max_current_multi_phases=32, max_current_single_phase=32, name='Standard Ladepunkt-Profil 2', rfid_enabling=False, valid_tags=[])
2024-02-03 16:08:11,348 - {control.data:266} - {INFO:MainThread} - counter0
CounterData(config=Config(max_currents=[35, 35, 35], max_total_power=24000), get=Get(powers=[0.0, 0.0, 0.0], currents=[0.0, 0.0, 0.0], voltages=[230.0, 230.0, 230.0], power_factors=[0.0, 0.0, 0.0], unbalanced_load=0, frequency=0, daily_exported=0, daily_imported=0, imported=0, exported=0, fault_state=2, fault_str="modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>)", power=0), set=Set(error_counter=1, reserved_surplus=0, released_surplus=0, raw_power_left=24046.0, raw_currents_left=[35.0, 35.0, 35.0], surplus_power_left=0, state_str=''))
2024-02-03 16:08:11,349 - {control.data:241} - {INFO:MainThread} - counter_all_data
CounterAllData(config=Config(reserve_for_not_charging=False), get=Get(hierarchy=[{'id': 0, 'type': 'counter', 'children': [{'id': 1, 'type': 'inverter', 'children': []}, {'id': 2, 'type': 'cp', 'children': []}]}]), set=Set(loadmanagement_active=False, home_consumption=42, invalid_home_consumption=0, daily_yield_home_consumption=0.0, imported_home_consumption=8707.518630109627, disengageable_smarthome_power=0))
2024-02-03 16:08:11,350 - {control.data:266} - {INFO:MainThread} - ct0
ChargeTemplateData(name='Standard-Lade-Profil', disable_after_unplug=False, prio=False, load_default=False, time_charging=TimeCharging(active=False, plans={}), chargemode=Chargemode(selected='stop', pv_charging=PvCharging(min_soc_current=10, min_current=0, feed_in_limit=False, min_soc=0, max_soc=100), scheduled_charging=ScheduledCharging(plans={}), instant_charging=InstantCharging(current=10, limit=Limit(selected='none', amount=1000, soc=50))))
2024-02-03 16:08:11,352 - {control.data:266} - {INFO:MainThread} - ev0
EvData(set=Set(ev_template=EvTemplate(data=EvTemplateData(name='Standard-Fahrzeug-Profil', max_current_multi_phases=16, max_phases=3, phase_switch_pause=2, prevent_phase_switch=False, prevent_charge_stop=False, control_pilot_interruption=False, control_pilot_interruption_duration=4, average_consump=17000, min_current=6, max_current_single_phase=32, battery_capacity=82000, efficiency=90, nominal_difference=1, keep_charge_active_duration=40), et_num=0), soc_error_counter=0), charge_template=0, ev_template=0, name='Standard-Fahrzeug', tag_id=[], get=Get(soc=0, soc_timestamp=None, force_soc_update=False, range=0, fault_state=0, fault_str='Kein Fehler.'))
2024-02-03 16:08:11,353 - {control.data:266} - {INFO:MainThread} - et0
EvTemplateData(name='Standard-Fahrzeug-Profil', max_current_multi_phases=16, max_phases=3, phase_switch_pause=2, prevent_phase_switch=False, prevent_charge_stop=False, control_pilot_interruption=False, control_pilot_interruption_duration=4, average_consump=17000, min_current=6, max_current_single_phase=32, battery_capacity=82000, efficiency=90, nominal_difference=1, keep_charge_active_duration=40)
2024-02-03 16:08:11,354 - {control.data:245} - {INFO:MainThread} - general_data
GeneralData(chargemode_config=ChargemodeConfig(instant_charging=InstantCharging(phases_to_use=1), pv_charging=PvCharging(bat_prio=True, charging_power_reserve=200, control_range=[0, 230], feed_in_yield=15000, phase_switch_delay=7, phases_to_use=1, rundown_power=1000, rundown_soc=50, switch_off_delay=60, switch_off_soc=40, switch_off_threshold=50, switch_on_delay=30, switch_on_soc=60, switch_on_threshold=1500), scheduled_charging=ScheduledCharging(phases_to_use=0), time_charging=TimeCharging(phases_to_use=1), unbalanced_load_limit=18, unbalanced_load=False), control_interval=60, extern_display_mode='primary', extern=False, external_buttons_hw=False, grid_protection_active=False, grid_protection_configured=True, grid_protection_random_stop=0, grid_protection_timestamp='', mqtt_bridge=False, price_kwh=0.3, range_unit='km', ripple_control_receiver=RippleControlReceiver(configured=True, r1_active=False, r2_active=False))
2024-02-03 16:08:11,355 - {control.data:246} - {INFO:MainThread} - general_data-display
primary
2024-02-03 16:08:11,356 - {control.data:247} - {INFO:MainThread} - graph_data
GraphData(config=Config(duration=120))
2024-02-03 16:08:11,357 - {control.data:248} - {INFO:MainThread} - optional_data
OptionalData(et=Et(active=False, config=EtConfig(max_price=0, provider={}), get=EtGet(price=0, price_list=[])), int_display=InternalDisplay(active=False, on_if_plugged_in=True, pin_active=False, pin_code='0000', standby=60, theme=<modules.display_themes.cards.config.CardsDisplayTheme object at 0x7154f9d0>), led=Led(active=False), rfid=Rfid(active=False))
2024-02-03 16:08:11,358 - {control.data:266} - {INFO:MainThread} - pv1
PvData(config=Config(max_ac_out=0), get=Get(currents=[0.0, 0.0, 0.0], daily_exported=0, monthly_exported=0, yearly_exported=0, exported=0, fault_state=2, fault_str="modules.common.modbus <class 'modules.common.fault_state.FaultState'> ('modules.common.modbus Exception Response(131, 3, IllegalValue)', <FaultStateLevel.ERROR: 2>)", power=-42))
2024-02-03 16:08:11,358 - {control.data:250} - {INFO:MainThread} - pv_all_data
PvAllData(config=Config(configured=True), get=Get(daily_exported=0, monthly_exported=0, yearly_exported=0, exported=0, power=-42))
2024-02-03 16:08:11,360 - {control.data:266} - {INFO:MainThread} - system
{'update_in_progress': False, 'perform_update': False, 'ip_address': '10.10.1.223', 'current_commit': '2024-01-03 12:21:20 +0100 [06bcf54f9]', 'current_branch': 'Release', 'current_branch_commit': '2024-01-03 12:21:20 +0100 [06bcf54f9]', 'current_missing_commits': [], 'datastore_version': 29, 'dataprotection_acknowledged': True, 'usage_terms_acknowledged': True, 'debug_level': 10, 'release_train': 'master', 'version': '2.1.2-Patch.2', 'boot_done': True, 'lastlivevaluesJson': {'timestamp': 1705480173, 'time': '09:29:33', 'house-power': 0.0, 'charging-all': 0.0, 'pv-all': -0.0, 'cp2-power': 0.0}, 'module_update_completed': True}
2024-02-03 16:08:11,361 - {control.data:279} - {INFO:MainThread} - device0
{'name': 'Huawei', 'type': 'huawei', 'id': 0, 'configuration': {'modbus_id': 1, 'ip_address': '10.10.1.66'}}
2024-02-03 16:08:11,362 - {control.data:281} - {INFO:MainThread} - component0
{'name': 'Huawei Zähler', 'type': 'counter', 'id': 0, 'configuration': {}}
2024-02-03 16:08:11,363 - {control.data:281} - {INFO:MainThread} - component1
{'name': 'Huawei Wechselrichter', 'type': 'inverter', 'id': 1, 'configuration': {}}
2024-02-03 16:08:11,363 - {control.data:253} - {INFO:MainThread} - 

2024-02-03 16:08:11,364 - {control.algorithm.algorithm:25} - {INFO:MainThread} - # Algorithmus
2024-02-03 16:08:11,365 - {control.algorithm.algorithm:30} - {INFO:MainThread} - **Mindestrom setzen**
2024-02-03 16:08:11,368 - {control.algorithm.algorithm:32} - {INFO:MainThread} - **Sollstrom setzen**
2024-02-03 16:08:11,369 - {control.counter:211} - {INFO:MainThread} - Überschuss zur PV-geführten Ladung: 0W
2024-02-03 16:08:11,370 - {control.counter:457} - {DEBUG:MainThread} - Zähler 0: Begrenzung der verbleibenden Leistung auf 0W
2024-02-03 16:08:11,371 - {control.algorithm.algorithm:43} - {INFO:MainThread} - **Keine Leistung für PV-geführtes Laden übrig.**
2024-02-03 16:08:11,371 - {control.process:23} - {INFO:MainThread} - # Ladung starten.
2024-02-03 16:08:11,374 - {modules.common.component_context:24} - {DEBUG:set current cp2} - Update Komponente ['Ladepunkt']
2024-02-03 16:08:11,392 - {control.counter:186} - {INFO:MainThread} - 0W reservierte EVU-Leistung, 0W freigegebene EVU-Leistung
2024-02-03 16:08:11,569 - {schedule:660} - {DEBUG:MainThread} - Running job Job(interval=1, unit=minutes, do=smarthome_handler, args=(), kwargs={})
2024-02-03 16:08:11,571 - {root:56} - {DEBUG:MainThread} - Don't start multiple instances of smarthome thread.
2024-02-03 16:08:15,581 - {schedule:660} - {DEBUG:MainThread} - Running job Job(interval=1, unit=minutes, do=smarthome_handler, args=(), kwargs={})
2024-02-03 16:08:16,108 - {helpermodules.setdata:641} - {WARNING:Setdata} - Kein Wechselrichter 5 mit gültiger Konfiguration gefunden.
2024-02-03 16:08:20,595 - {schedule:660} - {DEBUG:MainThread} - Running job Job(interval=1, unit=minutes, do=handler10Sec, args=(), kwargs={})
2024-02-03 16:08:20,596 - {root:74} - {INFO:MainThread} - # ***Start*** 

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: So Feb 04, 2024 11:27 am
von sebastian95
Hallo zusammen,
Laut Log stimmt etwas mit den Registern nicht, bzw. beim auslesen des Blocks von Register 32064-37765
sind leider nicht alles 32bit Integer sondern auch 16bit oder auch mal ein Bitfield oder es gibt zwischendrin einfach Register nicht.
Dazu kommt das man laut Modbus Spec nicht mehr wie 125 Register auf einmal auslesen kann.
Habe es mal bei mir im branch https://github.com/sreinhold95/openWB/t ... wei_dongle angepasst.
Ich weiß nur gerade nicht wie wir das am Besten testen können.
Ich kann meine Anlage nicht auftrennen und Testen, da ich am Smartlogger nen RSE hängen habe da 35kwp.

Kurz zusammen gefasst. in der 1.9 und bis 2.1.2 wurden die Modbus Register einzeln abgefragt. ab Version 2.1.3 werden diese im Block abgefragt, um die Abfragen zu veringern, da der Dongle das besser verkraftet. Es kann wenn es denn wieder funktioniert, trotzdem zu abbrüchen kommen und das auslesen der Kaskade ist leider dann weiterhin noch nicht gelöst. Aber erstmal eins nach dem anderen.

VG
Sebastian

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: So Feb 04, 2024 11:49 am
von evchab
ich habe m.e. Release 2.1.2 patch x vom 3.1.2024 im Einsatz
Bildschirmfoto 2024-02-04 um 12.48.24.png
leider blick ich mit den ganzen Versionen nicht durch :oops:

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: So Feb 04, 2024 12:04 pm
von KlausM
Für mich sind die Fachausdrücke größtenteils böhmische Dörfer.

Was ich sagen kann ist, dass ich auch die 2.1.2. Patch 2 Release hatte, und damit null Daten von Huawei, obwohl IP, ID, etc. alles sauber eingestellt, wie auch in der dagegen funzenden 1.9.303.

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: So Feb 04, 2024 12:26 pm
von openWB
KlausM hat geschrieben: So Feb 04, 2024 12:04 pm Für mich sind die Fachausdrücke größtenteils böhmische Dörfer.

Was ich sagen kann ist, dass ich auch die 2.1.2. Patch 2 Release hatte, und damit null Daten von Huawei, obwohl IP, ID, etc. alles sauber eingestellt, wie auch in der dagegen funzenden 1.9.303.
War die 1.9er parallel am Abfragen?

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: So Feb 04, 2024 12:35 pm
von KlausM
Nein, nein. Die Möglichkeit hätte ich gar nicht. SD gewechselt.

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: So Feb 04, 2024 1:53 pm
von sebastian95
evchab hat geschrieben: So Feb 04, 2024 11:49 am ich habe m.e. Release 2.1.2 patch x vom 3.1.2024 im Einsatz

Bildschirmfoto 2024-02-04 um 12.48.24.png

leider blick ich mit den ganzen Versionen nicht durch :oops:
mit der Version 2.1.2 Beta 2 wurde das Huawei Modul angepasst.

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Verfasst: So Feb 04, 2024 2:03 pm
von evchab
kann man darauf downgraden ? habe ich noch nicht gemacht