OCPP 网关启动一个 WebSocket 服务器端口,处理所有充电桩设备的连接、信息接收和信息传送。 第三方服务是由用户实现的后端服务,它根据 MQTT 消息传递模式处理 OCPP 请求。 OCPP 网关将来自设备的所有上行信息转换为相应的 MQTT 主题和有效载荷,并将其发送至第三方服务。同时,它接收来自第三方服务的 MQTT 控制消息,将其转换为 OCPP 格式消息,并发送到相应的充电桩。
本文将介绍如何使用 EMQX 5.0 中的 OCPP 网关集成 OCPP 设备,实现不同制造商和服务提供商之间的互操作性。
OCPP 协议简介
7. 数据传输:该协议支持在充电桩和中央系统之间传输各种运行数据,以便进行监控和分析。
这些操作可确保中央系统能够有效地监测、控制和管理电动汽车充电站网络。
OCPP 协议还可以通过以下两种规范在网络上传输信息:
1. OCPP-J:通过 WebSockets 使用 JSON 进行 OCPP 通信。具体的 OCPP 版本以 J 扩展名标示,如 OCPP1.6J 表示 1.6 版的 JSON/WebSockets 实现。
2. OCPP-S:通过 SOAP 和 HTTP 进行 OCPP 通信。从 1.6 版本开始,S 必须明确标示。旧版本默认使用 S(除非另有说明),例如 OCPP 1.5 与 OCPP1.5S 相同。
OCPP-J 规范中的 BootNotification.req
消息格式如下:
[
// MessageTypeId, 2 表示这是客户端向服务器发送的请求消息
2,
// UniqueId,消息的唯一 ID,用于标识消息
"19223201",
// 操作,表示传输的信息类型
"BootNotification",
// 有效载荷,信息正文
{"chargePointVendor": "VendorX", "chargePointModel": "SingleSocketCharger"}
]
配置 OCPP 网关
docker run -p 18083:18083 -p 1883:1883 -p 33033:33033 emqx/emqx-enterprise:latest
消息格式检查
改为Disable
。连接 OCPP 客户端
ocpp/#
。<host>
docker run -e CLIENT_ID=chargePointSim -e CENTRAL_SYSTEM_URL=ws://<host>:33033/ocpp -it --rm --name charge-point ldonini/ocpp1.6-charge-point:latest
INFO[2023-12-01T03:08:39Z] connecting to server logger=websocketINFO[2023-12-01T03:08:39Z] connected to server as chargePointSim logger=websocketINFO[2023-12-01T03:08:39Z] connected to central system at ws://172.31.1.103:33033/ocppINFO[2023-12-01T03:08:39Z] dispatched request 1200012677 to server logger=ocppj
Topic: ocpp/cp/chargePointSim
Payload
{
"UniqueId": "1200012677",
"Payload": {
"chargePointVendor": "vendor1",
"chargePointModel": "model1"
},
"Action": "BootNotification"
}
BootNotification
请求。ocpp/cs/chargePointSim
{
"MessageTypeId": 3,
"UniqueId": "***",
"Payload": {
"currentTime": "2023-12-01T14:20:39+00:00",
"interval": 300,
"status": "Accepted"
},
"Action": "BootNotification"
}
StatusNotification
状态报告。这表明 OCPP 客户端已成功与 OCPP 网关建立连接。Topic: ocpp/cp/chargePointSim
Payload:
{
"UniqueId": "3062609974",
"Payload": {
"status": "Available",
"errorCode": "NoError",
"connectorId": 0
},
"MessageTypeId": 2,
"Action": "StatusNotification"
}
结语
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...