基于模糊自适应扩展卡尔曼滤波器的锂电池SOC估算方法

宫明辉1 乌 江1 焦朝勇2

(1. 西安交通大学电气工程学院 西安 710049 2. 南瑞集团有限公司南瑞研究院 西安 710000)

摘要 精确的锂电池荷电状态(SOC)在线估算可以有效地延长电池使用寿命,提高电池的安全性,对于电动汽车电池管理系统(BMS)而言至关重要。针对自适应扩展卡尔曼滤波(AEKF)算法运行初期收敛速度缓慢问题,该文提出模糊AEKF(FAEKF)算法可以改善收敛速度。以NCR18650B型三元锂电池的实际端电压与预测端电压差值的绝对值及其变化率作为模糊输入,以卡尔曼滤波器的系统测量噪声R作为模糊输出,通过对R进行模糊控制来调节算法在迭代过程中的增益K,进而实现收敛速度的模糊调节。实验结果表明,在0.5C倍率恒流放电工况和动态应力测试工况(DST)条件下,改进的算法相比于扩展卡尔曼(EKF)和AEKF算法,在不降低估算精度的情况下能够明显地提高收敛速度,在SOC在线估算中更具有实用性。

关键词:荷电状态(SOC) 模糊算法 自适应扩展卡尔曼滤波器(AEKF) 收敛速度

0 引言

美国先进电池联盟(USABC)定义:电池的荷电状态(State of Charge, SOC)是指在一定的放电倍率下电池剩余容量与其额定容量的比值[1]。对于SOC精确估算可以为电池管理系统(Battery Management System, BMS)均衡策略的制定提供有效依据,从而延长电池组整体寿命。卡尔曼滤波器因其较高的精度和较低的复杂度,在电池SOC在线估算中得到认可。但电池工作初始状态是不固定的,当电池初始SOC与算法自定初始状态相差较大时,会使算法运行初期收敛速度缓慢,而为消除环境噪声而引入的AEKF算法会进一步降低其收敛速度。

为提高算法的收敛速度,通常采用的方式是直接调整预测协方差初值P0、过程噪声协方差Q和测量噪声协方差R,或者在增益K中引入调整系数[2],该方式虽然能够明显提高算法的收敛速度,但是在一定程度上会降低估算精度,并且可能会产生过冲,从而实际应用中易造成保护装置的误动作。此外有的文献中采用快速卡尔曼(Fast Kalman Filter, FKF)算法[3-4]、自适应抗差无迹卡尔曼滤波(Adaptive Robust Unscented Kalman Filter, ARUKF)算法[5-6]、或者对迭代卡尔曼滤波(Iterated Kalman Filter, IKF)改进算法[7]等,以上方案虽然不会降低精度和产生过冲,但会大大增加算法复杂度,不利于算法的理解和实际应用。针对以上问题,本文提出模糊自适应扩展卡尔曼滤波器(Fuzzy Adaptive Extended Kalman Filter, FAEKF)算法,以期能够在不增加算法复杂度和降低估算精度的情况下,提高算法的收敛速度。

1 电池模型的建立

本文采用Randles模型[8]即二阶RC电路模型来模拟锂电池的充放电特性,其电路模型如图1所示。图中Ro代表电池内部欧姆电阻,RSCS分别为电池浓度差极化电阻和极化电容,RLCL分别为电池电化学极化电阻和极化电容,Uoc为电池的开路电压,U为电池的端电压,I为电池的工作电流(以放电电流方向为正)。该模型利用二阶RC电路响应来描述电池的动态特性,与一阶RC模型相比,二阶RC电路能够进一步提高模型的精度。

width=176.9,height=62.3

图1 Randles电路模型

Fig.1 Randles circuit model

以电池的SOC值S(t)、RS两端的电压US(t)和RL两端的电压UL(t)为状态变量,I(t)为控制量,U(t)为观测量,w(t)和v(t)分别为过程噪声和测量噪声,采样周期设为T,建立离散的电池状态空间方程为

width=186,height=129 (1)

width=190,height=15 (2)

width=74,height=15 (3)

width=53,height=33 (4)

式中,C为电池的容量(A·h)。

