APP下载

基于自适应扩展卡尔曼滤波的锂电池SOC估计

2020-09-27凌六一何业梁邢丽坤

关键词:端电压噪声电路

凌六一,何业梁,宫 兵,邢丽坤

(1.安徽理工大学电气与信息工程学院, 安徽 淮南 232001;2.安徽理工大学人工智能学院, 安徽 淮南 232001)

准确估计SOC是优化锂电池充放电操作的重要环节。锂电池SOC无法直接测量,通常需要通过电池端电压和电流进行间接估计,如早期的库伦计数法、交流阻抗法、开路电压法等,然而由于电池内部复杂的化学特性以及噪声影响,导致这些方法的估计误差偏大,约为5%~10%,而且某些方法如开路电压法并不适合SOC在线估计。卡尔曼滤波可以有效处理噪声问题,自Plett[1]在2004年首次将扩展卡尔曼滤波(extended Kalman filter, EKF)引入到电池管理系统中以来,很多学者将EKF及其变种广泛应用到了电池SOC估计中。如Wang等人[2-5]使用双EKF对电池SOC进行准确估计;Mawonou等人[6-7]以分数阶模型对电池建模,采用分数阶EKF算法对SOC进行估计;Chen等人[8-12]将EKF与模糊算法、神经网络算法、粒子滤波算法、遗传算法等相结合,来实现电池SOC的精确估计,误差降低至5%以下。

传统EKF状态方程中的过程噪声以及观测方程中的观测噪声,都是假设它们是均值为零的高斯白噪声,实际应用时通常将噪声协方差矩阵设为常数,这种处理都会导致电池SOC估计误差产生。为此,本文从噪声处理角度出发,对传统扩展卡尔曼滤波算法进行优化,运用自适应EKF算法对系统噪声统计特性进行实时更新,以期提高系统噪声模型的精度及对系统噪声的自适应能力。以单体锂电池为测试对象,结合二阶RC电路模型,开展了模拟UDDS(Urban Dynamometer Driving Schedule)工况下的SOC估计实验。

1 电池建模与参数辨识

1.1 电池等效模型建立

电池等效模型主要分为电化学模型、等效电路模型和神经网络模型[13-14]。本文选择二阶RC电路作为锂离子电池等效模型。图1中,Uocv为电池开路电压;U0为电池端电压;R0为电池欧姆内阻;R1、R2和C1、C2构成的两个RC网络分别用来描述电池内部的电化学极化和浓度差极化现象。

1.2 模型参数辨识

1)实验装置

实验装置如图2所示,主要由电子负载仪(ITECH,IT8512C)、数据采集卡(NI,USB-6210)、恒温箱、示波器(泰克,MSO 2024B)以及计算机等组成。电子负载仪用于产生锂电池恒定电流或脉冲电流;数据采集卡由计算机端数据采集软件进行控制,负责采样电池端电压(电流);恒温箱用于控制锂离子电池工作时的环境温度;示波器用于观测电池电压和电流波形。

图2 实验装置实物照片

2)确定OCV-SOC关系曲线

以容量为3 000mAh的单体锂离子电池NCR18650BD为实验对象,通过放电实验获得不同SOC时的OCV。实验时,电池放置在20℃的恒温箱中,因此不考虑温度对电池参数辨识的影响。放电电流倍率选择0.5C,电池放电截止电压为2.8V。在放电实验前,先将电池充满电,静置3h后记录SOC=1时的电池开路电压,之后对电池以0.5C放电12min,静置3h后记录SOC=0.9时的电池开路电压,重复放电过程,直到记录SOC=0.1时的开路电压为止。以SOC为自变量、OCV为因变量,通过8次多项式拟合离散数据,即可得到OCV-SOC之间的关系曲线。

3)电路参数辨识

通过分析电池脉冲放电时的端电压,并结合最小二乘法得到不同SOC值时的R0、R1、R2和C1、C2参数值。脉冲放电电流倍率选择1C,从电池满电(SOC=1)开始,重复9次脉冲放电序列,每次序列放电SOC减少0.1。具体单次放电序列为:先持续放电10s,然后静置15min,再放电350s,再静置30min。

