@@ -236,30 +236,37 @@ def _set_bat_power_active_control(self, power):
236236 # Falls keine leistung übergeben wird greift die Eigenregelung der Speicher
237237 if power is None :
238238 power_limit = None
239+ bat_component_data .get .state_str = "Keine Steuerung"
239240 log .debug (("Aktive Speichersteuerung: Eigenregelung - Speicher "
240241 f"(ID: { bat_component .component_config .id } ) auf Eigenregelung gesetzt." ))
241242 elif power == 0 :
242243 power_limit = 0
244+ bat_component_data .get .state_str = "Entladesperre"
243245 log .debug ((f"Aktive Speichersteuerung: Kein Laden/Entladen - "
244246 f"Speicher (ID: { bat_component .component_config .id } ) auf 0W gesetzt." ))
245247 elif power < 0 :
246248 # Eigenregelung aller Speicher, da Entladung nicht möglich
247249 if max_discharge_power_total == 0 :
248250 power_limit = None
251+ bat_component_data .get .state_str = ("Keine Steuerung - alle Speicher "
252+ "befinden sich unterhalb minimal SoC" )
249253 log .debug (("Aktive Speichersteuerung: Entladung - alle Speicher befinden sich unterhalb minimal "
250254 f"SoC. Speicher (ID: { bat_component .component_config .id } ) auf Eigenregelung gesetzt." ))
251255 else :
252256 # unterhalb des minimal SoC greift die Eigenregelung
253257 # das verhindert Tiefenentladung
254258 if bat_component_data .get .soc <= self .data .config .bat_control_min_soc :
255259 power_limit = None
260+ bat_component_data .get .state_str = ("Keine Steuerung - dieser Speicher "
261+ "befindet sich unterhalb minimal SoC" )
256262 log .debug (("Aktive Speichersteuerung: Entladung - "
257263 f"Speicher (ID: { bat_component .component_config .id } ) "
258264 "befindet sich unterhalb minimal SoC - auf Eigenregelung gesetzt." ))
259265 # setze Entladeleistung als Bruchteil der möglichen Entladeleistung
260266 else :
261267 factor = min (power / max_discharge_power_total , 1 )
262268 power_limit = bat_component_data .get .max_discharge_power * factor
269+ bat_component_data .get .state_str = f"Entladung mit { power_limit } W"
263270 log .debug (("Aktive Speichersteuerung: Entladung - "
264271 f"Speicher (ID: { bat_component .component_config .id } ) "
265272 f"entlädt mit { power_limit } ({ factor } x "
@@ -268,17 +275,18 @@ def _set_bat_power_active_control(self, power):
268275 # oberhalb des max_soc soll Speicher nicht entladen wenn andere Speicher laden
269276 if bat_component_data .get .soc >= self .data .config .bat_control_max_soc :
270277 power_limit = 0
278+ bat_component_data .get .state_str = ("Speicher befindet sich oberhalb "
279+ "des maximalen SoC - Ladung gesperrt" )
271280 log .debug (("Aktive Speichersteuerung: Ladung - "
272281 f"Speicher (ID: { bat_component .component_config .id } ) "
273282 "befindet sich oberhalb maximal SoC - Speicher sperren." ))
274283 else :
275284 factor = min (power / max_charge_power_total , 1 )
276285 power_limit = bat_component_data .get .max_charge_power * factor
286+ bat_component_data .get .state_str = f"Ladung mit { power_limit } W"
277287 log .debug (("Aktive Speichersteuerung: Ladung - "
278288 f"Speicher (ID: { bat_component .component_config .id } ) "
279289 f"lädt mit { power_limit } ({ factor } x { bat_component_data .get .max_charge_power } )" ))
280-
281- # power_limit = self._limit_bat_power_discharge(power_limit)
282290 data .data .bat_data [f"bat{ bat_component .component_config .id } " ].data .set .power_limit = power_limit
283291 log .debug (f"Power Limit { power_limit } W an Speicher übergeben!" )
284292
0 commit comments