基于无迹卡尔曼滤波算法的锂电池SOC估计
2018-10-22邱焕尧王宏朋黄凯
邱焕尧,王宏朋,黄凯
(长安大学汽车学院,陕西 西安 710064)
前言
电池荷电状态(State of Charge, SOC),作为动力电池主要参数,越来越成为研究重点。本文采用 UKF(Unscented Kalman Filter),无迹卡尔曼滤波进行SOC估算。基本方法是通过无迹变换与经典卡尔曼滤波相结合[1]。经 UT变换,结合卡尔曼滤波的方法与思想,找到最优的系统状态[2]。在Matlab中编写程序,验证该算法对 SOC的估计精度较高,并且对模型误差的纠错能力加以验证。
1 电池模型的建立
应用卡尔曼滤波算法则应确定相关系统方程,建立理想的模型是实现该算法功能的关键。通过电池模型得到所需电池参数,由于一阶RC模型Thevenin模型精度较低,实际应用中并不合适,本文在Thevenin模型的基础上进行改进。如图1:
图1 二阶RC等效电路模型
其中Voc是开路电压,随着SOC的变化而变化,R0为电池的内阻,为了模拟电池极化现象,添加两个RC并联电路,Rs、Rl表示极化电阻,Cs、Cl表示极化电压。建立连续系统的电池模型方程:分别用τs=RsCs,τl=RlCl作为RC电路的时间响应常数。
2 模型参数的离线辨识
2.1 HPPC实验
本文选择容量为36AH的NCM(镍钴锰)锂电池为研究对象。采用HPPC实验录取数据、监测电池9性能。本文实验采用 NEWARE 第四代 BTS-4000检测系统检测充放电性能。按如下测试过程进行试验:第一工步:将电池以 1C充电电流充至4.25 V,然后以4.25 V的恒压将电池充满。充电完成后,电流为0.05 C;从第二工步开始到第十工步,在开始每一工步前静置5 min,以1 C放电电流放电10%SOC,然后静置30 min,以10 C电流放电10 s,再静置40 s后,用7.5 C的电流充电10 s;重复上述步骤循环至第十工步。结束全部测试流程后,用BTSDA电池测试系统数据分析软件分析采集到的电池数据。
2.2 参数辨识结果验证
图2 1C充电端电压仿真值与实际值对比图(初始SOC为0.1)
图3 1C放电端电压仿真值与实际值对比图(初始SOC为0.9)
根据SOC-OCV拟合方案,拟合得到曲线仿真结果如图2和图3,仿真开始时误差较大。这是由于电池充电过程是连续的。所以从实验开始实际曲线即已经开始,此时已有极化电压值[4]。在零时刻开始仿真,因为极化电压是从零开始的,所以SOC的初值是0.1时,仿真起始时会存在一定误差。图5为1C放电端电压仿真值与实际值对比图,初始SOC为0.9。仿真初值和实际值基本重合,证明实际曲线和仿真曲线初始极化电压都为零,所以在充电时并没有很大的误差。总体来说,仿真结果与电池特性相符合,并且仿真误差较小,故此电池模型符合仿真要求。
实际仿真过程中,由于数据是实时变化的,因此,为了使仿真结果接近实际值,因此要对数据进行不断的更新,直到收敛于仿真结果[5]。采用递推最小二乘法进行参数辨识,并得到最小二乘法参数辨识结果。如表1
表1 递推最小二乘法参数辨识结果
通过辨识结果可知,算法收敛且辨识结果接近模型估计值,说明可通过此算法对该电池模型进行估计。
3 SOC估计误差分析及结果验证
UKF算法对电池进行SOC估计,包括估计目标参数以及更新过程。根据输入电流得出SOC的估计值及误差;再根据方程的电压估计值与观测值的偏差,将误差误和差增益进行更新。重复该步骤,通过模型方程及 UKF算法编程纠正SOC估计值[6]。如图4和图5,可以看出起始阶段存在一定误差。随后两条曲线逐渐重合,且仿真误差较低。说明应用该算法精度较高,对SOC估计误差值具有较好的纠正作用。
图4 1C恒流工况SOC估计值与实际值对比图
图5 1C恒流充电工况SOC估计误差
下面以HPPC放电试验二工步为例,即电池SOC初始值为0.9时1C的放电过程。仿真结果如图6和图7:
图6 SOC估计值与实际值对比
图7 1C恒流放电工况SOC估计误差
由图可以知,在放电开始阶段,由于模型自身存在误差,所以起始误差较大,但很快UKF算法将误差降低到较小值,进一步验证UKF算法对系统误差具有良好的的矫正作用。
图8 1C脉冲充放电实验工况SOC估计值与实际值对比
图9 1C脉冲充放电实验工况SOC估计误差
因为HPPC脉冲充放电试验过程是不连续的,所以仿真过程持续时间不长。使用Matlab软件整理数据并进行仿真。仿真结果如图8和图9。
分析仿真结果可知,应用UKF算法后,仿真误差控制在在-0.02到+0.013之间,估计值与实际值轨迹基本重合,说明UKF算法对电池SOC的估计精度有所提升。
4 结论
本文通过采集到的数据,分析动力电池的参数变化,设计符合电池特性的等效电路模型。采用UKF算法分别对三种不同工况进行仿真,应用Matlab软件结合状态方程及实验数据。得到仿真结果,分析可知,经UKF算法对电池SOC进行估算,对降低初始SOC误差值,纠正系统误差回归合理范围具有很好的作用。