引言
随着新能源汽车的不断发展,大型工厂开始逐步使用动力电池驱动的运输车辆。电动汽车目前常用的电池有铅酸电池、锂电池、镍氢电池等。电池是一个集成高能量的物体,它的使用以及安全管理就显得尤为重要。目前的电动汽车中缺少能够实时、直观、在线地反映蓄电池状况的设备,由于对蓄电池保养不及时、保管不善、放电过度而造成的早期损坏,给企业带来一定的损失。电池管理系统能解决这一问题,因此研究一套能够实时监测蓄电池工作状况的系统有着十分重要的价值和意义。
参考文献[1]设计出的蓄电池管理系统缺少数据的传输功能,使得应用有一定的局限性。参考文献[2]设计的电池管理系统是以DSP为控制核心,其成本较高,而且系统运行的功耗也较高,有较大的局限性。
针对以上缺点,现采用基于单片机CC430F5137为控制核心的设计方案。CC430F5137内部集成了CC1101无线电收发器,可以实现100~200 m的无线传输功能,而且CC430F5137具有MSP430系列单片机的低功耗特性。以上优点弥补了目前电池管理系统的缺陷,达到了目前应用的要求。
1 电池管理系统运行原理
本系统安装在电动汽车中,可以实时监视电池的状况。当电池汽车充电时,系统可以将充电数据通过无线模块传输给充电中心,并自动进行充放电管理。这样充电中心就可以实时了解充电的状态,而且充电中心不用将其他线路接入汽车内,减少了搭建线路的麻烦,提高了工作效率;当汽车在正常使用电池时,系统会实时监测电池的用电情况,在剩余电量不足时及时通知驾驶人员,并将警报通过无线模块发送给充电中心,告知需要充电。
图1 电池管理系统结构框图
电池管理系统结构框图如图1所示。本系统以CC430F5137为控制核心;蓄电池充放电控制电路主要是对蓄电池的充放电进行管理,大功率蓄电池充放电电流较大,需要充放电控制电路对电池进行保护充放电,以免损坏电池;蓄电池检测电路主要是检测电池的充放电电压、充放电电流和电池温度等;LCD显示电路用于显示电池电压、温度、电量等参数,以给使用人员提供一个参考;CC1101无线电模块用于将采集的电池数据通过无线电发送给充电中心,以便充电中心进行实时管理。
2 蓄电池管理系统硬件设计
蓄电池管理系统包括电流检测模块、电压检测模块、温度检测模块和数据传输模块。
2.1 电流、电压检测模块设计
在本系统中,单片机需要对蓄电池组的整体电压和单节电池电压进行检测。目前有两种检测方法: 一种是采用霍尔电压传感器来转换被测电压,再通过A/D转换元件进行采样;另一种是采用精密电阻构建电阻分压电路,再用A/D转换元件进行采样。第二种方法对于电压范围较固定的条件下比较适合,如果有大电压或者电压范围较大的情况下,采用第一种方法比较适合。本系统采用第一种检测方法。
2.1.1 模拟采样芯片的选择
本系统选用AD7656模数转换芯片来采集模拟信号。AD7656是利用创新的半导体制造工艺(iCMOS)制作的高集成度、6通道同时采样的16位逐次逼近型的ADC。其吞吐率高达250 ksps,可以6通道同时采样;支持并行、串行和菊花链的接口模式;可以与处理器的SPI、QSPI等高速串口实现无缝连接;宽带宽输入,输入频率为50 kHz时的信噪比(SNR)为86.5 dB;在供电电压为5 V、采样速率为250 ksps时,功耗为140 mW。如图2所示,AD7656有两个电源输入端,分别为模拟电压输入端AVCC和数字电压输入端DVCC。在AD7656同时转换6通道数据时,需要一个标准的输入电源,以便达到高精度的要求,所以AVCC的去耦就显得十分重要。在本系统中的供电电源的输出端加一磁珠,以便提供较好的电源。在电路的接地设计中,AD7656的DGND与AGND需要相互分开接地,以免相互影响。本系统中电源正电压VDD为+12 V,逻辑电源VDRIVE、数字电源DVCC、模拟电源AVCC的供电电压均为+5 V,电源负电压VSS的供电电压为-12 V。RANGE端口接地,即选择输入范围±10 V;W/B接地表示16位并行输出;AD7656的STBY接VDRIVE,选择正常模式;SER/PAR端口接地,选择并行接口;WR/REFEN/DIS接VDRIVE表示选择内部参考。
CC430F5137与AD7656的硬件连接图如图2所示。CC430F5137的P0口的16个I/O端口作为并行数据口,与AD7656的并行数据口DB0~DB15相连;P1.0端口与AD7656的BUSY相连,用来检测转换是否结束;P1.1端口与CONVST A、CONVST B和CONVST C三个端口相连,作为AD7656的6路A/D同时采样启动控制口;P1.2端口与AD7656的读信号/RD相连作为读取数据控制口;P1.3端口与AD7656的/CS端相连作为片选控制口;P14端口与AD7656的RESET端相连作为AD7656的重启控制端口。
图2 CC430F5137与AD7656硬件连接图
2.1.2 电流检测模块设计
电流检测模块采用的是霍尔电流传感器,其测量范围是0~100 A,电流信号按1:1000的比例缩小后在精密采样电阻上变成电压信号。如图3所示,将流经待测电流的导线穿入传感器缺口处,此时M端输出的电流是与待测电流同比例缩小的信号。该电流信号流经采样电阻后,在电阻两端形成一个电压降,由于电阻的一端接地,所以电阻的另一端VO即转化的电压信号。电流传感器输出的电流范围为0~100 mA,所以采样电阻的大小决定输出的电压范围,根据AD7656模拟转换芯片对输入电压的要求以及电流传感器的转换比例,选择采样电阻R的阻值为100 Ω,得到输出信号的电压在0~10 V以内,满足A/D转换芯片的输入电压要求。
图3 AD7656与电流传感器连接图
2.1.3 电压检测模块设计
电压检测模块采用的是霍尔电压传感器加A/D转换器的测量方法。如图4所示,电压检测模块采用的霍尔电压传感器。其测量范围为0~200 V,电压传感器的额定输入电流为0~10 mA,所以在将电池的电压接入霍尔电压传感器前,需要在电压传感器接入之前串入一个限流电阻R1,根据输入电压的范围,R1的阻值选为20 kΩ,电阻的精度必须要求足够高,因为电阻R1的精度将直接影响输入电压的精度,进而影响整个电压测量的精度。如图4所示,电压传感器的输出端M输出一个电流信号,其范围为0~25 mA,但是A/D转换器的输入信号要求为一个电压信号,所以需要将电压传感器输出的电流信号转换为电压信号,在电压传感器的输出端M与地之间串联一个电阻R2,这样输出端M输出的电流作用在电阻R2得到电压信号,依照A/D转换器对输入的电压信号范围要求,R2的阻值选为400 Ω。
图4 AD7656与电压传感器连接图
2.2 温度检测模块设计
电池在充放电过程中,内部的部分能量会以热能的形式进行释放,如果单个电池温度过高,则会影响电池的寿命,甚至导致电池爆炸。电池在不同的温度下会表现出不同的物理特性,测量出电池的温度,并根据其内部固有的性能指标去使用和维护电池,这对于延长电池使用寿命以及让电池达到最佳使用效果是一个非常重要的环节。考虑到设备低功耗要求和成本限制,在本系统中选择了Maxim公司的DS18B20数字温度传感器进行温度测量。DS18B20是一款高速度、高精度的温度传感器,在安装温度传感器时,需要将其尽可能地贴近蓄电池。DS18B20的电源供电电压为3 V;测量范围为-55~+125 ℃;测量精度为0.5 ℃。温度采集电路图如图5所示,DS18B20的供电电压为3 V,单片机CC430F5137的P1.5口与DS18B20的DQ口相连,用来控制DS18B20。
图5 温度采集电路图
2.3 数据传输模块设计
数据传输模块由CC430F5137单片机内部集成的CC1101无线电模块构成。CC430F5137单片机是TI公司的MSP430F5xx系列的MCU与低功耗RF收发器相结合的产品,可实现极低的电流消耗,而且其采用电池供电的无线网络应用,无需维修即可工作长达10年以上。微型封装所包含的高级功能性还可为创新型RF传感器网络提供核心动力,以向中央采集点报告数据。CC430F5137为16位超低功耗 MCU,具有16 KB闪存、CC1101无线电和2 KB RAM,供电电压范围为1.8~3.6 V,正常工作模式消耗电流为160 μA/MHz,LPM_3消耗电流为2.0 μA [4]。
CC430F5137单片机内部集成了CC1101无线电收发器。为了提高数据传输的稳定性,无线电的RF频率设为915 MHz,信道间隔为100 kHz,数据传输率为38.4 kbps,发送功率最大可以达到-109 dBm,传输距离可以达到200 m。距离较远的情况下可以外接大功率天线,增加传输距离,根据传输距离调节发射功率大小,使功耗尽量最低。CC430F5137的RF无线电硬件电路如图6所示。CC430F5137的供电电压为+3.3 V,外接频率为26 MHz的石英晶振。其中RF_N和RF_P为RF无线电收发器的接收发射引脚,两引脚外接天线,用以增加传输距离。
图6 CC430F5137的RF无线电硬件电路图
3 动力电池管理系统软件设计
动力电池管理系统的软件设计包括SoC电量检测子程序、电池正常使用时系统程序和电池充电时系统程序的设计,下面就这各部分进行详细介绍。
3.1 SoC电量检测子程序
蓄电池管理系统中,常用的SoC计算方法有库伦计算法、开路电压法、阻抗测量法、综合查表法等。出于系统低功耗特性以及成本考虑,本系统采用综合查表法。电池的剩余容量SoC与电池的电压、电流、温度等参数有着密切的联系。通过电池固有的特性设置一个相关表,根据电池的电压、电流、温度等参数就可以算出得到电池的剩余电量值。剩余电量检测程序流程如图7所示。系统初始化完毕后开始检测电池的电压、电流、温度参数,然后根据已经列出的相关表计算出电池的剩余电量,将所算出的数据通过显示屏进行显示。同时,将此数据通过无线模块传输给充电中心,如果剩余电量不足,系统会触发报警装置,告知人员电量不足。
图7 剩余电量检测程序流程
3.2 电池正常使用时系统程序设计
在电池正常使用时,CC430F5137会实时检测电池的各项参数,包括电压、电流、温度等。根据查表法就可以计算出电池的剩余电量,如果电量不足,系统会提示使用人员,告知电量不足,并通过CC430F5137内部集成的RF无线电模块,将电量不足的信息发送给充电中心。如果电池的输出电流较大,超过电池的固有指标,系统也会发出警报,告知电池有特殊情况,并及时检查更换电池。
电池正常使用时系统程序流程如图8所示。首先系统会检测电池的相关参数,并计算电量,显示电池的相关信息,如果有警报发生,系统会及时通知使用人员和充电中心。
3.3 电池充电时系统程序设计
因为在电池充电的不同阶段,电池输入的电压和电流需要不断变化,所以在充电过程中系统会实时地检测电池的输入电压、电流和温度等参数,然后根据查表法计算出电池的电量,并将电量信息通过RF无线电发送给充电中心。这样充电中心依照电池的实时参数不断地控制充电电压和充电电流,来更好地进行充电。
其系统程序流程如图9所示。
系统初始化后,会不断检测电池的相关参数,然后将电池的相关信息发送给充电中心,同时判断是否已经充满,如果充满电,则会通知人员电池已充满。
结语
本文设计出了一种基于CC430F5137单片机的动力电池管理系统。本系统能够实时监测电池的使用情况,将电池的实时数据及时反馈给用户。系统运行稳定可靠,有较好的应用前景。
图8 电池正常使用时系统程序流程 图9 电池充电时系统程序流程