根据建立的电池模型以及状态空间方程可知,本文系统方程可表示为

width=103.95,height=15 (5)

width=94,height=15 (6)

width=59,height=33 (7)

式中,AkBkHkCk分别为系统状态转移矩阵、输入矩阵、输出矩阵和前馈矩阵;xkuk分别为状态变量矩阵和控制量矩阵;TSTL为二阶电路中的两个时间常数;wkQk分别为系统的过程噪声和过程噪声协方差;vkRk分别为系统的测量噪声和测量噪声协方差,且满足E[wkvjT]=0。

2 AEKF递推过程

本文AEKF算法的递推过程如下[9-10]

误差协方差预测更新为

width=103,height=18 (8)

增益矩阵更新为

width=147,height=24 (9)

误差协方差测量更新为

width=90,height=17 (10)

状态预测更新为

width=102,height=16 (11)

状态测量更新为

width=110,height=19 (12)

测量噪声更新为

width=90,height=18 (13)

width=153,height=39 (14)

式中,N为新息序列采样个数;j0为参与测量噪声更新的第一个数据;width=20,height=16width=13,height=15分别为电池的测量端电压和预测端电压;Sk表示采样数据的方差。整个递推过程的流程如图2所示。

width=195.5,height=298.55

图2 AEKF算法流程

Fig.2 AEKF algorithm flow chart

3 模糊自适应扩展卡尔曼滤波算法

EKF算法在递推过程中假定过程噪声和测量噪声是恒定不变的,AEKF算法能根据环境的改变而对噪声量进行实时调整[11-13],可以在一定程度上提高EKF算法的估算精度,由于过程噪声和测量噪声同时参与调整不利于算法收敛,本文AEKF算法只对测量噪声R进行实时调整。虽然AEKF算法在简单的白色噪声工作环境中,对电池SOC的估算要比EKF更精确一些,但是无论是EKF还是AEKF在算法迭代初期都存在收敛速度较慢的问题。以正负1.5%偏差为收敛判定界线,EKF算法收敛需要迭代30多次,而AEKF算法中测量噪声R会因初始状态与真实值存在较大误差而取值较大,收敛需要的迭代次数会比EKF多十几次。这一问题使该算法在实际应用中,初期不能快速收敛到当前SOC值,针对此问题本文引入模糊算法,以提高AEKF算法运行初始阶段的收敛速度。

模糊控制器设计过程主要包括六部分[14-17]:①确定输入、输出变量;②确定输入、输出变量的论域;③确定输入、输出变量的隶属函数;④根据专家经验确定模糊规则及其模糊关系;⑤选择推理算法;⑥选择最佳的去模糊化方法。模糊控制器的结构原理如图3所示。

width=204.5,height=94.8

图3 模糊控制器结构原理图

Fig.3 Fuzzy controller schematic

本文以NCR18650B型三元锂电池的实测端电压width=20,height=16和预测端电压width=13,height=15差值的绝对值ue及其变化率ude作为模糊输入变量,选择测量噪声R作为模糊输出变量。ue的论域为[0, 0.8V],划分为四个等级:Z表示零,S表示小,M表示中,B表示大,ue越小则表示算法对于锂电池SOC估算越接近电池当前状态。ude的论域为[-0.3V/s 0.3V/s]划分为三个等级:N表示负,Z表示零,P表示正,ude的变化可以反映算法的动态过程。R的论域为[0.000 01W, 0.000 55W],划分为四个等级:B表示快加速,M表示中加速,S表示慢加速,Z表示不加速。模糊控制器提高算法收敛性的原理:当ue较大时降低R输出值,由式(9)可知,R减小时增益矩阵K的各项值会增加,从而可以使得式(12)状态更新后更接近真实状态,有效缩短算法在收敛过程中的迭代次数。当算法迭代到真值ue很小时,模糊控制器输出的R值为当前测量噪声的真实值。模糊控制器的输入输出隶属函数如图4所示,其控制规则见表1。

width=217.3,height=166.55

图4 输入输出隶属函数

Fig.4 Input-output membership function

表1 模糊控制器规则表

Tab.1 Fuzzy controller rule table

