基于单片机的动力电池管理系统的硬件设计

时间:2010-05-04

  电动汽车是指全部或部分由电机驱动的汽车。目前主要有纯电动汽车、混合电动车和燃料电池汽车3种类型。电动汽车目前常用的动力来自于铅酸电池、锂电池、镍氢电池等。

  锂电池具有高电池单体电压、高比能量和高能量密度,是当前比能量的电池。但正是因为锂电池的能量密度比较高,当发生误用或滥用时,将会引起安全事故。而电池管理系统能够解决这一问题。当电池处在充电过压或者是放电欠压的情况下,管理系统能够自动切断充放电回路,其电量均衡的功能能够保证单节电池的压差维持在一个很小的范围内。此外,还具有过温、过流、剩余电量估测等功能。本文所设计的就是一种基于单片机的电池管理系统[1]。

  1 电池管理系统硬件构成

  针对系统的硬件电路,可分为MCU模块、检测模块、均衡模块。

  1.1 MCU模块

  MCU是系统控制的。本文采用的MCU是M68HC08系列的GZ16型号的单片机。该系列所有的MCU均采用增强型M68HC08中央处理器(CP08)。该单片机具有以下特性:

  (1)8 MHz内部总线频率;(2)16 KB的内置Flash存储器;(3)2个16位定时器接口模块;(4)支持1 MHz~8 MHz晶振的时钟发生器;(5)增强型串行通信接口(ESCI)模块。

  1.2 检测模块

  检测模块中将对电压检测、电流检测和温度检测模块分别进行介绍。

  1.2.1 电压检测模块

  本系统中,单片机将对电池组的整体电压和单节电压进行检测。对于电池组整体电压的检测有2种方法:(1)采用专用的电压检测模块,如霍尔电压传感器;(2)采用精密电阻构建电阻分压电路。采用专用的电压检测模块成本较高,而且还需要特定的电源,过程比较复杂。所以采用分压的电路进行检测。10串锰酸锂电池组电压变化的范围是28 V~42 V。采用3.9 M?赘和300 k?赘的电阻进行分压,采集出来的电压信号的变化范围是2 V~3 V,所对应的AD转换结果为409和*。

  对于单体电池的检测,主要采用飞电容技术。飞电容技术的原理图如图1所示[2],为电池组后4节的保护电路图,通过四通道的开关阵列可以将后4节电池的任意1节电池的电压采集到单片机中,单片机输出驱动信号,控制MOS管的导通和关断,从而对电池组的充电放电起到保护作用。

  如图1所示,为电池组后4节的保护电路图,通过四通道的开关阵列可以将后4节电池的任意1节电池的电压采集到单片机中,单片机输出驱动信号,控制MOS管的导通和关断,从而对电池组的充电放电起到保护作用。

  以上6节电池可以用2个三通道开关切换阵列来实现。MAX309为1片4选1、双通道的多路开关,通过选址实现通道的选择。开关S5、S6、S7负责将电池的正极连接至飞电容的正极。开关S2、S3、S4负责将电池负极连接至飞电容的负极。三通道开关切换阵列结构与四通道开关切换阵列类似,只是通道数少1路。工作时,单片机发出通道选址信号,让其中1路电池的正负极与电容连接,对电容进行充电,然后断开通道开关,接通跟随放大器的开关,单片机对电容的电压进行快速检测,由此完成了对1节电池的电压检测。若发现检测电压小于2.8 V,则可推断出电池可能发生短路、过放或保护系统到电池的检测线断路,单片机将马上发出信号切断主回路MOS管。重复上述过程,单片机即完成对本模块所管理的电池的检测。

  1.2.2 电流采样电路

  电流采样时,电池管理系统中的参数是电池过流保护的重要依据。本系统中电流采样电路如图2所示。当电池放电时,用康铜丝对电流信号进行检测,将检测到的电压信号经过差模放大器的放大,变为0~5 V的电压信号送至单片机。如果放电的电流过大,单片机检测到的电压信号比较大,就会驱动三极管动作,改变MOS管栅极电压,关断放电的回路。比如,对于36 V的锰酸锂电池来说,设定其保护电流是60 A。康铜丝的电阻是5 mΩ左右。当电流达到60 A时,康铜丝的电压达300 mV左右。为提高,将电压通过放大器放大10倍送至单片机检测。

  1.2.3 温度检测

  电池组在充、放电过程中,一部分能量以热量形式被释放出来, 这部分热量不及时排除会引起电池组过热。如果单个镍氢电池温度超过55℃,电池特性就会变质,电池组充、放电平衡就会被打破,继而导致电池组性损坏或爆炸。为防止以上情况发生,需要对电池组温度进行实时监测并进行散热处理。

  采用热敏电阻作为温度传感器进行温度采样。热敏电阻是一种热敏性半导体电阻器,其电阻值随着温度的升高而下降。电阻温度特性可以近似地用下式来表示:

  1.3 均衡模块

  电池组常用的均衡方法有分流法、飞速电容均衡充电法、电感能量传递方法等。在本系统中,需要较多的I/O口驱动开关管,而单片机的I/O口有限,所以采取整充转单充的充电均衡方法。原理图如图3所示。Q4是控制电池组整充的开关,Q2、Q3、Q5是控制单节电池充电的开关。以10节锰酸锂电池组为例,变压器主线圈两端电压为42 V,副线圈电压为电池的额定电压4.2 V。刚开始Q4导通,Q2、Q3、Q5截止,单节电池的电压不断升高,当检测到某一节电池的电压达到额定电压4.2 V以后,电压检测芯片发出驱动信号,关闭Q4,打开Q2、Q3、Q5,整个系统进入单充阶段,未充满的电池继续充电,以达到额定电压的电池保持额定电压不变。经测试,电压差值不会超过50 mV。

  2 SOC电量检测

  在锂离子电池管理系统中,常用的SOC计算方法有开路电压法、库伦计算法、阻抗测量法、综合查表法[3]。

  (1)开路电压法是简单的测量方法,主要根据电池开路电压的大小判断SOC的大小。由电池的工作特性可知,电池的开路电压与电池的剩余容量存在着一定的对应关系。

  (2)库仑计算法是通过测量电池的充电和放电电流,将电流值与时间值的乘积进行积分后计算得到电池充进的电量和放出的电量,并以此来估计SOC的值。

  (3)阻抗测量法是利用电池的内阻和荷电状态SOC之间一定的线性关系,通过测出电池的电压、电流参数计算出电池的内阻,从而得到SOC的估计值。

  (4)综合查表法中电池的剩余容量SOC与电池的电压、电流、温度等参数是密切相关的。通过设置一个相关表,输入电压、电流、温度等参数就可以查询得到电池的剩余容量值。

  在本设计中,从电路的集成度、成本、所选MCU的性能方面考虑,采用了软件编程的方法。综合几种方法,采用库伦计算法比较合适。

  (1)用C表示锂电池组从42 V降到32 V时放出的总的电量。

  (2)用η表示电流i经过时间t后,放出的电量与C的比值。

  其中CRM为剩余电量。令ΔCi=i×Δt,表示?驻t时间内电池组以i放电的放电量;或者是以i充电的充电量,剩余电量实际上是对ΔCi的计算以及累加。设定合适的采样时间Δt,测定当前的电流值,然后计算乘积,得到Δt时间内剩余容量CRM的变化量,从而不断更新CRM的值,即可实现SOC电量的检测。

  3 试验结果

  通过电池管理系统对锰酸锂电池组进行充放电测试。图4(a)为锂电池组放电测试图,放电电流为8 A,当电池组电压降至32 V时,放电MOS管关断。图4(b)为充电的测试图。充电结束4小时后,均衡完成。

  本文的电池管理系统以M68HC08GZ16为,实现了对电池组单体电压、电流、温度信号的采集。充电电量平衡以后,单体电池的电压差值不超过50 mV。整体系统运行性能良好,能够满足电动车动力电池组应用需要。


  

参考文献:

[1]. M68HC08 datasheet https://www.dzsc.com/datasheet/M68HC08_1098043.html.
[2]. GZ16 datasheet https://www.dzsc.com/datasheet/GZ16_360967.html.
[3]. MAX309 datasheet https://www.dzsc.com/datasheet/MAX309_1057989.html.


上一篇:基于Matlab的DDS线性调频信号的仿真应用
下一篇:嵌入式系统的显卡方案设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料