基于多重渐消因子卡尔曼滤波锂电池荷电状态估计方法
技术领域
本发明涉及基于多重渐消因子卡尔曼滤波锂电池荷电状态估计方法,属于电池荷电状态估计技术领域。
背景技术
随着新能源汽车发展,能实现对汽车上动力电池有效管理的电池管理系统成为了新能源汽车上的核心技术所在,而对电池的荷电状态(State of Charge,SOC)的估计是电池管理系统的首要工作。目前主流的安时估计法受限于累积误差的影响,开路电压法又只能在静态的环境下使用,神经网络法受限于计算成本以及训练方法,而扩展卡尔曼滤波算法凭借着闭环、在线估计等优势得到了发展。然而EKF(Extended Kalman Filter,扩展卡尔曼滤波)算法也面临着收敛速度慢以及估计精度不高的问题,文献“Strong trackingfiltering of nonlinear time-varying stochastic systems with coloured noise:application to parameter estimation and empirical robustness analysis”(Zhou DH,Frank P M,International Journal of Control,1996,65(2):295-307)中提出了强跟踪滤波算法,通过在协方差更新矩阵中引入渐消因子以使得算法获得更好的估计跟踪性能和鲁棒性能。论文“基于强跟踪卡尔曼滤波的电池SOC估计”(赵亚妮,沈阳工业大学学报,2018(2):192-197)中利用强跟踪EKF算法实现对电池的SOC估计,对比EKF算法提高了估计精度。但系统的不同状态的变化速率并不相同,仅采用单一渐消因子无法保证对每个变量都能实现较好的跟踪。
针对以上问题,提出了一种带多重渐消因子的强跟踪卡尔曼滤波算法,该算法通过引入多重渐消因子对不同状态以不同的速率进行渐消跟踪,以达到更优的估计性能。并通过结合所建立的动态等效电路模型,在DST(Dynamic Stress Test,动应力测试)工况下和不同初始误差下,对比了EKF和STEKF算法的估计性能,验证了所提算法的有效性。
发明内容
本发明的目的是为了解决上述现有技术存在的收敛速度慢,估计误差较大等问题,进而提供基于多重渐消因子卡尔曼滤波锂电池荷电状态估计方法。
本发明的目的是通过以下技术方案实现的:
基于多重渐消因子卡尔曼滤波锂电池荷电状态估计方法,包括以下步骤:
步骤一:电池模型建立
采用Thevenin模型建立等效电路模型,由基尔霍夫定律推导等效电路模型的电压电流方程;结合实际容量与放电倍率的关系,定义安时法的SOC方程;通过离散化电压电流方程和SOC方程得到状态方程以及测量方程;测量方程中包括开路电压关于SOC的非线性函数;
步骤二:模型的参数辨识
通过不同放电倍率下实际容量与其关系进行二次多项式拟合得到实际容量和放电倍率的关系;
从充电和放电两个方向对开路电压进行获取,利用最小二乘法法对充电和放电两个方向的开路电压值数据进行多项式拟合;
通过间隔放电实验,测试不同SOC处和不同放电倍率对模型参数的影响,并利用电池在脉冲下的激励响应特性对模型参数进行离线辨识;
步骤三:扩展卡尔曼滤波
采用泰勒展开并略去二阶及以上高阶项方法对非线性系统状态空间模型进行线性化处理,得到线性化的状态空间方程,利用线性化的状态空间方程得到扩展卡尔曼滤波的具体实现过程,对状态和协方差的初值进行初始化,状态和协方差的一步预估以及卡尔曼增益、状态和协方差的更新;
步骤四:带多重渐消因子强跟踪卡尔曼滤波
在扩展卡尔曼滤波协方差的更新方程式中加入一个渐消因子矩阵,并通过调节渐消因子使得输出的状态方差和最小,以及输出的残差序列在各个时刻正交,从而实现对状态的强跟踪性能。
所述步骤一中电压电流方程为:
其中,Uoc代表电池的开路电压,Ut代表电池的端电压,Rp为极化内阻,Cp为极化电容,两者构成的RC网络用来模拟锂离子电池的极化效应,Up为RC网络两端电压,R0为电池的欧姆内阻,I为电流。
所述步骤一中的结合实际容量与放电倍率的关系,定义安时法的SOC方程,如下:
其中,SOC0为初始值;Ct为实际容量;ηc为实际容量与放电倍率的关系系数;η为库仑效率,设置为1;表示电池的放电电流I在时间[0,t]上的积分。
所述步骤一中将式(1)和(2)离散化可得到状态方程如式(3)所示以及测量方程如式(4)所示;
Ut,k+1=f(SOCk)-Up,k+1-Ik+1R0+Vk (4)
其中,f(·)为开路电压关于SOC的非线性函数;Wk代表系统的过程噪声,Vk代表端电压的测量噪声,Wk、Vk都是均值为零的高斯白噪声,它们的方差分别为Qk、Rk,SOCk+1为k+1时刻的SOC,Up,k+1为k+1时刻的RC网络两端电压,△t为采样间隔时间,SOCk为k时刻的SOC,Up,k为k时刻的RC网络两端电压,Ik为k时刻的电流,Ut,k+1为k+1时刻电池的端电压,Ik+1为k+1时刻的电流。
所述开路电压关于SOC的非线性函数,如下:
Uoc(z)=k0+k1z+k2z2+k3z3+k4z4+k5z5+k6z6+k7z7+k8z8 (5)
其中,z代表电池的荷电状态,Uoc为电池的开路电压,Uoc(z)为电池的荷电状态为z时的电池的开路电压,k0~k8为非线性函数的待拟合系数。
所述步骤二中通过不同放电倍率下实际容量与其关系进行二次多项式拟合得到实际容量和放电倍率的关系的如下:
其中,ηc为实际容量与放电倍率的关系系数,IC为电池的放电倍率。
所述步骤三的具体方法如下:
设系统状态空间模型为式(7)所示的状态方程和式(8)所示的输出方程:
xk+1=f(xk,uk)+wk (7)
yk=g(xk,uk)+vk (8)
其中,wk,vk为过程噪声和测量噪声,假设它们都是零均值互不相关的高斯白噪声,其方差矩阵分别为Qk、Rk;xk是目标的状态向量,yk是k时刻的输出向量,uk为驱动函数,f(xk,uk)为状态方程,g(xk,uk)为输出方程;
将式(7)、(8)在附近进行泰勒展开,并忽略二次及以上的高阶项,其中,为k时刻状态向量估计值,为k时刻驱动函数的输入值,可得到线性化的状态空间方程为:
xk+1=Ak.xk+Bk.uk+wk (9)
yk=Ck.xk+Dk.uk+vk (10)
其中,Ak为系统状态系数矩阵,Bk为系统控制系数矩阵,Ck为输出状态系数矩阵,Dk输出控制系数矩阵;
利用上述线性化的状态空间方程可得到扩展卡尔曼滤波的具体实现过程为:
1)初始化:对状态和协方差的初值进行初始化
2)时间更新:包括状态和协方差的一步预估
3)测量更新:包括卡尔曼增益、状态和协方差的更新
其中,x0为状态真实初值,为状态初值,为协方差初值,为k-1时刻状态值,为k-1时刻协方差值,Ak-1为k-1时刻系统状态系数矩阵,Qk为k时刻过程噪声协方差矩阵,Rk为k时刻测量噪声协方差矩阵,为k时刻协方差预估值,为k时刻状态预估值,Kk为k时刻卡尔曼增益矩阵,Ck为k-1时刻输出状态系数矩阵,为k时刻状态更新值,为k时刻协方差更新值。
所述步骤四中渐消因子矩阵如式(18)、式(19)所示,
其中,Λk为渐消因子矩阵,为渐消因子。
所述渐消因子矩阵改用如式(20)所示协方差更新方程来使得协方差矩阵不失对称性:
其中,
其中,为渐消因子矩阵的cholesky分解因子。
所述步骤四中调节渐消因子使得输出的状态方差和最小,以及输出的残差序列在各个时刻正交的具体方法如下:
其中,
其中,为状态的更新值,为了便于计算渐消矩阵,采用次优算法来求解渐消因子,计算过程为:
定义残差矩阵为:
其中,卡尔曼滤波中状态的预估值,Yk为实际输出值;
定义协方差矩阵为:
其中,ρ为遗忘因子,取值范围0<ρ≤1;
定义矩阵Nk、Mk、γk为:
其中,tr[·]表示矩阵的迹,βi为弱化因子,取值βi≥1,Mk,ii为Mk的第i行i列元素;
则渐消因子为:
本发明的有益效果为:
本发明提出了一种基于多重渐消因子的强跟踪卡尔曼滤波算法实现对锂离子电池SOC的估计。首先以Thevenin等效电路模为基础,考虑不同SOC和放电倍率对模型参数的影响,实现了动态等效电路模型的搭建。然后分别利用EKF、强跟踪EKF、带多重渐消因子STEKF在DST放电工况下对电池的SOC进行估计。结果显示:不同初始误差下,在算法的估计精度和收敛速度方面,带多重渐消因子STEKF算法均优于强跟踪EKF算法和EKF算法的估计结果。.
本发明针对卡尔曼滤波算法在对锂离子电池荷电状态(SOC)估计时存在着收敛速度慢,估计误差较大等问题,提出了一种带多重渐消因子的强跟踪卡尔曼滤波算法(MSTEKF)来实现SOC估计。该算法通过引入多重渐消因子对不同状态以不同的速率进行渐消跟踪,以达到更优的估计性能。与扩展卡尔曼滤波(EKF)和单渐消因子强跟踪卡尔曼滤波(STEKF)进行对比,实验表明本发明所提出的方法能有效的提高算法对SOC估计的收敛速度和估计精度。
附图说明
图1为本发明Thevenin模型示意图。
图2为本发明实验平台的实验测试电池示意图。
图3为本发明实验平台的锂电池测试仪示意图。
图4为本发明锂离子电池开路电压特性曲线示意图。
图5为欧姆内阻值的离线参数辨识结果示意图。
图6为极化内阻值的离线参数辨识结果示意图。
图7为时间常数的离线参数辨识结果示意图。
图8为极化电容值的离线参数辨识结果示意图。
图9为DST工况下20%初始误差不同算法估计值示意图。
图10为DST工况下20%初始误差不同算法估计误差示意图。
图11为DST工况下40%初始误差不同算法估计值示意图。
图12为DST工况下40%初始误差不同算法估计误差示意图。
具体实施方式
下面将结合附图对本发明做进一步的详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式,但本发明的保护范围不限于下述实施例。
如图1至图12所示,本实施例所涉及的基于多重渐消因子卡尔曼滤波锂电池荷电状态估计方法,包括以下步骤:
步骤一:电池模型建立
采用Thevenin模型建立等效电路模型,由基尔霍夫定律推导等效电路模型的电压电流方程;结合实际容量与放电倍率的关系,定义安时法的SOC方程;通过离散化电压电流方程和SOC方程得到状态方程以及测量方程;测量方程中包括开路电压关于SOC的非线性函数;
步骤二:模型的参数辨识
通过不同放电倍率下实际容量与其关系进行二次多项式拟合得到实际容量和放电倍率的关系;
从充电和放电两个方向对开路电压进行获取,利用最小二乘法法对充电和放电两个方向的开路电压值数据进行多项式拟合;
通过间隔放电实验,测试不同SOC处和不同放电倍率对模型参数的影响,并利用电池在脉冲下的激励响应特性对模型参数进行离线辨识;
步骤三:扩展卡尔曼滤波
采用泰勒展开并略去二阶及以上高阶项方法对非线性系统状态空间模型进行线性化处理,得到线性化状态方程,利用线性化状态方程得到扩展卡尔曼滤波的具体实现过程包括:对状态和协方差的初值进行初始化,状态和协方差的一步预估以及卡尔曼增益、状态和协方差的更新;
步骤四:带多重渐消因子强跟踪卡尔曼滤波
在扩展卡尔曼滤波协方差的更新方程式中加入一个渐消因子矩阵,并通过调节渐消因子使得输出的状态方差和最小,以及输出的残差序列在各个时刻正交,从而实现对状态的强跟踪性能。
实施例1
1.电池动态模型建立与参数辨识
1.1电池模型建立
锂离子电池模型的准确建立是估计电池SOC的基础,目前主流的电池模型包括电化学模型、等效电路模型等。本实施例充分考虑模型的精度和模型结构的复杂度,采用目前等效电路模型中最常用的Thevenin模型作为基础模型,具体电路结构如图1所示。
图1中Uoc代表电池的开路电压,Ut代表电池的端电压,Rp为极化内阻,Cp为极化电容,两者构成的RC网络用来模拟锂离子电池的极化效应,Up为RC网络两端电压,R0为电池的欧姆内阻,I为电流。
由基尔霍夫定律可推导其电压电流方程为:
传统安时法的SOC定义式为:
其中,η为库仑效率,本实施例设置为1;Cn为额定容量;SOC0为初始值。
本实施例考虑到锂离子电池的实际容量和额定容量并不相等并结合实际容量与放电倍率的关系,将传统安时法的SOC定义式改写为:
其中,Ct为实际容量;ηc为实际容量与放电倍率的关系系数,表示电池的放电电流I在时间[0,t]上的积分。
将式(1)和(3)离散化可得到状态方程如式(4)所示以及测量方程如式(5)所示。
Ut,k+1=f(SOCk)-Up,k+1-Ik+1R0+Vk (5)
其中,f(·)为开路电压关于SOC的非线性函数,如式(6)所示;Wk代表系统的过程噪声,Vk代表端电压的测量噪声,Wk、Vk都是均值为零的高斯白噪声,它们的方差分别为Qk、Rk,SOCk+1为k+1时刻的SOC,Up,k+1为k+1时刻的RC网络两端电压,△t为时间变化量,SOCk为k时刻的SOC,Up,k为k时刻的RC网络两端电压,Ik为k时刻的电流,Ut,k+1为k+1时刻电池的端电压,Ik+1为k+1时刻的电流。
Uoc(z)=k0+k1z+k2z2+k3z3+k4z4+k5z5+k6z6+k7z7+k8z8 (6)
其中,z代表电池的荷电状态,Uoc为电池的开路电压,Uoc(z)为电池的荷电状态为z时的电池的开路电压,k0~k8为非线性函数的待拟合系数。
1.2模型的参数辨识
本实施例实验对象为如图2所示福斯特公司生产的三元锂离子电池,实验平台采用如图3所示新威公司生产的锂电池测试仪,所有实验均在室温下进行。
电池模型建立中所述模型中需要辨识的参数包括:R0、Rp、Cp、ηc以及开路电压关于SOC的非线性函数关系式。
为了得到实际容量与放电倍率的关系,本实施例采用了标准的恒压恒流充电模式将电池充满后,静置2小时,之后分别采用0.2C、0.5C、1C和2C的放电倍率进行恒流放电到2.75V截止电压为止的实验方案。通过放电实验法计算可得到四种放电状态下,实际放出容量如表1所示。
表1不同放电倍率下电池放电容量变化
通过对四种放电倍率下实际容量与其关系进行二次多项式拟合可得到
其中,ηc为实际容量与放电倍率的关系系数,IC为电池的放电倍率。
本实施例考虑到充放电方向对开路电压的影响,因此从充电和放电两个方向对开路电压进行获取,具体过程为:先将电池充满,利用0.5C恒流放电分别调整SOC为100%、90%、80%、70%、60%、50%、40%、30%、20%、10%、5%以及0%处,期间通过静置2h来获取开路电压;充电过程同样采用0.5C恒流充电调整SOC到上处各点,同样采用2h的静置时间获取开路电压。从而得到充电和放电两个方向共24个开路电压值。利用最小二乘法对数据进行如式(6)多项式拟合,充电和放电方向开路电压曲线拟合结图4所示。
本实施例通过一系列复杂的间隔放电实验,对不同SOC处和不同放电倍率(0.2C、0.5C、1C和2C)对模型参数的影响进行了测试,并利用电池在脉冲下的激励响应特性对参数完成了离线辨识,辨识结果如图5至图8所示。
2.基于动态模型的多渐消因子强跟踪EKF估计电池荷电状态
2.1扩展卡尔曼滤波
经典的卡尔曼滤波适合于线性系统,而锂离子电池有着较强的非线性特性,因此可利用扩展卡尔曼滤波对SOC进行估计。扩展卡尔曼滤波是利用一阶泰勒展开式对非线性部分进行线性化处理,然后利用卡尔曼滤波的框架进行迭代计算,完后对状态的估计。
设系统状态空间模型为式(8)所示的状态方程和式(9)所示的输出方程:
xk+1=f(xk,uk)+wk (8)
yk=g(xk,uk)+vk (9)
其中,wk,vk为过程噪声和测量噪声,这里假设它们都是零均值互不相关的高斯白噪声,其方差矩阵分别为Qk、Rk,xk是k时刻目标的状态向量,yk是k时刻的输出向量,uk为驱动函数,f(xk,uk)为状态方程,g(xk,uk)为输出方程。
将式(8)、(9)在附近进行泰勒展开,并忽略二次及以上的高阶项,其中,为k时刻状态向量估计值,为k时刻驱动函数的输入值,可得到线性化的状态空间方程为:
xk+1=Ak.xk+Bk.uk+wk (10)
yk=Ck.xk+Dk.uk+vk (11)
其中,Ak为系统状态系数矩阵,Bk为系统控制系数矩阵,Ck为输出状态系数矩阵,Dk输出控制系数矩阵;
这里以对求导为例,如式(12)、(13)为忽略高阶项的求导结果:
由式(12)、(13)可推得式(10)、(11)中Ak、Ck分别为:
利用上述线性化的状态空间方程可得到EKF的具体实现过程为:
1)初始化:对状态和协方差的初值进行初始化
2)时间更新:包括状态和协方差的一步预估
3)测量更新:包括卡尔曼增益、状态和协方差的更新
其中,x0为状态真实初值,为状态初值,为协方差初值,为k-1时刻状态值,为k-1时刻协方差值,Ak-1为k-1时刻系统状态系数矩阵,Qk为k时刻过程噪声协方差矩阵,Rk为k时刻测量噪声协方差矩阵,为k时刻协方差预估值,为k时刻状态预估值,Kk为k时刻卡尔曼增益矩阵,Ck为k-1时刻输出状态系数矩阵,为k时刻状态更新值,为k时刻协方差更新值。
2.2带多重渐消因子强跟踪卡尔曼滤波
在电池的SOC估计过程中,电池的状态初值往往不能精确得到,而EKF算法的收敛速率也相对较慢,且当系统在平稳状态时,EKF算法的增益矩阵往往因为过小而不能较好的跟踪状态的突变情况。而单一渐消因子的强跟踪算法(Strong Tracking Extended KalmanFilter,STEKF)又不能很好的跟踪变化速率不一致的状态。基于以上问题,通过在EKF的协方差矩阵更新方程式中加入一个渐消因子矩阵如式(23)、式(24)所示,来进一步提升算法的估计性能。
其中,Λk为渐消因子矩阵,为渐消因子
为了防止Λk的加入使得协方差矩阵失去对称性,这里采用改用如式(25)所示协方差更新方程来使得协方差矩阵不失对称性:
其中,
为渐消因子矩阵的cholesky分解因子;
强跟踪理论卡尔曼滤波的成立原则是通过调节渐消因子既要使得输出的状态方差和最小,即满足式(27)式,又要满足输出的残差序列在各个时刻正交,即满足式(28),从而实现对状态的强跟踪性能。
其中,
其中,为状态的更新值,为了便于计算渐消矩阵,采用次优算法来求解渐消因子,计算过程为:
定义残差矩阵为:
其中,卡尔曼滤波中状态的预估值,Yk为实际输出值。
定义协方差矩阵为:
其中,ρ为遗忘因子,取值范围0<ρ≤1。
定义过程矩阵Nk、Mk、γk为:
其中,tr[·]表示矩阵的迹,βi为弱化因子,取值βi≥1,Mk,ii为Mk的第i行i列元素,
则渐消因子为:
由上述过程可见,当输出误差产生时,首先通过遗忘因子对旧误差数据进行一定程度的遗忘,对新误差数据进一步利用,以获得更高的估计精度。算法的核心调整在于对γk的计算,当输出误差较大时,γk可以变得更大,确保算法可以获得更高的跟踪性能。βi能起到弱化作用,防止算法过度调节,通过设置不同的βi以改变渐消矩阵来实现对不同变化速率状态更好实时跟踪性能。
3.实验验证与分析
本实施例分别采用EKF、STEKF、MSTEKF算法对DST放电工况,在20%SOC初始误差和40%SOC初始误差进行了算法的性能验证。仿真相关参数为:多渐消因子β1=3,β2=1,遗忘因子ρ=0.95,过程噪声Qk=[8×10-10 0;0 1×10-10],测量噪声Rk=6×10-3。实验结果以安时法得到的SOC真值作为对比。图9、图10、图11和图12分别为20%和40%SOC初始误差下不同算法的估计结果。
由图9、图10可知,在SOC误差为20%的情况下,EKF、STEKF、MSTEKF将估计误差降到1%之下的时间分别为的174s、115s、52s,且整个估计过程三种算法的估计均方误差分别为2.48×10-4V、2.00×10-4V、1.59×10-4V,可见在20%初始误差下MSTEKF有着更好的估计精度和收敛速度。
由图11、图12可知,在SOC误差为40%的情况下,EKF、STEKF、MSTEKF将估计误差降到1%之下的时间分别为的267s、90s、58s,且整个估计过程三种算法的估计均方误差分别为6.28×10-4V、3.01×10-4V、1.68×10-4V,可见40%初始误差下MSTEKF依然有着更好的估计精度和收敛速度。
以上所述,仅为本发明较佳的具体实施方式,这些具体实施方式都是基于本发明整体构思下的不同实现方式,而且本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。