Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion data/config/mosquitto/openwb_local.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# openwb-version:16
# openwb-version:17
listener 1886 localhost
allow_anonymous true

Expand All @@ -22,6 +22,8 @@ topic openWB/chargepoint/+/set/phases_to_use out 2
topic openWB/chargepoint/+/set/manual_lock out 2
topic openWB/chargepoint/+/set/autolock_state out 2
topic openWB/chargepoint/+/set/rfid out 2
topic openWB/chargepoint/+/set/charge_template out 2
topic openWB/chargepoint/+/set/charge_template/# out 2
topic openWB/chargepoint/+/get/# out 2
topic openWB/chargepoint/+/config/# out 2
topic openWB/chargepoint/template/# out 2
Expand Down
7 changes: 7 additions & 0 deletions docs/Ladeprofile.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,10 @@ _Einstellungen -> Konfiguration -> Fahrzeuge -> Lade-Profile_
Unter den Lade-Profilen werden die Einstellungen für das Ladeprofil verwaltet. Die Einstellungen auf der Hauptseite werden aus diesem Profil geladen und dorthin geschrieben. Ist nur ein Fahrzeug vorhanden, so wird in den meisten Fällen nur das Standard-Ladeprofil benötigt. Ausgenommen hiervon ist, wenn per RFID-Tag Ladevorgaben ausgewählt werden.

In den fahrzeugspezifischen Einstellungen wird ein Ladeprofil einem Fahrzeug zugeordnet. Werden zwei Fahrzeuge geladen, empfiehlt es sich dazu ein zweites Ladeprofil anzulegen.

### Temporäre Ladeprofile (ab Version 2.1.7)
Anpassungen am Ladeprofil, die über die Hauptseite (Web-Themes) oder ein Display (Display-Themes) vorgenommen werden, sind temporär. Die Lade-Profile müssen direkt in den Einstellungen bearbeitet werden.
Die temporären Einstellungen werden mit dem Ladeprofil aus den Einstellungen überschrieben, wenn
... abgesteckt wird.
... das Fahrzeug gewechselt wird. Das Lade-Profil des neuen Fahrzeugs wird geladen.
... das Ladeprofil geändert wird und kein Fahrzeug angesteckt ist. Ist ein Fahrzeug angesteckt, gelten die temporären Einstellungen bis zum Abstecken und werden dann durch das Ladeprofil überschrieben.
2 changes: 1 addition & 1 deletion packages/control/algorithm/additional_current_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
def test_set_loadmangement_message(set_current, limit, expected_msg, monkeypatch):
# setup
ev = Ev(0)
ev.charge_template = ChargeTemplate(0)
ev.charge_template = ChargeTemplate()
cp1 = Chargepoint(1, None)
cp1.data = ChargepointData(set=Set(current=set_current),
control_parameter=ControlParameter(required_currents=[8]*3))
Expand Down
8 changes: 4 additions & 4 deletions packages/control/algorithm/surplus_controlled.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,9 +96,9 @@ def _set_loadmangement_message(self,

# tested
def filter_by_feed_in_limit(self, chargepoints: List[Chargepoint]) -> Tuple[List[Chargepoint], List[Chargepoint]]:
cp_with_feed_in = list(filter(lambda cp: cp.data.set.charging_ev_data.charge_template.data.chargemode.
cp_with_feed_in = list(filter(lambda cp: cp.data.set.charge_template.data.chargemode.
pv_charging.feed_in_limit is True, chargepoints))
cp_without_feed_in = list(filter(lambda cp: cp.data.set.charging_ev_data.charge_template.data.chargemode.
cp_without_feed_in = list(filter(lambda cp: cp.data.set.charge_template.data.chargemode.
pv_charging.feed_in_limit is False, chargepoints))
return cp_with_feed_in, cp_without_feed_in

Expand All @@ -110,7 +110,7 @@ def _limit_adjust_current(self, chargepoint: Chargepoint, new_current: float) ->
MAX_CURRENT = 30
msg = None
nominal_difference = chargepoint.data.set.charging_ev_data.ev_template.data.nominal_difference
if chargepoint.data.set.charging_ev_data.chargemode_changed or chargepoint.data.get.charge_state is False:
if chargepoint.chargemode_changed or chargepoint.data.get.charge_state is False:
return new_current
else:
# Um max. +/- 5A pro Zyklus regeln
Expand Down Expand Up @@ -153,7 +153,7 @@ def check_submode_pv_charging(self) -> None:
def phase_switch_necessary() -> bool:
return cp.cp_ev_chargemode_support_phase_switch() and cp.data.get.phases_in_use != 1
control_parameter = cp.data.control_parameter
if cp.data.set.charging_ev_data.chargemode_changed or cp.data.set.charging_ev_data.submode_changed:
if cp.chargemode_changed or cp.submode_changed:
if control_parameter.state == ChargepointState.CHARGING_ALLOWED:
if (cp.data.set.charging_ev_data.ev_template.data.prevent_charge_stop is False and
phase_switch_necessary() is False):
Expand Down
7 changes: 2 additions & 5 deletions packages/control/algorithm/surplus_controlled_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
from control.chargepoint.chargepoint_data import Get, Set
from control.chargepoint.chargepoint_template import CpTemplate
from control.chargepoint.control_parameter import ControlParameter
from control.ev.charge_template import ChargeTemplate
from control.ev.ev import Ev


Expand Down Expand Up @@ -40,10 +39,8 @@ def test_filter_by_feed_in_limit(feed_in_limit_1: bool,
expected_sorted: int):
# setup
def setup_cp(cp: Chargepoint, feed_in_limit: bool) -> Chargepoint:
ev = Ev(0)
ev.charge_template = ChargeTemplate(0)
ev.charge_template.data.chargemode.pv_charging.feed_in_limit = feed_in_limit
cp.data = ChargepointData(set=Set(charging_ev_data=ev))
cp.data = ChargepointData()
cp.data.set.charge_template.data.chargemode.pv_charging.feed_in_limit = feed_in_limit
return cp

cp1 = setup_cp(mock_cp1, feed_in_limit_1)
Expand Down
Loading
Loading