《储能科学与技术》推荐|蒋凯 等:基于动态噪声自适应无迹卡尔曼滤波的锂离子电池SOC估计

科技   2024-12-17 14:01   北京  

作者:尹康涌1(), 孙磊1, 李浩秒2(), 郭东亮1, 肖鹏1, 王康丽2, 蒋凯2    

单位:1. 国网江苏省电力有限公司电力科学研究院;2. 华中科技大学电气与电子工程学院

引用: 尹康涌, 孙磊, 李浩秒, 等. 基于动态噪声自适应无迹卡尔曼滤波的锂离子电池SOC估计[J]. 储能科学与技术, 2024, 13(11): 4065-4077. 

DOI:10.19799/j.cnki.2095-4239.2024.0546

本文亮点:1.提出了一种基于自适应无迹卡尔曼滤波(AUKF)的SOC估计方法,实现噪声特性的自适应估计,提高SOC算法的鲁棒性和估计精度;2.提出的AUKF算法锂离子电池SOC平均估计误差小于0.85%。

摘 要 锂离子电池具有无记忆效应、轻量化、环保等特点,因此常作为电动交通工具、电子设备的能源来源,并适用于各种规模的能源存储。在锂离子电池管理系统中,电池的荷电状态(state of charge, SOC)是最关键的指标之一,其准确估计对于实现电池系统的高效能量管理和优化控制至关重要。因此本文提出了一种基于动态噪声自适应无迹卡尔曼滤波的SOC估计方法。首先,通过间歇放电实验获取电池不同SOC下的开路电压,并进一步拟合得到电池的OCV-SOC曲线,接着采用二阶RC等效电路模型对锂离子电池建模,然后通过混合功率脉冲特性工况测试对电池模型参数进行辨识。由于实际应用中锂离子电池为非线性系统且SOC估计精度容易受到噪声的影响,本文在卡尔曼滤波算法的基础上采用无迹变换处理,加入噪声自适应过程,以实现噪声特性自适应估计,动态调整测量噪声与过程噪声,提高算法鲁棒性以及估计精度。最后选取DST与FUDS工况进行验证,结果表明在不同工况下动态噪声自适应无迹卡尔曼滤波算法的估计平均绝对误差、最大绝对误差以及均方根误差相较于自适应无迹卡尔曼滤波、无迹卡尔曼滤波算法均有降低,其平均绝对误差小于0.59%。本文提出的动态噪声自适应无迹卡尔曼滤波算法能够更准确地估计锂离子电池SOC。
关键词 动态噪声自适应无迹卡尔曼滤波;荷电状态;二阶RC等效电路模型;无迹卡尔曼滤波
锂离子电池以其高能量密度、长寿命和高电压等特点,在电动汽车和新能源储存领域得到广泛应用。电池管理系统(battery management system,BMS)的核心任务之一是准确估计电池荷电状态(state of charge,SOC)。对锂离子电池SOC的精准估计可以显著提升电动汽车的安全性,并为电池健康状态(state of health,SOH)估计奠定基础。目前基于模型的SOC估计方法被广泛采用。
锂离子电池模型包含外特性模型和电化学模型,基于外特性模型的SOC估算方法较为简单,计算量小,工程应用较为容易。外特性模型包括等效电路模型与开路电压-SOC模型。其中等效电路模型是最常用的方法,被广泛应用于工程实践中。该模型采用最基本的电路元件,如电阻和电容,来简化和反映电池的复杂动态响应问题,描述电池的动态特性。目前等效电路模型包括Rint模型、Thevenin模型、n阶极化模型等。Rint模型仅以欧姆内阻代表电池内阻,故计算量较小,但模型精度低;Thevenin模型以Rint模型为基础,在干路上串联一组RC网络,用来模拟电池的动态特性;n阶极化模型是在Thevenin模型的基础上串联多组RC网络,同时模型复杂度和精确度与模型阶数之间成正比关系,在阶数较低时,如果输入信号变化幅度较大,模型无法准确模拟电池动态响应,因此,在选择模型阶数时需根据具体情况权衡精度与复杂度。在RC模型的基础上,部分学者提出分数阶电池模型这一概念,将电容更换成常相位角元件,相较于RC模型,分数阶模型可以更好地反映电池动态特性。除上述模型外,当前学者致力于在等效模型中耦合力学、声学、光学等特性参数。电池在充放电过程中会导致内部结构变化,这种微小变化无法直接测量,但是可以通过超声波间接反映电池内部结构的变化,为消除微小变化带来的估计误差,有学者提出声学均一化模型来提高电池SOC估计的准确率。
大多数学者正在对基于模型的估算方法进行大量研究,包括滑模观测器(sliding mode observer, SMO)和卡尔曼滤波(Kalman filter, KF)等。其中卡尔曼滤波算法在锂离子电池SOC估计中表现出卓越的性能,其优势表现在较好的估计精度与较高的鲁棒性。卡尔曼滤波适用于各种线性系统,而电池为非线性系统,因此学者提出了扩展卡尔曼滤波(extended Kalman filter, EKF)与无迹卡尔曼滤波(unscented Kalman filter, UKF)等衍生算法,以解决电池SOC估计中的问题。由于电池SOC为非线性系统,EKF在KF的基础上采用一阶泰勒展开,将非线性系统近似为线性系统。UKF算法的提出,进一步提升了SOC估计的准确性。UKF算法相较于EKF,其关键点在于采用概率近似避免了线性近似的截断误差。在电池SOC估计方面,相较于EKF,UKF具有更高的准确率与稳定性。在传统卡尔曼滤波算法中,噪声协方差无法更新导致估计不准确,为解决这一问题,研究人员提出了一些加入噪声自适应过程的卡尔曼滤波算法,例如自适应扩展卡尔曼滤波(adaptive extended Kalman filter, AEKF)和自适应无迹卡尔曼滤波。自适应卡尔曼滤波可以动态地调整协方差矩阵,更好地适应系统变化和噪声影响,这种自适应性提升了抗噪能力与实际复杂噪声下的估计精度。部分学者考虑到以上算法需要离线参数辨识,无法动态更新电池参数而导致SOC估计精确度降低,因此提出遗忘因子递推最小二乘法(forgetting factor recursive least squares,FFRLS)对电池系统进行在线参数辨识,随后进行FFRLS-AUKF算法联合估计,以达到实时更新电池参数的目的,提高电池SOC估计精度。电池系统作为非线性系统,采用卡尔曼滤波法可能会出现噪声随机的问题,采用滑膜观测器法可能会出现估计结果抖振现象,因此部分学者提出基于博弈论的滤波法,如自适应无迹滤波算法,其关键是使估计误差的范数均低于可能存在的扰动,以此提升算法的鲁棒性。
本文首先通过间歇性放电实验测定不同SOC下锂离子电池的开路电压,为后续的锂离子电池建模和状态估计工作提供基础。在综合考虑平衡精度与计算复杂度的基础上,选择了二阶RC等效电路模型,旨在准确模拟电池动态特性的同时确保适中的计算量。由于锂离子电池SOC估计受到噪声的干扰,本文采用动态噪声自适应无迹卡尔曼滤波(dynamic noise-adaptive unscented Kalman filter,DN-AUKF)算法来估计锂离子电池SOC。在DST工况与FUDS工况下,相较于自适应无迹卡尔曼滤波与无迹卡尔曼滤波算法,该方法提高了SOC估计的精确度。

