APP下载

基于无线通信和传感器的动力电池在线监测系统设计

2020-01-03佘世刚胡月娥袁峥峥朱明亮

计算机测量与控制 2019年12期
关键词:电池组动力电池电路

佘世刚,2,胡月娥,赵 宇,袁峥峥,朱明亮

(1.常州大学 机械工程学院,江苏 常州 213164;2.常州大学 江苏省自动控制实验室,江苏 常州 213164)

0 引言

随着自然环境的恶化,传统燃油汽车污染较大,新能源汽车应运而生,有“清洁能源”之称的锂电池作为新能源汽车动力电池的主要动力来源之一,因其污染小、能量密度大等优点而得到广泛运用。动力电池一般由多个单节电池串联形成电池组,但当前制造工艺、使用环境不能完全保证每节单体电池各项性能完全一致,由此导致电池组在充放电时会发生过充过放、局部过热等现象,这些因素会影响电池性能,温度过高导致电池内部产生极化现象,温度过低,电池内部化学成分活性降低,均会致使电池组自身内阻增加,减小容电量,加快电池报废速度,使电池使用寿命远远达不到理论额定值。理论上动力电池在正常工作环境下使用寿命可长达20年[1],但使用环境不能满足理论条件,因此电池工作状态需要实时监测。据以上阐述的问题,本文设计一个安全可靠、实用性好、精度高、成本低的动力电池在线监测系统[3-4],此系统基于无线传输技术、传感器技术、数据处理技术和界面显示进行设计,实现在线实时监测动力电池的温度、电压、电流等重要参数,极大程度上保障动力电池的使用安全以及存放安全。

1 系统整体结构方案设计

本文主要研究用于电动汽车的动力电池组,此类电池组电荷容量、质量以及体积都较大,不太方便试验[5],因此采用12节标称电压为3.7 V,容量为2.5 Ah的锂电池串联成电池组进行充放电试验。系统设计时采用“分而治之”法,即将整体监测系统分为若干模块进行设计,这样监测系统结构较为紧凑。同时采用无线传输方式解决硬件布局和安装空间受限的问题。该系统完成实时监测动力电池组温度、电压、电流等状态参数任务的同时,基于监测到的数据信息进行在线故障诊断,警报系统设置温度、电压、电流、电荷量安全阈值,一旦出现故障,如电池温度过高、电流超出设定的额定阈值能够做出警报处理指令。该系统采用模块化结构设计,基于无线传输网络体系结构,在感知层将具有数据采集功能及控制功能的传感器和单片机设置于前端数据采集模块;在网络层将负责数据传输的无线收发作为传输模块;在应用层将涉及服务器端的通信软件、管理软件和数据库置于显示模块,主要负责数据显示、控制以及警报功能;此外采集和传输模块外设供电的电源模块。此系统框架如图1所示。

图1 系统组成框架图

2 系统硬件设计

2.1 硬件总体设计

阐具体监测硬件结构如图2所示,数据采集模块根据采集不同参数选用相对应的传感器芯片[6],监测电压信号选用串联电池组管理芯片—LTC6802-2芯片,该传感芯片能够实现对串联电池组的电压检测(单体电池和电池组整体可同时进行),其自身携有的过充、过放电保护电路适用于研究试验中的串联电池组模块。监测电池组充放电时温度选用单总线数字温度传感器—DS18B20,该传感器测量精度高、温度范围大,当采用单总线控制多个传感器时只需一个端口便可完成通信任务。监测电流选用JLK-8霍尔传感器,该传感器选用150A量程,线性度在0.5%,其工作温度范围在-20~80 ℃。控制单元采用STC12C5A62S2单片机,该单片机高行速度快且功耗低;其工作电压在3.5~5 V,有44个通用I/O管脚,2个UART串口,62字节的FIASH程序存储器,其内部集有MAX810专用复位电路,可将各传感器采集到的数据输入到单片机A/D转换的输入端,进行集中处理,之后通过传输模块传输到显示端。无线收发模块采用CC1110无线射频通信模块,此通信模块支持RS-232、CAN通讯接口,方便与显示模块连接。本文电源模块采用12 V电源模拟车载环境中的电源电压,但是监测芯片中大部分工作电压为5 V,因此本文采用MC34063芯片进行电压转换,方便为其他模块供电使用。

图2 系统硬件结构图

2.2 电压采集及均衡电路设计

