一、简介
OCPP(Open Charge Point Protocol)是一个开放的通信协议,用于充电站(Charge Point)与中央系统(Central System,如充电站管理系统或服务提供商平台)之间的通讯。本篇文档将详细阐述如何基于OCPP 1.6版本进行接入和实现。

1.1 OCPP 1.6 特点
OCPP 1.6标准增强了安全性,支持JSON格式的消息传输,并引入了更多的功能以满足更复杂的充电需求,例如智能充电、远程触发控制、计量数据上报等。

二、环境准备
硬件:确保充电设备支持OCPP 1.6协议并配置网络连接。
软件:在充电站和中央系统两端均需安装支持OCPP 1.6的软件栈,包括协议解析库和应用层业务逻辑处理程序。
安全设置:根据OCPP 1.6规范,可以使用TLS加密以保证通讯的安全性

三、接入步骤
3.1 建立连接
充电站启动后主动向中央系统发起TCP连接请求,并发送BootNotification消息以告知其已上线。
中央系统收到BootNotification后回应一个确认消息,并可能提供一些配置信息。
1)BootNotification.req:充电站启动后发送BootNotification.req消息给中央系统。
2)BootNotification.conf:中央系统收到请求后回复BootNotification.conf确认消息,并可能提供配置信息。
3.2 认证授权
根据实际部署情况,可能需要执行身份认证和授权过程,这通常通过Authorize和StartTransaction等消息实现。
1)Authorize.req:当用户插入充电枪时,充电站向中央系统发起Authorize.req请求,包含用户ID(如RFID标签ID)。
2)Authorize.conf:中央系统验证用户身份并回复Authorize.conf响应,指示是否授权成功。
3)StartTransaction.req:在授权成功后,充电站发送StartTransaction.req以开始充电交易。
4)StartTransaction.conf:中央系统回复确认交易开始的消息。

3.3 数据交互
充电站定期或在特定事件触发时向中央系统发送状态更新,如Heartbeat, MeterValues, StatusNotification等。
1)MeterValues.req:充电过程中,充电站定期或按需发送MeterValues.req报告计量值(如电量消耗)。
2)Heartbeat.req/Heartbeat.conf:为了保持连接状态和检查存活,双方可定期互发心跳包。
中央系统可以通过RemoteStartTransaction, RemoteStopTransaction, ChangeConfiguration等命令来远程控制和管理充电站。

3.4 交易处理
交易生命周期涉及StartTransaction, StopTransaction等消息,用于记录并结算充电费用。
1)StopTransaction.req:充电结束时,充电站发送StopTransaction.req停止交易并结算费用。
2)StopTransaction.conf:中央系统确认交易已停止并完成计费处理。
3)UpdateFirmware.req:如果有新固件版本,中央系统可以发送UpdateFirmware.req命令要求充电站升级固件。

四、关键接口实现
4.1 BootNotification
Json


4.2 Authorize
Json


4.3 StartTransaction
Json


4.4 MeterValues
Json

  1. 创建基础结构
    首先,你需要创建一个ChargePoint类和一个CentralSystem类来模拟双方交互。假设使用了Spring Boot和WebSockets(因为OCPP 1.6支持WebSocket传输):

Java

2.定义消息模型
定义各类消息对象,例如BootNotificationRequest、MeterValuesRequest等,它们都继承自一个基类Message:

Java

  1. 序列化与反序列化
    利用Jackson库或其他JSON库进行序列化和反序列化操作:

Java

  1. 实际消息处理逻辑
    在handleIncomingMessage方法中,针对每种消息类型执行相应的业务逻辑,例如处理BootNotification:

Java


五、注意事项
确保正确处理各类消息的响应以及错误处理机制。
遵循协议规定的消息序列化和反序列化规则,确保数据传输准确无误。
对于长期运行的服务,必须考虑异常恢复、断线重连及事务一致性问题。
六、测试验证
在完成对接后,进行全面的功能测试和压力测试,确保在各种场景下系统的稳定性和可靠性。
通过遵循上述步骤和指南,您可以成功地将符合OCPP 1.6标准的充电站接入到您的中央系统中,实现充电设施的智能化管理和运营。同时,请务必查阅官方的OCPP 1.6完整规范以获取详细的协议定义和要求。

七、实现效果
APP 效果图:

首页及钱包页

运营平台:

首页

订单详情页

Share this post

Subscribe to our newsletter

Keep up with the latest blog posts by staying updated. No spamming: we promise.
By clicking Sign Up you’re confirming that you agree with our Terms and Conditions.

Related posts

Uncategorized
EVCC测试套件:CANoe/VT 实战 EVCC 充电测试

随着全球化进程的推进,中国新能源车企正加速推动车型出海。然而,不同国家和地区对电动汽车及其充电系统的标准和法规存在较大差异。EVCC(Electric Vehicle Communication Controller)是电动汽车端的通信控制器,负责与充电桩(SECC)交换信息,实现充电启动、功率协商、状态监控和安全认证。它相当于电动车的“充电大脑”,控制整个充电过程。 为了确保产品能够顺利进入海外市场,对EVCC进行符合当地标准的测试成为了重中之重。当前测试依赖实车,受限于整车环境以及枪桩资源的稀缺,存在测试覆盖度低、检出率低、效率低等问题,无法满足海外一致性测试和功能测试。谢尔智充助力汽车EVCC自动化测试,提供测试解决方案,以满足产品需求。 一、测试需求 搭建一套完整的EVCC充电测试仿真系统,可用于欧标充电协议ISO 15118-4/5/20 & DIN 70121的仿真测试。提供测试系统相关的定制开发服务,包括但不限于:硬件端口控制、测试用例开发、测试脚本开发等,满足EVCC充电功能协议一致性的测试需求,实现EVCC开发测试过程中测试用例的快速开发与调试。完成所有设备的端口通路调试以及测试系统集成调试,保证测试系统正常运行。 二、解决方案 为了满足EVCC自动化测试的需求,东信创智为客户量身定制了一套高效的EVCC测试解决方案,涵盖从仿真到测试结果分析的完整流程。 图1 测试系统总体架构图 1.核心组件

Read More
Uncategorized
南京谢尔智充EVCC助力国产电动汽车出海,打造境外跨协议充电方案

随着电动汽车在全球逐渐普及,如何完成电动车和充电桩之间的信息交互从而管理和控制充电流程就成为亟待解决的问题。在这个背景下,EVCC(Electric Vehicle Communication Controller)产品应运而生,帮助电动汽车和充电桩交互充电需求、充电状态等信息。 一、充电标准 ​ 电动汽车一般支持交流充电和直流充电两种补能方式。由于电池是直流电源,要给电池充电最终需要直流电。交流充电时,由车载充电机完成交流电到直流电的转换,直流充电时,由充电桩完成交流电到直流电的转换。不同国家和地区在直流充电、交流充电模式下,选择了不同的充电接口和通信协议标准。如下图所示: 虽然各国的充电标准不同,但是要完成充电,充电插座上必须要有高压电引脚完成能量传输,例如交流的L、N;直流电的DC+ 、DC-等。除了高压电引脚,插座上还有一些低压信号引脚;这些引脚通常是用来帮助充电桩和汽车完成充电过程中的信息交互。例如,交流充电时,电压通常是固定的,例如国内交流电的标准是单相220V,三相380V;车载充电机需要获知充电桩最大输出电流,避免输出功率太大造成充电桩烧毁,最大输出电流这个信号就需要在充电桩和汽车之间进行传递。直流充电时,充电电压和充电电流是变化的,不同汽车电池包的电压是不同的,在不同阶段所需要的充电电流也是变化的。至少,充电电压和充电电流这两个信号需要在充电桩和汽车之间进行传递。 对于EVCC来说,主要是处理充电桩和汽车之间信号传递,不需要连接高压电信号。故,对于EVCC来说,可以认为各个标准的高压电引脚是没有差异的,各个标准的差异,主要体现在充电电压、充电电流等低压信号的传递方式上。以国标和欧美标对比举例来说,交流充电时,无论欧美标 、国标都可以采用CP引脚进行信号传递,充电桩会在CP引脚上输出一个频率1KHz,占空比可调的PWM波;汽车通过采集PWM波的占空比获知充电桩的最大输出电流。直流充电时,国标是通过CAN通信,双方基于CAN报文交互实现充电电压、充电电流等信号的传递,除此之外还有电池容量、汽车状态、充电桩状态等其他信号传递;两者之间采用的GBT27930通信协议是基于CAN总线的J1939协议定制的;欧美标是采用PLC通信的方式,PLC通信的信号是通过调制解调加载在CP引脚的PWM信号上,所以CP引脚既可以传递PWM波,也可以传递PLC帧;PLC帧的组织格式和以太网帧 是一样的;区别在于代表0和1的物理层电平信号;这个差异是通过专用芯片来处理的,对于软件来说,可以将PLC通信接口等同视为以太网接口。基于PLC的通信协议,例如欧标的ISO15118协议、美标的DIN70121协议都是基于TCP/IP 协议的,类似其他以太网应用层协议http、mqtt、some/ip协议等。欧洲地区和北美地区的充电标准主要差异在于充电插座的形状,欧洲地区采用CCS2形式的充电连接器,北美地区采用CCS1形式的充电连接器,信号传递的方式是一致的。 总结来说,各个标准除接口形状的差异之外,主要差异在于充电过程中充电电压、充电电流等信号的传递方式上,尤其是直流充电时,欧美标和国标分别采用PLC 和CAN两种完全不同的通信方式,故不同地区的充电桩和电动车不能直接匹配,国产电动车不能直接使用欧美地区的充电桩充电。 二、出口车辆充电通信解决方案 ​

Read More
Uncategorized
EVCC-PLC通信充电系统:基于ISO15118协议的欧标智能充电解决方案

在碳中和目标驱动下,中国电动汽车及电动汽车充电基础设施正经历外拓的市场驱动转变。在技术层面,出口新能源车型充电通信需要从GB/T标准的CAN通信转换到符合CCS的智能的电力线载波PLC通信标准。本文深入解析符合ISO 15118通信协议的EVCC欧标充电模块工作机制——瑞凯诺EVCC通信解决方案。 EVCC的解释 英文全称:Electric Vehicle Communication Controller,EVCC是CCS标准电动汽车充电过程中的重要充电部件,作为CCS标准的电动汽车与充电桩之间的通信桥梁,其主要功能是将GB/T 国标电动汽车的CAN通信协议转换为CCS EV通信标准的PLC通信范式。从而可以实现CCS标准的电动汽车与充电系统之间的通信、电力传输控制和数据交换。简而言之就是让国标的电动汽车可以在海外的充电桩上实现充电功能。 EVCC的具体实现功能 可以监测CCS EV的电池容量,控制充电功率和充电时间,并记录数据以供后续分析和管理。EVCC还能通过与充电设备的通信,提供用户电动汽车的电池状态以及充电进度等信息。总而言之,EVCC是电动汽车充电过程中的重要控制器,确保充电安全和高效率。 图1:ISO 15118 的每个部分如何与定义电信网络中信息处理方式的七层通信中的一层或多层相关。

Read More