1、湖北汽车工业学院学报Journal of Hubei University of Automotive Technology第 37 卷第 1 期2023 年 3 月Vol.37 No.1Mar.2023doi:10.3969/j.issn.1008-5483.2023.01.015基于改进卡尔曼滤波锂离子电池SOC估计蔡硕,赵慧勇,赵莹莹(湖北汽车工业学院 汽车工程学院,湖北 十堰 442002)摘 要:为了估算锂离子电池的剩余电量,考虑估计过程中的噪声影响,采用卡尔曼滤波方式进行电池的荷电状态估计研究。以戴维南等效电路模型为基础进行了电池参数的辨识,利用Simulink建立基于卡尔曼滤波的
2、电池荷电状态估计模型。分析了电池在不同的放电电流的工况下,测量误差对电池荷电状态估计的影响,提出了改进卡尔曼滤波算法。仿真结果表明:与拓展卡尔曼滤波算法相比,改进卡尔曼滤波算法精度更高。关键词:锂电池;电池荷电状态;卡尔曼滤波;MATLAB;测量误差中图分类号:TM 912文献标识码:A文章编号:1008-5483(2023)01-0077-04SOC Estimation of Lithium Ion Battery Based onImproved Kalman FilterCai Shuo,Zhao Huiyong,Zhao Yingying(School of Automotive E
3、ngineering,Hubei University of Automotive Technology,Shiyan 442002,China)Abstract:In order to estimate the remaining power of lithium-ion battery,Kalman filter was used to estimate the state of charge(SOC)of battery,considering the influence of noise in the estimation process.Firstly,the battery par
4、ameters were identified based on Thevenin equivalent circuit model.Then,theSOC estimation model based on the principle of Kalman filter was established by Simulink.The influence of measurement error on SOC estimation under different discharge current was analyzed and an improved Kalman filter algori
5、thm was proposed.The simulation results show that the improved Kalman filter algorithm has higher accuracy thanthe original extended Kalman filter algorithm.Key words:lithiumbattery;stateofcharge;Kalmanfilter;MATLAB;systematicerror收稿日期:2022-03-10;修回日期:2022-11-22第一作者:蔡硕(1997-),男,硕士生,从事新能源汽车方面的研究。E-ma
6、il:由于具有能量密度高、充放电性能好、使用寿命长的特性,锂电池已经在电动汽车上被广泛应用1。电池的荷电状态(state of charge,SOC)是汽车续驶里程的重要指标,为了缓解消费者的“里程焦虑”2,对电池的SOC进行估计显得尤为重要。目前,针对电池的SOC估算方法主要有安时积分法、开路电压法、卡尔曼滤波法、神经网络法等3。安时积分法4通过对电流进行积分得到电池在一段时间内损失的容量,其精度与电池的初始SOC值和测量电流的精度相关,并且随着时间的增加,电流的累积误差会越来越大,难以准确地估计电池的SOC值;开路电压法利用电池的开路电压与SOC值间的相关特性,直接将电池的SOC值与电池的
7、开路电压对应而得到,但是由于电池的回弹特性,往往需要长时间的静置,才能得到准确的数值,因此开路电压法不能做到实时估计;神经网络算法52023年3月湖北汽车工业学院学报利用大量与SOC值相关的数据去训练模型,得到相关值输入与SOC值间的关系,但是该算法需要大量的数据作为算法依据,其精度对算法要求和数据要求较高,难度较大。卡尔曼滤波算法由美国学者Kalman在20世纪60年代初提出6,该算法通过系统的线性状态方程,利用前一刻的测量值和误差值不断迭代而得到1个较为精确的修正值。但是卡尔曼滤波不适应于非线性系统,所以衍生出了扩展卡尔曼滤波,将非线性系统使用泰勒展开进行线性化处理,再使用卡尔曼滤波进行估
8、算7。文中以扩展卡尔曼滤波为基础,对SOC估计过程中的测量误差进行讨论,针对不同的电流确定不同的测量误差初值,讨论对电池SOC估计结果的影响。先对Thevenin电池模型进行参数辨识,建立基于卡尔曼滤波的锂电池SOC的估算方法,针对不同的电流工况进行仿真测试,使用不同的测量误差估计,提高系统对噪声误差的适应性。1电池建模及参数辨识1.1 电池模型电池的状态模型主要有电化学模型、神经网络模型和等效电路模型8。由于电化学模型和神经网络模型计算量较大且依赖于电池数据,等效电路模型能较好地反应电池的动态响应,所以文中选择等效电路模型。常见的等效电路模型有Rint模型、Thevenin模型和PNGV模型
9、9等。Thevenin模型参数较少便于计算,且能够较好地表达电池的电化学特性、精度较高,模型见图1。其中UL为端电压,UOC为开路电压,r为电池的欧姆内阻,C和R分别表示电池的极化电容和极化内阻。Thevenin模型函数10为UL=UOC-Ir-IRR,I=IR+()I-IRC(1)式中:I为主路电流;IR为流经极化内阻的电流。基于安时积分和电池的SOC可得当前的SOC:SOC=SOC0-C-1n0tIdt(2)式中:SOC为电池当前状态的剩余电量;SOC0为电池初始状态剩余电量;Cn为电池总额定容量;为电池充放电效率。以电池的SOC和极化内阻上的电流作为状态变量,以Thevenin模型的回路
10、方程作为观测方程建立离散状态方程:|SOC(k+1)IR(k+1)=|100e-t/(RC)|SOC(k)IR(k)+|-Cn(1-e-t/(RC)I(k)(3)UL(k)=UOC(SOC(k)-I(k)r-IR(k)R(4)式中:t为采样周期;UOC(SOC(k)为当前SOC下电池的开路电压。1.2 SOC-OCV曲线在卡尔曼滤波的过程中需要得到电池的SOC与开路电压(open circuit voltage,OCV)变化率的关系。以FT-6200电子负载为基础,对电池进行恒流充放电测试11,可得电池的端电压与SOC值的关系。按照恒电流叠加的方法,电池内部的极化反应可忽略不计,将电池充电曲线
11、与放电曲线叠加在一起,可以得到电池开路电压与SOC值的关系曲线。在恒流状态下,电池的开路电压表达式12如下:UOC=(ULch+ULdisch)/2ULch=UOC-Ir-URULdisch=UOC+Ir+UR(5)式中:ULch为电池充电时的端电压;ULdisch为电池放电时的端电压。电池的 SOC-OCV 曲线如图 2 所示,对SOC-OCV曲线进行非线性化求导得SOC-OCV变化率的关系。4.24.03.83.63.43.23.02.8开路电压/V电池荷电状态00.20.40.60.81.0图2 电池SOC-OCV曲线图1.3 模型参数辨识考虑到SOC-OCV的非线性关系,使用非线性最小
12、二乘法13对Thevenin模型中的r、R、C进行参数辨识。其代价函数为E=minin(yie-yi)2(6)式中:E为最小误差平方和;yie为Thevenin模型在UOCIrCRIRUL图1 Thevenin电池模型 78第37卷 第1期当前放电工况下输出的端电压的预测值;yi当前放电工况下实际电池的端电压。以磷酸铁锂18650电池为基础,采用FT-6200电子负载搭建电池放电工况,实验及数据采集设备见图3。定义瞬时放电工况:在10 s时进行放电,放电电流为2 A,放电时间为5 s。测得电池端电压相对应的瞬态响应曲线见图4。在第10 s、15 s时,电池的压降和压升是由电池的极化内阻造成的;
13、在1011 s和1516 s,电池端电压的响应会有1个缓慢下降或者上升的过程,这是由电池的极化内阻和极化电容造成的。基于MATLAB中最小二乘法,数据迭代处理后得到电池的r为0.085,R为0.044,C为122.87 F。1.4 模型验证将模型参数代入式(3)中,通过比较模型得到的端电压值与实际测量的端电压值,验证模型参数的准确性。使用0.1 A恒流放电的工况进行实验,将实验得到的数据与仿真数据进行对比,见图5。电池的仿真电压与实际电压曲线基本一致,误差在0.01 V左右,但在仿真曲线的末端,其误差逐渐增加,这是由于电池在放电末期内部化学反应不稳定导致的3。数据表明建立的Thevenin模型
14、及其参数精确度较好,能够正确地反应电池的相关特性。4.204.154.104.054.003.953.90端电压/V时间/s02468 10 12 14 16 18 20仿真值实际值4.03.83.63.43.23.02.82.6开路电压/V时间/s024681210图3 电池测试实验设备图4 电池放电电压特性曲线图5 模型参数验证曲线2卡尔曼滤波SOC估计算法在电池SOC的估计过程中,由于过程误差和测量误差的存在,需要对系统过程误差和测量误差的协方差进行实时更新,以减小过程误差和测量误差对电池SOC估计精确度的影响4。在实际工况中,过程误差和测量误差通常是未知的,因此有学者通过自适应拓展卡尔
15、曼滤波8方法加入遗忘因子对系统的误差方差进行自适应调整,但是该方法计算较复杂。文中在拓展卡尔曼滤波14的基础上针对不同的电流工况,使用不同测量误差进行讨论。在电池充放电的过程中,电流增加时,电池内部极化内阻的响应也会增加,导致误差增大,所以文中选择在大电流工况时使用较大的测量误差,小电流工况时使用较小的测量误差。卡尔曼滤波过程中的状态预测更新公式为SOC(k+1)=SOC(k)-CnI(k)t(7)误差的协方差更新公式为P=PAPT+A=|100e-t/()RC(8)式中:P为优化后的状态值所对应的协方差矩阵;为系统过程误差矩阵,由系统估计模型的误差导致;Ak为状态矩阵。系统端电压预测更新公式
16、为UL(k)=UOC(SOC(k)-I(k)r-IR(k)R(9)预估增益矩阵Lk更新公式为Lk=PkCTkCkPkCTk+V-1(10)式中:V为测量误差矩阵,由测量过程中传感器的误差导致;Ck为观测矩阵。通过状态预估方程和观测方程可以把安时积分法和开路电压法结合起来,通过调整过程误差和测量误差的过程来改变Lk。Lk较大时,卡尔曼滤波过程更依赖测量值对SOC值的修正结果。Lk较小时,卡尔曼滤波过程更依赖状态方程的估计值。更新状态预估值:Xk+1=Xk+Lk()UL-U?LXk=SOC()kI()kT(11)误差协方差更新:Pk+1=()I-LkCkPkCk=U?OC(SOC(k)-1(12)通过对式(7)(12)的计算,建立改进拓展卡尔曼滤波算法。针对脉冲电流,定义不同的测量误差,并与误差模型固定的拓展卡尔曼滤波相比。3仿真验证3.1 实验工况与仿真平台为验证算法的准确性,设计了2 A电流和1 A蔡硕,等:基于改进卡尔曼滤波锂离子电池SOC估计 792023年3月湖北汽车工业学院学报电流交替放电的工况,20 s作为1个周期,对该模型进行仿真与实验,将改进拓展卡尔曼滤波与拓展卡尔曼滤波