APP下载

基于双自适应卡尔曼滤波的锂电池状态估算

2022-02-19黄鹏超鄂加强

储能科学与技术 2022年2期
关键词:卡尔曼滤波矩阵精度

黄鹏超,鄂加强

(1柳州职业技术学院汽车工程学院,广西 柳州 545616;2湖南大学机械与运载工程学院,湖南 长沙 410082)

交通电气化和可再生能源整合是缓解全球变暖和保护环境的可行途径,储能装置在确保系统性能、耐久性和安全性方面有至关重要的作用。目前,可靠且价格合理的储能技术已取得了实质性进展[1]。锂离子电池(LIB)由于其能量密度高、设计灵活和寿命长等优点,目前已成为商业用途的主要候选电池。在实际应用中,为了提供高输出电压和储存足够的能量,通常需要由大量电池单元组成的电池系统。因而常部署电池管理系统(BMS)以确保系统的最佳性能和操作安全,其中,荷电状态(SOC)估计监测尤为重要。但由于电池内部是一个非线性系统,SOC 无法直接获得,因此准确估计SOC 一直是研究热点之一[2]。

SOC估计方法包括库仑计数法、开路电压法、神经网络法和滤波法。库仑计数法[3]是通过电池测量的电流,利用积分法获得SOC,该方法简单且易于实现。然而该方法易受传感器设备精度、初始SOC不准确、外界噪声和温度等因素的影响,导致估计误差不断累积、降低精度。开路电压法[4]虽然可以很好地完成SOC 估计,但需要电池长时间静置,不适于车载SOC 估计,只适用于SOC 标定。此外,可通过基于人工神经网络(ANN)[5-6]、支持向量回归(SVR)模型[7]等建立SOC 及其影响因素之间的复杂非线性关系,然而,这些智能模型高度依赖于训练数据的质量和数量,对隐藏数据集的外推能力较差。相比之下,基于模型的SOC 估计方法因其具有闭环和动态的优点而受到了极大地关注。基于此,卡尔曼滤波得到了很好地发展[8]。文献[9]利用扩展卡尔曼滤波(EKF)和递推最小二乘法(RLS)相结合来估算SOC,获得了较好的精度。文献[10]采用无迹卡尔曼滤波(UKF)算法结合高斯回归算法获得SOC 估计值,相比EKF,SOC 估计精度得到了明显提升,但未考虑模型参数对估计结果的影响。

为了提高SOC 的估计精度,本工作首先建立了基于Thevenin 等效电路模型,并利用递推最小二乘法(FFRLS)获得了电池的各参数。但由于在参数辨识中易受到环境等外界因素的干扰,提出了偏差补偿的方法来获得高精度的电池参数,并利用AUKF 实现SOC 估计。同时,为了减小因测量误差和模型误差对估计结果的干扰,及电池在放电过程中内阻发生改变对SOC 估计的影响,提出了一种改进的双自适应UKF算法。最后将改进的AUKF和双自适应UKF 方法分别和改进的参数辨识方法相结合来估计SOC和电池端电压。

1 电池模型和参数辨识

1.1 电池模型

通过文献[11]可知,为了更好地说明基于等效电路模型的SOC 估计方法,本文建立了二阶戴维南等效电路模型。电路模型结构如图1所示。

图1 二阶戴维南等效电路模型Fig.1 Second order Thevenin equivalent circuit model

图1中,Uoc表示电池的开路电压、UL表示电池的端电压;Ro表示电池内阻;Rd和Rc分别表示电池内部的电化学极化电阻和浓差极化电阻;Cd和Cc分别表示电池内部的电化学极化电容和浓差极化电容,iL表示总电流;id和ic分别表示Rd和Rc两端的电流。根据基尔霍夫定律可将戴维南模型的状态描写如式(1)所示

1.2 电池模型的参数辨识

锂离子电池在实际运行中,由于采集设备、温度、环境噪声等外界因素的干扰,使得电池测量参数发生变化,因此需对参数实时辨识,为后文的SOC估计做铺垫。首先将式(1)离散化

式中,s表示拉普拉斯算子。利用双线性变换式(3)代入(2)中可简化为式(4)

整理后,可得离散化后RLS的输出矩阵yk、参数矩阵θ和数据矩阵φ,定义如下

其中a=[a1,a2,a3,a4,a5]为方程系数。FFRLS算法的估计过程包括两个步骤:状态获取和估计更新。状态获取是将当前的状态值作为下一时刻的先验值;而估计更新步骤是反馈观测值以纠正偏差的过程。

电池在数据采集过程中,由于采集设备等外界因素的干扰,电流和电压在采集过程中会受到噪声的干扰,降低采集精度,从而影响影响辨识精度,导致最终的SOC 估计值不准确。因此,本工作在原有辨识方法的基础上添加偏差补偿,来削弱不确定噪声的影响。具体补偿流程如表1所示。

表1 基于偏差法的参数辨识过程Table 1 Parameter identification process based on BCRLS

2 基于双自适应无迹卡尔曼滤波的SOC估计

2.1 自适应无迹卡尔曼滤波算法

扩展卡尔曼滤波(EKF)是对方程展泰勒级数,从而将非线性模型转变为线性模型,但在计算过程中需要计算相应的雅克比矩阵,不仅使计算困难,而且忽略了高阶项,从而导致SOC的估计结果不准确。而UKF利用无迹变换(unscented transformation,UT)的方法对状态向量无限逼近,且不需要计算复杂矩阵,因此可以提高估算的精度。图1中戴维南模型的状态方程和观测方程定义如式(13)所示。

式中,x=[Ud,Uc,SOC]T;Δt为采样时刻;τ1=RdCd和τ2=RcCc,表示模型的时间常数;ω(t)和v(t)分别表示过程噪声和测量噪声。

将式(13)离散化得到AUKF方程的一般表达式

式(14)的各系数计算如下

因此,基于AUKF 算法的SOC 估计步骤如下所示。

步骤2:导入Sigma点

步骤3:计算采样点和相应权重

步骤4:时间更新

步骤5:测量和协方差更新

步骤6:计算卡尔曼增益

步骤7:更新状态向量和相应的协方差矩阵

步骤8:自适应过程

从式(14)可以看出,在电池放电过程中,电池的内阻会随着SOC 的减小而发生变化,因此为了实现更好的SOC 估计,建立基于欧姆内阻和端电压的状态空间方程,定义如下

式中,m(t)和n(t)分别表示噪声估计过程中的过程噪声和测量噪声。因此离散化式(26)

式中,AR,k= 1,CR,k=-I,基于双自适应卡尔曼滤波滤波算法如下。

步骤1:初始化协方差矩阵QR,k和LR,k;

步骤2:将式(21)估计k时刻的SOC 代入到OCV曲线中,获得相应的开路电压;并代入式(25)利用自适应AUKF算法获得k时刻的内阻R;

步骤3:将估计的内阻代入到式(14)中得到k+1时刻的状态估计值;

步骤4:重复步骤2~步骤3,即可获得最终的SOC估计值。

2.2 改进的无迹卡尔曼滤波算法

为了减小AUKF 算法在SOC 估计时因环境等外部因素的干扰,本工作提出了一种改进的AUKF算法。根据式(22)可得,新息序列不包括上一时刻的信息,可能会影响卡尔曼增益值Kk。因此,本文拓展新息ek和卡尔曼滤波增益Kk。利用新息来设置相应的权重,从而提高AUKF的估计性能。改进的新息序列e(m,k)和卡尔曼增益K*(m,k)分别定义如下

将上一时刻的新息加入到原有新息中,因此状态估计表达式(21)可以定义为

因为新息在不同时刻是不同的,因此文中引入权重向量来更新新息序列,基于权重向量的新型序列如式(30)所示

式中,β为权重向量,利用高斯函数计算每一个时刻的权重向量,如式(31)所示

由于标准算法中每个新息的权重等于1,可以将所有新息的权重之和作为新息长度m,因此将新息权重取为

综上分析,基于改进的双自适应UKF 算法流程图如图2所示。

图2 基于改进的双自适应卡尔曼滤波算法的SOC估计流程Fig.2 SOC estimation process based on improved double adaptive Kalman filter algorithm

3 实验验证

为了检验所提算法的估计性能,选取容量为2.0 A·h的NCM电池作为测试对象,在北京动态应力测试工况(beijing dynamic stress test,BJDST)工况下采集10314个数据。为了减小因电池本身对实验结果可能造成的影响,先将锂离子电池充分放电后消除电池的极化反应,然后静置一段时间,再利用恒流恒压工况将电池充满后,并静置一段时间。然后放入电池平台系统加载实验工况进行测试。在此次实验中,电池在BJDST 工况循环下采集的端电压值和SOC值如图3所示。

图3 BJDST工况测量的电压值和SOC值Fig.3 Voltage and SOC measured under BJDST working condition

为了验证文中所提基于偏差补偿参数辨识方法的有效性,利用FFRLS辨识法和BCRLS辨识法在BJDST 工况下进行在线参数辨识,并结合AUKF算法、改进的AUKF算法和双自适应UKF算法来分别估计SOC 值,各估计结果如图4 所示。为了评价模型的估计性能,本工作分别采用均方根误差(RMSE)和最大绝对误差(MAE)两种指标来评价模型的估计能力,各评价指标分别定义如下

