APP下载

电池SOC的自适应平方根无极卡尔曼滤波估计算法

2014-07-04胡志坤刘斌林勇王文祥彭小奇

电机与控制学报 2014年4期
关键词:平方根无极精确度

胡志坤, 刘斌, 林勇, 王文祥, 彭小奇

(1.中南大学物理与电子学院,湖南长沙410083;2.湖南科力远高技术股份有限公司,湖南长沙410083)

0 引言

电池的荷电状态(state of charge,SOC)估计对电池的有效使用具有重要的意义,也是电池管理系统的关键技术之一。由于SOC是不可直接测量,且是非线性量,还受许多其他因素的影响,因此对其估计的难度很大,提高估计精确度很难。

目前在工程上常用的方法是电流积分法(安时法)[1],但该方法对SOC的初值敏感且容易产生累积误差;实验上采用的开路电压法有较好的确精度,但是需要电池长时间的静置,在车况中难以实现[2];神经网络法可以应用于任何电池,但需要大量的训练数据[3-4]。扩展的卡尔曼滤波(extended Kalman filter,EKF)算法需要计算Jacobians矩阵使模型线性化,从而引入了不必要的线性化误差,无极卡尔曼滤波(unscented Kalman filter,UKF)算法是一种新的非线性滤波方法,相对EKF精确度得到了提高,但有数字不稳定性的缺点,而平方根无极卡尔曼滤波(square root unscented Kalman filter,SR - UKF)算法不仅与UKF有相同的精确度且增加了数字稳定性和状态协方差的半正定性[5],但是SR-UKF算法把噪声协方差看作常量,不能满足噪声的实时更新特性,从而影响了估计精确度。

为了解决噪声协方差的时变性带来的误差,本文在SR-UKF算法的基础上进行了改进,将每次测量的输出值与模型估计得到的输出值的残差及各状态Sigma点估算得到的输出值的残差的加权和作为新息来估计当前时刻的噪声协方差,让其随时间而更新,实时反馈,从而提高精确度。本文以目前仍在混合动力汽车上广泛使用的镍氢电池为实验对象,利用改进(平方根无极卡尔曼滤波)算法——自适应平方根无极卡尔曼滤波算法(adpatived square root unscented Kalman filter,ASR -UKF)对其放电过程中的SOC进行了估计。

1 自适应平方根无极卡尔曼滤波算法

自适应平方根无极卡尔曼滤波是在SR-UKF的基础上利用模型输出的残差序列作为新息估算当前的噪声的协方差的方法[6-7],使得噪声协方差随着时间的更新而更新,实时反馈,从而提高了算法精确度。

首先给定离散非线性动态系统模型的基本结构,其形式为

式中:xk为系统状态向量;uk为已知的外部输人;yk为系统的观测向量;wk为动态系统的过程噪声;vk为观测噪声,它们都是高斯白噪声(协方差矩阵为半正定性矩阵),F(xk,uk)和 H(xk,uk)都是 xk和uk的函数。平方根无极卡尔曼滤波算法使用了3种强大的线性代数方法,即QR分解,Cholesky因式分解,最小二乘法[8]。

自适应平方根无极卡尔曼滤波算法同SRUKF一样包含了4个部分:初始化、Sigma点的计算、时间更新方程和测量更新方程,测量更新方程包括计算卡尔曼增益、状态估计和状态协方差及噪声处理。可用于系统的状态估计和参数估计。

算法描述如下:

1)初始化

2)计算Sigma点

每个Sigma点表示在估计值的小零域内的有效值,χk-1表示各 Sigma 点的集合。

3)时间更新

利用k-1时刻的状态估计的Sigma点估算得到的 k时刻的状态向量 χk|k-1,即

式中 χi,k|k-1表示第 i个由 k -1 时刻的状态估计的Sigma点估算得到的k时刻的状态值表示各状态估计值的加权和。然后计算k时刻的状态估计误差的协方差的平方根,即UKF算法的状态估计误差协方差的各部分平方根,由式(8)、式(9)求得。

输出的更新值为

式中:yk|k-1表示由状态量的各sigma点算出的k时刻的输出值向量;yi,k|k-1表示第 i个 sigma点计算得到的k时刻的输出估计值,即yk|k-1中的元素表示各估计值的加权和,用来作为新时刻的输出估计值。

4)测量更新

同式(8)、式(9)一样,式(13)、式(14)用来计算输出残差的协方差的平方根Syk,Pxk,yk表示状态估计误差和输出值估计误差的互协方差。

(a)计算卡尔曼增益[8]

(b)状态估计

由式(15)和式(16)可得

(c)状态误差协方差更新

式中:U表示状态估计误差的协方差加权和,用来计算状态误差协方差更新。

由于过程噪声和测量噪声都是实时的,为了让噪声协方差实时更新,做了如下改进,即

其中 μk和(yi,k|k-1- yk)分别是测量输出量的残差和各Sigma点估算得到的测量输出量的残差,

下面证明式(21)~式(23)。

由式(2)可知

则式(20)、式(25)是vk的估计值。Fk是测量量的残差协方差,各残差的协方差和的均值Rvk便可以作为测量噪声协方差的估计值。由式(1)可知

而式(17)可化为

又因为

所以

证毕。

ASR-UKF算法具有SR-UKF算法的优点且有自适应的调节过程值和测量噪声的协方差的能力,克服了SR-UKF算法的不足,剔除了EKF的线性化带来的误差,UKF的数字不稳定性,提高了估算精确度。

2 建立电池模型

2.1 模型结构

零状态滞后电池模型常用来描述电池电压特性的,该模型是一组合模型[9],优点在于无需考虑电池使用过程中其他因素的影响,常被用在基于卡尔曼滤波算法的电池SOC的估计中。其离散的状态方程和输出方程为

式中:S表示SOC;Cn为电池的额定容量;Δt是采样时间间隔;下标k表示第k个采样点;U和I分别代表输出电压和电流;R表示电池内阻;w和ν分别表示过程噪声和测量噪声且均是高斯白噪声;H是充放电变换时的滞后参数;hk是滞后参数的系数,其取值为

K0,K1,K2,K3,K4是描述电池开路电压(OCV)与SOC关系的5个未知参数。

2.2 模型参数的辨识

模型参数辨识是估计SOC关键的一步。通过用10节额定电压为1.2 V,额定容量为30 Ah的镍氢电池串联组成测试对象。在常温下对电池进行间歇性(周期20 min)恒流放电实验,计算电池荷电状态(SOC)值和静置状态下记录电池OCV,得到SOC的实验值如图1所示,OCV与SOC的关系如图2所示。

图1 SOC实验值Fig.1 Experimental values of SOC

图2 开路电压与SOC的关系Fig.2 Relationship between open-circuit voltage and SOC

利用开路电压与SOC的关系,采用最小二乘法可以辨识出参数 K0,K1,K2,K3,K4[9]。然后对电池组充电,再进行放电测试,对其放电过程的电流和端电压进行采样,采样时间间隔为0.5 s,采样得到的数据分别如图3和图4所示。

图3 电流与时间的关系Fig.3 Relation between current and time

图4 端电压与时间的关系Fig.4 Relationship between voltage and time

在已知过程电流和端电压的情况下联立开路电压与SOC的函数关系,同样利用最小二乘法便可得出内阻R和滞后参数H。

辨识算法如下:

图5 开路电压拟合图Fig.5 Fitting chart of open-circuit voltage

另设:

辨识的效果如图6和图7所示。

图6 辨识输出值与测量值Fig.6 Measured and identified voltages

图7 输出电压辨识误差Fig.7 Output voltage errors

由图7可以看出,辨识的误差在0.12 V以内,达到了所需精确度。

辨识的结果如表1所示。

表1 模型参数辨识结果Table 1 Identification results of model parameter

3 实验与分析

为了验证改进的算法估计SOC的精确度相对原算法有所提高,本文利用10节额定电压为1.2 V,额定容量为30 Ah的镍氢电池串联在常温下进行恒流放电实验。放电的时间间隔为20 min;放电过程中通过51单片机对电流和端电压进行周期为0.5 s的A/D采样,将采样值通过串口传输到电脑并保存;同时将静置时的开路电压和积分法算出每个静置时的电池SOC值也保存到电脑。通过电流检测电路(使用霍尔传感器)对电池放电电流进行检测,检测结果送给PWM控制芯片,控制芯片输出适当宽度的脉冲,由开关管工作执行,达到控制电流恒定的目的。