1 锂离子电池基本特性

电池的OCV是指在电池开路且处于稳定状态时,正负极之间的电势差。电池具有特定的电化学特性,OCV与荷电状态之间存在着特定的关系,对于电池静态行为的分析,OCV-SOC曲线是基础,而准确拟合OCV-SOC曲线是描述整个电池行为的前提。为了获取OCV-SOC关系曲线,本文通过对电池进行间歇放电,并在每次放电结束后搁置,记录对应SOC下的开路电压。最后,利用MATLAB对得到的OCV与SOC数据进行分段线性拟合,得到OCV-SOC关系曲线。具体的间歇放电实验步骤如下:
(1)采用1.6 A(0.5C倍率)恒流充电(截止电压4.2 V);
(2)采用4.2 V恒压充电(截止电流0.065 A);
(3)静置1 h;
(4)采用1.6 A(0.5C倍率)恒流放电12 min;
(5)静置1 h;
(6)重复步骤(4)、(5),次数为9,记录电压U。
当电池处于充放电状态时,由于极化效应的存在,电池端口电压并不等于OCV。为了获得准确的电池OCV-SOC曲线,本文采用了间歇放电的方法。具体操作为每放出10%的容量后即对电池进行搁置。由于搁置时间足够长,电池的极化效应消退,此时电池端口电压可以等效为开路电压。最终,通过这种方式,本文得到的OCV-SOC曲线如图1所示。

图1   锂离子电池OCV-SOC曲线

2 锂离子电池等效电路模型建立及参数辨识

锂离子电池等效电路模型一般利用欧姆电阻表示电池的内阻,同时串联RC回路反映电池内部极化过程。等效电路模型具有易于理解与实现、计算速度快、结构清晰等特点,因此在实际应用中被广泛采用。

2.1 二阶RC等效电路模型建立

二阶RC等效电路模型如图2所示。其中,UOC代表开路电压,UL代表电池端电压,R0表示欧姆内阻,R1R2表示极化内阻,C1C2表示极化电容。R1C1并联描述电化学极化,R2C2并联描述电池浓差极化。定义电池放电方向为正方向,根据以上参数,可以得到如式(1)的方程组。

图2   等效电路模型

(1)
根据SOC的定义,可将其表述为式(2)的形式:

(2)
式中,Qn为通过实验测定的电池容量,单位为Ah;t为采样时间;η为库仑效率,设定为100%。式(3)、式(4)为式(1)与式(2)离散化后得到的状态空间方程,其可以描述锂离子电池的外部特性与内部特性,时间常数τ1=R1C1τ2=R2C2

(3)

(4)

2.2 模型参数辨识

完整的等效电路模型不仅需要选取合适的电路模型,同时准确的参数辨识也十分重要,因此我们需要进行一系列实验,来确定上述状态空间方程中的模型参数UOCR1、C1、R2、C2。首先是通过额定电流下充放电实验确定电池容量,然后通过HPPC测试,结合数学模型与最小二乘法,对实验数据进行拟合,获取模型参数。
2.2.1 HPPC测试
HPPC测试是通过给予电池高倍率脉冲充放电电流,获取电池端口电压的阶跃响应,进而辨识等效电路模型的参数值。测试步骤如下:
(1)采用1.6 A(0.5C倍率)恒流充电(截止电压4.2 V);
(2)采用4.2 V恒压充电(截止电流0.065 A);
(3)静置1 h;
(4)采用1.6 A(0.5C倍率)恒流放电12 min;
(5)静置1 h;
(6)采用6.4 A(2C倍率)恒流放电10 s;
(7)静置40 s;
(8)采用6.4 A(2C倍率)恒流充电10 s;
(9)静置40 s;
(10)重复步骤(4)~(9),若电压低于截止电压2.5 V,则跳出循环进入步骤(11);
(11)静置1 h;
(12)采用1.6 A(0.5C倍率)恒流放电(截止电压2.5 V),记录电压U与电流I。
分析与拟合上述实验获得的电压与电流数据进行参数辨识。
2.2.2 等效电路参数辨识
锂离子电池二阶RC等效电路模型中R1、C1、R2、C2可通过HPPC测试的结果进行辨识,对放电和静置时电压响应曲线进行分析,可以得到等效电路各个元器件的特性。锂离子电池HPPC测试电流曲线及电压曲线如图3所示。