式中,y*表示算法的估计值;y表示为实际值。基于不同算法估计的端电压和SOC 相关统计信息如表3 所示。从图4 可以得知,基于3 种不同估计方法估算的SOC 和端电压都可以很好地收敛到实际值。在使用相同的AUKF 算法估计时,基于BCRLS 算法辨识得到的参数可以有效提高端电压的估计精度。基于AUKF-BCRLS 算法估计的端电压最大误差MAE=3.23%V,基于AUKF-FFRLS 算法估计的最大误差为MAE=4.12%V。相比传统的辨识参数方程,本工作的辨识参数方法可以有效地提高端电压估计精度(提升了21.6%),而且基于AUKF-BCRLS 估计的端电压误差总体控制在3%V以内,表明所提算法可以减小因不确定性因素造成的误差。

图4 电压和SOC的估计结果和相应误差Fig.4 Estimation results and corresponding errors of voltage and SOC

除此之外,基于AUKF-FFRLS 估计的SOC 的最大误差MAE=3.11%,均方根误差RMSE=2.17%。基于AUKF-BCRLS 估计的SOC 最大误差MAE=2.89%,均方根误差RMSE=2.08%。相比AUKF-FFRLS 算法,改进的辨识参数也可以提高SOC 的估计精度,估计误差和模型的稳定性参数分别提高了7.1%和4.1%。

表2 BJDST工况下的端电压和SOC估计值Table 2 Estimated terminal voltage and SOC under BJDST working condition

为了减小AUKF 算法在SOC 估计时因外界环境干扰造成的误差,本工作改进了AUKF算法。基于改进的AUKF-BCRLS算法估计的端电压和SOC最大误差分别为2.94%V 和2.42%,相比未改进的AUKF算法,估计精度分别提高了10.5%和16.3%。考虑到电池放电过程中,内阻的变化也会对SOC估计结果造成影响。在改进AUKF 算法的基础上,提出了利用双卡尔曼滤波对SOC进行估计。从图4(d)可知,SOC 估计的最大误差为1.45%,模型的稳定性参数为1.52%,相比改进的AUKF-BCRLS 模型,SOC 估计精度提高了40.1%,模型的稳定性参数提高了19.6%,实验结果表明,虽然改进的AUKF-BCRLS模型可以提高SOC的估计精度,但考虑到电池内阻对估计结果的影响,利用双AUKF算法得到的SOC 估计结果更为准确,模型的稳定性也得到了极大地提升,实验结果进一步验证了所提模型的优越性。

4 结 论

锂离子电池的状态估计是评价储能系统的重要指标。它为复杂能源系统的能源部署、负载平衡和故障预测提供了必要的基础。为了提高SOC 的估计精度,本工作首先建立了戴维南模型,并利用带有遗忘因子BCRLS 对电池模型进行参数辨识。针对传统AUKF算法的缺点,文中提出了带有权重向量的新息和卡尔曼的增益来更新模型的状态向量。同时,在电池放电过程中,由于电池性能衰减,内阻的变化也会对SOC 估计结果产生影响。因此在改进的AUKF算法的基础上,文中提出了双自适应UKF 算法来估计SOC。实验结果表明,所提算法不仅可以提高模型的参数辨识精度,还可以提高SOC 估计的准确性和稳定性,模型的估计能力控制在2%以内,验证了所提算法的有效性和精度性。

符号说明

Uoc—— 开路电压

Rd—— 电化学极化电阻

Rc—— 浓差极化电阻

Cd—— 电化学极化电容

Cc—— 浓差极化电容,

R0—— 电池内阻;

iL—— 总电流;

UL—— 电池两端的端电压;

id和ic—— 分别为Rd和Rc两端的电流

s—— 拉普拉斯算子

yk—— 输出矩阵

θ—— 参数矩阵

φ—— 数据矩阵

Δt—— 采样时刻,

x—— 状态向量

τ1和τ2—— 模型的时间常数

ω(t) —— 过程噪声

v(t) —— 测量噪声

χi—— sigma点

Pk|k-1—— 时间更新的协方差矩阵

γi,k|k-1—— 测量值

Pyˉk,yˉk—— 自协方差矩阵

Pxˉk,yˉk—— 互协方差矩阵

Kx,k—— 卡尔曼增益

x^x,k—— 状态向量

Px,k+1—— 状态向量的协方差矩阵

ek—— 新息

Qx,k—— 过程噪声协方差矩阵

Lx,k—— 观测噪声协方差矩阵

e(m,k) —— 改进的新息序列

K*(m,k) —— 改进的卡尔曼增益

β—— 权重向量

β^ —— 新息权重之和

猜你喜欢

卡尔曼滤波矩阵精度
基于不同快速星历的GAMIT解算精度分析
数字化无模铸造五轴精密成形机精度检验项目分析与研究
基于深度强化学习与扩展卡尔曼滤波相结合的交通信号灯配时方法
基于无迹卡尔曼滤波的室内定位系统
卡尔曼滤波在农电网系统中的研究分析
卡尔曼滤波在雷达目标跟踪中的应用
卡尔曼滤波在雷达目标跟踪中的应用
近似边界精度信息熵的属性约简
多项式理论在矩阵求逆中的应用
矩阵