基于无线通信的电池组状态监测系统
扫描二维码
随时随地手机看文章
以锂离子电池为直流电机供电系统作为研究对象,采用 ARMv7 系列微处理器 STM32F103 VET6 作为主控芯片,结合直流电流变送器 SIN-DZI-20A 和直流电压变送器 SIN-DZU-30V,提出一套嵌入式电池组状态监测系统设计方案。该监测系统能够实现电池组电压、电流、电量等状态参数的实时测量、电池组安全管理、数据及数据波形显示、电池组充放电状态控制和无线 WiFi数据通信等功能。通过软硬件系统联调,实验结果表明:电池组状态测量系统运行稳定,状态测量精度达到 0.5 级,且具备一定的抗电磁干扰能力。
1 引言
随着商用电池技术成熟,锂离子电池等二次电池已广泛应用在电动汽车、手机、笔记本电脑、工业移动机器人、风电场储能系统、电网调频、分布式电源和微网等领域[1]。锂离子电池与其他二次电池相比,具有能量密度高、体积小、质量轻、无记忆效应、自放电少、循环寿命长和环境友好等优点[2]。这些特点决定其在存储电能等方面极具发展前景。
电池组的工作状态包括电压、电流、电量和温度等物理参数[3]。无论是传统的铅酸电池,还是性能更加优良的锂电池,当热量散发速度小于热量堆积速度时,必然会引起内部温度升高,产生大量热能。为保证电池组安全工作,延长其使用寿命,需要对电池组的电压、电流、电量和温度等物理参数进行实时状态监控、危险预警和故障自动切除。
1991 年,美国先进电池开发联合体(USABC,United States Advanced Battery Consortium)成立了专门从事电池管理系统(BMS,Battery Management System)开发和研究的实验室[4]。所研发的 BMS 的基本功能包括:限制电池的过充和欠充;确保电池组内的电池之间的均衡;保持电池组的安全运行[5]。随着工业技术的发展,为满足复杂情况下对电池组进行监控的需求,又引入了电池 SoC(State of Charge)的预测、电池安全管理、电池组的能量均衡和电池热管理等方面的研究[6]。2008 年,特斯拉公司在改进松下18650 型锂离子电池电芯结构的同时研发出全球领先的电池管理系统。该系统可对每一节电池、每一条线路进行实时监控,若出现紧急异常情况,可在毫秒级时间内熔断故障所在线路[7]。北京交通大学姜久春教授深入研究动力电池的数学模型和电池状态估计等方法,在 SoC 的预测精度能达到±3%,并首次提出锂离子动力电池无损快速充电的方法;在控制方面,提出主被动均衡控制技术,提高 pack 容量利用率;其研究的通信协议,已经上升为国家标准[8]。
尽管传统的有线监控系统可有效完成电池 SoC 的预测、电池安全管理、电池组能量均衡和电池热管理等任务。但针对电动汽车、工业移动机器人系统中所使用的锂离子电池组,通常需要通过上位机或移动终端实时获取电池组状态。传统的有线监控方式已无法满足当今使用者的需求,急需研制一种低成本、高可靠性的无线监控电池组管理系统。本研究融合 WiFi 通信技术提出了远程电池组状态测量系统设计方案,并通过实验系统进行验证实现。实验结果表明:电池组状态测量系统运行稳定,状态测量精度达到了 0.5 级,同时具备一定的抗电磁干扰能力。
2 硬件设计
在所提出的嵌入式电池组状态无线监测系统中,被监控对象为实验室中搭建的容量为 7.5 AH 24 V 直流 18650 锂电池组对单台直流电机的供电电路。负荷选用一台带直流调速器的 LX44WG 单轴蜗轮蜗杆减速电机。系统实物连接情况见图 1。
选择 STM32F103VET6 MCU 为主控芯片。板载的 MCU(Micro Controller Unit)为 LQFP 封装、100 pin 的 STM32F103VET6。它有 512 kB 的 Flash 和64 kB 的 SRAM。STM32F103 VET6 采用 ARM 公司设计的 Cortex-M3 内核,主频达 72 MHz[9,10]。
电池组电压和电流分别通过直流电压变送器 SIN-DZU-30V 和直流电流变送器 SIN-DZI-20A 测量,经 ADC 接口电路采集、MCU 内部转换后,获得电压和电流的浮点值。直流电压(电流)变送器把一定范围的输入端电压(电流)线性转化为在一定范围的模拟量输出电压。电流变送器的输入电流范围是 0~20 A,输出电压范围是 0~3.3 V。STM32 开发板可通过ADC 采集直流电流变送器和电压变送器输出的模拟电压。为防止变送器输出交流分量信号,影响系统测量精度,需要在电压变送器的模拟信号输出端并联钽电容。依据经验,选择 16V 10 μF 的钽电容作为变送器滤波电容。
使用 DHT11 温度传感器测量电池组温度,测量数据经单总线通信方式送入 MCU。DHT11 传感器温度测量数据的数据包一般为 40 Bit,在数据的传输过程中需要进行校验,以保证在数据传输过程中不出现误传与残缺的情况。
测量获得的电池组电压、电流、温度、电机状态等数据暂存于 I2C EEPROM 存储器,程序和汉字字库烧录于 Flash 程序存储器中。并在需要时,通过一块3.2 英寸电阻触摸液晶屏显示,或利用 ESP8266 串口 WiFi 模块发送至手机 APP 进行显示。ESP8266 模块主要用于传输小数据量,不能用于传输图像、音频和视频等大数据量的文件,系统升级时可考虑采用无线图传模块替代 ESP8266。
无线传输电路设计如图 2 所示[11,12]。
3 软件设计
STM32F103VET6 微控制器基于 ARMv7 构架的ARM Cortex-M3 嵌入式内核,可使用通用的 ARM 嵌入式系统开发环境进行开发。它采用指令总线和数据总线分离的哈佛结构,比冯诺依曼结构具有更快的处理速度。在 Keil uVision5 开发环境中开发了电池组状态测量系统软件程序,该软件程序使用 C 语言进行程序编写,编译生成的 .hex 文件可通过 DAP 仿真器经 JTAG 接口下载到程序存储器中。
电池组状态测量系统软件设计可分为下位机软件设计和上位机软件设计。下位机软件设计包括电压和电流读取、温度读取、波形显示、滤波、安全管理、电池组 SoC、数据存储、无线显示与控制、按键检测、继电器控制、电机控制和延时管理等方面的子程序设计。软件系统流程如图 3 所示。
当程序检测到 ESP8266 有新的消息进入时,软件进入消息检测程序。通过这个程序可以实时检测到新用户的连接与旧用户的退出连接,还可以获取来自上位机的控制命令。可以通过使用套接字(Socket)接口实现下位机与上位机的 TCP/IP 通信。下位机先开启 TCP Sever 服务端,上位机开启 TCP Client 客户端后,需要连接到下位机的 TCP Sever 服务端。
4 实验结果
系统电压测量精度,可通过将系统所测电压值同数字万用表测量电压值相比较得到。系统电流测量精度,可通过将电流表与穿过电流变送器的导线串联获取到表测电流值,再与电池监控系统所测电流值进行对比得到。测量所使用的万用表型号为 VICTOR VC890D,它的基本精度为±(3+0.5%),检测频率为3 Hz。VC890D 给出电压值为 22.3 V 时,本系统测试电压值为 22.30136 V;VC890D 给出电压值为 22.2 V 时,本系统测试电压值为 22.29590 V。测试结果表明:本系统的数据测量频率最快可达 5 Hz,且测量精度能达到 0.5 级的绝对精度。安卓 APP 的界面,如图 4 所示。
5 结语
当无外部设备连接 STM32 开发板的 Socket 服务时,系统默认的延时平衡时间为 250 ms,即电池组状态测量系统的检测频率为 4 Hz。当去掉电池组状态测量系统的电压、电流和温度波形显示功能时,可将系统的延时平衡时间降低为 200 ms,即系统的检测频率达到 5 Hz。
经系统测试,本系统软件滤波效果较好,可有效滤除交流分量,保留直流分量。本系统的数据测量频率最快可达 5 Hz,且测量精度能达到 0.5 级的绝对精度。因此,整套方案满足系统设计需求,具有较强的工程应用前景。经工业再设计和升级,本系统可扩展为电网级锂电池储能系统的管理系统。