Skip to content

Commit 1f4bb1d

Browse files
committed
draft
1 parent f3983a4 commit 1f4bb1d

File tree

4 files changed

+9
-4
lines changed

4 files changed

+9
-4
lines changed

packages/control/algorithm/additional_current.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ def set_additional_current(self) -> None:
3030
available_currents, limit = Loadmanagement().get_available_currents(missing_currents, counter, cp)
3131
log.debug(f"cp {cp.num} available currents {available_currents} missing currents "
3232
f"{missing_currents} limit {limit.message}")
33-
cp.data.control_parameter.limit = limit
33+
if limit.limiting_value is not None:
34+
cp.data.control_parameter.limit = limit
3435
available_for_cp = common.available_current_for_cp(cp, counts, available_currents, missing_currents)
3536
current = common.get_current_to_set(
3637
cp.data.set.current, available_for_cp, cp.data.set.target_current)

packages/control/algorithm/min_current.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ def set_min_current(self) -> None:
2727
if max(missing_currents) > 0:
2828
available_currents, limit = Loadmanagement().get_available_currents(
2929
missing_currents, counter, cp)
30-
cp.data.control_parameter.limit = limit
30+
if limit.limiting_value is not None:
31+
cp.data.control_parameter.limit = limit
3132
available_for_cp = common.available_current_for_cp(
3233
cp, counts, available_currents, missing_currents)
3334
current = common.get_current_to_set(

packages/control/algorithm/surplus_controlled.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,9 @@ def _set(self,
6161
cp,
6262
feed_in=feed_in_yield
6363
)
64-
cp.data.control_parameter.limit = limit
64+
# im PV-Laden wird der Strom immer durch die Leistung begrenzt
65+
if limit.limiting_value is not None and limit.limiting_value != LimitingValue.POWER:
66+
cp.data.control_parameter.limit = limit
6567
available_for_cp = common.available_current_for_cp(cp, counts, available_currents, missing_currents)
6668
if counter.get_control_range_state(feed_in_yield) == ControlRangeState.MIDDLE:
6769
pv_charging = data.data.general_data.data.chargemode_config.pv_charging

packages/control/ev/ev.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,8 @@ def _check_phase_switch_conditions(self,
277277
all_surplus = data.data.counter_all_data.get_evu_counter().get_usable_surplus(feed_in_yield)
278278
required_surplus = control_parameter.min_current * max_phases_ev * 230 - get_power
279279
unbalanced_load_limit_reached = limit.limiting_value == LimitingValue.UNBALANCED_LOAD
280-
condition_1_to_3 = (((get_medium_charging_current(get_currents) > max_current_range and
280+
current_limit_reached = limit.limiting_value == LimitingValue.CURRENT
281+
condition_1_to_3 = ((((get_medium_charging_current(get_currents) > max_current_range or current_limit_reached) and
281282
all_surplus > required_surplus) or unbalanced_load_limit_reached) and
282283
phases_in_use == 1)
283284
condition_3_to_1 = get_medium_charging_current(

0 commit comments

Comments
 (0)