基于DSP和OZ890的电池管理系统设计

2019-11-19      1164 次浏览

本文从设计要求和功能出发,设计了一种用于混合动力汽车的电池管理系统。其中硬件系统包括:电源模块、基于OZ890的单体电压采集电路和I2C通信电路、基于DSp的RS232串口通信和CAN通信等硬件系统的设计;软件系统包括:利用周期中断和下溢中断实现数据采集处理、SOC估算和各种通信程序。关键词:电池管理系统;OZ890;I2C双向隔离;下溢中断中图分类号:TM912.2文献标识码:A文章编号:DesignofbatterymanagementsystembasedonDSpandOZ890WANGTao,QIBo-jin,WUHong-jie,LIWei(SchoolofMechanicalEngineering&Automation,BeihangUniversity,Beijing100191,China)Abstract:AbatterymanagementsystemforHybridElectricalVehicleisdesignedaccordingtoitsdesignrequirementsandfunctions.ThedesignofBMScontainstwoparts:hardwaresystemandsoftwaresystem.Thehardwaresystemcomprisespowermodule,dataacquisitionandcommunicationcircuit,I2Cbuscircuit,CANbuscircuit,RS232circuitandsoon.Thesoftwarecomprisesdataacquisitionandprocessingprogrambasedonperiodicinterruptandunderflowinterrupt,evaluationofSOCandcommunicationprograms.Keywords:batterymanagementsystem;OZ890;DualI2CIsolator;underflowinterrupt电池管理系统(BMS,BatteryManagementSystem)是电动汽车的关键零部件之一。高性能、高可靠性的电池管理系统能使电池在各种工作条件下获得最佳的性能。电池管理系统可以实时监测电池状态,如电池电压、充放电电流、使用温度等;预测电池荷电状态(SOC,StateofCharge),防止电池过充过放,从而达到提升电池使用性能和寿命,提高混合动力汽车的可靠性和安全性的目的。本设计主要实现数据采集、电池状态计算、均衡控制、热管理、各种通信以及故障诊断等功能。1电池管理系统硬件组成电池管理系统电路由电源模块、DSp芯片TMS320LF2407A[1](简称为“LF2407”)、基于多个OZ890[2]的数据采集模块、I2C[3]通信模块、SCI通信模块、CAN通信模块组成。系统硬件框图如图1所示。


1.1电源模块整车提供的电源为+12V,管理系统需要的电压包括:+3.3V(DSp,隔离电路用)、+5V(总线驱动等芯片用)、±15V(电流传感器),可以通过DC-DC转换得到,这样不但可以满足各个芯片的供电要求而且可以起到隔离抗干扰的作用。


1.2数据采集模块由DSp完成总电压、电流及温度的采集。电池单体电压的采集和均衡由OZ890芯片完成,并利用I2C总线发给DSp,本模块电路主要包括前端采集处理和均衡电路。1.3I2C通信模块OZ890采样模块将采集处理后的数据通过I2C总线发送到LF2407,由于LF2407自身不带I2C接口,本设计利用pCA9564[4]扩展其I2C接口。为了防止电磁干扰影响I2C总线上数据的传输,必须对总线信号进行隔离,考虑到I2C总线是双向传输的,使用ADuM1250双向隔离芯片进行隔离。pCA9564及双向隔离电路如图2所示。


图2pCA9564及双向隔离电路pCA9564是I2C总线扩展器,与LF2407的GpIO口相连,它支持主从模式的数据收发,在BMS中设定LF2407为主器件,OZ890位从器件。LF2407通过读写pCA9564内部四个寄存器的内容来与OZ890通信。ADuM1250是热插拔数字隔离器,包含与I2C接口兼容的非闩锁、双向通信通道。这样就不需要将I2C信号分成发送信号与接收信号供单独的光电耦合器使用。1.4串口通信模块电池管理系统将采集处理后的数据通过串口发送到pC机界面上,实现人机交互。通过串口界面,可以观察到电池的总电压、单体电压、电流、SOC、故障状态、充放电功率等参数,还可以通过串口发送实现管理系统的在线标定。其硬件电路主要基于MAX232芯片,如图3a)所示。


