服务客户 · 持续创新 · 创造价值
电池管理系统 BMS 开发技术方案
吴加加,丁文超,蒋文成
(北京九州华海科技有限公司 100015)
摘要:BMS 具有保障电池安全,提高电池寿命的作用,是现代电动汽车的关键零部件之一,本文提出了一种快
速开发 BMS 的技术方案,方案涉及系统架构、硬件与软件,可以有效提高开发效率,大幅削减 BMS 开发工作量。
同时,对电池均衡、SOC 估算、通信协议等 BMS 关键技术进行了具体分析并给出了解决方案。
关键词:电池管理系统 BMS 电池均衡 SOC 通信协议
0 引言
电池管理系统(BMS)监控电池组中各单体电池的状
态,管理电池组的使用过程,维持电池组中单体电池的
状态一致性,从而起到保障电池安全,提高电池寿命的
作用。国内外所有上市的电动汽车(包括纯电动汽车与
混合动力汽车)都装备了 BMS,BMS 已经成为现代电
动汽车的关键零部件之一。
BMS 的功能主要包括:
电池单体电压、电流、温度信号采集
电池组总电压、电流信号采集
电池荷电状态 SOC/健康状态 SOH 估算
电池单体一致性均衡
智能充电控制
动力母线预充电控制
绝缘电阻检测
电池组热管理
过流、过压、过热保护
1 系统架构
本方案使用主从式的 BMS 系统架构,即一个主控
模块+若干采集模块的方式,主控模块与采集模块之间通
过 CAN 通信,如图 1 所示。主从式 BMS 布局灵活,方
便检修,便于日常维护,适用于各类纯电动汽车与混合
动力汽车。
图 1 主从式 BMS 系统架构
2 硬件方案
BMS 需要能够正确采集所有电池单体与传感器的
信号,准确控制所有执行器的动作,由于 BMS 功能的
多样性与复杂性,要求 BMS 硬件运算速度快,存储空
间大,同时,为了用于实验室、台架、装车等各个阶段,
要求硬件防护等级高,可靠性好,坚固耐用。
本方案主控模块硬件使用 RapidECU-U1 快速原型
控制器,其技术参数如表 1。RapidECU 是汽车行业广
泛使用的产品级快速原型控制器,可以在电控系统的开
发过程中替代产品控制器硬件,通过自动代码生成技术,
将建模与仿真阶段所形成的控制算法模型下载到快速原
型控制器硬件中,并连接实际被控对象,进行控制算法
www.ecucoder.com 1 / 5
服务客户 · 持续创新 · 创造价值
的硬件在环仿真验证和实物验证,并在开发阶段早期实
现测量标定。
低端驱动通道数量:1~4
电压检测循环周期:<15ms
工作温度:-40℃~85℃
图 2 BMS 主控模块硬件
表 1 RapidECU-U1 技术参数
MPC5554,主频 80MHz,硬件浮点单元
SRAM 64KB,Flash 2MB
3 路 CAN,CAN2.0B,ISO11898
供电电压:9V~32V
2 路 5V 传感器供电电源,2 路可编程供电电源
21 路模拟量输入
20 路开关量输入
16 路频率量输入,其中 8 路磁电,8 路霍尔
微控
制器
电源
输入
12 路 PWM 功率驱动
最多 17 路开关功率驱动
2 路模拟量信号输出
环境 防护等级:IP65,工作温度:-40℃~+85℃
使用 RapidECU-U1 系列产品作为 BMS 主控模块硬
件的优势主要包括:
产品原型,集成信号调理与功率驱动电路
搭载 Freescale 高性能 MPC5554 芯片
适合实验室、台架、装车等各个阶段
高性价比的紧凑型硬件,坚固耐用
采集模块使用 RapidECU-B1,其技术参数如下。
电压检测通道数量:2~12
温度检测通道数量:1~16
单体电压检测精度:±5mV
总电压采集范围:0~1000V
总电压检测精度:±0.5%
图 3 BMS 采集模块示意图
图 4 BMS 采集模块硬件
3 软件方案
由于 BMS 功能的多样性与复杂性,BMS 软件十分
复杂,为适应不同的车型以及同一车型的升级换代,软
件还需要反复修改,这对软件开发者提出了一大挑战。
如果使用传统手工编程的开发方式,开发工作量巨大,
软件的可维护性较差,造成开发周期与开发成本的不可
控。本方案使用了全自动代码生成的软件开发方式,整
个 控 制 器 的 软 件 代 码 都 由
www.ecucoder.com 2 / 5
服务客户 · 持续创新 · 创造价值
MATLAB/Simulink/ECUCoder 自动代码生成工具生成,
4.1 电池均衡
控制器软件开发的整个过程都以图形化建模的方式来实
由于电池制作工艺等原因,不同电池单体之间诸如
现,用户无需手工编程,无需手工代码集成,也无需代
码移植。
电解液密度、电极等效电阻等都存在着差异,这些差异
导致即便串联蓄电池组每个单体的充放电电流相同,也
全自动代码生成可以有效提高开发效率,大幅削减
会使每个单体的容量产生不同,进而影响整个电池组的
控制器软件开发的工作量。在绝大部分应用中,借助全
自动代码生成技术至少可以缩短 50%开发周期,降低
80%开发成本。
使用 MATLAB/Simulink/ECUCoder 作为 BMS 软件
开发解决方案的优势主要包括:
自动代码同时生成基础软件与应用软件,无需手动
集成
功能强大的 GUI 界面,可直接从模型访问并配置整
个基础软件
代码可靠,代码可读性与执行效率良好折中
同时提供芯片级模块库与控制器级模块库,支持用
户自主开发的控制器硬件
工作。最坏的情况,在一个蓄电池组中,有一个单体的
剩余容量接近为 100%,另一个单体的剩余容量为 0,
则这个蓄电池组既不能充电也不能放电,完全不能使用。
因此对电池容量的均衡是非常重要的,尤其是在电动汽
车大量电池单体串联使用的情况下。
电池均衡的方式有很多种,按照使用的元器件不同
可以分为电阻均衡,电容均衡,电感均衡,变压器均衡
与 DCDC 均衡,按照能量去向不同可以分为被动均衡与
主动均衡。
被动均衡将容量较多的电池电量通过电阻消耗来达
到均衡,主动均衡将容量较多的电池电量转移到容量较
少的电池达到均衡,两种均衡方式的对比见表 2。
在 BMS 软件中,将 BMS 的基本状态分为上电、就
表 2 被动均衡与主动均衡的比较
绪、高压关闭、高压预充电、高压使能、故障等几种状
态,各种状态的转换逻辑如下图所示。
图 5 BMS 基本状态转换逻辑图
4 关键技术描述
对比项目
被动均衡
主动均衡
均衡元器
件
均衡方式
均衡效率
复杂度
成本
RapidECU
均衡电流
电阻
电容、电感、变压器、
能量消耗
低
低
低
支持
DCDC
能量转移
高
高
高
支持
100mA~500mA
1A~10A
被动均衡效率低,但是系统复杂度低,成本低,适用
于中小容量电池组的均衡;主动均衡效率高,但是系统
复杂度高,成本高,适用于大容量电池组的均衡。本方
案根据用户所用电池组的容量、均衡效率以及成本综合
考虑,选用被动均衡或者主动均衡。
4.2 SOC 估算
www.ecucoder.com 3 / 5
服务客户 · 持续创新 · 创造价值
电池的荷电状态 SOC 描述了电池的剩余电量,是
电池在使用过程中最重要的参数之一。准确估计 SOC
可以防止电池的过充电或者过放电,有效延长电池的使
用寿命,并且在电动汽车的行驶中可以预知可续驶里程。
由于 SOC 估算受温度、老化、充放电倍率、自放电等
因素的影响,使得电池在实际应用中呈现为高度的非线
性,导致 SOC 的精确估算十分困难。关于锂电池的部
分特性,参见图 6~图 8。
图 8 锂电池老化特性
SOC 的估算方法较多,主要包括:
图 6 锂电池 SOC 与端电压的关系
放电试验法
安时计量法
开路电压法
负载电压法
内阻法
模糊逻辑法
神经网络法
卡尔曼滤波法
以上各种方法在电动汽车上应用时,都存在一定的
缺陷:放电试验法需要中断电池的正常充放电;安时计
量法存在误差累计;开路电压法动态误差较大;内阻法
受温度影响较大;模糊逻辑法依赖工程经验;卡尔曼滤
波法依赖精确的电池模型。
本方案采用一种以安时计量法为基础,利用电池静
止状态下的开路电压法来消除累计误差的 SOC 估算方
法,其关键在于电池充放电状态与静止状态的准确判断。
试验结果表明,采用此 SOC 估算方法,SOC 估算误差
在 5%以内。
图 7 锂电池放电特性
www.ecucoder.com 4 / 5
服务客户 · 持续创新 · 创造价值
换逻辑、SOC 估算、通信协议等均采用图形化建模的方
式开发并借助快速原型控制器快速验证,有效提高开发
效率,大幅削减 BMS 开发工作量。方案经过多款电动
汽车的实车验证,取得了良好的实际效果。
图 9 SOC 估算方法
4.3 通信协议
本方案使用基于 CAN 总线的通信方式,主要包括 3
部分:
(1)BMS 内部主控模块与采集模块之间的 CAN 通信;
(2)BMS 与整车控制器等动力系统控制单元的 CAN
通信;
(3)BMS 与非车载充电机之间的 CAN 通信。
BMS 内部主控模块与采集模块之间的 CAN 通信主
要传递电池单体电压、温度、均衡指令、继电器动作指
令等信息,通信协议为 BMS 内部通信协议。BMS 与整
车控制器等动力系统控制单元的 CAN 通信主要传递电
池组总电压、电流、温度、SOC、BMS 状态、故障信息
及处理策略等信息,通信协议按照整车厂整车 CAN 网
络通信协议制定与实现,主要是动力 CAN 网络通信协
议。BMS 与非车载充电机之间的 CAN 通信主要传递充
电机与车辆辨识、电池充电参数、电池充电总状态、充
电机充 电状 态等信 息, 通信协 议可 以按照 国家 标 准
《GB/T 27930-2011 电动汽车非车载传导式充电机与
电池管理系统之间的通信协议》实现,也可以按照整车
厂整车 CAN 网络通信协议制定与实现,主要是充电机
与 BMS 之间的通信协议。
5 结语
本文提出了一种高效开发 BMS 的技术方案,硬件
采用快速原型控制器 RapidECU,软件使用全自动代码
生成工具 MATLAB/Simulink/ECUCoder。BMS 状态转
www.ecucoder.com 5 / 5