图3   HPPC测试下的电流与电压曲线:(a) 电流曲线;(b) 电压曲线


锂离子电池HPPC测试单个循环内电流曲线及电压曲线如图4所示。

图4   HPPC测试单个循环内电流与电压曲线:(a) 电流曲线;(b) 电压曲线


2.2.3 欧姆内阻的参数辨识
AB段,电池从静止状态突然加入负载,因为有欧姆内阻的存在,电池端电压会迅速下降,而欧姆内阻大小在充电与放电情况下不相同,所以需要分别计算充电与放电时的欧姆内阻,然后取平均值。式(5)为放电时的欧姆内阻,利用AB段、CD段电压的突变值,以及HPPC测试中设定的电流值计算;式(6)为充电时的欧姆内阻,利用EF段、GH段电压的突变值,以及HPPC测试中设定的电流值计算。

(5)

(6)
式中,ID为脉冲放电电流;IC为脉冲充电电流;R0D为放电情况下的欧姆内阻;R0C为充电情况下的欧姆内阻。欧姆内阻的辨识结果如图5所示。

图5   R0参数辨识结果
2.2.4 极化内阻与极化电容的参数辨识
电池的零输入响应可表述为式(7)的形式;

(7)
BC段,电池内部的极化电压逐渐增大,采用等效电路中RC网络的充电过程进行模拟;DE段,电池内部的极化电压逐渐减小,采用等效电路中RC网络的放电过程进行模拟。考虑到阶跃响应的完整性,本文采用电池脉冲充/放电后的零输入响应进行模拟,具体的辨识方法如下。
通过MATLAB中cftool拟合工具,拟合DE段、HI段的电压曲线,拟合方程如式(8)所示,其中a、b、c、m、n为所求系数。

(8)
因为充电情况下与放电情况下参数值不同,对所求得的系数取平均值后,可以得到如下关系。

(9)
根据式(9)所示关系进行参数辨识。极化内阻与极化电容的参数辨识结果如图6所示。

图6   极化内阻与极化电容辨识结果:(a) R1(b) R2(c) C1(d) C2

3 锂离子电池SOC估计

锂离子电池被视为一种非线性系统,其输入为负载电流,而输出则为端口电压。然而,锂离子电池荷电状态无法直接通过测量获取。因此,为了解决这一问题,常采用状态估计算法获取电池荷电状态。

3.1 动态噪声自适应无迹卡尔曼滤波

由于电池系统为非线性系统,研究人员一般采取EKF算法,通过泰勒展开将非线性系统线性化,与EKF算法相比,本文选取的UKF算法通过无迹变换这一过程将非线性系统线性化,其主要步骤包括:选择sigma点、sigma点传播、均值和协方差的更新。这一过程避免了传统线性化方法的误差,使UKF算法在预测SOC方面更准确。UKF算法的关键是按规则选择采样点,在原始分布中按照特定规则选取一些点,这些点的均值和协方差与目标高斯分布的均值和协方差相等。然后,将这些点代入非线性函数中,得到一系列非线性函数值点集。基于这些点集,可以计算出变换后的均值和协方差。
UKF算法在SOC估计中,噪声参数为固定值,而锂离子电池在实际应用中环境会不断发生变化,为解决这一问题,本文提出的DN-AUKF算法在UKF算法的基础上加入自适应噪声过程,自适应算法对测量噪声和过程噪声协方差进行更新,因此DN-AUKF算法表现出较高的鲁棒性和精度。DN-AUKF具体实施步骤如下。
(1)初始化
设定状态估计与误差协方差阵的初始值:

(10)
初始化过程噪声为Q0,测量噪声的协方差为R0
(2)时间更新
利用k-1时刻得出的后验估计值,在其附近生成sigma点集

(11)
式中,n是状态向量的维度,下标i表示矩阵平方根的第i列。此外,参数,其中α是决定sigma点扩散程度的比例因子,κ是一个次要调节参数且通常设为0[2]β为待选参数,可以将均值与协方差的权值Wm 与Wc计算为:

