2323from typing import List , Optional
2424
2525from control import data
26- from control .algorithm .chargemodes import CONSIDERED_CHARGE_MODES_ADDITIONAL_CURRENT
26+ from control .algorithm .chargemodes import CONSIDERED_CHARGE_MODES_CHARGING
2727from control .algorithm .filter_chargepoints import get_chargepoints_by_chargemodes
2828from control .pv import Pv
2929from helpermodules .constants import NO_ERROR
@@ -291,14 +291,13 @@ def set_power_limit_controllable(self):
291291 def get_power_limit (self ):
292292 if self .data .config .bat_control_permitted is False :
293293 return
294- chargepoint_by_chagemodes = get_chargepoints_by_chargemodes (CONSIDERED_CHARGE_MODES_ADDITIONAL_CURRENT )
295- power_of_chargepoints_by_chagemodes = sum (
296- [ cp . data . get . power for cp in chargepoint_by_chagemodes if cp . data . get . power is not None ])
294+ chargepoint_by_chargemodes = get_chargepoints_by_chargemodes (CONSIDERED_CHARGE_MODES_CHARGING )
295+ # Falls aktive Steuerung an und Fahrzeuge laden und kein Überschuss im System ist,
296+ # dann Speichereistung begrenzen.
297297 if (self .data .config .power_limit_mode != BatPowerLimitMode .NO_LIMIT .value and
298- len (chargepoint_by_chagemodes ) > 0 and
299- power_of_chargepoints_by_chagemodes > 0 and
298+ len (chargepoint_by_chargemodes ) > 0 and
299+ data . data . cp_all_data . data . get . power > 100 and
300300 self .data .get .power_limit_controllable and
301- # Nur wenn kein Überschuss im System ist, Speicherleistung begrenzen.
302301 self .data .get .power <= 0 and
303302 data .data .counter_all_data .get_evu_counter ().data .get .power >= - 100 ):
304303 if self .data .config .power_limit_mode == BatPowerLimitMode .LIMIT_STOP .value :
@@ -311,10 +310,10 @@ def get_power_limit(self):
311310 control_range_low = data .data .general_data .data .chargemode_config .pv_charging .control_range [0 ]
312311 control_range_high = data .data .general_data .data .chargemode_config .pv_charging .control_range [1 ]
313312 control_range_center = control_range_high - (control_range_high - control_range_low ) / 2
314- if len (chargepoint_by_chagemodes ) == 0 :
313+ if len (chargepoint_by_chargemodes ) == 0 :
315314 log .debug ("Speicher-Leistung nicht begrenzen, "
316315 "da keine Ladepunkte in einem Lademodus mit Netzbezug sind." )
317- elif power_of_chargepoints_by_chagemodes <= 0 :
316+ elif data . data . cp_all_data . data . get . power <= 100 :
318317 log .debug ("Speicher-Leistung nicht begrenzen, da kein Ladepunkt mit Netzubezug lädt." )
319318 elif self .data .get .power_limit_controllable is False :
320319 log .debug ("Speicher-Leistung nicht begrenzen, da keine regelbaren Speicher vorhanden sind." )
0 commit comments