APP下载

基于采样策略实时切换的SRUKF算法的SOC估计

2021-07-29徐钦赐宋年秀赵玉兰李正辉

电源技术 2021年7期
关键词:卡尔曼滤波电池精度

徐钦赐,宋年秀,赵玉兰,李正辉

(青岛理工大学机械与汽车工程学院,山东青岛 266520)

动力电池荷电状态(state of charge,SOC)的准确估算是电池管理系统(battery management system,BMS)的重要内容,在保证估算精度的前提下还要提高估算的实时性,即减少估算SOC占用的时间,这样可以降低BMS 的运行压力,提高控制效率。本文针对氢镍电池的特性建立了带有滞回特性的二阶RC 等效电路模型,并对电池化学反应时间的快、慢特性分别采用不同的辨识方法进行参数辨识,参数辨识结果的准确性是提高电池SOC估算的前提。

现阶段电池SOC的估算方法有很多,如模糊神经网络法[1]、扩展卡尔曼滤波法[2]、还有无迹卡尔曼滤波算法[3]等。模糊神经网络法的弊端是需要大量的训练数据,扩展卡尔曼滤波算法需要对非线性的电池状态空间模型进行线性化,围绕预测值进行Taylor 展开,并略去二次以上的项会降低估算的精度,使用无迹卡尔曼滤波算法进行估算时,有时会出现协方差负定的问题,造成滤波的发散。

本文采用安时积分法[4]作为氢镍电池SOC的参考值,对平方根无迹卡尔曼滤波[5](square root unscented kalman filter,SRUKF)的采样策略进行改进,采用实时切换采样策略的SRUKF 算法进行SOC的估算,并通过不同工况的数据进行估算方法的精度验证。

1 动力电池电路模型

等效电路模型能够很好地反映电池的特性是精准估算电池SOC的前提条件,由于本文选用氢镍电池测试数据进行研究,所以针对氢镍电池的外特性选择了考虑滞回特性的二阶RC 等效电路模型,如图1 所示。

图1 中,R0表示电池的欧姆内阻;并联的R1、C1表示电池的电化学极化;并联的R2、C2表示电池的浓差极化;Vh表示电池的滞回特性;EEMF表示电池的平衡电势;VOCV表示电池开路电压;V0表示负载电压。

图1 考虑滞回的二阶RC等效电路模型

图2 是通过对氢镍电池分别进行间歇性的充、放电测试得到的数据,放电工况具体测试内容为:电池每放出10%的电量就将电池静置3 h,此时氢镍电池基本处于稳定状态,并记录此时的开路电压,充电工况与放电工况进行类似处理。从图2 可以看出,在同一SOC(sate of charge)时刻下,充电的开路电压远远高于放电的开路电压,这就是氢镍电池的滞回特性[6]。当SOC在30%左右时,充、放电电压误差接近15 V,在进行SOC估算时,若不考虑滞回特性,就有可能将充放电工况下的电压值混淆,从而影响估算的精度。选择二阶模型是兼顾参数辨识过程的复杂度以及实时性和精度同时考虑的,通过文献[7]可知,模型的阶数越高则模型的精度就越高,同时模型阶数提高也相应地提高了计算的复杂度,参数辨识将会变得非常复杂,实时性较低,二阶精度既能够保证实时性,还可以保证估算的精度[8]。

图2 静置3 h的氢镍电池开路电压与SOC的关系

2 模型参数辨识及验证

由氢镍电池的外特性可知,氢镍电池的化学反应可分为电化学极化反应(快速反应)和浓差极化反应(慢速反应)。文献[9-10]分别介绍了磷酸铁锂电池和氢镍电池均具有电化学极化反应和浓差极化反应特性,并在参数辨识时将这两种情况统一进行计算考虑,这种方法会降低参数辨识的精度,从而影响SOC的估算精度。氢镍电池滞回特性影响电池模型参数的精度,改变电池动态响应,所以,对电池电化学反应和浓差极化反应的模型要分别进行参数辨识[11]。

2.1 模型参数辨识

将开路电压定义为:

式中:充电时,γ 值取1;放电时,γ 值取-1。

将滞回电压Vh与SOC的状态进行拟合,随着SOC的改变,实时计算滞回电压。从这个过程来说,滞回电压精度受SOC估算精度影响,而SOC的精度主要受辨识参数精度影响。分别研究两个反应时间长短的参数,可以更精确地辨识出参数R0、R1、C1、R2、C2,进而可以更加精确地估算出电池的SOC。通过分别研究电化学极化反应电压和浓差极化反应电压,并将快速反应的参数利用递推最小二乘进行参数辨识,慢速反应的参数利用最小二乘进行参数辨识,模型的输入输出为电流和电压,因此以实车运行1 h 53 min 采集的电流、电压数据为样本数据,通过Matlab 的M 语言实现模型参数的估计。

负载电压的表达式为:

RC 模块电压可以表示为:

式中:Vp(k+1)为电路图中电阻和电容单元的电压;ap=exp(-ts/τp),其中τp为时间常数,ts为采样间隔时间;bp=Rp(1 -ap);Vp(k)为Vp在k时刻的电压。

快速反应的电压:

式中:Vs为R0和两个RC 回路的电压和;U2为R2和C2的电压;U0为R0的电压;U1为R1和C1的电压;Va为开路电压差。

慢速反应的电压:

慢速反应的参数采用最小二乘进行辨识:

快速反应的参数采用遗忘因子β 为0.98 的递推最小二乘进行辨识[9]:

等效电压源部分的数学关系可表示为:

式中:Qcap为电池容量;SOCinit为初始时刻的SOC值。

在等效阻抗电路部分的数学关系可表达为:

式中:u1为R1C1的电压;u2为R2C2的电压。

将式(8)与(9)的数学表达式在Simulink 中实现,将实验测试得到的电流作为输入,电压作为输出,即得到本文的模型仿真结构图。

2.2 模型验证

采用实车随机运行1 h 53 min 采集到的电压、电流实验数据为样本数据进行参数的辨识及模型的验证。采集数据时,室外温度为15 ℃,温度升高变化范围在5~7 ℃,所以本文建立的模型适用温度范围为15~22 ℃,如图3 所示。

图3 参数辨识所用到的样本数据

在Simulink 中,根据方程(8)、(9)建立仿真模型,将辨识出的参数作为模型中的一个模块,以实验数据的电流作为输入,得到仿真电压曲线,将实验数据采集到的电压作为输出,与电压仿真曲线进行对比,来验证参数辨识的精度,如图4 所示。从图4 中的(a)可以看到仿真结果与真实曲线拟合度较好,可以准确地反映真实值的变化情况。从图4(b)中可知,两者的绝对误差较小,电压最大误差控制在0.3 V 以内,氢镍电池工作电压约为166~277 V,相对估计误差小于0.2%,采用带滞回特性的等效电路模型,因其辨识结果精度较高,间接为提高SRUKF 的精度提供了支持。

图4 仿真结果与实测电压的比较

3 平方根无迹卡尔曼滤波估算电池SOC

在进行无迹卡尔曼滤波算法进行SOC估算过程中,出现了协方差负定的问题。为解决该问题引入了平方根无迹卡尔曼滤波算法,将状态变量协方差的平方根来代替协方差进行迭代运算,从而保证了滤波算法的稳定性[12]。SRUKF 算法主要包括初始化、sigma 点采集、时间更新、qr分解、sigma 点重采集、测量更新、计算卡尔曼增益、得到更新后的状态估计等步骤。采样点的选取非常重要,它决定了估算的精度,在下面将介绍现阶段常用的一些采样策略,并选取适合的采样策略进行sigma 点集的选取。

3.1 无迹变换采样策略

无迹变换的原理为按照某种采样方法获得与原状态变量相应的点集,同时得到的新点集概率分布与原状态变量的概率分布相同或类似,然后利用新点集代替原状态变量进行接下来的估算过程。现阶段的采样策略主要有:比例对称采样[13]、最小偏度单形采样[14]、超球体单形采样[13]。

3.1.1 比例对称采样

比例对称采样是通过对称采样策略构造2L+1 个采样点集,sigma 点集Xi为:

式中:λ 为比例因子,λ=α2×(L+k)-L;L为状态变量维度;P为协方差;K表示sigma 点的自由度;α 为sigma 点的分布状态,即sigma 点距离均值的距离为均值。

对应的采样点权值为:

式中:ωm为均值;ωc为方差;β 为用来合并噪声中的高阶项信息,一般取β=2。

3.1.2 最小偏度单形采样

最小偏度单形采样的sigma 点集为L+2 个,当状态变量为1 维时:

式中:i为第i个采样点;j为j维空间;,W1为权值,W0取值范围为[0,1];n为n维空间。

当维度j=2~n时:

