3、充电协议与标准:国标GB/T 27930-2015解读、CC/CP信号原理、充电握手与辨识阶段详解

做BMS这些年,我打交道最多的就是充电协议。说白了,充电协议就是车和桩之间的“对话规则”。你想想看,一个车要充电,桩得知道你是谁、需要多少电压、能承受多大电流,对吧?这些信息怎么传递?靠的就是协议。

国内目前最主流的,就是国标GB/T 27930-2015。这个标准我翻来覆去看了不下几十遍。今天咱们就把它掰开揉碎了讲清楚。

3.1 GB/T 27930-2015 核心框架

这个标准全称叫《电动汽车非车载传导式充电机与电池管理系统之间的通信协议》。名字很长,但核心就两件事:物理层怎么连应用层怎么聊

物理层用的是CAN总线。我记得第一次调试时,发现CAN总线终端电阻没焊对,结果通信时断时续,排查了整整一天。嗯,这里要注意:充电桩和BMS之间的CAN总线,波特率固定为250kbps,终端电阻120Ω,千万别搞错。

应用层则定义了一套完整的报文结构。每个报文都有固定的ID和格式。我习惯把报文分成三类:

  • 控制报文:比如充电机发送的CCS(充电机充电状态)
  • 辨识报文:比如BMS发送的BRM(电池辨识报文)
  • 参数报文:比如BCP(电池充电参数)、CTS(充电机时间同步)

整个充电过程,就是这些报文按顺序“你一句我一句”地交互。说白了,就像两个人握手、自我介绍、谈条件、最后成交。

3.2 CC/CP信号原理——物理层的“握手”

在CAN通信开始之前,还有一道物理层的“握手”流程。这就是CC和CP信号。

CC信号(充电连接确认)

CC信号用来检测充电枪是否插好了。原理很简单:充电枪内部有一个电阻,BMS通过检测这个电阻的阻值,就能判断连接状态。

我遇到过一个问题:某次测试时,CC信号一直显示“未连接”。查了半天,发现是充电枪插座里的CC引脚被灰尘堵住了。清洁之后恢复正常。所以,CC信号的可靠性直接取决于物理接触

常见的电阻值对应关系如下:

电阻值 状态
1.5kΩ 充电枪未插入
680Ω 充电枪已插入,但未锁定
220Ω 充电枪已插入并锁定

CP信号(控制导引)

CP信号的作用更关键——它用来传递充电桩的“能力”。充电桩通过PWM波的占空比,告诉BMS它能提供多大电流。

公式很简单:占空比 × 0.6A = 最大充电电流。比如占空比是50%,那最大电流就是30A。

但这里有个坑:CP信号的PWM频率是1kHz,不是常见的20kHz。我第一次设计电路时,直接用了一个20kHz的PWM发生器,结果桩根本不认。后来查标准才发现,国标明确规定了1kHz。嗯,这个细节很容易被忽略。

警告:CP信号的电平范围是±12V,BMS的采样电路必须做好隔离和钳位保护。我曾经见过一个项目,因为CP信号过压,直接把MCU的ADC引脚烧了。

3.3 充电握手与辨识阶段详解

CC/CP信号确认连接后,真正的“对话”才开始。整个充电过程分为四个阶段:握手、辨识、参数配置、充电。咱们重点讲前两个。

3.3.1 握手阶段

握手阶段的目标很简单:确认双方“听得懂”对方的话

流程是这样的:

  1. BMS发送CHM(充电握手报文),包含BMS的版本号、协议版本号。
  2. 充电机回复CRM(充电机握手报文),包含充电机的版本号。
  3. 如果版本号不匹配,充电机可以拒绝充电。

我遇到过最头疼的情况:某款老车型的BMS协议版本是V1.0,但新装的充电桩只支持V2.0。结果握手失败,车充不了电。后来只能升级BMS固件才解决。所以,协议版本兼容性是个大问题,设计时一定要考虑向前兼容。

3.3.2 辨识阶段

握手成功后,进入辨识阶段。这个阶段,BMS要向充电机“自报家门”。

BMS发送BRM(电池辨识报文),内容包括:

  • 电池类型(磷酸铁锂、三元锂等)
  • 电池额定容量
  • 电池组额定电压
  • 电池生产厂商
  • 电池组序列号

充电机收到后,会回复BRO(电池辨识回应报文),表示“我知道了”。

这里有个关键点:BRM报文必须在规定时间内发送。标准要求,从握手成功到BRM发送,时间不能超过5秒。如果超时,充电机会认为BMS故障,直接终止充电。

技巧:我习惯在BMS代码中加一个超时计数器。如果5秒内没收到BRO,就重新发送BRM,最多重试3次。这样可以避免因为CAN总线偶尔丢包导致的充电失败。

3.4 实际调试中的常见问题

讲几个我踩过的坑,希望对你有帮助。

问题1:CC信号检测不准

原因:采样电路中的分压电阻精度不够。我建议用0.1%精度的电阻,别省这点成本。

问题2:CP信号占空比解析错误

原因:MCU的定时器捕获精度不够。我建议用16位定时器,捕获频率至少100kHz。

问题3:握手阶段超时

原因:CAN总线负载过高。我建议把充电通信的CAN优先级设高,避免被其他报文干扰。

我曾经在一个项目中,因为CAN总线上的DBC报文太多,导致CHM报文延迟了200ms。结果充电机认为超时,直接退出了握手。后来我把充电通信单独用了一个CAN通道,问题才解决。

3.5 小结

GB/T 27930-2015这个标准,说白了就是一套“车桩对话”的规则。CC/CP信号是物理层的握手,确保连接可靠;握手和辨识阶段是应用层的“自我介绍”,确保双方能正确沟通。

我个人觉得,理解这个标准的关键,不在于背报文ID和格式,而在于理解整个流程的“时序”和“状态机”。你想想看,每个阶段都有超时时间,每个报文都有重试机制,这些才是保证充电可靠性的核心。

下一章,咱们会讲参数配置和充电阶段的细节。到时候,你会看到BMS和充电机是怎么“讨价还价”的。