Add extracted tools: CitrineOS, OpenOCPP, ShapeShifter
- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
This commit is contained in:
@@ -0,0 +1,335 @@
|
||||
{
|
||||
"description": "Tests one external watt setpoint for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 10.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"energy_usage_root": {
|
||||
"current_A": {
|
||||
"L1": 0.029999999329447746,
|
||||
"L2": 0.0,
|
||||
"L3": 0.0,
|
||||
"N": 0.0
|
||||
},
|
||||
"energy_Wh_import": {
|
||||
"L1": 1.7999999523162842,
|
||||
"L2": 0.0,
|
||||
"L3": 0.0,
|
||||
"total": 1.7999999523162842
|
||||
},
|
||||
"power_W": {
|
||||
"L1": 2.0,
|
||||
"L2": 0.0,
|
||||
"L3": 0.0,
|
||||
"total": 2.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:46.479Z",
|
||||
"voltage_V": {
|
||||
"DC": 248.10000610351563,
|
||||
"L1": 0.0,
|
||||
"L2": 0.0
|
||||
},
|
||||
"frequency_Hz": {
|
||||
"L1": 47.0,
|
||||
"L2": 47.0,
|
||||
"L3": 47.0
|
||||
}
|
||||
},
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 9.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:46.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 42,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"frequency_table": [
|
||||
{
|
||||
"frequency_Hz": 49.0,
|
||||
"total_power_W": -7000.0
|
||||
},
|
||||
{
|
||||
"frequency_Hz": 50.0,
|
||||
"total_power_W": 0
|
||||
},
|
||||
{
|
||||
"frequency_Hz": 51.0,
|
||||
"total_power_W": 7000.0
|
||||
}
|
||||
]
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -10.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -6900.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -10.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -6900.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -10.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -6900.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": -9.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": -6210.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:46.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,323 @@
|
||||
{
|
||||
"description": "Tests loadbalancing between two DC EVSE nodes (50/50)",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 2,
|
||||
"slice_watt": 1000,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"total_power_W": {
|
||||
"value": 10000.0,
|
||||
"source": "EVSE1_leaves"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"total_power_W": {
|
||||
"value": 50000.0,
|
||||
"source": "EVSE1_leaves"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 60.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
},
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"total_power_W": {
|
||||
"value": 12000.0,
|
||||
"source": "EVSE2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE2_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE2_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE2_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"total_power_W": {
|
||||
"value": 60000.0,
|
||||
"source": "EVSE2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 80.0,
|
||||
"source": "EVSE2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE2_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE2_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE2_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse2"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 125.0,
|
||||
"source": "GridConnection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 120.0,
|
||||
"source": "GridConnection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "GridConnection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 125.0,
|
||||
"source": "GridConnection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 120.0,
|
||||
"source": "GridConnection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "GridConnection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_root",
|
||||
"value": 60.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_NumPhasesActive",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "EVSE1_root",
|
||||
"value": 41400.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_root",
|
||||
"value": 60.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_NumPhasesActive",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "EVSE1_root",
|
||||
"value": 41400.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_root",
|
||||
"value": 60.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_NumPhasesActive",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "EVSE1_root",
|
||||
"value": 41400.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
},
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 60.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_NumPhasesActive",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 41400.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 60.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_NumPhasesActive",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 41400.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 60.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_NumPhasesActive",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 41400.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse2",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,299 @@
|
||||
{
|
||||
"description": "Tests loadbalancing between two EVSE nodes (50/50)",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
},
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE2_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE2_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE2_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 8.0,
|
||||
"source": "EVSE2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE2_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE2_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE2_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse2"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "GridConnection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "GridConnection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "GridConnection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "GridConnection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "GridConnection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "GridConnection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 24.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "GridConnection_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 24.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "GridConnection_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "GridConnection_root",
|
||||
"value": 24.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "GridConnection_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
},
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE2_leave",
|
||||
"value": 8.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "GridConnection_phase,EVSE2_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE2_leave",
|
||||
"value": 8.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "GridConnection_phase,EVSE2_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE2_leave",
|
||||
"value": 8.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "GridConnection_phase,EVSE2_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse2",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
{
|
||||
"basefile": "1_0_two_ac_evse_load_balancing.json",
|
||||
"description": "Tests load balancing between two EVSE nodes, one is charging and one is unplugged with 0A in idle",
|
||||
"patches": [
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/schedule_import/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 0.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/evse_state",
|
||||
"value": "Unplugged"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/limits_root_side/ac_max_current_A/source",
|
||||
"value": "GridConnection_root,EVSE1_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/limits_root_side/ac_max_current_A/value",
|
||||
"value": 32.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/0/limits_to_root/ac_max_current_A/source",
|
||||
"value": "GridConnection_root,EVSE1_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 32.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/1/limits_to_root/ac_max_current_A/source",
|
||||
"value": "GridConnection_root,EVSE1_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": 32.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/source",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/value",
|
||||
"value": 0.0
|
||||
},
|
||||
{
|
||||
"op": "remove",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_phase_count"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/source",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 0.0
|
||||
},
|
||||
{
|
||||
"op": "remove",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_phase_count"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/source",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": 0.0
|
||||
},
|
||||
{
|
||||
"op": "remove",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_phase_count"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"basefile": "1_0_two_ac_evse_load_balancing.json",
|
||||
"description": "Tests load balancing between two EVSE nodes, one is charging and one is unplugged with 6A in idle",
|
||||
"patches": [
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/schedule_import/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 6.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/evse_state",
|
||||
"value": "Unplugged"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/limits_root_side/ac_max_current_A/value",
|
||||
"value": 26.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 26.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": 26.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/source",
|
||||
"value": "EVSE2_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/value",
|
||||
"value": 6.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/source",
|
||||
"value": "EVSE2_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 6.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/source",
|
||||
"value": "EVSE2_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": 6.0
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
{
|
||||
"basefile": "1_0_two_ac_evse_load_balancing.json",
|
||||
"description": "Tests load balancing between two EVSE nodes, one is charging and one is unplugged with 6A in idle",
|
||||
"patches": [
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/0/schedule_import/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 45.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/0/schedule_import/0/limits_to_leaves/ac_max_current_A/value",
|
||||
"value": 44.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/schedule_import/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 0.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/schedule_export/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 8.0
|
||||
},
|
||||
{
|
||||
"op": "remove",
|
||||
"path": "/request/children/1/schedule_export/0/limits_to_leaves/ac_max_current_A"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/limits_root_side/ac_max_current_A/value",
|
||||
"value": 40.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 40.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": 40.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/source",
|
||||
"value": "EVSE2_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/source",
|
||||
"value": "EVSE2_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/source",
|
||||
"value": "EVSE2_root"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,109 @@
|
||||
{
|
||||
"basefile": "1_0_two_ac_evse_load_balancing.json",
|
||||
"description": "Tests load balancing between two EVSE nodes, both are discharging",
|
||||
"patches": [
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/0/schedule_import/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 0.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/0/schedule_export/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 12.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/schedule_import/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 0.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/request/children/1/schedule_export/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": 11.0
|
||||
},
|
||||
{
|
||||
"op": "remove",
|
||||
"path": "/request/children/0/schedule_export/0/limits_to_leaves/ac_max_current_A"
|
||||
},
|
||||
{
|
||||
"op": "remove",
|
||||
"path": "/request/children/1/schedule_export/0/limits_to_leaves/ac_max_current_A"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/limits_root_side/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/limits_root_side/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/0/limits_to_root/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/0/schedule/1/limits_to_root/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/source",
|
||||
"value": "GridConnection_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/limits_root_side/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/source",
|
||||
"value": "GridConnection_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/0/limits_to_root/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/source",
|
||||
"value": "GridConnection_root"
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_current_A/value",
|
||||
"value": -8.0
|
||||
},
|
||||
{
|
||||
"op": "replace",
|
||||
"path": "/expected_results/0/1/schedule/1/limits_to_root/ac_max_phase_count/source",
|
||||
"value": "BrokerFastCharging_FixedValue"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,235 @@
|
||||
{
|
||||
"description": "Tests one external limit for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "grid_connection_root,external_limit_1_root,EVSE1_root",
|
||||
"value": 32.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "grid_connection_root,external_limit_1_root,EVSE1_root",
|
||||
"value": 32.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "grid_connection_root,external_limit_1_root,EVSE1_root",
|
||||
"value": 32.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,235 @@
|
||||
{
|
||||
"description": "Tests one external limit for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 13.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": 13.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": 13.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": 13.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,283 @@
|
||||
{
|
||||
"description": "Tests one external limit for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_2_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 31.0,
|
||||
"source": "external_limit_2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_2_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,518 @@
|
||||
{
|
||||
"description": "Tests one external limit for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:40.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 5.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:37.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:38.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:39.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:40.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:41.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:42.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:43.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_2_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 31.0,
|
||||
"source": "external_limit_2_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_2_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_2_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:37.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": 6.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:38.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:39.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:40.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:41.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:42.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_2_leave",
|
||||
"value": 31.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_2_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:43.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,400 @@
|
||||
{
|
||||
"description": "Tests one external limit for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z",
|
||||
"2024-12-17T13:01:00.000Z",
|
||||
"2024-12-17T13:02:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Both",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 3,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {},
|
||||
"limits_to_root": {
|
||||
"total_power_W": {
|
||||
"value": 11000.0,
|
||||
"source": "external_limit_1_root"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:01.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {},
|
||||
"limits_to_root": {
|
||||
"total_power_W": {
|
||||
"value": 2000.0,
|
||||
"source": "external_limit_1_root"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:01.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {},
|
||||
"limits_to_root": {
|
||||
"total_power_W": {
|
||||
"value": 5000.0,
|
||||
"source": "external_limit_1_root"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:01.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {},
|
||||
"limits_to_root": {
|
||||
"total_power_W": {
|
||||
"value": 0.0,
|
||||
"source": "external_limit_1_root"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:01.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "grid_connection_root,EVSE1_root",
|
||||
"value": 32.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "EVSE1_minphase",
|
||||
"value": 1
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "grid_connection_root,EVSE1_root",
|
||||
"value": 7360.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "grid_connection_root,EVSE1_root",
|
||||
"value": 32.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "EVSE1_minphase",
|
||||
"value": 1
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "grid_connection_root,EVSE1_root",
|
||||
"value": 7360.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:01.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_root",
|
||||
"value": 15.942028999328613
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_root",
|
||||
"value": 11000.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:01.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_root",
|
||||
"value": 15.942028999328613
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_root",
|
||||
"value": 11000.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:01.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"expected_results": [
|
||||
[]
|
||||
],
|
||||
"request": {
|
||||
"children": [],
|
||||
"node_type": "Undefined",
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "",
|
||||
"schedule_import": [],
|
||||
"schedule_export": []
|
||||
},
|
||||
"start_times": [
|
||||
"2025-01-16T15:42:56.390Z"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
{
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "",
|
||||
"value": 0.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-01-01T12:00:00.000Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse_manager",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
],
|
||||
"request": {
|
||||
"children": [],
|
||||
"energy_usage_root": {
|
||||
"current_A": {
|
||||
"L1": 0.029999999329447746,
|
||||
"L2": 0.0,
|
||||
"L3": 0.0,
|
||||
"N": 0.0
|
||||
},
|
||||
"energy_Wh_import": {
|
||||
"L1": 1.7999999523162842,
|
||||
"L2": 0.0,
|
||||
"L3": 0.0,
|
||||
"total": 1.7999999523162842
|
||||
},
|
||||
"power_W": {
|
||||
"L1": 2.0,
|
||||
"L2": 0.0,
|
||||
"L3": 0.0,
|
||||
"total": 2.0
|
||||
},
|
||||
"timestamp": "2024-03-27T12:41:16.864Z",
|
||||
"voltage_V": {
|
||||
"DC": 248.10000610351563,
|
||||
"L1": 0.0,
|
||||
"L2": 0.0
|
||||
}
|
||||
},
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_import": [],
|
||||
"schedule_export": [],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse_manager"
|
||||
},
|
||||
"start_times": [
|
||||
"2024-01-01T12:00:00.000Z"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,338 @@
|
||||
{
|
||||
"description": "Tests one external ampere setpoint for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 10.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 9.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:46.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 42,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"ac_current_A": 7.5
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 41,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"ac_current_A": 13.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:37.479Z"
|
||||
},
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 41,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"ac_current_A": -8.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:40.479Z"
|
||||
},
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 41,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"ac_current_A": -12.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:44.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 7.5
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 7.5
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 7.5
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 13.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:37.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": -8.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:40.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -10.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:44.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": -9.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:46.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,366 @@
|
||||
{
|
||||
"description": "Tests one external watt setpoint for one EVSE",
|
||||
"start_times": [
|
||||
"2024-12-17T13:00:00.000Z"
|
||||
],
|
||||
"config": {
|
||||
"nominal_ac_voltage": 230.0,
|
||||
"update_interval": 1,
|
||||
"schedule_interval_duration": 60,
|
||||
"schedule_total_duration": 1,
|
||||
"slice_ampere": 0.5,
|
||||
"slice_watt": 500,
|
||||
"debug": false,
|
||||
"switch_3ph1ph_while_charging_mode": "Never",
|
||||
"switch_3ph1ph_max_nr_of_switches_per_session": 10,
|
||||
"switch_3ph1ph_switch_limit_stickyness": "DontChange",
|
||||
"switch_3ph1ph_power_hysteresis_W": 500,
|
||||
"switch_3ph1ph_time_hysteresis_s": 30
|
||||
},
|
||||
"request": {
|
||||
"children": [
|
||||
{
|
||||
"children": [
|
||||
{
|
||||
"children": [],
|
||||
"evse_state": "Charging",
|
||||
"node_type": "Evse",
|
||||
"priority_request": false,
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 10.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 0.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "EVSE1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "EVSE1_phase"
|
||||
},
|
||||
"ac_min_current_A": {
|
||||
"value": 6.0,
|
||||
"source": "EVSE1_mincurrent"
|
||||
},
|
||||
"ac_min_phase_count": {
|
||||
"value": 1,
|
||||
"source": "EVSE1_minphase"
|
||||
},
|
||||
"ac_number_of_active_phases": 3,
|
||||
"ac_supports_changing_phases_during_charging": true
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "evse1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 9.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:46.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 42,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"total_power_W": 4242.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 41,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"total_power_W": 8242.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:37.479Z"
|
||||
},
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 41,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"total_power_W": -4242.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:40.479Z"
|
||||
},
|
||||
{
|
||||
"setpoint": {
|
||||
"priority": 41,
|
||||
"source": "external_limit_1_setpoint",
|
||||
"total_power_W": -14242.0
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:44.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "external_limit_1_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "external_limit_1_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "external_limit_1"
|
||||
}
|
||||
],
|
||||
"node_type": "Generic",
|
||||
"schedule_export": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 16.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_import": [
|
||||
{
|
||||
"limits_to_leaves": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_leave"
|
||||
}
|
||||
},
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"value": 32.0,
|
||||
"source": "grid_connection_root"
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"value": 3,
|
||||
"source": "grid_connection_phase"
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
}
|
||||
],
|
||||
"schedule_setpoints": [],
|
||||
"uuid": "grid_connection"
|
||||
},
|
||||
"expected_results": [
|
||||
[
|
||||
{
|
||||
"limits_root_side": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 6.147826194763184
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 4242.0
|
||||
}
|
||||
},
|
||||
"schedule": [
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 6.147826194763184
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 4242.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:00:00.000Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 6.147826194763184
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 4242.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:36.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 11.944927215576172
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "grid_connection_phase,external_limit_1_phase,EVSE1_phase",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": 8242.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:37.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": -6.147826194763184
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_setpoint",
|
||||
"value": -4242.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:40.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -10.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "EVSE1_leave",
|
||||
"value": -6900.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:44.479Z"
|
||||
},
|
||||
{
|
||||
"limits_to_root": {
|
||||
"ac_max_current_A": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": -9.0
|
||||
},
|
||||
"ac_max_phase_count": {
|
||||
"source": "BrokerFastCharging_FixedValue",
|
||||
"value": 3
|
||||
},
|
||||
"total_power_W": {
|
||||
"source": "external_limit_1_leave",
|
||||
"value": -6210.0
|
||||
}
|
||||
},
|
||||
"timestamp": "2024-12-17T13:08:46.479Z"
|
||||
}
|
||||
],
|
||||
"uuid": "evse1",
|
||||
"valid_for": 10
|
||||
}
|
||||
]
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user