CAN总线在储能系统中的应用笔记

从BMS到PCS,一条总线的“统治力”从何而来

一、为什么储能系统离不开CAN

储能系统内部的信息交互,有几个鲜明的特点:

  • 实时性要求高:BMS(电池管理系统)需要在毫秒级时间内上报电压、温度、电流,PCS(储能变流器)才能在过压、过温时及时响应
  • 节点数量多:一个集装箱储能系统,电池簇×电池包×BMU,节点数轻松上百
  • 电磁环境恶劣:大电流、高频开关、强磁场——对通信抗干扰能力要求极高
  • 成本敏感:每个节点都要加通信芯片,成本必须可控

在这些约束下,CAN总线几乎是“唯一解”。

对比几种常见总线:

总线实时性抗干扰节点数成本储能适用性
CAN高(事件触发)高(差分信号)110+✅ 最合适
RS485中(轮询)32❌ 节点数受限
Ethernet中(需屏蔽)❌ 成本高、布线复杂
无线❌ 可靠性不足

结论:在电芯级、模组级、簇级通信中,CAN是目前最成熟、最经济、最可靠的选择。


二、储能CAN网络的典型架构

一套完整的储能系统,CAN网络通常分为三层:

第一层:电芯级(BMU → 电芯)

每个电池模组内,BMU(电池管理单元)通过CAN采集各个电芯的:

  • 单体电压(精度要求±5mV)
  • 单体温度(精度要求±1℃)
  • 均衡状态

这一层的通信特点是:节点多、数据密集、实时性要求高。常见配置是一个BMU管理12-24个电芯,CAN总线以250kbps或500kbps运行。

第二层:模组级/簇级(BMU → BSU)

多个BMU通过CAN汇集到一个BSU(电池系统单元)。BSU负责:

  • 计算簇级SOC、SOH
  • 检测簇级总压、总电流
  • 执行簇级保护(过压、欠压、过温、过流)
  • 控制簇级接触器、均衡开关

这一层的特点是:数据汇总、逻辑判断、保护执行。CAN总线通常以500kbps运行,通信周期50-100ms。

第三层:系统级(BSU → BAMS)

BAMS(电池阵列管理系统)是整个储能电池的“大脑”,通过CAN与各个BSU通信,同时还要与PCS、EMS、消防系统交互。

这一层的通信特点是:跨系统交互、协议复杂、可靠性要求最高。CAN总线以500kbps或1Mbps运行,通常配置冗余CAN通道(CAN A / CAN B)。

text

典型拓扑结构:

        [ EMS ]
           │ (CAN/Modbus/Ethernet)
        [ BAMS ]
           │ (CAN)
    ┌──────┼──────┐
    │      │      │
  [BSU]  [BSU]  [BSU]   (每个BSU管理一个电池簇)
    │      │      │
   CAN    CAN    CAN
    │      │      │
 [BMU]  [BMU]  [BMU]   (每个BMU管理一个电池模组)
    │      │      │
   电芯    电芯    电芯

三、CAN通信的关键协议

储能CAN通信虽然物理层是标准的CAN 2.0,但应用层协议各家厂商差异很大。主流的有几种:

1. 自定义协议(最常见)

大部分国内BMS厂商(如亿能、高特、科列)使用私有CAN协议。优点是灵活、高效,缺点是不同厂家设备不互通

典型的私有协议格式(以某主流BMS为例):

字节内容说明
Byte0帧头固定0xAA
Byte1长度后续数据字节数
Byte2-3命令码如0x1001=读取电压
Byte4-N数据具体数据内容
ByteN+1校验XOR或CRC

2. Modbus over CAN

将Modbus协议运行在CAN物理层上,主要优点是标准化程度高、调试工具丰富。缺点是Modbus的查询-响应机制天然比CAN的事件触发机制效率低。

3. CANopen

起源于工业自动化,在储能领域应用较少,但在某些出口项目中会被要求(尤其是欧洲市场)。优点是标准化程度最高,缺点是协议栈开销大、学习成本高。

