Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Auflistung von gewünschten Features, Ausschreibung zur Umsetzung
evchab
Beiträge: 276
Registriert: Mo Mär 04, 2019 3:04 pm

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag 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*** 
sebastian95
Beiträge: 25
Registriert: Di Nov 12, 2019 9:09 am

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag 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
evchab
Beiträge: 276
Registriert: Mo Mär 04, 2019 3:04 pm

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag 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:
KlausM
Beiträge: 28
Registriert: Mi Feb 15, 2023 9:44 am

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag 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.
openWB
Site Admin
Beiträge: 7999
Registriert: So Okt 07, 2018 1:50 pm

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag 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?
Supportanfragen bitte NICHT per PN stellen.
Hardwareprobleme bitte über die Funktion Debug Daten senden mitteilen oder per Mail an support@openwb.de
KlausM
Beiträge: 28
Registriert: Mi Feb 15, 2023 9:44 am

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag von KlausM »

Nein, nein. Die Möglichkeit hätte ich gar nicht. SD gewechselt.
sebastian95
Beiträge: 25
Registriert: Di Nov 12, 2019 9:09 am

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag 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.
evchab
Beiträge: 276
Registriert: Mo Mär 04, 2019 3:04 pm

Re: Kaskadierter Huawei Wechselrichter - Modulkonfiguration PV

Beitrag von evchab »

kann man darauf downgraden ? habe ich noch nicht gemacht
Antworten