电压采集电路设计如图3所示,监测电压芯片采用LTC6802-2,支持多片串联使用同时可监测12节串联单体电池[7],且为每块单体电池采集电路配备12位AD转换器。LTC6802-2具有高电压输入多路转换器和SPI串行接口,采集到的数据可通过其自身与SPI兼容的串行接口传输至STC12C5A62S2控制单元。电路中设置滤波和均衡电路[8],电池均衡电路一般分为主动均衡和被动均衡,但主动均衡技术目前技术未能达到理想要求,因此本文均衡电路中采用被动均衡。设置均衡电路在每个电压采集输入引脚并联一个稳压二极管,其作用是防止输入端电压高出最大值而对电路和测压芯片造成破坏。在每节电池电压采集引脚上设置开关管Q,与栅极相连的Sn引脚控制开关管Q导通与关断,放电电阻选用功率电阻与开关管Q漏级相连后并联在电池两端,配有发光二极管D作为指示灯。当MOSFET开关管处于导通状态时,其源极与栅极两端所承受的电压为电池电压,为防止电压过高损坏电路并联一个稳压管作为保护;为减小高压电频产生的干扰在电路中加上RC低通滤波电路。因为电压采集芯片与单片机之间通过SPI方式通讯,为保证数据能够准确传输,在SPI总线接口处连接ADUM2401数字隔离器,减小电频信号防止传送过程的干扰。

图3 电压采集及均衡电路

2.3 温度采集及电流采集电路设计

温度参数是监测动力电池状态重要参数之一,电池组充放电时,由于电池内阻导致电池产生热量,引起电池温度升高,若不设置散热装置致使温度过高时,电池会出现胀包现象,严重时会发生爆炸,影响人身安全;当温度过低时,电池内部成分活性降低致内阻增加,电池内阻过大直接导致电池组充放电效率降低。因此实时监测电池温度很有必要,本文采用DS18B20温度传感器[6],DS18B20温度传感器测量范围在-55~125 ℃,测温分辨率可达±0.5 ℃,满足使用需求。由于其独特的单线接口技术操作简单方便,仅需一个接口便可与单片机进行双向通信,简化电路搭建,价格低,便捷试验验证。

现有测量动力电池组电流的主流技术有霍尔感应式和分流器式。两种技术优劣点分明,采用分流器的能耗较霍尔式技术而言要高得多;且本身极易产生静态放电现象,但由于其成本低,在一些精度要求度不高的场所会使用它。霍尔传感器是基于“霍尔效应”制作的传感器,其具有结构简单、动态特性好以及使用寿命长等优点在电能参数、电场感应等测量中广泛应用。本文电流采集选用JLK-8霍尔电流传感器[4],电流采集与信号调理如图4所示:二极管由D1、D2串联连接,组成限幅电路,起到保证电压输出作用。JIK-8传感器连接一个电阻R1可将信号转换成双极性电压信号,再经由双运算放大器LM358中的前一个放大器将双极性电压信号放大;R2、R3、R5和电压基准芯片LM336组成电平偏移放大电路,将双极性电压信号转换成单极性电压信号,经过下一个运算放大器LM358放大,而后传入到单片机输入端进行控制处理。

图4 电流采集及信号调理电路电路图

2.4 无线通信模块电路设计

采用TI公司的CC1110无线射频芯片作为无线传输模块,CC1110无线射频具有传输距离远、运行速度快、灵敏度高、功耗低、连接简单方便等优点。其与PC显示端仅需USB接口便可完成连接。CC1110由CC1100RF收发机和高性能低功耗控制器8051控制核心组成,内部集成32 KB闪存、4 KBSRam、全速USB控制器、最多8路输出的8~14位adc,带有强大的dma和数据保密功能(AES安全处理器)。如图5所示,本文设计无线模块工作频率设置471 MHz,通信波特率设置9 600 bps,两个差分引脚RF-N、RF-P上放置LC电路,LC电路主要负责无线收发模块与天线连接,同时起到滤波作用减小高频电压产生的干扰电频;但信号中依旧存在负面干扰电平,因此信号传出随后经过176-96滤波、调制、放大等相关处理成数字信号,传到RX-EN引脚,经过天线将信号进行收发工作。

图5 无线通信模块框

3 系统软件设计

完整可靠的监测系统必须集硬件系统与软件系统于一体,二者协调工作才能完成监测工作。本章节主要介绍系统软件部分包括前端数据采集、控制模块和人机交互显示模块软件设计,控制模块采用C语言对其进行编程,显示模块采用MATLAB进行设计[10-11]。

3.1 控制单元软件设计和编程方法

系统上电后先进行自检度电池状态,设置电池组额定阈值,采集到的数据放入寄存器,同时进行阈值对比处理判定电池状态,进而做出打开或断开充放电支路步骤,若数值在设定阈值范围内则发出正常信号指示,进入下一步骤—保护板状态判定,是进入充电逻辑还是放电逻辑,当无逻辑运作时系统进入休眠状态节约功耗;当系统判定数据不在阈值范围内时发出警报信号,且警报指示灯亮,监测系统保护板会做出自锁工作,保护电池组。系统主流程图如图6所示。

数据采集和控制模块源码设计这里只介绍部分功能和参数设置。主要包括对采集芯片进行初始化、设置电池电压、电流、温度数据采集,对数据进行处理,同时单片机设置过压保护模块[12],当测值大于或小于设定电压值时做出警报处理。

图6 系统主流程图

3.1.1 初始化设置

fuction: void BQ_1_config(void)

description:ltc6802-2初始化

Parameters: None

//0x04寄存器0x19对应SCD延时70 uS,放电短路电压33 mV;