下面以分析SOC=0.8时的电池端电压响应曲线为例,给出电路参数的辨识过程。如图3所示,在电池开始放电瞬间,端电压由U1突变到U2,由于电路模型中电容电压不能突变,因此端电压的突变是由内阻R0上的压降引起,突变电压△U与内阻R0和放电电流I(=3A)成线性关系,即

R0=ΔU/I

(1)

图3 SOC=0.8时电池端电压响应曲线

由于每次脉冲放电之前都对电池进行了长时间静置,电路模型中的电容电荷为零,因此10s放电期间的电池端电压(U2→U3)可视为零状态响应,放电结束时电路已处于稳态, 即电容C1和C2充电已基本结束,电容两端电压分别近似为R1I和R2I。放电结束后电池处于静置状态,放电电流为零,静置期间的电池端电压(U4→U5)可视为零输入响应,可表示为

(2)

对电池端电压曲线(U4→U5)按照式(2)进行最小二乘拟合,便可得到R1、R2、C1和C2等参数值。表1给出了实验获得的不同SOC下的二阶RC电路参数。

表1 不同SOC下的电池等效模型电路参数

以SOC为自变量,电路各参数分别为因变量,进行数据点的多项式拟合,构建出如下的八次多项式函数

y(soc)=a8soc8+a7soc7+…+a2soc2+

a1soc+a0

(3)

最终得到的电路各参数与SOC的拟合多项式系数如表2所示。

表2 电路参数与SOC拟合的多项式系数

1.3 模型验证

在Matlab/Simulink仿真环境下建立电池仿真模型,验证二阶RC电路模型及参数辨识的准确性。模型输入为脉冲放电电流序列,具体为:从电池满电开始,按0.5C倍率先放电10s,然后静置90s,再按0.5C倍率放电710s,再静置90s,按此序列重复9次,直至电池SOC变为0.1,模型输出为电池端电压。图4给出了实际测量的电池端电压与模型输出两者对比,以及模型输出值的相对误差。

图4 脉冲放电时电池端电压实测值与模型输出值对比

从图4可以看出, 仿真模型输出与实测端电压变化趋势吻合, 绝对误差变化范围为-108~+17mV。从电池满电到接近空电整个放电过程中,仿真模型输出电池端电压最大相对误差不超过3.2%,说明电池建模与参数辨识具有较高的准确性,可用作SOC估计的等效电路模型。

2 AEKF估计电池SOC

2.1 电池模型状态方程

基于二阶RC等效电路模型,利用卡尔曼滤波算法对电池SOC进行估计时,通常以SOC、电容两端电压U1、U2为状态变量,建立的电池模型状态方程可表示为

(4)

式中:Δt为电压(电流)采样周期,U1,k、U2,k分别为极化电容C1、C2上的电压,ik为干路电流,U0,k为电池端电压,UOCV,k为开路电压。

2.2 EKF算法的SOC估计方法

EKF算法利用泰勒公式对锂电池非线性系统的状态空间方程进行线性化。非线性离散系统的状态空间方程一般为

(5)

式中:xk和yk分别表示k时刻的系统状态变量和测量变量;uk表示k时刻系统的输入变量;wk和vk分别表示过程噪声和测量噪声,为互不相关的零均值高斯白噪声;Ak是状态转移矩阵,Bk是输入矩阵,Ck是输出矩阵,Dk是前馈矩阵。

对照式(4)和(5),可定义滤波算法的状态变量xk为

xk=[SOCk,U1,k,U2,k]T

(6)

则可知

(7)

由于式(4)中的电池端电压U0,k包含UOCV,k子项,虽然UOCV,k可以表示成SOCk的8次多项式函数表达式,但它们之间却是非线性关系,因此常规卡尔曼滤波算法无法将U0,k表示为式(5)下端公式的形式。而扩展卡尔曼滤波算法的思想是将非线性问题线性化,即利用泰勒公式将UOCV,k展开成SOCk的线性表达式

(8)

(9)

基于EKF算法的SOC估计流程如下

第一步:初始化状态变量和协方差矩阵P

(10)

第二步:更新状态变量预测估计

(11)

第三步:更新状态协方差预测估计

