CN116718920A - 基于rnn优化扩展卡尔曼滤波的锂电池soc估算方法 - Google Patents
基于rnn优化扩展卡尔曼滤波的锂电池soc估算方法 Download PDFInfo
- Publication number
- CN116718920A CN116718920A CN202310478901.0A CN202310478901A CN116718920A CN 116718920 A CN116718920 A CN 116718920A CN 202310478901 A CN202310478901 A CN 202310478901A CN 116718920 A CN116718920 A CN 116718920A
- Authority
- CN
- China
- Prior art keywords
- soc
- model
- battery
- order
- equivalent circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 title claims abstract description 24
- 229910052744 lithium Inorganic materials 0.000 title claims abstract description 24
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 42
- 238000013528 artificial neural network Methods 0.000 claims abstract description 25
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 19
- 230000006870 function Effects 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims abstract description 9
- 238000004088 simulation Methods 0.000 claims abstract description 8
- 238000001914 filtration Methods 0.000 claims description 39
- 239000011159 matrix material Substances 0.000 claims description 22
- 238000005259 measurement Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 17
- 230000010287 polarization Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 9
- 238000005457 optimization Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 6
- 239000003990 capacitor Substances 0.000 claims description 3
- 238000004146 energy storage Methods 0.000 description 6
- 230000000306 recurrent effect Effects 0.000 description 6
- 230000010354 integration Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000007599 discharging Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000000691 measurement method Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000004870 electrical engineering Methods 0.000 description 1
- 239000007772 electrode material Substances 0.000 description 1
- 239000003792 electrolyte Substances 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/36—Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
- G01R31/367—Software therefor, e.g. for battery testing using modelling or look-up tables
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/36—Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
- G01R31/385—Arrangements for measuring battery or accumulator variables
- G01R31/387—Determining ampere-hour charge capacity or SoC
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/02—System on chip [SoC] design
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Geometry (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Tests Of Electric Status Of Batteries (AREA)
Abstract
本发明公开了一种基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,来解决电池等效电路模型不精确以及SOC预测误差较大等问题。根据电池模型参数之间的关系,建立变阶RC等效电路模型;将AIC应用在RC等效电路模型中可以权衡模型的复杂度和拟合的精确度,利用循环神经网络强大的学习能力以及能够逼近任意非线性函数的特点对EKF算法进行优化,通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk,最后对EKF输出的SOC进行修正补偿,以实现对SOC的精准预测。最后,在Matlab/Simulink中搭建系统模型,通过仿真验证RNN‑EKF算法在电池SOC估算方面具有精度高、收敛快和实用性较强的优点。
Description
技术领域
本发明涉及一种基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,属于电气工程领域,是基于循环神经网络优化扩展卡尔曼滤波的锂电池SOC估算方法。
背景技术
随着动力电池在电动汽车的长期循环使用,其性能将会逐步下降,当电池不能满足电动汽车的使用要求时,就需要从电动汽车退役下来。退役的电动汽车动力电池,仍然具有相当于初始容量80%的剩余可用容量,且拥有一定的使用寿命。目前,电动汽车退役动力电池回收价格低廉且其性能可满足储能电站的要求,在储能领域大力推行退役动力电池的梯次利用,有利于降低电力储能装备成本、优化储能配置,对于促进梯次储能电站的发展具有重要推动作用。
目前常用的锂电池SOC估计算法主要有直接测量法、数据驱动法和模型基础法。直接测量法主要包括开路电压法和安时积分法。开路电压法精确度不够,也不适合电池状态的实时估计,对SOC估算误差较大;安时积分法由于对初始精度要求较高,且造成的误差自身无法消除,积分误差会越来越大,使得SOC估算精度不断降低。采用扩展卡尔曼滤波方法来提高SOC的估计精度,但由于电池充放电过程是一个复杂的过程,其采用的电池等效模型为PNGV模型,不能很好的描述该过程;采用BP神经网络网络与扩展卡尔曼滤波相结合的估算方法,虽然提高了SOC预测精度,但其电池模型参数为固定的常数,不足以描述电池充放电过程中的复杂情况。虽然上述文献所提方法能够适用于SOC的估计,但是估计精度都不高,并且没有充分合理的利用数据。
发明内容
本发明的目的在于:提出一种基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,解决电池等效电路模型不精确以及SOC预测误差较大等问题。本发明主要运用MATLAB/Simulink平台进行建模,针对传统基于EKF的SOC估计方法过度依赖于精确的电池模型,并且要求系统噪声必须服从高斯白噪声分布的问题,本文提出了将EKF算法的SOC与真实值的误差作为循环神经网络的输出,扩展卡尔曼滤波估算的SOC值及扩展卡尔曼滤波系数K作为循环神经网络的输入,然后使用训练过的RNN-EKF算法对电池的SOC进行估算。
为了实现上述目的,本发明是采取以下技术方案实现的:
基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,包括如下步骤:
步骤1、首先根据电池模型参数之间的函数关系,建立变阶RC等效电路模型;
步骤2、根据步骤1建立的变阶RC等效电路模型,将AIC(赤池信息量准则)应用在RC等效电路模型中,从而权衡模型的复杂度和拟合的精确度,得到脉冲放电工况下各阶数RC模型对应的AIC值,进而确定不同SOC状态下RC等效电路模型的阶数,最后对变阶RC等效电路模型进行参数辨识;
步骤3、在步骤2识别后的变阶RC等效电路模型的基础上,首先依据扩展卡尔曼滤波算法的基本原理,对电池模型参数之间的函数关系和单节锂电池SOC的表达式进行离散化,得到系统的状态方程和观测方程;随后采用扩展卡尔曼滤波算法对SOC进行迭代计算;其次利用循环神经网络强大的学习能力以及能够逼近任意非线性函数的特点对EKF算法进行优化,通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k(SOC'k表示k时刻EKF的状态量;Kik(i=1,2,3)表示通过EKF求解得到的卡尔曼增益)映射出EKF电池SOC估算的误差ΔSOCk,对EKF输出的SOC进行修正补偿,以实现对SOC的精准预测;最后通过仿真验证所提方法的有效性。
所述步骤1中的变阶RC等效电路模型为:
式中,UOCV为电池的开路电压;Iw为流经电池的电流;R0为电池的欧姆内阻;U0为欧姆内阻两端的电压;Ri为极化电阻;Ui分别为极化电阻Ri两端的电压;Ci为极化电容;其中i=1,2,3;Ut为电池的端电压;n为RC网络的阶数,其值为2或3。所述变阶RC等效电路模型根据锂电池SOC的变化,通过控制开关S1的导通截止来改变RC等效电路模型阶数。
所述步骤2的具体方法步骤如下:
S2-1、将AIC应用在RC等效电路模型中可以权衡模型的复杂度和拟合的精确度,其表达式为:
其中:
式中:为残差平方的平均值;/>表示模型拟合的准确性,该值越小,模型的精度越高;LD为数据长度;/>为对模型过拟合的惩罚度,其值越小,表明模型结构越简单;yk为实验测得的端电压值;/>为模型的端电压估计值。在一定阶数范围内(n≤4),模型阶数越高,其拟合精度越高,/>值越小,而/>值越大。最佳模型应当具有较高的精确度,同时要避免出现过拟合的情况,因此AIC值最小时对应的模型为最佳模型。
将仿真得到的端电压估计值即步骤1中的Ut值代入式(2)和式(3)中进行计算,得到脉冲放电工况下各阶数RC等效电路模型对应的AIC值。
S2-2、确定不同SOC状态下RC等效电路模型的阶数;在SOC处于[0.2,0.8]时使用二阶模型,处于其他范围时使用三阶模型;
S2-3、对变阶RC等效电路模型进行参数辨识;
S2-3-1、欧姆内阻辨识;
S2-3-2、RC网络极化参数辨识。
所述步骤3具体方法步骤如下:
S3-1、首先依据扩展卡尔曼滤波算法的基本原理,对电池模型参数之间的函数关系和单节锂电池SOC的表达式进行离散化,得到系统的状态方程和观测方程,随后采用扩展卡尔曼滤波算法对SOC进行迭代计算;
经典卡尔曼滤波算法只适用于线性系统,要求系统的状态方程以及观测方程都是线性的,而扩展卡尔曼滤波适应于非线性系统,其中心思想是利用泰勒公式在状态估计值处对非线性系统进行一阶泰勒展开,将系统线性化,然后运用卡尔曼滤波算法对系统状态进行估算。
对非线性系统进行扩展卡尔曼滤波算法时,其状态方程及观测方程如下:
式中;xk指的是k刻的系统状态,uk是k刻对系统的控制量。A和B是系统参数。yk是k时刻的测量值,ωk表示过程噪声,vk表示测量噪声。ωk和vk被假设成高斯白噪声,其均值为0,协方差为Q,R;上述观测方程为非线性观测方程。
将上述观测方程(4)进行一阶泰勒级数展开,并忽略高阶无穷小项可得:
令:
通过一阶泰勒级数展开的结果,进一步将非线性观测方程转化为线性观测方程,则有:
根据上述理论,对单节电池的变阶RC等效电路模型进行扩展卡尔曼滤波算法推导的方法步骤如下:
S3-1-1、对步骤1中的变阶RC等效电路模型即公式(1)进行求解,得:
单节动力电池的SOC表示为:
式中CN为电池额定容量,h为电池充放电效率,取为100%。
S3-1-2、对公式(8)、(9)、(10)进行离散化:
其中SOC(k)、为系统的状态方程,U(k)为系统的观测方程。
令:ωk=[ωSOC(K) ω1(K) ω2(K)ω3(K)]T则系统的状态方程可以转化为:
xk=Akxk-1+BkI(k-1)+ωk (12)
其中:
S3-1-3、对系统的非线性观测方程式进行一阶泰勒展开进行线性化:
令,
yk=U(k)
则观测方程可以转化为标准形式:
yk=Hkxk+vk (14)
S3-1-4、扩展卡尔曼滤波的更新过程可分为时间更新和状态更新,时间更新包括状态估算时间更新和误差协方差时间更新,状态更新包括卡尔曼增益矩阵更新、状态估计测量更新和协方差测量更新。在实际应用中,基于扩展卡尔曼滤波算法的SOC迭代计算是一个递推的过程,具体的迭代计算步骤如下:
S3-1-4-1,得到k时刻的状态变量的估算值,即状态更新方程:
式中:为在已知第k步以前状态的条件下第k步的先验状态估计;/>为第k-1步的后验状态估计。
误差协方差更新为:
式中为第k步的误差协方差矩阵先验值。
S3-1-4-2,求解卡尔曼增益,即卡尔曼增益矩阵更新方程:
式中,Rk为观测噪声协方差矩阵。
S3-1-4-3,根据卡尔曼增益修正状态变量,即状态估计测量更新方程:
根据卡尔曼增益修正协方差矩阵,即协方差测量更新方程:
当上述五个更新方程(15)~(19)执行完成后,循环回到步骤S3-1-4-1,计算k+1时刻的SOC。
S3-2、利用循环神经网络对EKF算法进行优化,通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk;
EKF算法在处理非线性系统时忽略了泰勒展开的高阶项,存在一定的模型误差,为了对误差进行补偿,使用循环神经网络(RecurrentNeuralNetworks,RNN)强大的学习能力以及能够逼近任意非线性函数的特点对EKF算法进行优化。
RNN网络(循环神经网络)的递推公式如下所示:
式中,Ok表示RNN在k时刻的输出值,V表示输出层和隐含层之间的权重矩阵,Sk表示RNN在k时刻隐含层的数值,Xk表示RNN在k时刻的输入值,U表示输入层和隐含层之间的权重矩阵,W表示Sk和Sk-1之间的权重矩阵,f表示隐含层的激活函数。对公式(20)的两个式子进行合并得:
式中,Ok(输出值)与输入量X1,X2,…,Xk均相关。由此可见,循环神经网络根据前期的输入量递推出当前时刻的最佳输出。
基于循环神经网络优化电池SOC误差估算包含4个输入层、1个隐含层和1个输出层;具体的如下:
(1)输入层,k时刻EKF的状态量SOC'k及滤波系数K1,K2,K3作为模型的输入。
Xk=[SOC'k,K1k,K2k,K3k]]T (22)
(2)隐含层,k时刻的隐含层节点为Sk。
Sk=[Sk,1,Sk,2,…Sk,n]T (23)
式中,tanh表示隐含层的激活函数。
(3)输出层,k时刻的电池SOC真实值与EKF输出SOC预测值的误差作为模型的输出。
式中,SOC1k表示k时刻电池SOC的真实值。
S3-3、基于循环神经网络优化扩展卡尔曼滤波电池SOC估算的基本原理即通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk,最后对EKF输出的SOC进行修正补偿。
本发明的优点如下:
1、本发明在变阶等效电路模型的基础上,提出一种基于RNN优化扩展卡尔曼滤波电池SOC估算方法。针对扩展卡尔曼滤波进行SOC估算时,过度依赖于精确的电池模型,并且要求系统噪声必须服从高斯白噪声,事实上,电池的系统噪声并不满足高斯分布,对SOC预测误差较大。为解决上述问题,提出基于循环神经网络(Recurrent Neural Networks,RNN)修正扩展卡尔曼滤波的SOC误差,并藉此修正扩展卡尔曼滤波的SOC,提高锂电池SOC估算精度。
2、基于RNN优化扩展卡尔曼滤波电池SOC估算方法,在未知SOC初始值时,估计值在初始SOC有较大误差的情况下能迅速向真值逼近,之后SOC估计值在SOC真值附近微小波动。RNN-EKF估算的SOC能够快速的追踪到SOC的实际值,且估计精度较高,具有很好的跟踪性能和抗噪性能。
附图说明
图1为变阶RC等效电路模型。
图2为脉冲放电实验的局部放大图。
图3为欧姆内阻辨识曲线。
图4为电阻参数辨识结果。
图5为电容参数辨识结果。
图6为RNN-EKF算法流程图。
图7为实际电池SOC与RNN-EKF估算SOC局部比较图。
图8为RNN-EKF估算SOC的误差曲线图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明提供一种基于循环神经网络优化扩展卡尔曼滤波的锂电池SOC估算方法,包括如下步骤:
步骤1,根据电池模型参数之间的关系,建立变阶RC等效电路模型。
步骤2,根据步骤1中建立的变阶RC等效电路模型,将AIC应用在RC等效电路模型中可以权衡模型的复杂度和拟合的精确度,得到脉冲放电工况下各阶数RC模型对应的AIC值,从而确定不同SOC状态下RC等效电路模型的阶数,最后对变阶RC等效电路模型进行参数辨识。
步骤3,在步骤2识别后的变阶RC等效电路模型的基础上,首先依据扩展卡尔曼滤波算法的基本原理,对电池模型参数之间的函数关系和单节锂电池SOC的表达式进行离散化,得到系统的状态方程和观测方程;随后采用扩展卡尔曼滤波算法对SOC进行迭代计算;其次利用循环神经网络强大的学习能力以及能够逼近任意非线性函数的特点对EKF算法进行优化,通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk,对EKF输出的SOC进行修正补偿,以实现对SOC的精准预测;最后通过仿真验证所提方法的有效性。
下面结合附图对每个步骤作进一步详细说明:
步骤1中:采用了一种兼顾实用性和精确性的可变阶RC网络等效电路模型,变阶RC等效电路模型在Thevenin模型的基础上增加了可变阶的RC网络电路结构,如图1所示。
图1中:UOCV为电池的开路电压;Iw为流经电池的电流;R0为电池的欧姆内阻;U0为欧姆内阻两端的电压;Ri为极化电阻;Ui分别为极化电阻Ri两端的电压;Ci为极化电容;其中i=1,2,3;Ut为电池的端电压。对图1进行分析,可以得到如下方程:
式中,n为RC网络的阶数,其值为2或3。变阶RC等效电路模型根据锂电池SOC的变化,通过控制开关S1的导通截止来改变RC等效电路模型阶数(通过控制开关的导通截止来改变电路模型阶数是常规方法)。
步骤2中:将AIC应用在RC等效电路模型中可以权衡模型的复杂度和拟合的精确度,得到脉冲放电工况下各阶数RC模型对应的AIC值,从而确定不同SOC状态下RC等效电路模型的阶数,最后对变阶RC等效电路模型进行参数辨识。具体设计步骤如下:
AIC应用在RC等效电路模型中可以权衡模型的复杂度和拟合的精确度,其表达式为:
其中:
式中:为残差平方的平均值;/>表示模型拟合的准确性,该值越小,模型的精度越高;LD为数据长度;/>为对模型过拟合的惩罚度,其值越小,表明模型结构越简单;yk为实验测得的端电压值;/>为模型的端电压估计值。在一定阶数范围内(n≤4),模型阶数越高,其拟合精度越高,/>值越小,而/>值越大。最佳模型应当具有较高的精确度,同时要避免出现过拟合的情况,因此AIC值最小时对应的模型为最佳模型。
RC网络从三阶增加到五阶,会增加模型的复杂度,甚至采用五阶RC等效电路模型时预测精度反而下降,且模型更复杂。因此阶数辨识主要是对一阶、二阶和三阶模型进行辨识。将仿真得到的端电压估计值代入式(2)和式(3)中进行计算,可以得到脉冲放电工况下各阶数RC等效电路模型对应的AIC值。一阶模型在全SOC范围内的AIC值均大于二阶和三阶模型,二阶、三阶模型的AIC值相差不大,因此,变阶RC等效电路模型实际上是二阶RC模型和三阶RC模型的切换。当SOC处于[0,0.2)和(0.8,1.0]时(即开路电压两端剧烈变化的指数区),三阶模型的AIC值明显低于二阶模型;当SOC处于是[0.2,0.8]时,两种模型的AIC值相差不大,二阶模型即可满足使用要求。因此,为了平衡模型的复杂度与准确度,在SOC处于0.2~0.8时使用二阶模型,处于其他范围时使用三阶模型,模型的切换通过控制图1电路模型中开关S1的开合来实现。
在对变阶RC等效电路模型的电阻、电容进行参数辨识之前,首先对电池脉冲放电时的电压响应曲线进行分析。
图2为脉冲放电实验的局部放大图,将其分为4个阶段进行分析。
第一阶段(AB段):电池从静置到加载放电,端电压出现跳跃式下降,这是由于欧姆内阻分压的突然消失造成的。
第二阶段(BC段):随着放电时间的增加,电压以指数变化的趋势缓慢降低,这是RC惯性环节影响的结果。
第三、四阶段(CD、DE段):电池从放电状态到静置状态,电压响应同样经历了跳跃式上升和指数式缓慢升高的过程,原理与第一、二阶段相同。
上面描述的这种电压变化现象叫做电池的回弹电压特性。由于电池的电极材料、电解液、电池极化反应等因素,电池加负载时会产生一定的压降,我们把这些因素综合在一起作为电池的等效阻抗。由上面的分析可知,回弹电压特性就是由等效阻抗的不同部分引起的。这为下面对各部分等效阻抗进行辨识提供了依据。
(1)欧姆内阻辨识
图3中AB段和CD段的变化体现了R0的内阻特性,选取CD段计算R0的值,公式如下:
根据上述方法,依次辨识得到各个方向SOC点的欧姆内阻。辨识结果如图3。
(2)RC网络极化参数辨识
图3中BC段和DE段电压的缓慢变化是由于RC回路的作用,随着RC回路释放电量,电压最终趋于稳定,可以通过这2段曲线的指数拟合求出回路的参数值。
根据式(1)解微分方程有:
式中,τi=RiCi(i=1,2,3)分别为3个RC环节的时间常数。
电池的输出方程为:
使用MATLAB cftool工具箱对图3中的DE段曲线进行拟合,将式(27)写成指数拟合函数的表达式:
对比式(27)和式(28),可得:
在图3中的AB段之前,电池已经静置了一段时间,此时Ri两端的电压近似为0,则值为0,因此BC段可以视为RC回路的零状态响应。以B点作为t=0的时刻,则RC回路的零状态响应为:
电池的输出方程为:
将式(31)写成指数拟合函数的表达式:
将求得的τi代入式(32),可以求得:
再根据τi=RiCi(i=1,2,3),就可以算出Ci的值。
当SOC处于[0.2,,0.8]时,使用二阶RC模型,需辨识前2个RC网络中的极化电阻和极化电容;当SOC处于[0,0.2)和(0.8,1]时,使用三阶RC模型,需辨识3个RC网络中的极化电阻和极化电容。由式(32)和式(33)可以求得所需参数,并得到如图4、5所示的辨识结果。由于SOC为0和1时无法通过上述方法辨识,因此采用多项式拟合的方法得到其拟合值。
步骤3中:首先介绍扩展卡尔曼滤波算法的基本原理,对电池模型参数之间的函数关系和单节锂电池SOC的表达式进行离散化,得到系统的状态方程和观测方程,随后采用扩展卡尔曼滤波算法对SOC进行迭代计算;其次利用循环神经网络强大的学习能力以及能够逼近任意非线性函数的特点对EKF算法进行优化,通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk,最后对EKF输出的SOC进行修正补偿,以实现对SOC的精准预测;最后通过仿真验证所提方法的有效性。具体设计步骤如下。
经典卡尔曼滤波算法只适用于线性系统,要求系统的状态方程以及观测方程都是线性的,而扩展卡尔曼滤波适应于非线性系统,其中心思想是利用泰勒公式在状态估计值处对非线性系统进行一阶泰勒展开,将系统线性化,然后运用卡尔曼滤波算法对系统状态进行估算。
对非线性系统进行扩展卡尔曼滤波算法时,其状态方程及观测方程如下:
式中;xk指的是k刻的系统状态,uk是k刻对系统的控制量。A和B是系统参数。yk是k时刻的测量值,ωk表示过程噪声,vk表示测量噪声。ωk和vk被假设成高斯白噪声,其均值为0,协方差为Q,R。将非线性的观测方程进行一阶泰勒级数展开,并忽略高阶无穷小项可得:
令:
将其非线性观测方程转化为线性观测方程,则有:
根据上述理论,对单节电池的变阶RC等效电路模型,进行扩展卡尔曼滤波算法推导。
对(1)式进行求解可得:
单节动力电池的SOC可表示为:
式中CN为电池额定容量,η为电池充放电效率,取为100%。
对(38)、(39)、(40)式进行离散化有:
其中,其中SOC(k)、为系统的状态方程,U(k)为系统的观测方程。令:/>ωk=[ωSOC(K) ω1(K) ω2(K) ω3(K)]T
则系统的状态方程可以转化为:
xk=Akxk-1+BkI(k-1)+ωk (42)
其中:
对系统的非线性观测方程式进行一阶泰勒展开进行线性化:
令:
yk=U(k)
则观测方程可以转化为标准形式:
yk=Hkxk+vk (44)
扩展卡尔曼滤波的更新过程可分为时间更新和状态更新,时间更新包括状态估算时间更新和误差协方差时间更新,状态更新包括卡尔曼增益矩阵更新、状态估计测量更新和协方差测量更新。在实际应用中,基于扩展卡尔曼滤波算法的SOC算是一个递推的过程。具体的计算步骤如下:
第一步,得到k时刻的状态变量的估算值,即状态更新方程:
式中:为在已知第k步以前状态的条件下第k步的先验状态估计;/>为第k-1步的后验状态估计。
误差协方差更新为:
式中为第k步的误差协方差矩阵先验值。
第二步,求解卡尔曼增益,即卡尔曼增益矩阵更新方程:
式中,Rk为观测噪声协方差矩阵。
第三步,根据卡尔曼增益修正状态变量,即状态估计测量更新方程:
根据卡尔曼增益修正协方差矩阵,即协方差测量更新方程:
当上述五个更新方程执行完成后,循环回到第一步,计算k+1时刻的SOC。
EKF算法在处理非线性系统时忽略了泰勒展开的高阶项,存在一定的模型误差,为了对误差进行补偿,使用循环神经网络(Recurrent Neural Networks,RNN)强大的学习能力以及能够逼近任意非线性函数的特点对EKF算法进行优化。RNN网络的递推公式如下所示:
式中,Ok表示RNN在k时刻的输出值,V表示输出层和隐含层之间的权重矩阵,Sk表示RNN在k时刻隐含层的数值,Xk表示RNN在k时刻的输入值,U表示输入层和隐含层之间的权重矩阵,W表示Sk和Sk-1之间的权重矩阵,f表示隐含层的激活函数。对上述两个式中进行合并有:
式中,Ok(输出值)与输入量X1,X2,…,Xk均有关系。由此可见,循环神经网络根据前期的输入量递推出当前时刻的最佳输出。
基于循环神经网络优化电池SOC误差估算包含4个输入层、1个隐含层和1个输出层。
(1)输入层:k时刻EKF的状态量SOC'k及滤波系数K1,K2,K3作为模型的输入。
Xk=[SOC'k,K1k,K2k,K3k]T (52)
(2)隐含层:k时刻的隐含层节点为Sk。
Sk=[Sk,1,Sk,2,…Sk,n]T (53)
式中,tanh表示隐含层的激活函数。
(3)输出层:k时刻的电池SOC真实值与EKF输出SOC预测值的误差作为模型的输出。
式中,SOC1k表示k时刻电池SOC的真实值。
基于循环神经网络优化扩展卡尔曼滤波电池SOC估算的基本原理即通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk,最后对EKF输出的SOC进行修正补偿。其原理框图如图6。
通过MATLAB/Simulink平台建立电池变阶等效模型,在HPPC工况下,根据电池等效模型,在电池的工作电流及电压中添加一定的噪声,模拟电流及电压测量时的随机误差,然后运用循环神经网络优化的扩展卡尔曼滤波算法,对电池的剩余电量SOC进行估算,得到如图7、8所示的实验结果。
在未知SOC初始值时,估计值在初始SOC有较大误差的情况下能迅速向真值逼近,之后SOC估计值在SOC真值附近微小波动。RNN-EKF估算的SOC能够快速的追踪到SOC的实际值,具有良好的鲁棒性。从图上可以看出,RNN-EKF算法估算的SOC与实际值误差不大,很好的追踪了实际的SOC值。基于RNN-EKF的SOC估计方法,最大估计误差小于1.3%,估算出的SOC与用精确的数学方法计算出SOC之间差别不大,大多集中于±0.005的区间内。因此,表明RNN-EKF算法在电池SOC估算方面具有精度高、收敛快和实用性较强的优点。
Claims (5)
1.一种基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,其特征在于,包括如下步骤:
步骤1、根据电池模型参数之间的关系,建立变阶RC等效电路模型;
步骤2、根据步骤1中建立的变阶RC等效电路模型,将AIC应用在RC等效电路模型中,从而权衡模型的复杂度和拟合的精确度,得到脉冲放电工况下各阶数RC模型对应的AIC值,进而确定不同SOC状态下RC等效电路模型的阶数,最后对变阶RC等效电路模型进行参数辨识;
步骤3、在步骤2识别后的变阶RC等效电路模型的基础上,首先依据扩展卡尔曼滤波算法的基本原理,对电池模型参数之间的函数关系和单节锂电池SOC的表达式进行离散化,得到系统的状态方程和观测方程;随后采用扩展卡尔曼滤波算法对SOC进行迭代计算;其次利用循环神经网络强大的学习能力以及能够逼近任意非线性函数的特点对EKF算法进行优化,通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk,对EKF输出的SOC进行修正补偿,以实现对SOC的精准预测;最后通过仿真验证所提方法的有效性;SOC'k表示k时刻EKF的状态量;Kik(i=1,2,3)表示通过EKF求解得到的卡尔曼增益。
2.根据权利要求1所述的基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,其特征在于,所述步骤1中的变阶RC等效电路模型为:
式中,UOCV为电池的开路电压;Iw为流经电池的电流;R0为电池的欧姆内阻;U0为欧姆内阻两端的电压;Ri为极化电阻;Ui分别为极化电阻Ri两端的电压;Ci为极化电容;其中i=1,2,3;Ut为电池的端电压;n为RC网络的阶数,其值为2或3;
所述变阶RC等效电路模型根据锂电池SOC的变化,通过控制开关S1的导通截止来改变RC等效电路模型阶数。
3.根据权利要求2所述的基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,其特征在于,所述步骤2的具体方法步骤如下:
S2-1、将AIC应用在RC等效电路模型中可以权衡模型的复杂度和拟合的精确度,其表达式为:
其中:
式中:为残差平方的平均值;/>表示模型拟合的准确性,该值越小,模型的精度越高;LD为数据长度;/>为对模型过拟合的惩罚度,其值越小,表明模型结构越简单;yk为实验测得的端电压值;/>为模型的端电压估计值;
将仿真得到的端电压估计值即步骤1中的Ut值代入式(2)和式(3)中进行计算,得到脉冲放电工况下各阶数RC等效电路模型对应的AIC值;
S2-2、确定不同SOC状态下RC等效电路模型的阶数;在SOC处于[0.2,0.8]时使用二阶模型,处于其他范围时使用三阶模型;
S2-3、对变阶RC等效电路模型进行参数辨识,包括,
S2-3-1、欧姆内阻辨识;
S2-3-2、RC网络极化参数辨识。
4.根据权利要求3所述的基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,其特征在于,当RC网络的阶数n≤4时,模型阶数越高,其拟合精度越高,值越小,而值越大;最佳模型应当具有较高的精确度,同时要避免出现过拟合的情况,因此AIC值最小时对应的模型为最佳模型。
5.根据权利要求3或4所述的基于RNN优化扩展卡尔曼滤波的锂电池SOC估算方法,其特征在于,所述步骤3具体方法步骤如下:
S3-1、首先依据扩展卡尔曼滤波算法的基本原理,对电池模型参数之间的函数关系和单节锂电池SOC的表达式进行离散化,得到系统的状态方程和观测方程,随后采用扩展卡尔曼滤波算法对SOC进行迭代计算;
对非线性系统进行扩展卡尔曼滤波算法时,其状态方程及观测方程如下:
式中;xk指的是k刻的系统状态,uk是k刻对系统的控制量。A和B是系统参数;yk是k时刻的测量值,ωk表示过程噪声,vk表示测量噪声;ωk和vk被假设成高斯白噪声,其均值为0,协方差为Q,R;上述观测方程为非线性观测方程;
将上述观测方程(4)进行一阶泰勒级数展开,并忽略高阶无穷小项可得:
令:
通过一阶泰勒级数展开的结果,进一步将非线性观测方程转化为线性观测方程,则有:
根据上述理论,对单节电池的变阶RC等效电路模型进行扩展卡尔曼滤波算法推导的方法步骤如下:
S3-1-1、对步骤1中的变阶RC等效电路模型即公式(1)进行求解,得:
单节动力电池的SOC表示为:
式中CN为电池额定容量,h为电池充放电效率,取为100%;
S3-1-2、对公式(8)、(9)、(10)进行离散化:
其中SOC(k)、为系统的状态方程,U(k)为系统的观测方程;
令:ωk=[ωSOC(K) ω1(K) ω2(K) ω3(K)]T
则系统的状态方程可以转化为:
xk=Akxk-1+BkI(k-1)+ωk (12)
其中:
S3-1-3、对系统的非线性观测方程式进行一阶泰勒展开进行线性化:
令,
yk=U(k)
则观测方程可以转化为标准形式:
yk=Hkxk+vk (14)
S3-1-4、扩展卡尔曼滤波的更新过程可分为时间更新和状态更新,时间更新包括状态估算时间更新和误差协方差时间更新,状态更新包括卡尔曼增益矩阵更新、状态估计测量更新和协方差测量更新;
基于扩展卡尔曼滤波算法的SOC迭代计算步骤如下:
S3-1-4-1,得到k时刻的状态变量的估算值,即状态更新方程:
式中:为在已知第k步以前状态的条件下第k步的先验状态估计;/>为第k-1步的后验状态估计;
误差协方差更新为:
式中Pk -为第k步的误差协方差矩阵先验值;
S3-1-4-2,求解卡尔曼增益,即卡尔曼增益矩阵更新方程:
式中,Rk为观测噪声协方差矩阵;
S3-1-4-3,根据卡尔曼增益修正状态变量,即状态估计测量更新方程:
根据卡尔曼增益修正协方差矩阵,即协方差测量更新方程:
当上述五个更新方程(15)~(19)执行完成后,循环回到步骤S3-1-4-1,计算k+1时刻的SOC;
S3-2、利用循环神经网络对EKF算法进行优化,通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk;
RNN网络的递推公式如下所示:
式中,Ok表示RNN在k时刻的输出值,V表示输出层和隐含层之间的权重矩阵,Sk表示RNN在k时刻隐含层的数值,Xk表示RNN在k时刻的输入值,U表示输入层和隐含层之间的权重矩阵,W表示Sk和Sk-1之间的权重矩阵,f表示隐含层的激活函数;
对公式(20)的两个式子进行合并得:
式中,输出值Ok与输入量X1,X2,…,Xk均相关;
基于循环神经网络优化电池SOC误差估算包含4个输入层、1个隐含层和1个输出层,具体如下:
(1)输入层,k时刻EKF的状态量SOC'k及滤波系数K1,K2,K3作为模型的输入;
(2)隐含层,k时刻的隐含层节点为Sk;
Sk=[Sk,1,Sk,2,…Sk,n]T (23)
式中,tanh表示隐含层的激活函数;
(3)输出层,k时刻的电池SOC真实值与EKF输出SOC预测值的误差作为模型的输出;
式中,SOC1k表示k时刻电池SOC的真实值;
S3-3、基于循环神经网络优化扩展卡尔曼滤波电池SOC估算的基本原理即通过当前时刻及历史时刻的SOC'k,K1k,K2k,K3k映射出EKF电池SOC估算的误差ΔSOCk,最后对EKF输出的SOC进行修正补偿。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310478901.0A CN116718920A (zh) | 2023-04-28 | 2023-04-28 | 基于rnn优化扩展卡尔曼滤波的锂电池soc估算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310478901.0A CN116718920A (zh) | 2023-04-28 | 2023-04-28 | 基于rnn优化扩展卡尔曼滤波的锂电池soc估算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116718920A true CN116718920A (zh) | 2023-09-08 |
Family
ID=87863835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310478901.0A Pending CN116718920A (zh) | 2023-04-28 | 2023-04-28 | 基于rnn优化扩展卡尔曼滤波的锂电池soc估算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116718920A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117686920A (zh) * | 2024-02-02 | 2024-03-12 | 河南科技学院 | 一种用于电池系统内单体电池的端电压预测方法 |
-
2023
- 2023-04-28 CN CN202310478901.0A patent/CN116718920A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117686920A (zh) * | 2024-02-02 | 2024-03-12 | 河南科技学院 | 一种用于电池系统内单体电池的端电压预测方法 |
CN117686920B (zh) * | 2024-02-02 | 2024-04-12 | 河南科技学院 | 一种用于电池系统内单体电池的端电压预测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110398691B (zh) | 基于改进自适应双无迹卡尔曼滤波器的锂离子动力电池SoC估计方法 | |
Chen et al. | Battery state of charge estimation based on a combined model of Extended Kalman Filter and neural networks | |
CN109061506A (zh) | 基于神经网络优化ekf的锂离子动力电池soc估计方法 | |
CN107741569A (zh) | 一种基于分段扩展卡尔曼滤波的锂电池荷电状态的估算方法 | |
CN111060834A (zh) | 一种动力电池健康状态估算方法 | |
CN111948560A (zh) | 基于多因子评估模型的锂电池健康状态估算方法 | |
CN110703114A (zh) | 一种基于电-热-神经网络耦合模型的动力电池soc和sot联合状态估计方法 | |
CN111650517B (zh) | 一种电池荷电状态估算方法 | |
CN106126783A (zh) | 一种锂离子电池变时间尺度模型参数估计方法 | |
CN112269133B (zh) | 一种基于预充电路模型参数识别的soc估计方法 | |
CN114660464A (zh) | 一种锂离子电池荷电状态估算方法 | |
CN113777510A (zh) | 一种锂电池荷电状态估计方法及装置 | |
CN111428433A (zh) | 基于混合滤波的锂离子电池状态计算方法 | |
Shabarish et al. | SOC estimation of battery in hybrid vehicle using adaptive neuro-fuzzy technique | |
CN112946481A (zh) | 基于联合h∞滤波的滑模观测器锂离子电池soc估计方法及电池管理系统 | |
CN114114038A (zh) | 一种全寿命全温度下锂电池soc及可用容量联合估计方法 | |
CN112433154A (zh) | 基于ffrls和ekf的锂离子电池soc估测算法 | |
CN116718920A (zh) | 基于rnn优化扩展卡尔曼滤波的锂电池soc估算方法 | |
CN116047308A (zh) | 一种基于pid控制与dekf的锂电池soc估算方法 | |
CN113420444A (zh) | 一种基于参数在线辨识的锂离子电池soc估计方法 | |
CN116449219A (zh) | 一种改进vffrls的锂电池模型参数辨识方法 | |
CN115656848A (zh) | 一种基于容量修正的锂电池soc估算方法 | |
CN112946480B (zh) | 一种提高soc估计实时性的锂电池电路模型简化方法 | |
Sun et al. | Online model identification method of vanadium redox flow battery based on time-varying forgetting factor recursive least squares | |
CN114720881A (zh) | 一种基于改进初值带遗忘因子递推最小二乘法的锂电池参数辨识方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |