本发明涉及锂电池技术领域,尤其涉及一种用于估计锂电池soc和sop的方法。
背景技术:
由于传统石油资源的匮乏以及环境污染的加剧,电动汽车被引入了市场。随着电动汽车的迅速发展,锂电池作为其主流动力来源则备受关注。电池作为电动汽车的重要组成部分,如何对其进行有效的管理并且最大程度地发挥电池的性能提高整车的续航里程是一项关键技术。电池soc是电池管理系统的一个重要参数,soc反映的是电池的可用容量状态,对soc的准确估计能够更有效地预测电动汽车的续航里程,电池sop的准确预测对于实现整车功率分配、能量优化以及延长电池组的使用寿命具有重要意义。
目前,现有的电池soc估计方法主要有安时积分法、神经网络法等,安时积分法由于在充放电运行过程中误差不断积累导致运行结果不准确,是一种开环的估计方法,神经网络法估计的准确性受到参数和训方法的影响,实际运行时需要获取大量的数据,适用性较差。sop估计的方法主要有查表法、基于复合脉冲的方法,查表法原理简单、清晰,但是不适用于动态估计。基于复合脉冲法使用的模型比较简单,无法准确描述锂电池的动态特性,并且忽略了电池本身设计的电流限制,可能会导致电池出现过充和过放现象从而威胁电池本身安全。
技术实现要素:
本发明目的就是为了弥补已有技术的缺陷,提供一种用于估计锂电池soc和sop的方法,采用了二阶等效电路模型,结合最小二乘法实现电池模型参数的辨识。针对卡尔曼滤波在状态估计时出现的噪声不确定性导致的精度降低问题,提出了基于sage-husa滤波的平方根容积卡尔曼滤波法来实现锂电池soc的准确估计,通过电压、电流、soc三者约束来完成电池sop的预测。
本发明是通过以下技术方案实现的:
一种基于sage-husa滤波的平方根容积卡尔曼滤波锂电池soc和sop联合估计方法,对锂电池进行不同温度下的充放电实验获取锂电池的端电压和电流数据以及不同温度下锂电池实际放出的可用容量,将容量比定义为不同温度下锂电池实际放出的可用容量与电池额定容量的比值,拟合出温度与容量比的关系;
建立能反映电池特性的二阶等效电路模型,对等效电路模型方程进行离散化,得到离散化后的状态空间方程和观测方程;
根据不同温度下的充放电实验数据,确立开路电压、温度和soc的关系,结合实验测得的电压和电流数据使用最小二乘法对电池模型参数进行辨识;
根据建立的状态方程和观测方程,利用基于sage-husa滤波的平方根容积卡尔曼滤波算法对电池soc和sop进行估计。
具体如下:对电池进行不同温度下的充放电实验获取电池的端电压和电流值,以及不同温度下锂电池实际放出的可用容量值,拟合出温度与容量比的关系式,
式(1)中,ul表示电池模型输出端电压,uoc表示电池的开路电压,在充放电实验停止时充分静置后测得,通过拟合的方式获得电池soc和开路电压以及温度三者的关系;
upol1为电化学极化内阻rpol1端的电压,i为电流值,upol2为浓度差极化内阻rpol2端的电压,cpol1为电化学极化电容,cpol2为浓度差极化电容,ri为电池的欧姆内阻。
对等效电路模型方程式(1)进行离散化得到如下方程:
式(2)中,ul,k表示k时刻的端电压,ik为k时刻电流,δt为采样周期,upol1,k为k时刻rpol1两端的电压,upol2,k为k时刻rpol2两端的电压。
在进行hppc测试时,电池由静置状态变为开始放电状态时,端电压会产生一个突变值,利用该变化值除以当前的放电电流值可得到欧姆内阻ri,在电流消失后,两个rc回路失去了外加激励,相当于零输入响应,此时电池端电压方程:
根据等效电路模型离散化方程,选取两个极化内阻端的电压upol1、upol2和soc作为状态变量,电池端电压ul作为观测变量,建立下式所述的状态方程和观测方程:
状态方程:
观测方程:ul,k=uoc(sock,t0)-upol1,k-upol2,k-ikri+vk(6)
sock表示k时刻的soc值,w1,k表示与其对应的噪声;upol1,k表示k时刻电化学极化内阻两端的电压,w2,k表示与其对应的噪声;upol2,k表示k时刻浓度差极化内阻两端的电压,w3,k表示与其对应的噪声。η为电池充放电效率,ul,k表示k时刻电池的端电压,vk是与其对应的噪声。
结合上述状态方程和观测方程,利用基于sage-husa滤波的平方根容积卡尔曼滤波算法进行soc和sop估计,对应的状态方程和观测方程如下:
xk+1=f(xk,uk)+wk=akxk+bkuk+wk(7)
yk=h(xk,uk)+vk=ckxk+dkuk+vk(8)
上述式中,xk+1为状态变量表示下一时刻的状态值,xk表示当前时刻的状态值,uk表示当前时刻的输入变量,wk表示当前时刻的过程噪声,yk为观测变量表示当前时刻的观测值,vk表示当前时刻的测量噪声。ak为状态转移矩阵,bk为状态方程系数矩阵,ck为观测矩阵,dk为观测方程系数矩阵。f(xk,uk)表示系统状态模型函数,h(xk,uk)表示观测模型函数。
运用基于sage-husa滤波的平方根容积卡尔曼滤波算法进行soc和sop估计步骤:
初始化,设置参数初始值,x0、s0、q0、r0以及e的值,k=0,
时间更新,首先进行容积点计算,
量测更新,先对容积点进行计算:
卡尔曼增益计算、状态变量估计值及误差协方差平方根更新计算,卡尔曼增益计算:
过程噪声协方差和量测噪声协方差更新:
当k<μ,μ为观测样本数,令k=k+1,重复步骤2)、3)、4)、5),否则结束。
依据电压约束、电流约束、soc约束来进行sop预测
(1)电压约束:利用端电压值可以求出当前时刻的峰值电流值:
电流值可用下式表示:
由于电池在实际进行充放电时电压会有一定的限制,将截止电压的上限值表示为ul,max,下限值表示为ul,min,可得到电压约束下的充放电峰值电流。
放电峰值电流:
充电峰值电流:
(2)电流约束:电池本身在设计就存在充电和放电电流的限制,通常是指电池放电的最大电流和充电的最大电流它们分别可表示为idis和icha。
(3)soc约束:为了更好地对动力电池组进行保护,降低出现过充和过放的风险,需要对soc设置一定的限制条件,其最小值可以表示为socmin,最大值可以表示为socmax,对应放电峰值电流和充电峰值电流可用下式表示:
基于上述三者约束条件下放电峰值电流和充电峰值电流可表示为:
根据峰值电流和电压可以得到放电和充电峰值功率,放电峰值功率:
本发明的优点是:本发明基于sage-husa滤波的平方根容积卡尔曼滤波算法对锂电池进行soc估计,能够对系统噪声和过程噪声进行实时修正,减小噪声对soc估计的影响;相比于传统的卡尔曼滤波算法,本发明所提算法能够改善传统卡尔曼滤波算法在状态估计时出现的数值计算发散现象从而导致估计精度降低的问题,通过矩阵分解形式直接传播和更新状态协方差矩阵的平方根,保证了协方差矩阵的非负定性,提高了数值计算的稳定性,并且考虑了温度对电池实际放出容量的影响,对电池实际可用容量进行了修正,提高了估计结果的准确性。
附图说明
图1本发明方法实现示意图。
图2锂电池等效电路模型图。
图3算法实现流程图。
图4温度与电池可用容量关系曲线图。
图5soc估计结果图。
图6sop估计结果图。
具体实施方式
如图1、3所示,一种用于估计锂电池soc和sop的方法,首先对锂电池进行不同温度下的充放电实验获取锂电池的端电压和电流数据以及不同温度下锂电池实际放出的可用容量,拟合出温度与容量比的关系式;具体如下:
对电池进行不同温度下的充放电实验获取电池的端电压和电流值,以及不同温度下锂电池实际放出的可用容量值,拟合出温度与容量比的关系式,
如图2所示,对电池建立二阶等效电路模型;然后通过最小二乘法实现对模型参数的辨识,对建立的等效电路模型的方程进行离散化,建立离散的状态方程和观测方程;具体如下:
所建立的二阶等效电路模型数学方程如下:
式(1)中,ul表示电池模型输出端电压,uoc表示电池的开路电压,在充放电实验停止时充分静置后测得,通过拟合的方式获得电池soc和开路电压以及温度三者的关系;
upol1为电化学极化内阻rpol1端的电压,i为电流值,upol2为浓度差极化内阻rpol2端的电压,cpol1为电化学极化电容,cpol2为浓度差极化电容,ri为电池的欧姆内阻。
对等效电路模型方程式(1)进行离散化得到如下方程:
式(2)中,ul,k表示k时刻的端电压,ik为k时刻电流,δt为采样周期,upol1,k为k时刻rpol1两端的电压,upol2,k为k时刻rpol2两端的电压。
在进行hppc测试时,电池由静置状态变为开始放电状态时,端电压会产生一个突变值,利用该变化值除以当前的放电电流值可得到欧姆内阻ri,在电流消失后,两个rc回路失去了外加激励,相当于零输入响应,此时电池端电压方程:
根据等效电路模型离散化方程,选取两个极化内阻端的电压upol1、upol2和soc作为状态变量,电池端电压ul作为观测变量,建立下式所述的状态方程和观测方程:
状态方程:
观测方程:ul,k=uoc(sock,t0)-upol1,k-upol2,k-ikri+vk(6)
sock表示k时刻的soc值,w1,k表示与其对应的噪声;upol1,k表示k时刻电化学极化内阻两端的电压,w2,k表示与其对应的噪声;upol2,k表示k时刻浓度差极化内阻两端的电压,w3,k表示与其对应的噪声。η为电池充放电效率,ul,k表示k时刻电池的端电压,vk是与其对应的噪声。
最后根据测得的数据和离散的状态方程和观测方程,使用基于sage-husa滤波的平方根容积卡尔曼滤波算法对锂电池soc值进行估计,通过电压、电流以及soc三者约束来完成sop的预测;预测结果如图5、6所示,具体如下:对应的状态方程和观测方程如下:
xk+1=f(xk,uk)+wk=akxk+bkuk+wk(7)
yk=h(xk,uk)+vk=ckxk+dkuk+vk(8)
上述式中,xk+1为状态变量表示下一时刻的状态值,xk表示当前时刻的状态值,uk表示当前时刻的输入变量,wk表示当前时刻的过程噪声,yk为观测变量表示当前时刻的观测值,vk表示当前时刻的测量噪声。ak为状态转移矩阵,bk为状态方程系数矩阵,ck为观测矩阵,dk为观测方程系数矩阵。f(xk,uk)表示系统状态模型函数,h(xk,uk)表示观测模型函数。
运用基于sage-husa滤波的平方根容积卡尔曼滤波算法进行soc和sop估计步骤:
初始化,设置参数初始值,x0、s0、q0、r0以及e的值,k=0,
时间更新,首先进行容积点计算,
量测更新,先对容积点进行计算:
卡尔曼增益计算、状态变量估计值及误差协方差平方根更新计算,卡尔曼增益计算:
过程噪声协方差和量测噪声协方差更新:
当k<μ,μ为观测样本数,令k=k+1,重复步骤2)、3)、4)、5),否则结束。
依据电压约束、电流约束、soc约束来进行sop预测
(4)电压约束:利用端电压值可以求出当前时刻的峰值电流值:
电流值可用下式表示:
由于电池在实际进行充放电时电压会有一定的限制,将截止电压的上限值表示为ul,max,下限值表示为ul,min,可得到电压约束下的充放电峰值电流。
放电峰值电流:
充电峰值电流:
(5)电流约束:电池本身在设计就存在充电和放电电流的限制,通常是指电池放电的最大电流和充电的最大电流它们分别可表示为idis和icha。
(6)soc约束:为了更好地对动力电池组进行保护,降低出现过充和过放的风险,需要对soc设置一定的限制条件,其最小值可以表示为socmin,最大值可以表示为socmax,对应放电峰值电流和充电峰值电流可用下式表示:
基于上述三者约束条件下放电峰值电流和充电峰值电流可表示为:
根据峰值电流和电压可以得到放电和充电峰值功率,放电峰值功率: