OCPP 1.6J 充电协议开发注意事项
⚡官方文档
⚡官网地址
OCPP(Open Charge Point Protocol)是电动汽车充电桩与充电网络后台系统通信的标准协议。OCPP 1.6J 采用 JSON 格式进行数据交换,适用于 WebSocket 连接方式。以下是 OCPP 1.6J 开发过程中需要注意的关键点。
-
通信协议与连接管理
• WebSocket 连接:OCPP 1.6J 仅支持 WebSocket 方式进行数据传输,充电桩作为客户端,后台管理系统(CSMS)作为服务器。
• 消息格式:所有消息均采用 JSON 格式,遵循 [messageTypeId, messageId, action, payload] 结构。
• 心跳机制:充电桩需要定期发送 Heartbeat 请求,后台收到后应返回 HeartbeatResponse,用于维持连接状态。 -
充电桩注册与身份认证
• BootNotification:充电桩首次连接 CSMS 或重启时,需发送 BootNotification 消息,包含设备型号、固件版本等信息。
• 身份认证:CSMS 可能要求充电桩使用 Charge Point ID 进行认证,若验证失败,服务器可以拒绝连接。
• 远程更新:CSMS 可使用 ChangeConfiguration 调整充电桩配置,如 HeartBeatInterval、MeterValueSampleInterval 等参数。 -
充电流程管理
• StartTransaction/StopTransaction
• 充电桩在识别到合法用户(如刷卡或扫码支付)后,向后台发送 StartTransaction,获取授权后才可开启充电。
• 充电结束时,充电桩需发送 StopTransaction 消息,附带充电时长、总电量等数据。
• 若在充电过程中断网,充电桩需本地存储数据,并在恢复连接后补发 StopTransaction。
• MeterValues
• 充电过程中,充电桩需要周期性发送 MeterValues(电表数据),包含电压、电流、功率等信息。
• 可根据 MeterValueSampleInterval 设置数据上传频率,避免网络负担过重。 -
远程控制功能
• RemoteStartTransaction/RemoteStopTransaction:后台可远程启动或停止充电,充电桩需实时响应。
• UnlockConnector:后台可发送 UnlockConnector 请求,解锁被占用的充电枪。
• FirmwareUpdate:充电桩支持远程固件更新,CSMS 通过 UpdateFirmware 指定下载 URL 和时间安排。 -
充电异常处理
• 连接中断:
• 充电桩需支持断网续充功能,并在网络恢复后补发 StopTransaction。
• 故障上报:
• 设备故障时,充电桩需发送 StatusNotification,包括 ConnectorId、状态码(如 Faulted、Unavailable)等信息。
• 安全保护:
• 充电过程中若发生过流、过温等异常,充电桩应立即停止充电,并向 CSMS 发送 StatusNotification。 -
日志与调试
• 日志存储:应在充电桩本地存储关键日志,如交易记录、状态变化等,方便调试和故障排查。
• 调试模式:开发过程中,可使用 OCPP 1.6 兼容的模拟服务器(如 SteVe、OpenOCPP)进行本地测试。
⚡官方文档
⚡官网地址