基于ASRCKF 算法的锂电池SOC 估算

2021-04-30 08:23浩,段
机械设计与制造 2021年4期
关键词:平方根卡尔曼滤波容积

朱 浩,段 洋

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

1 引言

锂离子电池因为其能量密度高、安全性好、自放电率低和循环寿命长等优点被广泛用于电动汽车和混合动力汽车。电池荷电状态(SOC)指电池内部存储的剩余能量,准确的估算SOC 可以防止过充电或者过放电的发生,同时可以延长电池的使用寿命。但是由于SOC无法直接测量获得,并且SOC 与放电倍率、环境温度和循环次数等因素有关,所以要获得准确的SOC 值是非常困难的。为了准确估计SOC 的值,国内外研究人员提出了很多计算方法,例如,安时积分法[1]、开路电压法[2-4]、人工神经网络法和卡尔曼滤波算法[5-8]。卡尔曼滤波算法因其具有闭环和实时的优点成为了锂电池SOC 估算的研究热点,其衍生算法:扩展卡尔曼滤波、无迹卡尔曼滤波、容积卡尔曼滤波近年来被广泛应用于SOC 估算。针对平方根容积卡尔曼滤波估算SOC 时需要准确获得系统状态及测量噪声协方差这一缺陷,将基于电池模型输出电压残差序列的协方差匹配思想引入平方根容积卡尔曼滤波,提出自适应平方根容积卡尔曼滤波算法(ASRCKF)。

2 电池模型参数辨识

卡尔曼滤波算法建立在目标系统的状态空间方程之上,并且算法的滤波效果好坏很大程度上取决于系统模型的精度。因此,对用于SOC 估算的电池模型有两点要求。首先要能较为完整的反应锂离子电池的动态特性。其次,要能从模型较为容易的推导出空间状态方程。在满足这两点要求的情况下最为广泛使用的是戴维南等效电路模型[9],如图1 所示。

图1 戴维南等效电路模型Fig.1 Thevenin Equivalent Circuit Model

在对戴维南等效电路模型的参数进行辨识之前,需要推导出本文采用的如图1 所示的戴维南等效电路模型的数学形式,根据基尔霍夫定律,从图1 所示的电池模型中可以得到式(1)~式(2)。

3 自适应平方根容积卡尔曼滤波

通常非线性离散系统的状态方程和测量方程可表示为:

式中:xk—k时刻系统的状态量;uk—k时刻系统的输入量;yk—k时刻系统输出量;f(xk,uk)—非线性状态传递函数;g(xk,uk—非线性测量函数;wk—随机过程噪声;νk—影响系统输出测量值的传感器噪声[10]。基于自适应平方根容积卡尔曼滤波估算锂电池SOC 的步骤如下:

(1)初始化状态量x^0=[SOC;Up],误差协方差P0,过程噪声和测量噪声Q,R。

(2)计算容积点

在传统的SRCKF 算法中,系统噪声和测量噪声都被认为是恒定的。然而,系统噪声和测量噪声与传感器的测量精度息息相关,由于传感器漂移引起的随机干扰以及由锂离子电池的时变特性引起的参数不确定导致实际电池系统使用环境中系统噪声以及测量噪声是不断变化的。通常,系统和测量噪声的初值通过经验获取,并且需要花费一定时间去调节参数以获得最优的滤波效果。另一方面,固定的噪声值会导致算法对系统状态量的估算出现偏差,甚至失效。因此,为了在算法迭代过程中实时获得准确的系统及测量噪声协方差,提高算法的性能,将基于电池模型输出电压残差序列的协方差匹配思想引入SRCKF,提出基于残差序列的自适应平方根容积卡尔曼滤波算法,噪声自适应方程见下式[11]。

4 实验及结果分析

选择18650 型锂离子电池作为实验对象,该电池额定容量为2.2Ah,额定电压为3.7V,采用单体充放电机对电池进行充放电测试,并对电池电压进行实时检测,母线电流及电量则通过单体充放电机内部的高精度电流传感器检测和计算,所有数据都会被记录在上位机中,实验环境,如图2 所示。为了验证算法在实际道路工况下的精度,对电池进行了UDDS 工况测试。UDDS 工况包含车辆在城市道路环境下可能遇到的各种情况,比如怠速、匀速、加速和减速。因此,UDDS 工况已成为整车性能测试的非常重要工况之一。由于实验条件限制,首先通过advisor2002 对UDDS工况进行软件模拟,然后将模拟得到的电流数据根据电池容量等比例缩小即可得到本实验充放电电流数据,如图3 所示。相应的电池电压变化数据,如图4 所示。电池数据的采样频率为1Hz,放电为负,充电为正。设置算法初值x^0=[1;0];P0=[0.1,0;0,0.1];Q=[5e-5,0;0,5e-5];R=1,在Matlab2014b 环境下对算法进行仿真,结果,如图5 所示。从图5 中可以看出,SRCKF 算法和ASRCKF算法都可以很好的估算锂电池SOC,不过ASRCKF 算法的估算曲线更接近真实SOC 曲线。SOC 误差的对比图,如图6 所示。从图6 可以更明显的看出ASRCKF 算法的优越性,在仿真初期,由于系统状态及测量噪声的初始值不准确,导致SRCKF 算法产生的误差突增,然后在算法的修正下缓慢下降,在仿真中期达到理想值;而ASRCKF 算法在每次迭代过程中都会自适应更新状态和测量噪声,因此,不准确的噪声初值对算法的估算效果影响不大,在仿真初期误差即达到了理想值。这两种算法的误差分析结果,ASRCKF 算法较传统SRCKF 算法精度有明显提高,传统SRCKF 算法估算SOC 的均方根误差为3.41%,而这里提出的ASRCKF 算法估算误差不到1%,仅为0.97%,如表1 所示。更重要的是,ASRCKF 在噪声初值不准确的情况下表现出的稳定性和适应能力更强。

图2 电池实验环境Fig.2 Battery Experiment Environment

图3 DST 电流样本数据Fig.3 Current Sample Data Under DST

图4 DST 电压样本数据Fig.4 Voltage Sample Data Under DST

图5 SOC 算法仿真对比Fig.5 Comparison of SOC Algorithm Simulation

图6 SOC 估算误差对比Fig.6 Comparison of SOC Estimation Error

表1 SOC 估算误差对比Tab.1 1Comparison of SOC Estimation Error

5 结论

(1)当系统状态及测量噪声初值不准确时,传统SRCKF 算法在UDDS 工况下估算SOC 的均方根误差为3.41%,最大误差达到了6.97%;而这里提出的ASRCKF 算法产生的均方根误差仅为0.97%,最大误差为3.08%。(2)为了将不准确噪声初值带来的SOC 估算误差修正至1%以内,传统SRCKF 算法需要接近600 个步长,而ASRCKF 算法仅需要100 个步长。(3)通过对算法在精度以及收敛速度方面的定量分析,这里提出的自适应平方根容积卡尔曼滤波算法对不准确的噪声初值具有更好的适应能力,同时具有更高的估算精度,考虑到电动汽车复杂的运行环境,ASRCKF 算法具有很好的应用前景。

猜你喜欢
平方根卡尔曼滤波容积
怎样求酱油瓶的容积
“平方根”学习法升级版
平方根易错点警示
帮你学习平方根
如何学好平方根
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
巧求容积
截断的自适应容积粒子滤波器
不同容积成像技术MR增强扫描对检出脑转移瘤的价值比较
基于模糊卡尔曼滤波算法的动力电池SOC估计