车辆蓄电池在线测试系统的研究
2016-04-13潘运平汪洋
潘运平,汪洋
(武汉理工大学机电工程学院,湖北武汉430070)
车辆蓄电池在线测试系统的研究
潘运平,汪洋
(武汉理工大学机电工程学院,湖北武汉430070)
摘要:目前,依靠石油为主要能源的汽车向以蓄电池为主要动力的方向转变已是大势所趋,蓄电池作为电动车主要核心动力,直接影响到汽车的各方面性能。但是由于对蓄电池性能和工作状态的不了解造成蓄电池不合理的充放电,使得蓄电池寿命大大缩短。对于此,研究的车辆蓄电池在线系统由下位机的数据采集部分和上位机的实时监控部分组成。采用Arduino Mega2560单片机作为中央处理单元,将Arduino Mega2560采集的数据传给LabVIEW,通过LabVIEW显示出蓄电池的电流、电压、温度数据,从而清楚直观的了解蓄电池的实时工作状态,为车辆行驶提供安全保障。
关键词:蓄电池Arduino Mega2560中央处理单元LabVIEW
[4]陈明,胡安.IGBT结温模拟和探测方法比对研究[J] .电机与控制学报,2011,15(12):44-49.
[5]王永康.ANSYS Icepak电子散热基础教程[M].国防工业出版社,2015.
[6]邱成悌.电子设备结构设计原理[M]. 东南大学出版社,2005.
涂文特(1986-),男,工学硕士学历,研究方向:电机驱动及伺服控制。
1蓄电池系统的总体设计
1.1蓄电池系统的硬件构成
蓄电池系统构成框图如图1所示。
图1 系统构成框图
该系统主要由下位机的数据采集单元、充电调节单元以及上位机的监控单元组成。数据采集单元:采集蓄电池充放电电流、端电压以及温度数据并进行A/D转换;充电调节单元:通过PWM对IGBT进行开关控制,实现充电电流的调节功能; 监控单元:接收下位机采集到的数据并通过采集到的数据进行某些参数的数学计算,将数据实时显示出来。蓄电池管理系统的硬件部分主要由单片机、驱动器、检测电路、继电器、负载、工业触摸屏等组成。
1.2系统的电气原理设计
图2 电路原理图
如图2所示:在充电检测时,首先打开继电器KM1,工作过程中,通过调节PWM[3]的高电平脉冲信号的占空比来调节IGBT的开关大小,从而增大充电电流。随着蓄电池电动势的增加,到充电后期,充电电流减小到一定值,导致充电变慢,而且极板会受到很大的冲击,这时候KM1闭合,把IGBT短接,然后采用恒压充电法对其充电。当监测到蓄电池充满后,关断充电电压,停止充电。接着进行蓄电池的放电监测,蓄电池会向内部自带的负载放电,同时传感器负责采集蓄电池放电时的参数信息并上传至上位机实时显示,利用所采集到的数据曲线计算蓄电池的剩余放电时间,整个电池管理系统的供电由AC220V经开关电源转换得来。
2系统的数据采集
系统数据采集部分需满足以下要求:
1)在充放电过程中,系统能够采集到单个蓄电池和串联蓄电池总电压数据,跟踪电压的变化;
2)在充放电过程中,系统能够采集到电流的变化数据,记录电流的大小;
3)系统能够采集到电池极柱温度的变化数据。
2.1电流信息数据采集
电流数据采集采用高精度霍尔电流传感器,线性度0.5%,精度1%。本系统需检测充电电流和放电电流,规定充电电流不得超过40 A,所以采用原边额定电流为100 A,变比为20∶1的传感器作为充电时的检测;由于蓄电池放电额定电流为200 A,所以在放电检测时采用原边额定电流为200 A,变比为40∶1的电流传感,线性度0.5%,准确度1%。其接线定义图如图3所示。
图3 霍尔电流传感器接口定义图
2.2电压信息的数据采集
采用电压变送器采集蓄电池的端电压信息,传感器精度0.2%,其输入电压范围为DC0~15 V,输出电压为DC0~5 V,变比为3∶1,线性度0.1%,准确度0.2%,其接口定义图如图4所示。
图4 电压变送器接口定义图
2.3温度信息的数据采集
温度数据采集采用型号为HSTL-PT100铂电阻温度传感器测量范围0~100℃,输出0 V~5 V,测量精度为±0.2℃。其测量连接电路如图5所示。
图5 温度传感器接口连接图
3系统监控部分设计
3.1LabVIEW与Arduino的连接方式
此系统采用比较简单的LabVIEW Interface for Arduino的连接方式[4-5]。
LabVIEW与Arduino必须依靠Arduino INIT函数节点进行连接,输入参数有VISA resource、波特率、Arduino板的类型、连接方式(USB/Serial),输出参数为Arduino资源号,提供给后续函数对Arduino进行操作。除了VISA之外,其他的输入参数可以不给定,即使用默认参数,波特率115 200,Arduino Mega2560板,USB/Serial连接方式,每个包15个字节。
VISA是LabVIEW中用来与下位机的I/O口进行配置和通讯的软件库,包含8个节点的子模块,用户利用这些节点进行串行通信编程,这8个函数节点分别用来实现串口初始化、写串口数据、读取串口数据、中断和关闭串口等功能。
3.2蓄电池电压值的显示
本系统中电压电流传感器的输出都为电压信号,所以电压电流的串口通信方法一样。利用Arduino Mega2560控制器上的模拟输入功能,采集待测量的电压值,并通过串口上传至LabVIEW,在LabVIEW前面板中显示出来。电压传感器1的信号输出接在Arduino Mega2560控制板中的A3口,所以LabVIEW需要采集A3的电压值,在传输电压值之前,以字符串形式发送一个帧头“55”,用于LabVIEW上位机软件甄别是否为有效数据。
(1)Arduino主程序
void loop(){
while
(Serial.available()>0){//不断检测串口是否有数据
receive_data();//接收串口数据
test_do_data(); }//测试数据是否正确并执行命令
}
void receive_data(void) {
int i;
for(i=0;i<3;i++){
comdata[i]=Serial.read(); //延时一会,让串口缓存准备好下一个字节,不延时可能会导致数据丢失
delay(2);}
}
void test_do_data(void){
if(comdata[0]==0x55){ //0x55和0xAA均为命令帧头,用于判断命令是否有效
if(comdata[1]==0xAA){
Switch(comdata[2]){
case A1_command;
sensorValue=analogRead(A1); //读取A1电压值
float_sensorValue=(float)sensorValue/1023*5.00;//换算为浮点电压值
break;
case A3_command;
sensorValue=analogRead(A3);//读取A3电压值
float_sensorValue=(float)sensorValue/1023*5.00;//换算为浮点电压值
break;
Serial.print(“55”); //发送帧头,表示此帧为有效帧
Serial.print(float_sensorValue,2); //保留两位小数发送数据
delay(1000);//一秒刷新一次
}}}}
(2)LabVIEW的程序设计
LabVIEW程序首先通过设置的串口号与Arduino Mega2560控制板建立连接,然后进入While循环结构,在While循环中通过Analog Read Pin函数节点来读取模拟输入端口A3的电压值,并显示在量表、波形和数值显示控件上。其程序框图如图6所示。
图6 蓄电池电压程序框图
3.3蓄电池温度值的显示
通过Arduino Mega2560控制板的模拟端口A2、A4、A6采集HSTL-PT100输出的电压值上传给LabVIEW软件,并除以比例因子获得温度值,实时显示在工控机上。
(1)Arduino程序设计
在基于Arduino与LabVIEW的上下位机温度监测系统中,Arduino Mega2560控制板需要完成以下功能:接收和判断命令与采集和传输温度数据,Arduino控制板通过串口接收上位机发来的命令,分析得到有效命令,读写温度传感器以获取温度,并将温度数据上传至LabVIEW软件。Arduino Mega2560控制器的程序代码与上一节电压数据的采集程序结构上一样,这里就不再编写。
(2)LabVIEW程序设计
LabVIEW上位机主程序的结构为顺序结构+While循环。首先,在顺序结构中的第一帧中,通过设置的串口号来初始化串口通信,并将波形图清空。然后,程序进入While循环和平铺式顺序结构,向Arduino Mega2560控制器发送温度传感器1或者传感器2温度测量的命令码,等待100 ms,接收到返回的温度之后,显示在前面板上并显示出温度波形。最后关闭串口通信。
通过前面板上的单选按钮来选择所需测量的传感器,然后向Arduino Mega2560控制器发送对应的温度采集命令码,传感器1命令码为0x55AA80,传感器2的命令码为0x55AA81,并通过延时800 ms,以达到每秒采样1次的功能。程序框图如图7所示。
图7 温度传感器1对应的LabVIEW上位机程序框图
4结论
蓄电池充放电技术是蓄电池与普通电池的区别和优势所在,蓄电池作为一种常见可靠的储能设备,其可充电可移动的优点,使得它的应用越来越广。为了保障蓄电池的正常工作和延长其使用寿命,除了使用正确的充放电操作方法和定期维护以外,实时在线的记录蓄电池的工作状况,监测分析其各性能指标同样也是一个必不可少的方法之一。
参考文献
[1]徐志强.电动汽车蓄电池性能研究[J]. 大观周刊, 2012(46)378-378.
[2]胡燕娇.电动汽车蓄电池能量管理系统的研究[D]. 江苏: 江苏大学,2012.
[3]邓木生,陈新喜,李华柏.基于PWM技术蓄电池充放电与检测系统设计[J].现代电子技术,2011,34(14):207-210.
[4]史春雷,秦芳.基于LabVIEW虚拟测试分析仪的信号分析功能设计[J].科技资讯,2010:23.
[5]杜爱宾,刘延泉.关于蓄电池在线监测系统的研究[J].电子测量技术, 2009,32(10):95-99.
汪洋,男,湖北随州人,现为武汉理工大学机电工程学院机械工程专业研究生,研究方向为机电一体化。
Vehicle battery test system online
PAN Yunping,WANG Yang
Abstract:Currently, it has become a general trend that vehicles dependent on oil as the main energy are being replaced by those with battery as the main driving power. Battery as the core power for electric vehicles directly affects car's performance in all aspects. The lack of knowledge about the property and operating status of the battery can cause improper charging and discharging, which will enormously shortens the battery life. The vehicle battery online system under study is composed of a lower positon computer responsible for data collection and a host computer to realize real-time monitoring. Employing Arduino Mega2560 microcontroller as the central processing unit, the data collected by Arduino Mega2560 are imported to LabVIEW, through which such data as the current, voltage, temperature of the battery are shown. This visual presentation of the real-time work status of the battery can effectively improve security for driving.
Keywords:battery;Arduino Mega2560;central processing unit;LabVIEW
收稿日期:2015-07-16 2015-06-02
作者简介:王红芳(1985-),女,工学硕士学历,研究方向: 电机本体及控制器结构设计。 潘运平,男,湖北公安人,现为武汉理工大学机电工程学院副教授,研究方向为机电一体化。
中图分类号:U482.3
文献标识码:A
文章编号:1002-6886(2016)01-0061-04