图3串口通信接口电路MAX232是+5V电源的收发器,与计算机串口连接,实现RS-232接口信号和TTL信号的电平转换,使BMS和pC机能够进行异步串行通讯。为了防止电磁干扰影响串口上数据的传输,必须对总线信号进行隔离。串口是单向传输,所以利用6N137光电耦合较为方便,图3b)所示为232TXD信号光耦隔离电路。1.5CAN通信模块CAN通信是架接电池管理系统(BMS)与整车HCU之间的信息桥梁,BMS将电池的状态参数通过CAN总线发给HCU,HCU通过判断当前的电池状态来做出决策,分配电机和发动机之间的功率,控制电池的充放电。同时BMS还可以接收HCU发来的相关命令,做出相应的处理。其硬件方面主要是通过pCA82C250通用CAN收发器来提供对总线数据的差动发送能力和对通信总线数据的差动接收能力。通过类似于图3b)的光耦隔离电路来加强CAN总线上的抗干扰能力。其硬件电路由图4所示。


图4CAN通信接口电路在电路中可根据整车要求,是否接入120Ω的终端电阻,当Jp201跳线接1脚和2脚时,不接入电阻,当接2脚和3脚时,电阻接入。2电池管理系统的软件设计电池管理系统软件[6]系统包括6个任务和5个中断。6个任务包括:AD转换处理任务(包括读取OZ890中的数据)、CAN接收任务、CAN发送任务、SOC计算任务、系统监视故障诊断任务和串口发送任务。5个中断包括:AD采集中断服务子程序、Timer1下溢中断服务子程序、周期中断子程序、CAN总线接收中断服务子程序和串口接收中断服务子程序,如下面的中断向量表所示:.ref_c_int0.ref_ADC,_INT2,_INT5


.sect".vectors"rset:B_c_int0;00hresetint1:BADC;02hADCint2:B_INT2;04h周期、下溢中断int3:Bint3;06hINT3int4:Bint4;08hINT4int5:B_INT5;0AhCAN,SCIint6:Bint6;0ChINT6根据整车控制策略,CAN上电池状态数据每帧的刷新周期为10ms,故设置周期中断的时钟节拍为10ms;相应地设置以上几个任务的执行周期均为10ms。


图5周期时钟节拍图从图5中可以看出,系统初始化完成以后,Time1开始计时,当达到5ms时,在A点发生周期中断,然后进入周期中断子程序,启动AD转换,通过I2C总线读取OZ890中的数据。AD转换完毕后,软件触发ADC中断保存数据并进行相应的处理,清除周期中断标志。当达到10ms时,发生下溢中断,进入下溢中断服务子程序,执行CAN发送任务、SOC计算任务、系统监视故障诊断任务、串口发送任务。另外,CAN接收和串口接收执行采用中断触发方式。利用周期中断和下溢中断来划分任务执行时间区域不仅能够满足整车10ms每帧数据的CAN发送要求,而且每一个任务时间也都能通过计数器和标志位的状态来计算任务的执行时间,以便更好的分配任务的执行时间段。3结论电池管理系统采用了DSp+OZ890的结构,加之相应的抗干扰措施,具有高性能、低成本等特点。由于采用了专门的电池采样芯片OZ890,提高了采样精度、解决了电池单体电压不均衡造成的过充问题。同时使硬件的开发周期大大缩短,增强了系统的可靠性和可维护性,在实际应用中取得了良好的效果。本文作者创新点:使用OZ890电池采样芯片测量电池数据,同时使用pCA9564扩展LF2407的I2C接口,实现了LF2407与OZ890之间的通信。


相关文章

推荐品类

为您推荐

东莞市钜大电子有限公司 粤ICP备07049936号