udeue ZSMB NZZSF ZZSMF PSMMF

本文采用Mamdani模型[18]的模糊推理系统,并采用重心法去模糊化,其最终模糊输入输出曲面如图5所示。

width=203.05,height=139.7

图5 模糊控制器输入输出图

Fig.5 Input-output diagram of fuzzy controller

4 实验验证与分析

为验证算法的有效性,本文以额定容量3.4A·h的NCR18650B型三元锂电池为监测对象进行放电实验,环境温度保持在恒温20℃,放电从满电开始,算法SOC初值设为0.7,以±1.5%SOC偏差为收敛界线,测量在中间平稳区段的平均误差和最大误差。同时为减小放电过程中因电池模型参数改变而产生的误差,本文首先对电池在不同SOC下的模型参数进行辨识,将整个放电过程等间隔划分为20个区间,在每个放电区间内选择相应的电池模型参数[19-20]。三元锂电池的参数辨识结果见表2。

表2 不同SOC下模型参数辨识结果

Tab.2 Model parameter identification results under different SOC

SOCRo/ΩRS/ΩRL/ΩTS/sTL/s 0.050.150 10.052 680.009 5561.481 194 0.100.080 420.025 420.004 4565.961 679 0.150.058 960.022 50.011 1962.23533 0.200.054 050.026 780.008 53126.51 619 0.250.050 370.024 940.011 9397.561 123 0.300.048 900.02.5420.005 06139.32 257 0.350.047 550.023 870.003 84102.01 681 0.400.048 650.020 680.003 2881.131 879 0.450.046 990.018 760.002 1965.321 704 0.500.048 290.016 560.003 661.362 240 0.550.046 560.017 220.019 080.483 011 0.600.046 810.014 640.024 8430.481 090 0.650.046 010.012 860.025 1326.32580 0.700.048 470.013 240.023 0230.88416 0.750.047 730.013 510.022 231.19324 0.800.049 820.013 130.018 3645.89220 0.850.058 00.025 780.001 7379.841 468 0.900.051 550.022 450.001 5459.661 023 0.950.049 630.019 980.002 5248.891 621

本文采用0.5C恒流放电工况和动力应力测试(Dynamic Stress Test, DST)放电工况对算法的有效性进行验证,其中恒流放电工况采样时间设置为3s,DST工况采样时间设置为2s。

4.1 直接调节参数实验结果分析

直接调节参数的原理,是通过调节P0QR的值使得增益K变大,从而提高迭代速度。由于三个参数的调节原理相同,本实验以R为调节对象。由式(9)可知,K值增大需要减小R,因此令R值分别为0.000 4W、0.000 2W、0.000 1W和0.000 01W进行实验研究,算法初始阶段的迭代过程如图6所示,实验结果记录到表3中。

通过观察图6和表3的实验结果可知,不断地减小R会明显提高算法前期的更新幅度,从而提高其收敛速度,但是会在一定程度上降低算法的精度,并且当R取值过小时还会产生过冲,不仅降低了算法精度,而且收敛速度也有一定的放缓。

width=213.6,height=166.55

图6 不同R取值AEKF算法的收敛过程

Fig.6 Convergence of AEKF algorithm with different R

表3 不同R取值实验结果

Tab.3 The experimental results of different R

R/W平均误差(%)最大误差(%)迭代次数是否过冲 0.000 40.640.7342否 0.000 20.740.7818否 0.000 10.770.867否 0.000 010.991.0616是

4.2 0.5C恒流放电工况下SOC估算分析

在0.5C恒流放电工况下,实验得到SOC估算偏差如图7和图8所示。并将三种方法的估算平均偏差和最大偏差列于表4。通过观察图7和表4可以发现,FAEKF算法与AEKF算法相比估算精度几乎不受影响。平均估算偏差和最大估算偏差均控制在1%以内。在0.5C恒流放电工况下,与直接调节算法的三个参数相比,引入模糊算法对AEKF进行加速迭代并没有造成估算精度的降低。通过观察图8可以发现在初期由初始状态追踪到真实状态,

width=217.55,height=168.95

图7 0.5C恒流放电工况三种算法估算效果

Fig.7 Estimation effect of three algorithms in 0.5C constant current discharge conditions

width=213.1,height=166.1

图8 0.5C恒流放电工况三种算法收敛过程

Fig.8 Convergence process of three algorithms in 0.5C constant current discharge conditions

表4 0.5C恒流放电工况下三种估算方法误差对比

Tab.4 Comparison of three estimation methods When 0.5C contant current discharge

偏差EKFAEKFFAEKF 平均偏差(%)0.770.640.65 最大偏差(%)1.090.730.70

FAEKF算法仅需迭代16次,EKF算法则需要迭代35次,AEKF算法则需要迭代42次。改进的AEKF算法收敛速度有了明显提升,而且比EKF算法的迭代速度还要快一倍。

4.3 DST工况下SOC估算分析

在DST工况下,得到SOC估算偏差和初始阶段的估算偏差。并将三种估算方法的平均偏差和最大偏差列于表5中。通过观察图9和表5可以发现,FAEKF算法与AEKF算法相比,估算精度依然没有降低。平均估算偏差控制在1%以内,最大估算偏差控制在5%以内。因本文三种算法采用相同的物理模型和参数,因此在图9中当算法收敛到真值附近后三条曲线有较大重叠。在DST工况下,与直接调节算法的三个参数相比,引入模糊算法来改进AEKF算法也没有造成估算精度的降低。通过观察图10可以发现,在初期由初始状态追踪到真实状态,FAEKF算法仅需迭代26次,EKF算法则需要迭代40次,AEKF算法则需要迭代130次。在DST工况下改进的AEKF算法迭代速度依然很快,依旧比EKF算法的收敛速度快近一倍。

表5 三种估算方法误差对比

Tab.5 Comparison of three estimation methods

偏差EKFAEKFFAEKF 平均偏差(%)0.900.930.93 最大偏差(%)3.874.044.04

width=214.45,height=166.3

图9 DST工况放电三种算法估算效果

Fig.9 Estimation effect of three algorithms in DST discharge conditions

width=214.45,height=162

图10 DST放电工况三种算法收敛过程

Fig.10 Convergence process of three algorithms in DST discharge conditions

通过两种工况下,三种算法的误差和收敛速度对比可知,本文提出的模糊AEKF算法在运行初始阶段预测值与真实值差别较大时能够自适应降低环境噪声R值,进而增大迭代过程中的增益矩阵K,使得算法在运行初期具有较大更新幅度,从而有效缩短算法在收敛过程的迭代次数。与直接参数调节法相比,模糊AEKF算法能够保证在不影响算法估算精度的前提下有效提升收敛速度,有利于算法在运行初期快速追踪到真实值。

5 结论

以提高锂电池SOC估算的实时性为目标,本文研究了基于模糊自适应扩展卡尔曼滤波器(FAEKF)的SOC估算方法。两种放电工况的实验结果表明,在AEKF算法中引入模糊算法,以实际端电压与预测端电压差值的绝对值及其变化率为模糊输入,以测量噪声R为模糊输出,对算法的迭代速度进行实时调节,在不降低估算精度的情况下,FAEKF算法的收敛速度比EKF算法提高35%以上,比AEKF算法提高60%以上;同时,该方法简单易行,不会在原算法的基础上过多增加复杂度。总体而言,FAEKF算法相比于EKF和AEKF算法,在对电池SOC在线估算时更具有实用性。

参考文献

[1] Hu Xiaosong, Sun Fengchun. Fuzzy clustering based multi-model support vector regression state of charge estimator for lithium-ion battery of electric vehicle[C]// IEEE International Conference on Intelligent Human- Machine Systems and Cybernetics, Hangzhou, 2009: 392-396.

[2] 孙亚辉, 耿云海, 方向, 等. 基于改进卡尔曼滤波的变参数迭代估计方法: 黑龙江, CN103473477A[P]. 2013-12-25.

Sun Yahui, Geng Yunhai, Fang Xiang, et al. Variable parameter iterative estimation method based on improved Kalman filter: Heilongjiang, CN103473477A[P]. 2013- 12-25.

