Skip to content

Commit dc6334e

Browse files
committed
- Adjusted OCPP module to new libocpp namespaces and structure
- Added basic OCPP201 module - Removed config parameters from ocpp201 module and added evse manager requirement Signed-off-by: pietfried <piet.goempel@pionix.de>
1 parent 25f6d43 commit dc6334e

File tree

4 files changed

+170
-1
lines changed

4 files changed

+170
-1
lines changed

config/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
generate_config_run_script(CONFIG sil)
22
generate_config_run_script(CONFIG sil-two-evse)
33
generate_config_run_script(CONFIG sil-ocpp)
4+
generate_config_run_script(CONFIG sil-ocpp201)
45
generate_config_run_script(CONFIG sil-dc)
56
generate_config_run_script(CONFIG sil-two-evse-dc)
67
generate_config_run_script(CONFIG hil)

config/config-sil-ocpp201.yaml

+152
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
active_modules:
2+
iso15118_charger:
3+
module: JsRiseV2G
4+
config_implementation:
5+
main:
6+
mqtt_base_path: everest_external/iso15118/java
7+
device: auto
8+
iso15118_car:
9+
module: JsCarV2G
10+
config_implementation:
11+
main:
12+
stack_implementation: RISE-V2G
13+
mqtt_base_path: everest_external/iso15118/ev
14+
device: auto
15+
evse_manager_1:
16+
module: EvseManager
17+
config_module:
18+
connector_id: 1
19+
three_phases: true
20+
has_ventilation: true
21+
country_code: DE
22+
rcd_enabled: true
23+
evse_id: "1"
24+
session_logging: true
25+
session_logging_xml: false
26+
session_logging_path: /tmp
27+
ac_hlc_enabled: false
28+
ac_hlc_use_5percent: false
29+
ac_enforce_hlc: false
30+
connections:
31+
bsp:
32+
- module_id: yeti_driver_1
33+
implementation_id: board_support
34+
powermeter_grid_side:
35+
- module_id: yeti_driver_1
36+
implementation_id: powermeter
37+
slac:
38+
- module_id: slac
39+
implementation_id: evse
40+
hlc:
41+
- module_id: iso15118_charger
42+
implementation_id: charger
43+
evse_manager_2:
44+
module: EvseManager
45+
config_module:
46+
connector_id: 2
47+
three_phases: true
48+
has_ventilation: true
49+
country_code: DE
50+
rcd_enabled: true
51+
evse_id: "2"
52+
session_logging: true
53+
session_logging_xml: false
54+
session_logging_path: /tmp
55+
ac_hlc_enabled: false
56+
ac_hlc_use_5percent: false
57+
ac_enforce_hlc: false
58+
connections:
59+
bsp:
60+
- module_id: yeti_driver_2
61+
implementation_id: board_support
62+
powermeter_grid_side:
63+
- module_id: yeti_driver_2
64+
implementation_id: powermeter
65+
slac:
66+
- module_id: slac
67+
implementation_id: evse
68+
hlc:
69+
- module_id: iso15118_charger
70+
implementation_id: charger
71+
yeti_driver_1:
72+
module: JsYetiSimulator
73+
yeti_driver_2:
74+
module: JsYetiSimulator
75+
slac:
76+
module: JsSlacSimulator
77+
car_simulator_1:
78+
module: JsCarSimulator
79+
config_module:
80+
connector_id: 1
81+
auto_enable: true
82+
auto_exec: false
83+
auto_exec_commands: sleep 1;iec_wait_pwr_ready;sleep 1;draw_power_regulated 16,3;sleep 30;unplug
84+
connections:
85+
simulation_control:
86+
- module_id: yeti_driver_1
87+
implementation_id: yeti_simulation_control
88+
ev:
89+
- module_id: iso15118_car
90+
implementation_id: ev
91+
slac:
92+
- module_id: slac
93+
implementation_id: ev
94+
car_simulator_2:
95+
module: JsCarSimulator
96+
config_module:
97+
connector_id: 2
98+
auto_enable: true
99+
auto_exec: false
100+
connections:
101+
simulation_control:
102+
- module_id: yeti_driver_2
103+
implementation_id: yeti_simulation_control
104+
ev:
105+
- module_id: iso15118_car
106+
implementation_id: ev
107+
slac:
108+
- module_id: slac
109+
implementation_id: ev
110+
ocpp:
111+
module: OCPP201
112+
config_module:
113+
ChargePointConfigPath: config.json
114+
connections:
115+
evse_manager:
116+
- module_id: evse_manager_1
117+
implementation_id: evse
118+
- module_id: evse_manager_2
119+
implementation_id: evse
120+
token_provider_1:
121+
module: JsDummyTokenProviderManual
122+
energy_manager:
123+
module: EnergyManager
124+
connections:
125+
energy_trunk:
126+
- module_id: grid_connection_point
127+
implementation_id: energy_grid
128+
grid_connection_point:
129+
module: EnergyNode
130+
config_module:
131+
fuse_limit_A: 40.0
132+
phase_count: 3
133+
connections:
134+
price_information: []
135+
energy_consumer:
136+
- module_id: evse_manager_1
137+
implementation_id: energy_grid
138+
- module_id: evse_manager_2
139+
implementation_id: energy_grid
140+
powermeter:
141+
- module_id: yeti_driver_1
142+
implementation_id: powermeter
143+
api:
144+
module: API
145+
connections:
146+
evse_manager:
147+
- module_id: evse_manager_1
148+
implementation_id: evse
149+
system:
150+
module: System
151+
152+
x-module-layout: {}

dependencies.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ RISE-V2G:
3838
# OCPP
3939
libocpp:
4040
git: https://github.com/EVerest/libocpp.git
41-
git_tag: 904343c96f945710586b45975beb5b6dfed811d6
41+
git_tag: v0.5.1
4242
# Josev
4343
Josev:
4444
git: https://github.com/EVerest/ext-switchev-iso15118.git

modules/OCPP201/OCPP201.cpp

+16
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,22 @@ void OCPP201::init() {
4444

4545
this->charge_point = std::make_unique<ocpp::v201::ChargePoint>(json_config, this->ocpp_share_path.string(),
4646
this->config.MessageLogPath);
47+
48+
int evse_id = 1;
49+
for (const auto &evse : this->r_evse_manager) {
50+
evse->subscribe_session_event([this, evse_id](types::evse_manager::SessionEvent session_event) {
51+
switch (session_event.event) {
52+
case types::evse_manager::SessionEventEnum::SessionStarted:
53+
this->charge_point->on_session_started(evse_id, 1);
54+
break;
55+
case types::evse_manager::SessionEventEnum::SessionFinished:
56+
this->charge_point->on_session_finished(evse_id, 1);
57+
break;
58+
}
59+
});
60+
evse_id++;
61+
}
62+
4763
this->charge_point->start();
4864
}
4965

0 commit comments

Comments
 (0)