殷娇 詹宜巨 罗宇强
(1.中山大学工学院 2.广州市光机电技术研究院)
随着电动汽车的快速发展,电动汽车动力蓄电池的研究也日益受到关注。动力蓄电池状态监测是对电池特性进行深入研究的前提和基础。例如,电池的状态分析、电池剩余电量估计、电池安全管理和电池信息管理等,都基于电池实时状态监测[1]。然而,电池状态数据的采集和处理总是存在一定的滞后,状态监测的实时性也是一个相对的概念[2]。本文对电池状态信息的采集、传递和处理环节的“实时性”进行了深入探讨,充分考虑电池状态监测过程中遇到的实际问题,提出一种动力蓄电池状态实时监测系统。该系统能够实时采集并记录电池的电压、电流和温度,可用于动力蓄电池的特性研究、故障诊断及事后分析。
在动力蓄电池状态监测过程中,以下几个环节的时延只能降低,不能消除:电池监测回路(battery monitoring circuit,BMC)的信息采集环节、信息传递环节以及监控系统控制单元的信息处理环节。
BMC是指与所要采集的电池参数最接近的芯片及其辅助电路,可以是单片机、模数转换器及某些专用芯片[3]。BMC信息采集环节时延的主要原因是模/数转换需要一定的时间。通常,完成一个 8位的模/数转换用时约为100 us[1,4]。
信息传递环节的时延取决于数据传输的波特率以及信息的长度。
控制单元是监测系统的最高决策芯片,控制着电池信息采集、LCD屏信息显示、Flash芯片信息存储、定时中断等多项功能,这些任务之间的协调、调度也不可避免地会造成时延。
因此,电池状态监测系统是一个相对实时的系统。
动力蓄电池的状态监测对实时性的要求较高,因为时延会造成一定的负面影响。例如,在对电池进行快速充电时,是以电池端电压作为减小或切断充电电流的依据。在充电周期的前期和后期电池电压变化很快,电池状态监测时延会造成电流调控的时机不准,轻则影响电池充电效果,重则损伤电池甚至可能造成安全事故。
另外,目前对于电池剩余电量(state of charge,SOC)的评估,采用的主流方法仍然是电荷累计法(CC法,又称作电流积分法),即MCU将每个时刻采集到的电流,通过积分或求和的方式累积起来[5]。如果采样不均匀,或者采样频率过低,都将严重影响SOC评估的准确性。
设计动力蓄电池状态实时监测系统时,应充分考虑不同物理量对于实时性的耐受度,从可行性、可靠性、经济性等方面综合考虑,分析状态信号的变化特征。根据不同用途,确定采样频率、仪表显示和数据存储等频率。
电动汽车动力蓄电池多采用磷酸铁锂电池。磷酸铁锂电池电压的工作范围在2.2 V~3.6 V[1],电压精度的选择取决于电压数据的用途。如果用于过压保护,精度要求相对较低;如果用于仪表显示,精度要求也不高;对电压采集精度要求最高的是开路电压法(OCV)测SOC。
本文设计的动力蓄电池实时监测系统采用MC9S12DG128单片机作为MCU,该MCU自带16路10位的A/D转换器,而动力蓄电池的实际电压在0 V~5 V之间,所以,可以直接将电池的正负极连接在MCU的A/D转换器引脚上,测量精度为5 mV[6]。
电流是要测量的三个物理量中对测量频率最敏感的物理量,因此本文用电流的检测频率、显示刷新频率以及存储频率作为系统的定时中断频率。
电池特性研究中对电流监测频率要求最高的就是用CC法测SOC,一般采用1 Hz的频率[7]。因此本系统采用1 s的定时中断来执行一次信息的采集、显示和存储操作。系统所指的实时性是指延时在1 s以内。
常用的电流监测方法有串联电阻法、霍尔传感器法,虽然串联电阻法成本低,但是电阻的热损耗对于电池特性研究会造成负面影响,因此选用自带功率放大器的霍尔传感器采集电流[1,8]。
电池的温度关系到电池使用过程的安全性,但电池的安全性对温度的敏感度不高,从系统功能和成本两方面综合考虑,选用热电偶做温度传感器,接线图如图1所示。
图1 热电偶接线图
该动力蓄电池状态实时监测系统由摩托罗拉公司的MC9S12DG128单片机和五个功能子系统构成。系统整体设计框图如图2所示。
图2 动力蓄电池状态实时监测系统框图
系统的主要功能是实时采集动力蓄电池的电压、电流和温度信息。通过LCD屏显示实时时间、电池电压、电流和温度信息。通过存储键控制是否将这些实时数据储存到Flash芯片中;通过导出键控制是否将Flash芯片中的数据导出到PC中。
系统的实时时间由美国 DALLAS公司的一种高性能、低功耗的实时时钟芯片 DS1302提供。用MC9S12DG128芯片通用 I/O口模拟时序,读/写DS1302时间信息,其接线如图3所示。
图3 DS1302接线图
3.3.1 状态信息的显示
每隔1 s采集并显示一次动力蓄电池的电压、电流和温度信息,同时显示DS1302提供的实时时间,显示功能通过LCD屏实现。MCU通过通用I/O口控制LCD。
3.3.2 状态信息的存储
3.3.2.1 Flash芯片容量计算
系统需要 Flash芯片记录的信息有实时时间信息、电池电压、电流和温度信息。其中实时时间信息为DS1302提供的1 Byte的小时信息、1 Byte的分钟信息和1 Byte的秒钟信息。Flash芯片储存数据的方式为AAI-Word-Program(auto address increment programming),每次向Flash芯片中写入一个Word长度的数据,为了方便实现数据的存储,在1 Byte的小时信息前加入1 Byte的无用信息。所以,每条时间信息的长度是4 Bytes。存入Flash芯片中的电池电压、电流和温度信息是通过MC9S12DG128单片机的10位A/D模块转化后的数字信息,每条电池电压、电流和温度信息的长度都为2 Bytes。
每条信息的长度=实时时间信息长度+电压信息长度+电流信息长度+温度信息长度=10 Bytes
系统设计了存储键控制是否启用Flash芯片记录数据的功能。实际应用和实验中,动力蓄电池一次完整的充放电过程不超过48小时。系统的数据1 s更新并记录一次。所以,系统所需Flash芯片的最小容量为:
10 Byte/s×48×3600 s=1728000 Bytes
因此,选用一块 2 MBytes的 Flash芯片SST25VF016B作为数据存储芯片。
3.3.2.2 Flash芯片硬件连接
MC9S12DG128单片机的通用I/O口PS4 ~ PS7与SPI0接口复用。Flash芯片通过这个SPI接口与主控芯片进行通信,其接线如图4所示。
图4 Flash芯片接线图
3.3.3 状态信息的导出
系统采用串行通信接口(serial communication interface,SCI)与PC机进行通讯,SCI属于UART规范,波特率为115200,8位数据位,1位停止位,无奇偶校验。MCU的SCI接口通过一个电平转换芯片MAX232CPE驱动之后,可以通过RS232数据线直接与PC通信。状态信息经过程序解码之后,按设定好的格式导出到PC,PC采用串口调试软件SSCOM接收数据。数据导出的格式为.txt文件,将文件后缀名改为.csv可得到Excel表格的电池状态信息数据。系统设计了导出键来启动或停止数据导出。
系统采用模块化的软件设计方法,主程序从功能上分为初始化、开中断、实时时间获取和显示、电池状态信息获取和显示、Flash写入1条数据、Flash导出1条数据这几个模块。主程序执行过程如图5所示。
图5 主程序流程图
需要说明的是,系统在执行Flash数据导出时,实时时间获取、电池信息获取和显示都将停止,直到Flash芯片中所有数据导出完毕或者用户再次按下导出键结束数据导出过程。系统的Flash数据导出功能是在电池的状态信息测试、记录完成之后进行的,用于事后对测试的充放电周期内的电池特性进行研究、故障诊断等。因此,数据导出阶段对MCU的独占,不影响该系统的正常使用。
主程序控制命令语句中的 Flag、Switch1和Switch2的值都是通过1 s的定时中断程序控制的。图6给出了1 s定时中断程序流程。
图6 1s定时中断程序流程图
本文设计了一种动力蓄电池状态实时监测系统,可以实时显示并记录动力蓄电池的电压、电流和温度状态,并且提供了可选的数据导出功能,可将 Flash芯片中记录的动力蓄电池状态信息导出到 PC。该系统可用于动力蓄电池的特性研究、故障诊断等,具有很强的实用价值。
[1] 谭晓军.电动汽车动力电池管理系统设计[M].广州:中山大学出版社,2011.
[2] 南金瑞,孙逢春,王建群.纯电动汽车电池管理系统的设计及应用[J].清华大学学报(自然科学版),2007,47(增2):1831-1834.
[3] Dong Tingting, Li Jun, Dai Haifeng. Analysis on the Influence of Measurement Precision of the Battery Management System on the State of Charge Estimation[C]. Asia Pacific Power and Energy Engineering Conference, Chengdu, China, 2010.
[4] Odd Jostein Svendsli.电池管理应用中精确测量和温度稳定的重要性[J].今日电子,2010(1):28-31.
[5] Li Yuheng, Wei Xuezhe, Sun Zechang. Low Power Strategy Design for Battery Management System[C]. International Conference on Measuring Technology and Mechatronics Automation, Changsha, Hunan, China,2009.
[6] 孙同景,陈桂友.Freescale 9S12十六位单片机原理及嵌入式开发技术[M].北京:机械工业出版社,2008.
[7] Zhang Baofeng, Wang Ya, Zhu Junchao. Design of High Speed Data Acquisition System Based on FPGA and DSP[C]. International Conference on Artificial Intelligence and Education,Hangzhou, China, 2010.
[8] Dai Haifeng, Wei Xuezhe, Sun Zechang. Estimate State of Charge of Power Lithium-ion Batteries Used on Fuel Cell Hybrid Vehicle with Method Based on Extended Kalman Filtering[J]. Chinese Journal of Mechanical Engineering,2007(3):92-95.