一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种渐消并行卡尔曼滤波动力电池荷电状态估计方法与流程

2022-02-19 07:05:00 来源:中国专利 TAG:


1.本发明属于新能源汽车锂离子电池soc状态估计领域,涉及一种基于渐消并行卡尔曼滤波的动力电池荷电状态估计方法。适用于新能源汽车电池管理系统。


背景技术:

2.锂电池凭借其优越的特性,逐渐成为新能源汽车动力电池的首选。锂电池特性复杂多变,且相互耦合,为电池管理带来了诸多挑战,soc作为表征其剩余电量的指标,是新能源汽车能量管理的重要依据。
3.soc受到电池老化、环境温度等不确定因素的影响,在实际应用中无法直接测量,一般通过测量电池端电压或内阻,以及计算充放电累积电荷量等参数估算soc。锂离子电池的soc精确估计已成为新能源汽车能量管理系统中亟待解决的问题。常见的soc估计方法分为四大类:基于表征参数法、安时积分法、模型法、数据驱动法。表征参数法:通过实验离线得到电池不同状态的soc值与电池表征参数的对应关系,再实时计算电池的表征参数,最后根据表征参数与soc的对应关系得到当前soc。目前常用的表征参数包括开路电压值(open circuit voltage,ocv)、剩余容量、阻抗谱等。安时积分(ampere hour,ah)法:指一段时间内电流对时间的积分值,也称库伦计数法。安时积分属于开环估计,其估计误差随着时间累积越来越大。数据驱动法:通过算法训练出电池工作状态参数与电池soc的映射关系,需要用到大量的离线实验数据作为训练的数据支撑,如电流、电压、温度等。神经网络模型是此方法的典型代表,针对非线性系统有良好的估计能力,泛化能力较强,但是易出现过拟合,且需要大量的实验数据支撑。模型法:基于滤波算法和动力电池等效模型完成soc估计。目前常见的模型法有h

滤波、kalman系列滤波、粒子滤波、滑模观测器等。其中kalman滤波算法能够对动力系统的状态做出最小方差意义上的最优估计,应用最为广泛,本发明主要内容针对基于卡尔曼滤波的soc估计展开。


技术实现要素:

4.本发明的目的是提高传统扩展卡尔曼滤波soc估计的精度及降低运算量,公开了一种自适应渐消并行扩展卡尔曼滤波算法(adaptive fading parallel extended kalman filter,afpekf)。首先,介绍了锂电池状态方程及扩展卡尔曼滤波算法(extended kalman filter,ekf)的建立过程。其次,为克服ekf对参数变化敏感和稳态状态下跟踪能力不强的缺陷,建立带渐消因子的自适应渐消扩展卡尔曼滤波算法(adaptive fading extended kalman filter,afekf)。最后,将锂电池等效电路模型三阶状态方程分解为两个二阶状态方程,利用两个卡尔曼滤波器在采样时间点上交替运算,建立afpekf算法,降低运算量。
5.一种渐消并行卡尔曼滤波动力电池荷电状态估计方法,包括以下步骤:
6.s1、建立锂电池等效电路模型,推导电池状态方程;
7.以dp等效电路模型为例,进行状态空间方程离散化推导。考虑以下状态空间方程:
[0008][0009]
状态变量x1=u
p
,x2=u
s
,输入变量u=i
l
,输出变量y=u
t
,系数矩阵:
[0010][0011]
电池能量管理系统采集的电压和电流数据为时间上的离散数值,针对描述系统动态特性的状态方程的离散化,其输出方程与动态的状态方程不同,是静态的数学代数方程,离散化前后保持不变,如式(3)所示:
[0012]
y(k)=c(k)x1(k) d(k)x2(k) e(k)u(k) f(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0013]
式(3)中状态变量x1(k)=u
p
(k),x2(k)=u
s
(k),输入变量u(k)=i(k),系数矩阵c(k)=d(k)=

1,e(k)=

r,f(k)=u
oc

[0014]
非齐次线性连续系统的状态方程离散化过程如下:
[0015]
x1(k 1)=g(k)x1(k) h(k)u(k)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0016]
令输入信号为u(t),初始状态求式(4)非齐次状态方程的解为:
[0017][0018]
为将连续系统离散化,需要假设输入信号u(t)在[kt,(k 1)t]时间内不变,等于kt时刻的瞬时值。当时刻t0=kt,t=(k 1)t,u(t)=u(kt)时,有:
[0019][0020]
令t=(k 1)t

τ,则有:
[0021][0022]
化简为:
[0023][0024]
根据式(4)和式(8),可得:
[0025][0026]
即:
[0027][0028]
综上所述得离散的锂离子电池状态空间方程:
[0029][0030]
同时,离散化的电池soc的状态量可通过安时积分法获得,其方程为:
[0031]
soc
k
=soc
k
‑1‑
ηi
l,k
δt/c
max
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(12)
[0032]
公式中右下标k表示t
k
时刻;δt表示电流采集间隔。
[0033]
s2、建立ekf算法;
[0034]
根据基础卡尔曼滤波器建立适用于非线性系统的ekf。分析电池模型的离散系统,如下所示:
[0035][0036]
其中y
k
为系统的输出;x
k
为系统状态量;u
k
为系统输入量;v
k
为传感器噪声,与系统状态无关;w
k
为系统状态的随机噪声;矩阵a
k
,b
k
,c
k
和d
k
描述系统的参数。基础卡尔曼滤波仅适用于线性系统,以基础卡尔曼滤波为基础提出ekf,适用于非线性系统。ekf应用泰勒展开将电池模型线性化,其过程如下:
[0037]
由微积分理论可知,如果函数f(x)在点x=x0任意阶可导,则此函数可以展开成如下taylor级数:
[0038][0039]
若函数f(x)的二阶及更高阶项对函数值的影响较小,则在上述级数中,可以将一阶以后的项去掉,而用截断项近似表示函数f(x):
[0040]
f(x)≈f(x0) f

(x0)(x

x0)=[f(x0) f

(x0)x0] f

(x0)x
ꢀꢀꢀꢀ
(15)
[0041]
ekf就是基于taylor级数展开定理,将非线性状态函数和观测函数线性化,进而应用线性卡尔曼滤波的结果来推导非线性状态函数的滤波方法。
[0042]
具体过程如下所述。考虑非线性离散时间系统:
[0043]
x
k 1
=f(x
k
) γ
k
w
k
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(16)
[0044]
z
k 1
=h(x
k 1
) v
k 1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(17)
[0045]
式中,状态向量x
k
为n维;观测向量z
k 1
为m维;高斯白噪声序列w
k
和v
k 1
分别为n维、m维,且有:
[0046]
e(w
k
)=0,cov(w
k
,w
j
)=q
k
δ
kj
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(18)
[0047]
e(v
k
)=0,cov(v
k
,v
j
)=r
k
δ
kj
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(19)
[0048]
cov(w
k
,v
j
)=cov(w
k
,x0)=cov(v
k
,x0)=0
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(20)
[0049]
系统状态估计和估计误差协方差阵的初始值为:
[0050]
x
00
=μ
x
(0),p
00
=p(0)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(21)
[0051]
定义k时刻的测量数据信息为系统测量信息对状态x
k
和误差方差阵的估计为:
[0052][0053]
将式(22)在进行线性化处理,通过taylor级数展开,再忽略高阶项,可得:
[0054][0055]
式中:
[0056][0057]
因此,可以得到系统状态估计和估计误差协方差矩阵的近似方程:
[0058][0059][0060]
同理,将z
k 1
在展开成taylor级数并取一阶近似,得:
[0061][0062]
式中:
[0063][0064]
于是有如下结果:
[0065][0066][0067][0068]
在k 1时刻,得到新的测量值z
k 1
,则x
k 1
的最小线性无偏方差估计为:
[0069]
[0070][0071]
式中:
[0072][0073]
滤波初始值为:x
00
=μ
x
(0),p
00
=p(0)。
[0074]
式(26)、式(27)、式(32)~式(34)构成了非线性离散rkf滤波公式。基于离散系统ekf算法的soc估计方法的详细计算流程如下所述。
[0075]
对于dp动力电池模型的线性离散化方程:
[0076][0077]
式中,x=[u
p u
s soc]
t
,u=i
l
,y=u
t

[0078][0079]
其中,由ocv

soc关系计算。具体步骤如下所述。
[0080]

初始化:设置x0、p0、q0、r0的初始值;
[0081]

先验估计(预测)
[0082]
时间更新:分别推算系统状态估计和误差协方差估计从(k

1)

到时间(k)


[0083]
系统状态估计:
[0084]
误差协方差估计:
[0085]

先验估计(预测)
[0086]
测量更新:分别推算系统状态估计和误差协方差估计从(k)

到时间(k)

。用k时刻的测量值y
k
校正状态估计和协方差估计。
[0087]
卡尔曼增益矩阵:
[0088]
系统状态修正:
[0089]
误差协方差修正:
[0090]
新息矩阵:
[0091]

时间尺度更新
[0092]
将(k)

时刻的状态和协方差矩阵输出,准备(k 1)时刻的状态估计。其中,系统矩阵a
k
和b
k
中的元素值可通过rc参数在线辨识获得。
[0093]
注意:针对于非线性系统,滤波增益k
k
和滤波误差方差阵p
k|k
分别独立进行离线获取,滤波增益和误差方差阵与控制量和观测量不直接相关。但一阶近似ekf在非线性系统中应用时,p
k 1|k
需要对f
k
进行矩阵运算,进而得到即p
k 1|k
需要在线计算。对于∑
k 1|k
和s
k 1|k
也是一样的。
[0094]
s3、建立afekf算法;
[0095]
afekf滤波通过引入衰减因子来缩减滤波器记忆的数据量,使滤波器能充分利用当前测量的观测数据,降低旧数据的干扰,从而提升soc估计的精度。
[0096]
afekf设计的关键是:获取一个计算简易、易于表达、效果显著的衰减因子。本发明利用新息协方差计算衰减因子,再通过实时更新新息协方差调整衰减程度,从而降低旧数据对当前估计的影响。此方法求解的衰减因子计算复杂度不高,对非线性系统有较好的应用,能适应绝大多数非线性系统。
[0097]
新息用η
k
表示,即:
[0098][0099]
新息协方差矩阵理论值基于基础卡尔曼滤波器的理论标称值计算为:
[0100][0101]
基于新息的历史数据由开窗估计法重新定义新息协方差矩阵的估计值为
[0102][0103]
afekf算法必须满足正交定理,从而达到算法的强跟踪性质。其定义如下:在线计算时,ekf的最优增益阵k
k
使得:
[0104][0105]
其中,j=1,2,3
……
。传统ekf性能要求协方差矩阵p
k
取到最优值,则要求新息序列在任何时候都保持相互正交,即为最小值。还需要用引理1中的结论,引理1如下:
[0106]
引理1:自相关矩阵方程如式(41)的新息序列在ekf得到精确的系统状态估计值时
成立:
[0107][0108]
其中,j=1,2,3
……

[0109]
由引理1可知,对于每一个j的取值,式(41)都有s
k

[0110][0111]
要求保持新息序列处处正交和保证引理1成立,可知:当系统出现扰动时,系统参数受到干扰使估计值出现偏差,此时新息序列的均值和幅值可描述出当前状态估计和误差协方差估计的初始值。为了使afekf能跟踪系统变化较大时的状态值,要求新息函数的自相关函数值等于0,从而实时更新增益阵k
k
,使新息序列η
k
仍然保持相互正交。ekf算法中的线性化忽略掉了泰勒展开式的高次项,必然带来误差,因此新息序列不是白噪声序列。但是,能让s
k
约等于零,一定会加强ekf的性能。
[0112]
基于ekf的动力电池soc估计算法中,一般会取电压为测量值,当估计的电压值偏离实际的电压值时,说明新息响应偏大,不能通过精准的建模将新息响应模拟出来。如果能使式(42)为零,就能确保式(41)的成立,从而使ekf具有强跟踪性。但是在式(42)中,h
k
不变,v
k
不准确,其中新息协方差矩阵的理论值v
k
偏离实际值是由于系统模型的不准确导致。针对此问题将v
k
用估计新息协方差矩阵代替,就能将s
k
调整为使约等于0,从而具有强跟踪性质。
[0113][0114]
式中,分别为加权后的误差协方差与最优增益矩阵。
[0115]
为了满足式(43),将衰减因子λ
k
与误差协方差矩阵相乘,从而进行加权。当衰减因子大于1时,则增大了增益矩阵k
k
,提高了当前数据的比重,提高了系统鲁棒性。有三种对误差协方差矩阵进行加权的方式:
[0116][0117]
最后一个式子中,加权因子相乘与原协方差预测方程整体,相当于对整个协方差预测方程进行加权,其运算简洁,增强实时数据的影响效果大,相比于前两个式子更有优势,本发明采取第三个式子的结构加权为了简化衰减因子,定义v
k
和的关系为:
[0118][0119]
式中系数α
k
由下式得出:
[0120][0121]
新的增益利用和可推导为:
[0122][0123]
展开式(47)可得:
[0124][0125]
假定为满秩,则式(48)化简为:
[0126][0127]
从式(49)可知,依赖λ
k
加权误差协方差矩阵来等价于用α
k
加权新息协方差矩阵v
k
,所以采用加权误差协方差矩阵来实现。根据式(49)中的关系来计算λ
k
,α
k
再由式(41)计算,为了避免求逆运算在式(49)两边取迹,转换为下式来求解:
[0128][0129]
式(50)的方式要求满秩,但实际情况无法要求满足满秩,因此需要新的方式来求取。对式(50)变形可得:
[0130][0131]
由于λ
k
≥1,则α
k
≥1。ekf算法中测量方程没有不能建模的未知参数,依赖预测误差协方差矩阵进行加权新息协方差矩阵,与矩阵r
k
无关,在式(51)中可以将r
k
忽略并假设λ
k
=α
k
,用α
k
来求λ
k
值。
[0132]
综上所述,本发明公开的afekf算法中的衰减因子只需要计算出新息协方差矩阵和新息协方差矩阵的迹,方式简洁,易于实现。
[0133]
基于上述提出的加权因子计算方式,可以推导出加权误差协方差矩阵的afekf滤波器如下:
[0134]
第一步:时间更新
[0135]
先前预测状态估计:
[0136][0137]
先前预测误差协方差:
[0138][0139]
第二步:测量更新
[0140]
卡尔曼滤波最优增益:
[0141][0142]
后验状态估计:
[0143][0144]
加权后的后验误差协方差状态估计:
[0145]
[0146]
新息计算:
[0147][0148]
新息协方差矩阵:
[0149][0150]
计算衰减因子λ
k

[0151][0152]
综上所述,本发明afekf算法建立完成。
[0153]
s4、建立afpekf滤波算法;
[0154]
对于dp等效电路模型,应用kf状态估计时,由于模型阶数较高,导致其运算量较大。针对此问题,本发明提出并行卡尔曼滤波算法,其原理是将一个高阶滤波器分解成两个并行运算的低阶滤波器。
[0155]
分析方程(13)中x=[u
p u
s soc]
t
,u=i
l
,y=u
t
。可写出dp等效电路模型系统状态方程和观测方程:
[0156][0157]
如果将系统的状态方程拆分为:x1=[u
p u
s
]
t
,x2=soc。那么能建立下面两个状态方程:
[0158][0159]
其中:
[0160][0161][0162]
基于方程(61)的两个状态方程,结合前述afekf算法,即可建立afpekf算法,使其在采样时间上交替运行,实现并行卡尔曼滤波对soc的估计。
[0163]
卡尔曼滤波器的滤波过程中是将系统参数矩阵进行加法和乘法运算,可以通过统计滤波器的递推公式中的加法和乘法的运算次数来衡量其运算量。比如:三维矩阵f,p,q在误差协方差预测方程中运算时,乘法运算为54次,加法运算为45次。以此类推,统计出afekf滤波器方程组中的乘法和加法运算量如下表1所示,afpekf滤波器的乘法和加法运算量如表2所示。
[0164]
表1afekf滤波器算法运算量统计表
[0165][0166]
表2afpekf卡尔曼滤波器算法运算量统计表
[0167][0168]
通过表1和表2可知,afpekf算法比afekf滤波算法分别减少了49.2%的乘法运算量和56%的加法运算量。
附图说明
[0169]
为了更加清楚的说明本发明的原理与实施中的技术方案,下面将对本发明涉及的技术方案使用附图作进一步介绍,以下附图仅仅是本发明的部分实施例子,对于本领域技术人员来讲,在不付出创造性劳动的前提下可以根据以下附图获得其他技术方案。
[0170]
图1本发明dp等效电路模型;
[0171]
图2本发明线性离散系统状态空间图;
[0172]
图3本发明afpekf算法流程图;
[0173]
图4锂离子电池测试平台;
[0174]
图5udds工况电流曲线;
[0175]
图6dst工况电流曲线;
[0176]
图7udds工况afekf算法与ekf算法soc估计局部对比;
[0177]
图8udds工况afekf算法与ekf算法soc估计误差;
[0178]
图9dst工况afekf算法与ekf算法soc估计局部对比;
[0179]
图10dst工况afekf算法与ekf算法soc估计误差;
[0180]
图11ece工况电流曲线;
[0181]
图12ece工况afpekf算法与afekf算法soc估计局部对比;
[0182]
图13ece工况afpekf算法与afekf算法soc估计误差。
具体实施方式
[0183]
下面结合附图及具体实施例对本发明作进一步描述,此发明的示意性实施例以及说明用来解释本发明,但并不作为对本发明的限定。
[0184]
实施例1
[0185]
在不同工况下,分组采用ekf算法、afekf以及afpekf算法对锂离子电池进行soc估计,再分析仿真结果,以验证afekf算法的抗干扰性,及afpekf算法的快速性。本实施例中所选用的电池型号为ncr18650bd三元锂电池,锂离子电池测试平台由安装有控制软件的上位机、中位机、neware电池测试设备和电池组成。该电池测试设备的测试精度可达到0.05%,最大电流上升时间为1ms,最高数据记录频率为10hz。锂离子电池测试平台如图4所示。在matlab/simulink中搭建soc估计仿真模型。
[0186]
首先验证afekf算法相比于基础ekf算法在估计精度方面的优越性。仿真步长t为0.5s,递推最小二乘法的遗忘因子λ本发明取0.98。afekf和ekf两个滤波器的系统状态量x
k
以及状态估计误差协方差矩阵p、零均值的系统白噪声协方差q、零均值的测量白噪声协方差r初始值设置相同,均为:
[0187][0188]
afekf和ekf两种算法的精度对比用动态应力测试(dynamic stress test,dst)工况和城市道路循环工况(urban dynamometer driving schedule,udds)进行验证,两种工况电流如图5、图6所示。电池的放电初始soc为1,经历了十个udds循环后电池soc值为0.1,环境温度为常温(25℃)。仿真结果如图7、图8、图9和图10所示。可以看到,当电流幅度变化比较大时,afekf的误差明显小于ekf,可见afekf相比于基础的ekf精度有所提升。ekf算法与afekf算法在udds工况和dst工况下的平均绝对误差如表3所示。
[0189]
表3ekf算法与afekf算法在udds工况和dst工况下的平均绝对误差
[0190][0191]
由表3可以看出,udds和dst工况下afekf算法估计误差均小于ekf算法估计误差。经过计算udds工况下afekf算法精度提高了22.8%、dst工况下afekf算法精度提高了21.6%,证明了理论分析。
[0192]
其次验证afpekf算法相比于afekf算法在估计速度方面的优越性,两种算法设置
相同的初始值。采用ece工况电流进行验证,图11为ece工况电流曲线。图12、图13是afpekf和afekf的soc估计仿真结果。afekf算法和afpekf算法在ece工况下的平均绝对误差如表4所示。
[0193]
表4afekf算法和afpekf算法在ece工况下的平均绝对误差
[0194][0195]
由图12、图13及表4可以看出两个算法状态估计的波动是一致的,估计精度之差近似为零,近似可以理解为afpekf算法和afekf算法在数学运算方式上的等效性。为验证上述模型运行速度的可靠性,本发明采用3台不同的计算机对上述模型进行仿真,模型运行时间对比如表5所示。
[0196]
表5afpekf和afekf模型仿真时间
[0197][0198][0199]
由表5可知,afekf模型仿真时间的平均值为1.9099秒,afpekf模型仿真时间的平均值为1.5932秒,afpekf模型提高了19.8%的仿真速度。
[0200]
本实施例对ekf、afekf、afpekf算法进行了仿真比较,分别在udds、dst、ece工况下仿真,分析结果可知afekf算法相比ekf算法具有强跟踪性,提高了soc估计精度;afpekf算法相比afekf算法保证精度近似一致的条件下提高了soc估计速度。本发明内容对提高新能源汽车动力电池状态估计技术具有重要意义。
[0201]
本发明的技术方案不限于上述具体实施例的限制,凡是根据本发明的技术方案做出的技术变形,均落入本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献