(12)

第四步:计算卡尔曼增益

(13)

第五步:状态变量最优估计

(14)

第六步:误差协方差最优估计

Pk=(I-KkCk)Pk/k-1

(15)

第七步:判断k是否达到条件停止,如果没有,则对k累加1,并返回第二步进行循环,直至达到停止条件。

2.3 优化SOC估计的AEKF算法

AEKF算法在状态估计时,根据每一步测量数据的变化,同时估计和修正系统的过程噪声和测量噪声的统计特性。假设过程噪声wk和测量噪声vk是相互独立,qk和Qk分别为它们的估计平均值和协方差。由于噪声均值不为0,AEKF中的状态变量估计变为

(16)

误差则更新为

(17)

噪声参数估计更新为

(18)

式中:G=( ГTГ )-1ГT,dk=(1-b)(1-bk+1),i=0,1,2...,k。Г为噪声驱动矩阵,dk与遗忘因子b及k有关,是估计器的系数,通常取0.95

3 实验结果及讨论

3.1 模拟实际工况

以美国城市循环工况(UDDS)模拟实际工况,评估AEKF在复杂工况下对锂电池的SOC估计性能。通过电动汽车仿真软件(ADVISOR)得到电动汽车在UDDS下的负载电流数据。考虑到实验锂电池的极限放电电流(10A)和极限充电电流(1.5A),为保证电池安全工作, 将工况负载电流数据缩小到1/14, 此时电池执行一次工况, 电池SOC减少约0.08。为了增大SOC的估计范围,电池连续循环执行12次工况,采集模拟实际工况下的电池端电压和电流数据见图5。

图5 模拟UDDS工况下锂电池电流和电压波形

3.2 SOC估计结果

将模拟实际工况下的电池电流和电压数据作为AEKF和EKF算法的输入,算法运行后状态变量中的SOC估计结果与安-时积分法理论计算值的数据对比见图6。

图6 AEKF和EKF的SOC估计结果及相对误差对比

从图6中可以看出,锂电池SOC在0.15~1之间连续变化时,应用AEKF和EKF算法对SOC的估计结果均与理论计算值较接近,表现出较好的动态性能。从SOC估计的趋势上看,AEKF算法估计结果更加准确。为定量分析两种算法对SOC的估计精度,图6还给出了这两种算法对模拟实际工况下的电池SOC估计相对误差。随着工况循环的推进,电池SOC越来越低,AEKF和EKF算法的估计误差也呈增长趋势,当SOC下降到最小值0.15时,SOC估计相对误差达到最大,EKF算法的估计误差达到了12.8%,误差偏大可能与噪声协方差初始赋值设置不当有关,整个工况下SOC估计相对误差均方根为4.94%。而此时AEKF算法的估计误差只有3.9% (绝对误差为0.006 1), 整个工况下SOC估计相对误差均方根为1.39%。 对比相似实验对象和实验条件下的其他SOC估计方法的误差, 如文献[15]的分数阶EKF, 误差均方根为1.45%;文献[16]使用一阶RC电路模型结合AEKF,误差均方根为4.1%。这些方法的估计误差均高于本文所提方法,说明用二阶RC电路来等效电池模型比一阶电路更加准确,同时AEKF算法对系统噪声有更强的自适应性和滤波效果,更适用于复杂工况下的电池SOC估计。

4 结论

本文采用传统EKF和噪声模型实时更新的自适应AEKF算法对电池SOC进行了估计。实验结果表明,在复杂工况和系统噪声模型不确定的情况下,AEKF算法具有更高的估计精度,SOC误差均方根由4.94%下降到1.39%,表现出较好的自适应性。

猜你喜欢

端电压噪声电路
舰船通信中的噪声消除研究
基于混合储能的风力发电系统功率波动抑制策略研究
电路的保护
低电压下微能RC 脉冲电源放电波形研究
“简化法”巧解电路问题
汽车制造企业噪声综合治理实践
巧用立创EDA软件和Altium Designer软件设计电路
巧用求差法判断电路中物理量大小
超级电容储能在船舶中压直流系统能量管理中的应用
汽车变速器啸叫噪声处治