由于超球体单形采样性能、采样精度与实时性均较差,所以本文不对该方法进行过多的解释说明,在采样性能及采样精度方面,比例对称方法要优于最小偏度单形采样,但是在实时性方面,最小偏度由于采集L+2 个点要优于比例对称采样的2L+1 个点,可以缩短接近一半的采样时间,从而提高运行速度。在文献[3,5,12]中可以看到大部分都是采用比例对称采样方法进行sigma 点集的采集,精度虽然提高了,但是实时性却降低了。本文通过采用一种折中的方法,即在实验仿真时采用采样策略实时切换的方法来进行无迹变换。当系统达到稳定状态时,此时需要采样点具有较高的精度,即选用比例对称采样方法;当系统处于不稳定状态时,需要对跳变的数据进行及时的反馈处理,需要采样方法具有较高的实时性,即选用最小偏度单形采样,这样既可以保证估算精度,又可以缩短估算时间,具体的切换策略描述如下文。

3.2 SRUKF 算法

结合采样策略实时切换的方法,对平方根无迹卡尔曼滤波算法进行改进,在保证精度的前提下提高算法的实时性,具体描述如下:

(1)初始化:

(2)选择采样策略:

如果式(16)成立说明系统处于稳定状态,选择精度较高的比例对称采样即式(14),反之选择最小偏度单形采样即式(12)~(13)。

(3)时间更新:

(4)sigma 点重采样,重复步骤2 中的内容;

(5)测量更新:

(6)计算卡尔曼滤波增益:

式中:Pxy,k为互相方差;

(7)更新后的状态值:

(8)误差协方差的平方根:

4 实验验证

首先通过图3 中的数据进行估计算法的验证,动力电池的SOC参考值选择安时积分法进行计算。电池剩余电量估算结果如图5 所示,在总采样时间为6 400 s 内,电池剩余电量在94%~74%之间浮动。通过分析图5 可以看到,使用采样策略实时切换的SRUKF 方法可以保证较高的估算精度,即使初始值不准确也可以在很短的时间内快速追踪到SOC参考值。使用SRUKF 和UKF 进行SOC估计的误差曲线如图6 所示。从图6 中可以看到,采样策略实时切换的SRUKF 方法将误差控制在2%范围内,并且误差波动较小,利用UKF 进行SOC估计的误差曲线,误差范围在7%范围内,且误差曲线波动较严重。

图5 NEDC 工况下SOC估计的对比曲线

图6 NEDC工况下SOC估计的误差对比曲线

接下来通过转鼓实验下的J1015 工况数据对算法进行验证,图7 为估算的结果。从图7 中可以看到采样策略实时切换的SRUKF 算法在连续放电的工况下可以很好地追踪到参考值,并且随着时间的推移精度越来越高。图8 为两种算法的误差曲线,采样策略实时切换的SRUKF 算法误差范围控制在5%以内精度较高,使用UKF 算法误差控制在25%范围内,精度略低。

图7 J1015工况下SOC估计的对比曲线

图8 J1015工况下SOC估计的误差对比曲线

5 结论

(1)本文先建立了带有滞回特性的二阶等效电路模型,并通过对电池的快速化学反应和慢速化学反应分别进行参数辨识,提高了参数辨识的精度,即使在恶劣的运行工况下仍然能够达到误差小于0.3 V 的估算精度,为提高SOC的估算精度提供了良好的前提条件;

(2)在SOC估算方面,保证估算精度的前提下,采用实时切换采样策略的方法提高了估算的实时性,该方法比只采用比例对称采样进行SOC估算的方法缩短了接近一半的运算时间,比只采用最小偏度单形采样进行SOC估算的方法提高了估算精度。通过仿真曲线可以看到采样策略实时切换的SRUKF 可以在很短的时间内追踪到参考曲线,并且随着时间的推移,仿真的精度越来越高。在NEDC 工况下,估算精度误差可以控制在2%以内,在J1015 工况下,可以将估算误差控制在5%以内,通过理论分析以及仿真结果表明,所提出的方案行之有效。

猜你喜欢

卡尔曼滤波电池精度
电池很冤
“一粒盐电池”
把电池穿身上
穿在身上的电池
基于DSPIC33F微处理器的采集精度的提高
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
GPS/GLONASS/BDS组合PPP精度分析
基于模糊卡尔曼滤波算法的动力电池SOC估计
基于扩展卡尔曼滤波的PMSM无位置传感器控制
改进的Goldschmidt双精度浮点除法器