//0x05寄存器设置检测电流为1-shot模式;

//0x06寄存器0x39对应OCD的延时时间80 ms,放电过流电压33 mV;短路和过流对应电流都是60 A.

3.1.2 电压、电流温度数据采集

void Update_val(void)

{

printf(" ");

printf("第一节电池电压为:%dmV ", Batteryval[0]);

delay_ms(50);

printf("第二节电池电压为:%dmV ", Batteryval[1]);

delay_ms(50);

printf("第三节电池电压为:%dmV ", Batteryval[2]);

delay_ms(50);

printf("第四节电池电压为:%dmV ", Batteryval[3]);

delay_ms(50);

printf("第五节电池电压为:%dmV ", Batteryval[4]);delay_ms(50);

printf("第六节电池电压为:%dmV ", Batteryval[5]);

delay_ms(50);

printf("第七节电池电压为:%dmV ", Batteryval[6]);

delay_ms(50);

printf("第八节电池电压为:%dmV ", Batteryval[7]);

delay_ms(50);

printf("第九节电池电压为:%dmV ", Batteryval[8]);

delay_ms(50);

printf("第十节电池电压为:%dmV ", Batteryval[9]);

delay_ms(50);

printf("第十一节电池电压为:%dmV ", Batteryval[10]);delay_ms(50);

printf("第十二节电池电压为:%dmV ", Batteryval[11]);

delay_ms(50);

printf("电池总电压为:%dmV ", Batteryval[12]);

delay_ms(50);

printf("电池SOC为:%d%% ", Batteryval[13]);

delay_ms(50);

printf("电池温度为:%.2f ℃ ", Tempval_2);

delay_ms(50);

printf("当前电流为:%dmA ", Batteryval[14]);

}

3.1.3 警报模块

fuction:void readbqstate(void)

description:读取报警信号值

Parameters: UV_Alarm_flag❸OV_Alarm_flag

SCD_Alarm_flag,OCD_Alarm_flag

Int

UV_Alarm_flag,OV_Alarm_flag,SCD_Alarm_flag,OCD_Alarm_flag;

void ALERT_1_Recognition(void)

{

Unsigned char sys_stat_1,sys_stat_2,UV_1,OV_1,UV_2,OV_2,SCD,OCD;

sys_stat_1 = IIC1_read_one_byte(SYS_STAT);//获取状态

UV_1 = sys_stat_1&0x08; //取出UV位

OV_1 = sys_stat_1&0x04;

SCD = sys_stat_1&0x02;

OCD = sys_stat_1&0x01;

if((UV_1 == 0x08)||(UV_2 == 0x08))

{

UV_Alarm_flag = 1; //欠压报警

printf("pack UV ");

}

else

UV_Alarm_flag = 0; //没有欠压

if((OV_1 == 0x04)||(OV_2 == 0x04))

{

OV_Alarm_flag = 1;

printf("pack OV ");

}

3.2 显示模块软件设计

显示界面分为数据显示模块、数据处理模块、系统管理模块和警报模块若干子模块[13]。部分显示界面如图7所示,实时数据显示模块即显示单体和整体电池的电压、电流、温度;数据处理模块可根据需求对数据进行求平均值、最大小值等处理,让用户掌握电池实时状态。系统管理模块设置系统监测开关、设置单体电池数据增加、删除、保存、查询、备份等功能,警报模块通过对比实时数据和设置的理论安全数据,监测实时数据是否在安全区间,不足或超出安全区间都及时发出警报。

图7 显示界面

4 实验结果与分析

搭建上述电路硬件图,经调试成功进行反复实验测量电池组状态,验证监测系统可行性。本文选取电池组充满电发出警报时数据,采用开路法测量[14]由监测系统和万能表测量每节电池电压做出对比,结果如表1所示,验证系统测量精度高达0.2%。

表1 单体电池电压测量值

5 结束语

随着电动汽车使用量日益增加,其核心部件—动力电池的安全运作要求也随之提高。针对此要求本文设计基于无线传输的动力电池在线监测系统,该系统利用3种传感器作为数据采集端,上位机作为数据显示端,单片机作为控制器端搭建动力电池在线监测系统。经试验验证该系统可准确监测动力电池工况,且误差精度到达0.2%,相较于传统监测系统极大提高了监测精度。本系统监测电路搭建方便,有效解决了传统测试系统组装复杂、操作困难等问

题,且设计过程中充分考虑实践过程中可能遇到的问题,对此进行针对性设计,从根本上保证本监测系统的可实用性。

猜你喜欢

电池组动力电池电路
探究动力电池自动拆解设备的设计
电路的保护
荣威混动e550高压电池组电芯压差过大
巧用立创EDA软件和Altium Designer软件设计电路
基于MATLAB模拟混沌电路
EPR下关于动力电池回收再利用决策研究
EPR下关于动力电池回收再利用决策研究
上汽与宁德时代合作回收动力电池
电动汽车电池组主动热管理系统
巧用求差法判断电路中物理量大小