估算SOC时必须先设定初值,即初始化。设定的初值如表2所示。

表2 算法初值Table 2 Initial value of the algorithm

分别利用SR-UKF算法和ASR-UKF算法对镍氢电池常温下放电过程中的SOC进行估计。由模型的状态方程可知算法中的L=1。得到的结果与实验值比较如图8所示。

图8 SR-UKF和ASR-UKF估算SOC的结果与实验值Fig.8 SOC estimation results of SR-UKF and ASR-UKF

实验表明ASR-UKF算法相对SR-UKF算法提高了估算SOC的精确度(0.3≤YSOC≤0.9),在区间0.2≤YSOC≤0.9内误差在1.5%以内,如图9所示。

图9 SR-UKF和ASR-UKF估算SOC的误差Fig.9 Estimation errors of SR-UKF and ASR-UKF

4 结语

利用自适应平方根卡尔曼滤波算法对在常温下进行放电的镍氢电池的SOC估算,结果表明ISRUKF算法相对SR-UKF算法的精确度在0.3≤YSOC≤0.9范围内得到了明显提高。在电池工作区间0.2≤YSOC≤0.9内误差在1.5%以内。另外算法是递归形式,满足SOC的实时估计。

[1] 黄文华,韩晓东,陈全世,等.电动汽车SOC估计算法与电池管理系统的研究[J].汽车工程,2007,29(3):198 -202.

HUANG Wenhua,HAN Xiaodong,CHEN Quanshi,et al.A study on SOC estimation algorithm and battery management system for electric vehicle[J].Automotive Engineering,2007,29(3):198-202.

[2] Aylor JH,Johnson BW.A Battery state-of-charge indicator for E-lectric Wheel chairs[J].IEEE Transactions on Industrial Electronics 1992,39:398-409.

[3] 夏超英,张术,张宏涛.基于推广卡尔曼滤波算法的SOC估算策略[J].电源技术研究与设计,2007,5:414-417.

XIA Chaoying,ZhANG Shu,ZHANG Hongtao.A strategy of estimating state of charge based on extended kalman filte[J].Study and Design of Power Sources Technology,2007,31(5):414-417.

[4] 邓超,史鹏飞.基于神经网络的MH/Ni电池剩余容量预测[J].哈尔滨工业大学学报,2003,35(11):1405 -1408.

DENG Cao,SHI Pengfei.Prediction of residual capacity of MH/Ni batteries based on neural network[J].Journal of Harbin Institute of Technology,2003,35(11):1405 -1408.

[5] PENG Yunhui,MIAO Dong,LIU Yunfeng.Applications of square root unscented kalman filter on the state estimation[C]//Proceedings of 2006 Chinese Control and Decision Conference,Tianjin,China.2006,53 -56.

[6] Mohamed AH,Schwarz KP.Adaptive Kalman filtering for INS/GPS[J].Journal of Geodesy,1999;73:193 - 203.

[7] SUN Fengchun,HU Xiaosong,ZOU Yuan,et al.Adaptive unscented Kalman filtering for state of charge estimation of a lithiumion battery for electric vehicles[J].Energy,2011,36:3531-3540.

[8] Wan E A,Van Der Merwe R.The square-root unscented Kalman filter for state and parameter estimation[C]//2001 IEEE International Conference on Acoustics,Speech,and Signal Processing.May 7-11,2001,Salt Lake City,USA.2001,6:346l-3464.

[9] PLETT Gregory L.Extended Kalman filtering for battery management systems of LiPB-based HEV battery packs Part 2.Modeling and identification[J].Journal of Power Sources,2004,134(2):262-276.

猜你喜欢

平方根无极精确度
研究核心素养呈现特征提高复习教学精确度
无极归一
“硬核”定位系统入驻兖矿集团,精确度以厘米计算
“平方根”学习法升级版
平方根易错点警示
帮你学习平方根
如何学好平方根
近似数1.8和1.80相同吗