(12)
将2n+1个sigma点输入到状态方程中:

(13)
通过这些新的采样点可计算出先验状态的估计与误差协方差:

(14)
(3)测量更新
与步骤(2)过程相似,利用先验估计生成sigma点集

(15)
将2n+1个sigma点输入到输出方程中:

(16)
计算系统预测输出的均值:

(17)
以及预测输出值的协方差x-y互相关协方差

(18)
由此可得卡尔曼增益矩阵:

(19)
计算出k时刻的后验状态估计与误差协方差:

(20)
(4)噪声自适应更新
采用基于输出残差序列的协方差匹配法来更新噪声协方差矩阵。残差协方差矩阵Cv,k通过输出残差序列在长度为L的移动窗口计算:

(21)

(22)
Qak时刻的过程噪声协方差矩阵,Rk为测量噪声的协方差矩阵。

(23)
Qk为更新后k时刻的过程噪声协方差矩阵,Qk-1k-1时刻的过程噪声协方差矩阵,p为动态噪声权重参数。
过程噪声协方差矩阵Qk与测量噪声协方差矩阵Rk将作为参数代入k+1时刻进行计算,同时后验状态估计与误差协方差也将作为k+1时刻的参数,用于在其附近生成sigma点集,相较于AUKF算法,DN-AUKF算法在SOC估计流程中对自适应噪声过程进行改进。最后循环步骤(2)~(4)完成DN-AUKF算法。

3.2 DST放电工况验证

DST工况测试可以有效模仿锂电池动态充放电过程,因此常被用于对锂离子电池进行工况测试。DST工况测试的实验步骤如下:
(1)采用1.6 A(0.5C倍率)恒流充电(截止电压4.2 V);
(2)采用4.2 V恒压充电(截止电流0.065 A);
(3)静置1 h;
(4)按照预先设置的工步不断对电池施加DST脉冲,若电压低于截止电压2.5 V,则跳出循环进入步骤(5);
(5)静置1 h;
(6)采用1.6 A(0.5C倍率)恒流放电(截止电压2.5 V),记录电压U与电流I。
完整DST测试中锂离子电池的电流和端电压曲线如图7(a)和(b)所示,单个DST循环中电流和电压的曲线如图7(c)和(d)所示。观察图7(c),一个周期内锂离子电池多次经历充放电的变化。输入电流的值不断变化,有效模拟锂电池动态充放电过程,可以有效验证算法的精确度和稳定性。

图7   DST测试下的电流与电压曲线:(a) 电流曲线;(b) 电压曲线;(c) 单个DST循环内的电流曲线;(d) 单个DST循环内的电压曲线


DN-AUKF算法的初始值则设置如下:

(24)
在DST工况下,SOC估计结果如图8所示,估计结果的分析对比如表1所示。SOC初始值为1时DN-AUKF估计结果平均绝对误差为0.35%,而AUKF平均绝对误差为0.48%、UKF 平均绝对误差为1.52%。DN-AUKF估计结果相比AUKF平均绝对误差降低27.08%,反映模型稳定性的均方根误差降低23.21%。从误差图中可以看出,UKF估计值在真实值上下波动,而加入自适应噪声过程后,AUKF估计值误差波动较小;对自适应噪声过程进行改进后,SOC估计值更接近真实值,说明文中提出的DN-AUKF算法估计准确度更高。

图8   DST工况下SOC估计结果:(a) SOC估计结果;(b) SOC估计误差


表1   DST工况下数据对比


3.3 FUDS放电工况验证

FUDS工况测试的实验步骤如下:
(1)采用1.6 A(0.5C倍率)恒流充电(截止电压4.2 V);
(2)采用4.2 V恒压充电(截止电流0.065 A);
(3)静置1 h;
(4)按照预先设置的工步不断对电池施加FUDS脉冲,若电压低于截止电压2.5 V,则跳出循环进入步骤(5);
(5)静置1 h;
(6)采用1.6 A(0.5C倍率)恒流放电(截止电压2.5 V),记录电压U与电流I。
完整FUDS测试中锂离子电池的电流和端电压曲线如图9(a)和(b)所示,单个FUDS循环中电流和电压的曲线如图9(c)和(d)所示。观察图9(c),单个FUDS测试循环内电流的值相较于DST测试变化幅度较大,一个周期内锂离子电池多次经历充放电的转换。

图9   FUDS测试下的电流与电压曲线:(a) 电流曲线;(b) 电压曲线;(c) 单个FUDS循环内的电流曲线;(d) 单个FUDS循环内的电压曲线

在FUDS测试下,SOC估计结果如图10所示,估计结果的分析对比如表2所示。DN-AUKF估计结果平均绝对误差为0.59%,而AUKF平均绝对误差为1.16%、UKF平均绝对误差为2.88%。DN-AUKF估计结果相比AUKF平均绝对误差降低49.14%,反映模型稳定性的均方根误差降低43.65%,说明文中提出的DN-AUKF算法估计准确度更高。

图10   FUDS工况下SOC估计结果:(a) SOC估计结果;(b) SOC估计误差

表2   FUDS测试下数据对比


为验证算法鲁棒性,在FUDS测试下,给定 SOC初始值为0.8,SOC估计结果如图11所示,估计结果的分析对比如表3所示。DN-AUKF估计结果平均绝对误差为0.58%,而AUKF平均绝对误差为1.11%、UKF平均绝对误差为2.91%。DN-AUKF估计结果相比AUKF平均绝对误差降低47.75%,反映模型稳定性的均方根误差降低43.09%。

图11   FUDS工况下SOC估计结果:(a) SOC估计结果;(b) SOC估计误差

表3   FUDS测试下数据对比

表4中列出本论文所提方法与不同文献中所提方法的SOC估计结果的分析对比,包括不同算法在不同测试工况下的平均绝对误差与均方根误差,从表格数据中可以看出,UKF算法在电池SOC估计方面明显优于EKF算法,在加入自适应噪声过程后,AUKF与AEKF算法的准确性与稳定性均有较大提升。本文提出的DN-AUKF在AUKF算法上对自适应噪声过程进行改进,提升了算法准确性与鲁棒性。

表4   SOC估计方法结果对比

4 总 结

本研究提出了一种基于DN-AUKF的锂离子电池SOC估计方法。首先,我们选取了二阶RC等效电路模型作为锂离子电池的等效模型,并通过混合功率脉冲特性工况测试对电池参数进行辨识,通过间歇放电试验测定不同SOC下锂离子电池的开路电压。由于电池系统为非线性系统且估计容易受到噪声的影响,因此我们采用无迹变换将系统线性化处理,然后对自适应噪声过程进行改进,以减少噪声对估计值的影响并提高算法鲁棒性。相较于使用AUKF进行电池SOC估算的对照实验,本文提出的动态噪声自适应无迹卡尔曼滤波算法在DST测试下绝对误差在0.96%以内,在FUDS测试下绝对误差在1.28%以内,表现出更好的估计准确度与鲁棒性。

第一作者:尹康涌(1992—),男,硕士,工程师,从事电化学储能技术研发,E-mail:yinkangyong@163.com;

通讯作者:李浩秒,讲师,研究新型电化学储能技术,E-mail:lihm@hust.edu.cn。

本刊推荐

(点击图片可跳转到相应文章合集)

邮发代号:80-732

联系热线:010-64519601/9602/9643

投稿网址:http://esst.cip.com.cn/CN/2095-4239/home.shtml

储能科学与技术
中文核心、科技核心和cscd核心期刊,化学工业出版社和中国化工学会主办,主编黄学杰研究员。投稿及下载官网:http://esst.cip.com.cn/CN/2095-4239/home.shtml;欢迎给公众号投稿
 最新文章