Skip to content

Commit 5001506

Browse files
committed
fix single phase wallboxes (openWB#2836)
1 parent 012a217 commit 5001506

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

packages/control/loadmanagement.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,12 @@ def _limit_by_power(self,
105105
log.debug(f"Verbleibende Leistung unter Berücksichtigung der Einspeisegrenze: {raw_power_left}W")
106106
if sum([c * v for c, v in zip(available_currents, cp_voltages)]) > raw_power_left:
107107
for i in range(0, 3):
108-
# Am meisten belastete Phase trägt am meisten zur Leistungsreduktion bei.
109-
currents[i] = available_currents[i] / sum(available_currents) * raw_power_left / cp_voltages[i]
108+
try:
109+
# Am meisten belastete Phase trägt am meisten zur Leistungsreduktion bei.
110+
currents[i] = available_currents[i] / sum(available_currents) * raw_power_left / cp_voltages[i]
111+
except ZeroDivisionError:
112+
# bei einphasig angeschlossenen Wallboxen ist die Spannung der anderen Phasen 0V
113+
currents[i] = 0.0
110114
log.debug(f"Leistungsüberschreitung auf {raw_power_left}W korrigieren: {available_currents}")
111115
limit = LoadmanagementLimit(LimitingValue.POWER.value.format(get_component_name_by_id(counter.num)),
112116
LimitingValue.POWER)

0 commit comments

Comments
 (0)