一种可用于BMS功能验证的动力锂电池模拟器设计

2020-05-08 05:08龚金科张文博
关键词:等效电路模拟器锂电池

李 梦, 龚金科, 朱 浩, 吉 祥, 张文博

(湖南大学 机械与运载工程学院, 湖南 长沙 410082)

system; Simscape module

使用真实的电池组对电池管理系统(battery management system,BMS)进行功能验证,不仅测试周期长、可重复性差,而且一些极端测试工况具有安全隐患,因此设计出可以用来替代真实动力电池的电池模拟器显得尤为重要.

目前,国内外对于动力锂电池模拟器的研究主要基于两种主流结构,一种是基于脉冲宽度调制(pulse width modulation, PWM)整流器+直流变换(DC/DC)电路为主拓扑结构,另一种是基于数模(DA)转换器为主拓扑结构.文献[1]根据试验确定动力锂电池特性,建立了电池的数学模型,考虑了荷电状态(state of charge,SOC)、温度和电流所引起的电压变化.文献[2-3]采用简单的非线性等效电路模型,以经验公式的方式近似体现电池的端电压行为.文献[4]基于局部模型网络 (local model networks, LMNs)的通用非线性电池模型,使用单个电池或整个电池组的试验数据来训练仿真模型.文献[5]和[6]的研究基础分别是电池三阶动态模型和二阶等效电路模型.文献[7]对电池的行为在3种不同时间尺度上的影响进行了区分.文献[8]基于电池电化学模型对电池行为进行模拟,需要确定合适的模拟分辨率和电池参数化.文献[9]基于改进的二阶等效电路模型,在原有等效电路模型的基础上考虑了温度和容量衰减这两个因素.

三相电压型PWM整流器具有功率因数高,以及电能双向传输能实现动力锂电池模拟器对充放电过程的模拟的优点,因而受到业内关注,但是基于三相电压型PWM整流器+DC/DC电路为主拓扑的动力锂电池模拟器的结构一般较复杂,在实现较多单体电池串联时体积较庞大.基于DA转换器为主拓扑的动力锂电池模拟器在精度和灵活性上有较大优势,而模拟多节单体电池串联时,成本较高.为此,为了降低动力锂电池模拟器设计的复杂度及模拟多节串联单体电池的成本,笔者以DA转换器为主拓扑结构,基于电池二阶等效电路模型,设计一种新的动力锂电池模拟器,以期为生产实践提供参考.

1 动力锂电池模拟器设计

1.1 动力锂电池建模

BMS要求电池模型不仅要体现动力电池的外特性,而且要具有较强的等效性和实用性.目前常用的电池模型主要分为电化学模型、人工神经网络模型和等效电路模型等3类[10].电化学模型结构一般比较复杂,实现起来较困难.人工神经网络模型需要大量的试验数据来预测电池的性能,而且对电池历史数据的依赖性较大.等效电路模型使用电阻、电容和恒压源等电路元件组成电路网络以模拟电池的动态电压特性[11],可以保证电池模拟具有较好的实时特性,并满足电池模拟具有较好的精确性.因此,本研究中选择等效电路模型.

高精度的等效电路模型需要耗费较长的模拟时间,这就需要在模型精度和复杂度之间产生一个折中,二阶等效电路模型在复杂度和精度之间做到了较好的平衡.因此,本研究中选择的电池模型为二阶等效电路模型.在确定了电池二阶等效电路拓扑结构后,基于Matlab & Simulink的Simscape模块搭建的动力锂电池模型示意图如图1所示.由图1可知,动力锂电池模型主要包括SOC计算的安时积分模块、开路电压模块、RC网络模块及欧姆内阻模块共4个模块.

图1 基于Simscape的动力锂电池模型

R1C1网络子系统的内部结构示意图如图2所示.由图2可知:R1C1网络子系统内部结构主要包括极化电阻R1和极化电容C1的Lookup Table模块.

图2 R1C1网络子系统

1.2 电池模型参数辨识

电池模型的参数辨识主要是基于Matlab & Simulink自带的参数估计工具parameter estimation.该工具通过利用非线性最小二乘法将电池的试验数据与电池模型的仿真数据不断进行对比,来辨识电池模型参数.由于锂电池放电末端的电压下降较剧烈,为了能够更好地反映其输出外特性,在参数辨识过程中减小了SOC在0至0.10区间的步长,取为0.01,SOC在0.10至1.00区间步长取为0.10,经过参数估计工具自动估算后的模型参数如图3所示.

图3 电池模型参数辨识结果

1.3 硬件设计

动力锂电池模拟器的硬件设计主要包括电压生成器和故障模拟单元的设计.电压生成器是依据储存的电池模型数据生成实时的电压值,进而模拟BMS从控单元(battery monitor unit,BMU)所采集的单体电池组.故障模拟单元是模拟动力锂电池在使用过程中可能出现的故障,以验证电池管理系统对动力电池出现这些故障后,是否能够及时发出告警及告警等级是否准确.

1.3.1电压生成器