[3] Done W. Use of the fast Kalman estimation algorithm for adaptive system identification[C]//IEEE Inter- national Conference on Acoustics, Speech, and Signal Processing, Atlanta, Georgia, USA, 1981: 886-889.

[4] 秦振华. 用于自适应均衡的快速卡尔曼算法[J]. 系统工程与电子技术, 1998(1): 48-52.

Qin Zhenhua. Fast Kalman algorithm for adaptive equalization[J]. System Engineering and Electronic Technology, 1998(1): 48-52.

[5] 颜湘武, 邓浩然, 郭琪, 等. 基于自适应无迹卡尔曼滤波的动力电池健康状态检测及梯次利用研究[J]. 电工技术学报, 2019, 34(18): 3937-3948.

Yan Xiangwu, Deng Haoran, Guo Qi, et al. Study on the state of health detection of power batteries based on adaptive unscented Kalman filters and the battery echelon utilization[J]. Transactions of China Elec- trotechnical Society, 2019, 34(18): 3937-3948.

[6] 曲正伟, 董一兵, 王云静, 等. 用于电力系统动态状态估计的改进鲁棒无迹卡尔曼滤波算法[J]. 电力系统自动化, 2018, 42(10): 87-92.

Qu Zhengwei, Dong Yibing, Wang Yunjing, et al. Improved robust unscented Kalman filter algorithm for power system dynamic state estimation[J]. Auto- mation of Electric Power Systems, 2018, 42(10): 87-92.

[7] 牛新亮, 赵国庆, 张永顺, 等. 可以稳定快速收敛的无源时差定位系统[J]. 仪器仪表学报, 2010, 31(5): 1114-1119.

Niu Xinliang, Zhao Guoqing, Zhang Yongshun, et al. Stable fast convergence passive TDOA location system[J]. Chinese Journal of Scientific Instrument, 2010, 31(5): 1114-1119.

[8] Mohammaddadi Gh, Pariz N, Karimpour A. Extended modal Kalman filter[J]. International Journal of Dynamics and Control, 2019, 7(3): 981-995.

[9] 赵琳. 非线性系统滤波理论[M]. 北京: 国防工业出版社, 2012.

[10] 李兆洋. 基于自适应卡尔曼滤波的GPS精密单点定位研究[D]. 成都: 西南交通大学, 2017.

[11] 谷苗, 夏超英, 田聪颖. 基于综合型卡尔曼滤波的锂离子电池荷电状态估算[J]. 电工技术学报, 2019, 34(2): 419-426.

Gu Miao, Xia Chaoying, Tian Congying. Li-ion battery state of charge estimation based on com- prehensive Kalman filter[J]. Transactions of China Electrotechnical Society, 2019, 34(2): 419-426.

[12] 张志勇, 张淑芝, 黄彩霞, 等. 基于自适应扩展卡尔曼滤波的分布式驱动电动汽车状态估计[J]. 机械工程学报, 2019, 55(6): 156-165.

Zhang Zhiyong, Zhang Shuzhi, Huang Caixia, et al. State estimation of distributed drive electric vehicle based on adaptive extended Kalman filter[J]. Journal of Mechanical Engineering, 2019, 55(6): 156-165.

[13] 张佳倩, 刘志虎. 基于模型参数辨识和扩展卡尔曼滤波的锂电池荷电状态估计[J]. 工业控制计算机, 2019, 32(9): 153-156.

Zhang Jiaqian, Liu Zhihu. State of charge estimation of lithium-ion battery based on model parameter identification and extended Kalman filter[J]. Indu- strial Control Computer, 2019, 32(9): 153-156.

[14] 李培强, 丰云鹤, 李欣然, 等. 考虑超短期负荷预测的储能电池参与电网一次调频控制策略[J]. 电力系统自动化, 2019, 43(19): 87-95, 148.

Li Peiqiang, Feng Yunhe, Li Xinran, et al. Energy storage battery considering ultra-short-term load forecasting participates in primary frequency modu- lation control strategy of power grid[J]. Automation of Electric Power Systems, 2019, 43(19): 87-95, 148.

[15] 吕航, 刘承志, 尹栋, 等. 深海动力磷酸铁锂电池组均衡方案设计优化[J]. 电工技术学报, 2016, 31(19): 232-239.

Lü Hang, Liu Chengzhi, Yin Dong, et al. The design and optimize of equalization schemes for underwater power LiFePO4 battery stack[J]. Transactions of China Electrotechnical Society, 2016, 31(19): 232-239.

[16] 温正, 孙华克. MATLAB智能算法[M]. 北京: 清华大学出版社, 2017.

[17] 周湛杰, 王新生, 王岩. 基于模糊自适应算法的航天器姿态控制[J]. 电机与控制学报, 2019, 23(2): 123-128.

Zhou Zhanjie, WangXinsheng, Wang Yan. Spacecraft attitude control based on fuzzy adaptive algorithm[J]. Electric Machines and Control, 2019, 23(2): 123-128.

[18] 曾珂, 徐文立, 张乃尧. 特定Mamdani模糊系统的通用逼近性[J]. 控制与决策, 2000, 35(4): 435-438.

Zeng Ke, Xu Wenli, Zhang Naiyao. Universal approximation of special Mamdani fuzzy systems[J]. Control and Decision, 2000, 35(4): 435-438.

[19] 张振宇, 汪光森, 聂世雄, 等. 脉冲大倍率放电条件下磷酸铁锂电池荷电状态估计[J]. 电工技术学报, 2019, 34(8): 1769-1779.

Zhang Zhenyu, Wang Guangsen, Nie Shixiong, et al. State of charge estimation of LiFePO4 battery under the condition of high rate pulsed discharge[J]. Transactions of China Electrotechnical Society, 2019, 34(8): 1769-1779.

[20] 刘伟龙, 王丽芳, 廖承林, 等. 充电模态下电动汽车动力电池模型辨识[J]. 电工技术学报, 2017, 32(11): 198-207.

Liu Weilong, Wang Lifang, Liao Chenglin, et al. Parame- ters identification method of battery model for electric vehicles under the charging model[J]. Transactions of China Electrotechnical Society, 2017, 32(11): 198-207.

SOC Estimation Method of Lithium Battery Based on Fuzzy Adaptive Extended Kalman Filter

Gong Minghui1 Wu Jiang1 Jiao Chaoyong2

(1. School of Electrical Engineering Xi’an Jiaotong University Xi’an 710049 China 2. Nari Group Research Institute Xi’an 710000 China)

Abstract Accurate online estimation of the state of charge (SOC) of the lithium battery can effectively extend the battery life and improve the safety of the battery, which is very important for the battery management system (BMS) of the electric vehicle. Aiming at the problem of slow convergence in the initial running of the adaptive extended Kalman filter (AEKF) algorithm, this paper proposes a fuzzy AEKF (FAEKF) algorithm to improve the convergence speed of the AEKF algorithm. Taking the absolute value of the difference between the actual terminal voltage and the predicted terminal voltage of the NCR18650B ternary lithium battery and its change rate as the fuzzy input, using the noise measured R in the Kalman filter system as the fuzzy output, and adjusting the gain K of the algorithm by fuzzy controlling R in the iterative process, then realize the fuzzy adjustment of the convergence speed. Experimental results show that compared with the extended Kalman (EKF) and AEKF algorithms under the conditions of 0.5C rate constant current discharge condition and dynamic stress test condition (DST), the improved algorithm can improve the convergence speed, while not reduce the estimation accuracy, which is more practical in the online estimation of SOC.

keywords:State of charge (SOC), fuzzy algorithm, adaptive extended Kalman filter (AEKF), convergence speed

中图分类号:TM912

DOI: 10.19595/j.cnki.1000-6753.tces.191810

中国电力科学研究院有限公司新能源与储能运行控制国家重点实验室开放基金资助项目(DGB51201801575)。

收稿日期 2019-12-29

改稿日期 2020-03-11

作者简介

宫明辉 男,1993年生,硕士研究生,研究方向为锂电池状态评估研究。E-mail: 3011752616@qq.com

乌 江 男,1986年生,博士研究生,研究方向为锂电池状态评估研究。E-mail: jiangw@xjtu.edu.cn(通信作者)

(编辑 郭丽军)