基于单片机的电池管理系统设计

时间:2011-11-09来源:网络

2.4 CAN通信模块
CAN通信是整车与BMS之间、BMS主控制模块和子模块之间的信息桥梁。子模块将采集到的单体电压和温度值通过CAN总线上传给主控模块,主控模块通过CAN总线给子模块下达均衡命令;主控模块将电池参数发送给整车,整车控制器通过判断决策能量分配。Freescale 9S12系列单片机已经集成CAN模块MSCAN,外扩引脚CANTX和CANRX。还需要PCA82C250来作为驱动芯片,如图7所示。

f.JPG

3 分布式电池管理系统的软件设计
电池管理系统软件以CodeWarrior for HCS12V4.7为开发环境,采用C语言编写,包括了主控制模块和子模块两个部分的软件设计。
3.1 主控制模块
主控制模块的任务主要有:A/D转换与数据处理任务、整车CAN接收任务、整车CAN发送任务、系统监控任务、SOC与能量估算任务以及均衡处理任务。中断有:A/D采集中断、定时器下溢中断、CAN接收中断。

g.JPG
如图8所示,系统初始化工作完成后,软件以模/数减法计数器的下溢中断来确定系统的执行周期,计数周期为5 ms。在模/数计数器前一次下溢中断程序中,选择电压采集通道,并查询整车CAN接收;经5 ms在本次下溢中断到来后,中断服务程序进行A/D转换的启动,转换完成进入A/D中断,开启其他任务的执行,如此循环交替进行。根据整车控制策略,CAN上的电池状态数据每帧的刷新周期为10 ms,因此设置下溢中断的时钟节拍为5ms,相应地,以上所有任务的执行周期均为10 ms。
3.2 子模块
子模块的任务主要有:A/D转换与数据处理任务、内部CAN接收任务、内部CAN发送任务、以及均衡执行任务。中断有:A/D采集中断、定时器下溢中断。

h.JPG
如图9所示,软件以模/数减法计数器的下溢中断来确定系统的执行周期,计数周期为2.5 ms。在模/数计数器前一次下溢中断程序中,选择电压采集通道,并查询内部CAN接收;经2.5 ms在本次下溢中断到来后,中断服务程序进行A/D转换的启动,转换完成进入A/D中断,开启其他任务的执行,如此循环交替进行。其中,根据协议,内部CAN发送任务为保证周期为10 ms,要间隔一次A/D转换后才启动,其他任务执行周期则为5 ms。

4 结论
基于Freescale单片机的分布式电池管理系统,用集成A/D转换模块实现实时数据采集,同时均衡控制功能还解决了电池单体电压不均衡造成的过充问题。Freescale 9S12系列单片机强大的数据处理功能,丰富的外围接口和良好的电磁兼容性满足了混合动力汽车电池管理的所有要求,在实际中得到了良好的效果。

1 2 3 4

关键词: 电池管理系统 均衡处理 CAN通信 下溢中断

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版