4. 国标GB/T 34131

国内储能BMS的国家推荐标准,对CAN通信的物理层、数据链路层、应用层都有规定。值得关注的是,GB/T 34131-2023版对通信协议做了较大更新,增加了对无线通信、云边协同的支持。


四、实践中的几个“坑”

在实际调试储能CAN网络时,有几个常见问题值得记录:

坑一:终端电阻去哪儿了?

CAN总线要求在总线两端各加一个120Ω终端电阻。但在储能系统中,多个BSU级联时,终端电阻的位置容易被忽略。常见故障现象:通信不稳定、丢包率上升、偶尔有错误帧。

排查方法:断开所有节点,用万用表测量CAN_H和CAN_L之间的电阻。正常应为60Ω左右(两个120Ω并联)。如果测得120Ω,说明只有一个终端电阻;如果测得无穷大,说明一个都没有。

坑二:总线冲突率过高

储能系统节点多、数据量大,如果所有节点都按固定周期发送数据,总线负载率可能超过30%,导致冲突率飙升、实时性下降。

优化方法

  • 事件触发:只在数据变化时发送,而非固定周期
  • 分级优先级:保护类数据(如过温告警)用高优先级ID,状态类数据用低优先级
  • 数据打包:多个相关数据合并到一个CAN帧中,减少帧数

坑三:地电位漂移

储能系统中,电池簇之间的地电位可能存在差异(尤其是长距离布线时)。当CAN收发器的地参考点不同,共模电压可能超出CAN收发器的容忍范围(通常为-2V~+7V),导致通信错误。

解决方法

  • 使用隔离CAN收发器(如ADM3053、ISO1050)
  • 确保各节点地电位差不超过规格
  • 在长距离通信时,增加CAN中继器或使用光纤转换

坑四:协议不兼容

这是最常见的“软坑”——不同厂家的BMS、PCS、EMS之间CAN协议不兼容。明明是同一套物理网络,但A厂发的数据B厂解析不出来。

应对策略

  • 在项目前期就明确CAN通信协议表,作为技术协议附件
  • 使用CAN网关(协议转换器)做“翻译”
  • 要求各厂家提供CAN DBC文件,方便解析和仿真

五、CAN总线的未来:会被替代吗?

关于“CAN已死”的说法,每隔几年就会出现一次。但在储能领域,短期内看不到替代的可能。

候选技术现状替代可能性
CAN FD正在普及,兼容CAN 2.0,速率可达5Mbps✅ 会逐步取代传统CAN
CAN XL刚发布,速率可达20Mbps⚠️ 长期看有潜力
Ethernet(100BASE-T1)车载以太网在汽车领域已应用,成本仍高❌ 5-10年内难普及
无线可靠性不足❌ 不适用于关键控制

最可能的演进路径

  • 电芯级、模组级:CAN FD逐步替代CAN 2.0
  • 簇级、系统级:CAN + Ethernet并存,CAN负责实时控制,Ethernet负责大数据上传

六、一点个人思考

CAN总线在储能领域的“统治力”,本质上是工业系统的工程选择逻辑——不追求最先进,只追求“够用且可控”。

  • 成本可控:一个CAN收发器几块钱,一个带CAN的MCU几十块钱
  • 可靠性已知:三十年的应用历史,所有坑都被踩过了
  • 生态成熟:从调试工具到分析软件,从芯片到协议栈,完整且便宜
  • 人员熟悉:绝大多数嵌入式工程师都会调CAN

对于研究者而言,CAN总线本身已经不是技术热点,但基于CAN的协议设计、数据挖掘、故障诊断仍然有很多值得深入的方向。比如:

  • 如何从CAN数据中识别电池老化特征?
  • 如何在不增加总线负载的情况下,提高SOC估算精度?
  • 如何检测CAN通信的异常模式(如伪装节点、重放攻击)?

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *