本发明涉及电动汽车电池管理领域,具体涉及一种锂电池soc在线估计方法。
背景技术:
近年来,随着空气质量的日益恶化以及石油资源的渐趋匮乏,新能源汽车,尤其是纯电动汽车成为当今世界各大汽车公司的开发热点。动力电池组作为电动汽车的关键部件,动力电池soc被用来直接反应电池的剩余电量,是整车控制系统制定最优能量管理策略的重要依据,动力电池soc值的准确估计对于提高电池安全可靠性、提高电池能量利用率、延长电池寿命具有重要意义。
目前,常用的soc估计方法主要有开路电压法、安时积分法、卡尔曼滤波法和神经网络法等。
锂电池开路电压(ocv)可以表现其当前状态电池的放电能力,其与soc有良好的线性关系,根据ocv-soc关系估计soc的方法称为开路电压法。开路电压在电池工作状态下不能直接测量,只有在电池未工作的情况下才能近似测量,所以这种方法只适用于电动汽车的驻车状态。通常,开路电压法用于为其它估计方法提供soc的初始值。
安时积分方法的基本原理是电池在充放电过程中,通过电流对时间积分,可以计算出电池充入或放出的电量,将此电量除以电池当前状态可用容量,再与电池初始soc进行相应的加减运算即可得出当前状态soc值。安时积分法具有成本低、测量方便等优点,但在电动汽车场合应用时也有以下几个问题:需要借助其它方法获得soc初始值;电流测量精度对soc估计精度具有决定性影响;积分过程的累积误差无法消除,一次计算过程中如果充放电时间过长,累积误差可能导致估计结果不可靠。
神经网络法具有良好的非线性映射能力,理论上动力电池的非线性特性能够较好的由神经网络映射,但其需要大量的数据进行训练,使用复杂,训练数据和训练方法对估计精度的影响较大。
卡尔曼滤波法的核心思想是对动态系统的状态做出最小均方意义上的最优估计,卡尔曼滤波的优点在于误差纠正能力较强,不足在于估计精度对电池模型的准确性依赖较高。
因此需要建立一种简单易行、估算精度较高,鲁棒性强且能消除累积误差的soc估计方法。
技术实现要素:
本发明的目的是针对上述现有技术的不足,提供了一种锂电池soc在线估计方法,该方法采用基于最小二乘法和卡尔曼滤波法相结合的状态变量的联合估计算法,在一步递推过程中先用最小二乘法更新卡尔曼滤波器的模型参数,再根据滤波得到的soc求出ocv,根据ocv和测得的电压、电流信号用最小二乘法估计并更新下一步卡尔曼滤波运算中的模型参数,依次递推。实现了比传统无迹卡尔曼滤波算法精度更高,误差收敛性更强的技术效果。
本发明的目的可以通过如下技术方案实现:
一种锂电池soc在线估计方法,所述方法包括以下步骤:
1)在估算程序开始前,测量电池在静止状态下的开路电压voc(0),根据ocv-soc曲线,得到电池荷电状态的初始值soc(0);
2)根据电池的外特性建立电池的二阶rc等效模型,该模型包括一个电压源voc、一个直流内阻r以及两个rc并联环路,所述rc并联环路包括rs、cs、rp和cp,根据电池工作初期的电压响应曲线,通过曲线拟合的方法,估算电池等效模型的参数初始值r(0)、rs(0)、cs(0)、rp(0)和cp(0);
3)启动估算程序,根据步骤1)中电池荷电状态的初始值soc(0)和步骤2)中电池等效模型的参数初始值r(0)、rs(0)、cs(0)、rp(0)和cp(0),设定状态方程的匹配系数初值;
4)利用自适应无迹卡尔曼滤波算法得到当前电池荷电状态值soc(k),根据ocv-soc曲线,得到当前的开路电压voc(k);
5)启动带遗忘因子的最小二乘法,对当前电池等效模型的参数r(k)、rs(k)、cs(k)、rp(k)和cp(k)进行辨识,将辨识出来的当前电池等效模型的参数更新状态方程的匹配系数,求出下一时刻电池荷电状态值;
6)重复步骤4)和步骤5),反复推算,得到每个时刻的电池荷电状态值。
优选的,所述步骤3)中设定状态方程的匹配系数初值的具体过程为:根据电池的二阶rc等效模型以及荷电状态的积分法得:
其中,e(t)为电池开路电压ocv值,u(t)为电池端电压值,us为极化电容cs两端的电压,up为极化电容cp两端的电压,soc(t)为soc估计值,soc(t')为电池荷电状态上一时刻的初始值,cn为电池最大可用容量,η为库伦效率,对上式进行离散化,得状态方程:
uk=ek-ikr-us,k-up,k+υ(k)=f(sock)-ikr-us,k-up,k+υ(k)
其中:
其中,as、bs、ap、bp为状态方程的匹配系数,ω1(k)、ω3(k)、ω5(k)为系统噪声。
优选的,所述步骤4)的具体过程为:
令:
为了便于区别,在此取xk=[sock,us,k,up,k]为系统的原始状态;取yk为原始输出,对应电路模型中的uk;取uk为控制量,对应电路模型中的ik,且令ψ=[y1,y2…yk],然后进行自适应无迹卡尔曼滤波运算:
(1)状态估计时间更新
基于上一时刻状态最优估计得到扩展状态的均值和方差,据此选择(2l+1)个采样点,最后将采样点通过状态方程进行变换并完成状态预测:
一、初始化,初始状态确定
二、状态扩维
其中,q、r为协方差矩阵,是对称的矩阵,对角线上是各个维度上的方差;
扩展状态均值:
扩展状态方差:
三、选取采样点
sample={zi,xk-1,i},其中i=0、1、2、……2l+1,xk-1,i为所选粒子,zi是相应的加权值,粒子点按如下方式选取:
对应的加权系数为:
其中,λ为比例系数,满足:λ=α2(l+t)-l,z(m)、z(c)分别是粒子点均值和方差相对应的加权值;而
(2)均方误差时间更新
(3)系统输出先验估计
(4)滤波增益矩阵计算
(5)状态最优估计
(6)均方误差估计
由于过程噪声和测量噪声都是时变的,为了让噪声协方差实时更新,令:
其中,μk和yk|k-1,i分别是测量输出量的残差和各sigma点估算得到的测量输出量的残差,即可实现过程噪声和测量噪声的实时更新。
优选的,所述步骤5)的具体过程为:
将状态方程进行拉普拉斯变化得
所以:
其中,g(s)为回路阻抗的拉普拉斯形式;
采用双线性变换进行离散化,令
其中,a1、a2、a3、a4、a5为相应的常数系数,将上式转化成差分方程可得:
y(k)=e(k)-u(k)
=a1y(k-1)+a2y(k-2)+a3i(k)+a4i(k-1)+a5i(k-2)
其中,i(k)为系统输入,y(k)为系统输出,令:
θ=[a1a2a3a4a5]t
设k时刻传感器采样误差为e(k),则:
将
y=[y(3),y(4),y(5)……y(n+2)]t
e=[e(3),e(4),e(5)……e(n+2)]t
取泛函数j(θ):
因为最小二乘法原理是使j(θ)取最小值,所以求j(θ)极值,令:
其中,
递推最小二乘法是具有无限记忆长度的算法,对于电池系统,最小二乘法在递推运算过程中旧数据越来越多会导致递推结果不能良好的反应新数据的特性,为避免上述情况,引入遗忘因子λ,0<λ<1,即:
所以,即使(n+1)很大,p(n+1)也不趋于0,有效的克服了“数据饱和”现象,所述带遗忘因子最小二乘算法的步骤为:
当λ=1时,为普通最小二乘法,λ越小跟踪能力越强,但波动也越大;
由上述节算法求出θ值后,令:
此式右边的系数通过递推算法求出,左边即是模型的未知参数,至此带有遗忘因子的最小二乘法参数辨识的推导过程完成。
优选的,所述遗忘因子λ的取值范围为:0.95<λ<1。
本发明与现有技术相比,具有如下优点和有益效果:
1、本发明通过使用带遗忘因子的最小二乘法与自适应无迹卡尔曼滤波滤波算法相结合,估计动力电池荷电状态值,实现了比传统无迹卡尔曼滤波算法精度更高,误差收敛性更强的技术效果。
2、本发明通过采用遗忘因子λ(0<λ<1),避免了最小二乘法递推过程中旧数据越来越多、导致递推结果不能良好的反应新数据的特性的问题,有效的克服了“数据饱和”现象。
3、本发明在自适应无迹卡尔曼滤波算法(aukf)中,将每次测量的输出值和模型估计到的输出值的残差及各状态sigma点估算的输出值残差的加权作为新息来估计当前时刻的噪声协方差,让协方差随时间而更新,改变了传统无迹卡尔曼滤波算法(ukf)中协方差为常量不能满足噪声实时更新的特性,从而提高了估计精度。
附图说明
图1为本发明实施例估计方法的流程图。
图2为本发明实施例根据电池的外特性建立的电池二阶rc等效模型。
图3为锂电池放电结束端的电压响应曲线。
图4为本发明所述锂电池soc在线联合估计算法与传统自适应无迹卡尔曼滤波算法的soc估计值比较图。
图5为本发明所述锂电池soc在线联合估计算法与传统自适应无迹卡尔曼滤波算法的soc估计值误差比较图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例:
本实施例提供了一种锂电池soc在线估计方法,如图1所示,所述方法包括以下步骤:
步骤一、在估算程序开始前,测量电池在静止状态下的开路电压voc(0),根据ocv-soc曲线,得到电池荷电状态的初始值soc(0);
步骤二、根据电池放电结束端的电压响应曲线,如图3所示,建立电池的二阶rc等效模型,如图2所示,该模型包括一个电压源voc、一个直流内阻r以及两个rc并联环路,所述rc并联环路包括rs、cs、rp和cp,根据电池工作初期的电压响应曲线,通过曲线拟合的方法,估算电池等效模型的参数初始值r(0)、rs(0)、cs(0)、rp(0)和cp(0);
步骤三、启动估算程序,根据步骤一中电池荷电状态的初始值soc(0)和步骤二中电池等效模型的参数初始值r(0)、rs(0)、cs(0)、rp(0)和cp(0),设定状态方程的匹配系数初值;
其中,步骤3)中设定状态方程的匹配系数初值的具体过程为:根据电池的二阶rc等效模型以及荷电状态的积分法得:
其中,e(t)为电池开路电压ocv值,u(t)为电池端电压值,us为极化电容cs两端的电压,up为极化电容cp两端的电压,soc(t)为soc估计值,soc(t')为电池荷电状态上一时刻的初始值,cn为电池最大可用容量,η为库伦效率,对上式进行离散化,得状态方程:
uk=ek-ikr-us,k-up,k+υ(k)=f(sock)-ikr-us,k-up,k+υ(k)
其中:
其中,as、bs、ap、bp为状态方程的匹配系数,ω1(k)、ω3(k)、ω5(k)为系统噪声。
步骤四、利用自适应无迹卡尔曼滤波算法得到当前电池荷电状态值soc(k),根据ocv-soc曲线,得到当前的开路电压voc(k);
其中,所述步骤4)的具体过程为:
令:
为了便于区别,在此取xk=[sock,us,k,up,k]为系统的原始状态;取yk为原始输出,对应电路模型中的uk;取uk为控制量,对应电路模型中的ik,且令ψ=[y1,y2…yk],然后进行自适应无迹卡尔曼滤波运算:
(1)状态估计时间更新
基于上一时刻状态最优估计得到扩展状态的均值和方差,据此选择(2l+1)个采样点,最后将采样点通过状态方程进行变换并完成状态预测:
一、初始化,初始状态确定
二、状态扩维
其中,q、r为协方差矩阵,是对称的矩阵,对角线上是各个维度上的方差;
扩展状态均值:
扩展状态方差:
三、选取采样点
sample={zi,xk-1,i},其中i=0、1、2、……2l+1,xk-1,i为所选粒子,zi是相应的加权值,粒子点按如下方式选取:
对应的加权系数为:
其中,λ为比例系数,满足:λ=α2(l+t)-l,z(m)、z(c)分别是粒子点均值和方差相对应的加权值;而
(2)均方误差时间更新
(3)系统输出先验估计
(4)滤波增益矩阵计算
(5)状态最优估计
(6)均方误差估计
由于过程噪声和测量噪声都是时变的,为了让噪声协方差实时更新,令:
其中,μk和yk|k-1,i分别是测量输出量的残差和各sigma点估算得到的测量输出量的残差,即可实现过程噪声和测量噪声的实时更新。
步骤五、启动带遗忘因子的最小二乘法,对当前电池等效模型的参数r(k)、rs(k)、cs(k)、rp(k)和cp(k)进行辨识,将辨识出来的当前电池等效模型的参数更新状态方程的匹配系数,求出下一时刻电池荷电状态值;
其中,所述步骤5)的具体过程为:
将状态方程进行拉普拉斯变化得
所以:
其中,g(s)为回路阻抗的拉普拉斯形式;
采用双线性变换进行离散化,令
其中,a1、a2、a3、a4、a5为相应的常数系数,将上式转化成差分方程可得:
y(k)=e(k)-u(k)
=a1y(k-1)+a2y(k-2)+a3i(k)+a4i(k-1)+a5i(k-2)
其中,i(k)为系统输入,y(k)为系统输出,令:
θ=[a1a2a3a4a5]t
设k时刻传感器采样误差为e(k),则:
将
y=[y(3),y(4),y(5)……y(n+2)]t
e=[e(3),e(4),e(5)……e(n+2)]t
取泛函数j(θ):
因为最小二乘法原理是使j(θ)取最小值,所以求j(θ)极值,令:
其中,
递推最小二乘法是具有无限记忆长度的算法,对于电池系统,最小二乘法在递推运算过程中旧数据越来越多会导致递推结果不能良好的反应新数据的特性,为避免上述情况,引入遗忘因子λ,0<λ<1,即:
所以,即使(n+1)很大,p(n+1)也不趋于0,有效的克服了“数据饱和”现象,所述带遗忘因子最小二乘算法的步骤为:
当λ=1时,为普通最小二乘法,λ越小跟踪能力越强,但波动也越大,这里遗忘因子λ的取值范围为:0.95<λ<1;
由上述节算法求出θ值后,令:
此式右边的系数通过递推算法求出,左边即是模型的未知参数,至此带有遗忘因子的最小二乘法参数辨识的推导过程完成。
步骤六、重复步骤四和步骤五,反复推算,得到每个时刻的电池荷电状态值。
由图4与图5所示的本发明所述锂电池soc在线联合估计算法与传统自适应无迹卡尔曼滤波算法的soc估计值比较图与soc估计值误差比较图可以看出,本发明所述联合估计算法相比于传统无迹卡尔曼滤波算法精度更高、误差收敛性更强。
以上所述,仅为本发明专利较佳的实施例,但本发明专利的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明专利所公开的范围内,根据本发明专利的技术方案及其发明专利构思加以等同替换或改变,都属于本发明专利的保护范围。