动力锂电池模拟器的电压生成器模块主要是模拟单体电池的电压信息,具体实现原理如图4所示.电压生成器主要包括微控制单元(micro controller unit,MCU)、串行外设接口(serial peripheral interface, SPI)通信隔离电路、DA转换电路、线性可调电源电路、升压电路以及分压电路等.MCU根据单体电池的二阶等效电路模型及工作运行状态,计算单体电池在一定SOC下的端电压作为基准电压信号,并通过SPI通信隔离电路及DA转换电路生成基准电压,线性可调电源电路根据基准电压输出相应的单体电压.单体电压经运放进行放大,再经18S电阻串网络进行分压,进而模拟动力电池组的单体电压信息.Linear,NXP及TI等公司所主推的多节电池组成的电池组监视器基本上是测量12,14或16节串接单体电池的电压,该设计的电压生成器模块可在不高于18节电池组的基础上进行任意选择,可满足各公司对不同芯片厂生产的电池组监视器的功能验证.

图4 电压生成器硬件框架

图5为18S电阻串网络示意图.

图5 18S电阻串网络示意图

图5中,18S电阻串网络主要由精密电阻R和电容C构成.电阻R对升压后的总压进行分压,得到模拟的每节单体电池电压,通过电阻R串联来模拟单体电池级联;电容C使模拟的每节单体电池的电压更稳定地输出.为了使模拟的单体电池的电压差异性尽量减小,在每6节单体电池模拟的总压处引入1/3的升压总压.通过18S电阻串网络的形式模拟单体电池的级联,可以最大程度降低单体电池模拟的成本,从而做到模拟操作简单、高效.

1.3.2故障模拟单元

为了能够更好地验证BMS的各项性能,该设计的故障模拟单元对单体电池的导线开路及过压欠压进行模拟.单体电池导线开路模拟单元主要采用开关矩阵形式,对导线存在开路的情形,将相应的开关断开.单体电池导线开路模拟单元如图6所示,图中BMU为BMS的从控单元,ADC为数模转换器,MUX为多路复用器.由图6可知其主要连接是在电压生成器与电池组监测单元之间.单体过压欠压模拟单元主要是通过运放的使用来进行模拟,使输出的单体电压Uo=AUi,其中A为电路的增益,Ui为运放电路的输入电压.单体过压欠压模拟单元如图7所示,由运放的两级反相电路组成,参考地为单体电池的负极.

图6 单体电池导线开路模拟单元

图7 单体电池过压欠压模拟单元

1.4 软件设计

动力锂电池模拟器的软件设计流程图如图8所示,主要包括MCU系统初始化、电池模拟器参数初始化、确定电池模拟器工作状态、计算电池模拟器输出的端电压、DA转换、反馈电压模数采样及判断电池模拟器输出是否满足条件等基本控制逻辑.

图8 软件设计流程图

主程序运行过程中,首先进行的是MCU系统初始化,主要包括RCT时钟中断初始化、MCG总线时钟初始化、SPI通信初始化、AD转换初始化及DA转换初始化等.再对电池模拟器参数进行初始化,这些参数与电池等效电路模型相关.初始化程序完成后,就是确定电池模拟器的工作状态,该步骤根据用户要求进行设置,主要是确定模拟单体电池的当前SOC.然后计算电池模型输出的端电压,作为DA转换的输入量,并通过AD转换实时对输出电压进行采样反馈,反馈电压会与电池模型输出的端电压进行实时比较.当偏差不大于设定值时,程序运行结束,反之,会不断调整电池模型输出的端电压,重新作为DA转换的输入量,引入反馈的作用就是使计算出的电池模型输出的端电压与线性可调电源电路的输出电压尽量保持一致.

2 结果分析与讨论

2.1 动力锂电池试验

以三元锂电池EVE-ICR18650/26V1为研究对象,基本参数如下:标称容量为2 600 mA·h;标称电压为3.6 V;充电截止电压为4.2 V;放电截止电压为2.75 V;最大充电电流为2.6 A;最大放电电流为7 A.为了给三元锂电池模型参数辨识以及模型验证提供试验数据,分别进行了混合脉冲功率特性(hybrid pulse power characteristic, HPPC)循环放电试验、动态应力工况试验(dynamic stress test,DST)和美国联邦城市运行工况试验(federal urban driving schedule, FUDS).

1) HPPC循环放电试验.该试验主要依据的是HPPC试验,并对其步骤进行了适当改进.试验共有10个循环,每个循环使电池放出10%容量,电流-时间曲线如图9所示.

图9 HPPC循环放电试验电流-时间曲线

2) 动态工况试验.DST试验是用于测试动力电池充放电能力的一种简化的工况,包含一个周期360 s共7个水平的功率值变化的序列.20 ℃恒温下,对三元锂电池进行DST工况试验,单个的充放电工况下流经电池的电流-时间曲线如图10所示.

图10 DST工况试验电流-时间曲线

FUDS工况试验是用于测试动力电池对于急剧变化的电流响应能力的一种工况,包含了一个周期1 372 s内变化剧烈的功率值序列[12].20 ℃恒温下,对三元锂电池进行FUDS工况试验,单个的充放电工况下的电流-时间曲线如图11所示.

图11 FUDS工况试验电流-时间曲线

2.2 动力锂电池模型验证

为了验证动力锂电池模型的精度,将通过动力锂电池模型计算的电压仿真数据与实际电池测试得到的试验数据进行对比.笔者选择验证的试验工况主要是HPPC循环放电试验、恒流放电试验以及动态工况试验.

1) HPPC循环放电仿真验证.图12和13分别为三元锂电池在HPPC循环放电下的电压试验值与仿真值对比曲线和误差曲线.

图12 HPPC循环放电下电压试验值与仿真值对比曲线

图13 HPPC循环放电下的电压试验值与仿真值误差曲线

由图13可知:电池放电末端电压最大误差不超过0.07 V,可以较理想地吻合试验数据.HPPC循环放电末端相对于整个电池放电周期,电压误差相对较大,可以间接体现锂电池放电末端电压变化较为剧烈的特性.

2) 动态工况仿真验证.图14和15分别为锂电池在DST工况下电压试验值与仿真值的对比和误差曲线.

图14 DST工况下的电压试验值与仿真值对比曲线

图15 DST工况下的电压试验值与仿真值的误差曲线

由图14 可知:在电流作用下,电压试验值与仿真值曲线较好地吻合.由图15 可知:在整个工况下,电压误差基本维持在0.03 V以内,在锂电池放电末端,电压最大误差也不超过0.12 V.

图16和17分别为三元锂电池在FUDS工况下的电压试验值与仿真值的对比曲线和误差曲线.由图16可知:在充放电的电流剧烈变化的工况下,仿真值也可以与试验值很好地吻合.由图17可知:在整个工况下,电压误差基本维持在0.02 V以内,在锂电池放电末端,电压最大误差不超过0.10 V.

图16 FUDS工况下的电压试验值与仿真值对比曲线

图17 FUDS工况下的电压试验值与仿真值的误差曲线

2.3 动力锂电池模拟器测试

搭建系统平台对动力锂电池模拟器进行基本功能测试.测试平台如图18所示,主要包括直流电源、PE下载器、CAN分析仪、从控板BMU、动力锂电池模拟器和上位机.

模拟前端芯片LTC6804-1能够测量12节串接电池的电压,总测量误差低于1.2 mV,具有2个16位AD转换器,其中最低有效位(least significant bit, LSB)代表100 μV.通过LTC6804-1对不同SOC下的动力锂电池模拟器的输出电压进行采样,测试结果如图19所示.由图19可知:动力锂电池模拟器的电压可以按照动力锂电池的外特性曲线进行输出,放电的末端电压下降趋势较为剧烈.动力锂电池模拟器模拟的12串单体电压基本一致,可以较好地避免单体电池之间的不一致性.

图18 动力锂电池模拟器测试平台

图19 动力锂电池模拟器的输出电压-时间曲线

为了验证设计的动力锂电池模拟器的精度,将SOC进行等分,步长取为0.10.将不同SOC下的动力锂电池模拟器的输出电压通过高精度7位半数字万用表进行测量,然后将测试电压与电池等效电路模型的输出电压进行对比(见表1).模拟的12串单体电池电压最大误差为1.9 mV,相对误差为0.53‰,可以对满足±5 mV采样精度要求的BMS进行功能验证.

表1 动力锂电池模拟器输出电压与模型输出电压比较

3 结 论

1) 通过Simscape建立的电池模型,在利用Parameter Estimation对参数进行辨识时,增加SOC在0至0.10区间的间隔点,可以进一步提高电池模型的精度,仿真得到在放电末端的电池电压最大误差不超过0.07 V.同时,HPPC循环放电试验时,可以适当增加SOC的间隔点,采集更多的试验数据.

2) 在DST和FUDS工况下,电压最大误差分别不超过0.12 和0.10 V,验证了所建立的电池模型具有较高的精度.在不同运行工况下对电池模型进行验证,发现相对于其他SOC下的端电压特性,锂电池放电末端的端电压特性较难拟合.

3) 通过模拟前端芯片LTC6804-1对动力锂电池模拟器的输出电压进行采样,可以得到模拟器的电压输出具有很好的一致性,适用于Linear公司推出的多节电池的电池组监视器.在不同SOC下,对动力锂电池模拟器进行测试,得到电压输出最大误差为1.9 mV,相对误差为0.53‰,验证了所设计的动力锂电池模拟器具有较高的精度,可适用于BMS的功能验证.

猜你喜欢
等效电路模拟器锂电池
考虑端部效应的同心笼次级直线双馈电机等效电路
了不起的安检模拟器
盲盒模拟器
划船模拟器
一种锂电池组主动均衡充电保护电路的设计
基于随机等效电路分析评估电动汽车电能品质
锂电池里装微型灭火器:再也不担心手机电池起火等
充电电池到底该怎么带?——话说锂电池
动态飞行模拟器及其发展概述
锂电池百篇论文点评(2014.6.1—2014.7.31)