动力电池SOC估算综述
2018-01-17吴春芳
吴春芳
(广东电网有限责任公司江门开平供电局,广东江门529300)
随着电动汽车的飞速发展,电池管理系统(BMS)相应地也在快速发展。为了充分发挥BMS的动力性能、防止电池的过充和过放、延长电池使用寿命以及提高电动汽车的驾驶性能,BMS要对电池的荷电状态(state of charge,SOC)进行准确的估算,提高动力电池的使用性能。
SOC是描述电池剩余电量的指标,也是电池使用过程中最重要的参数之一。电池SOC会受到其内部电化学反应、充放电机理以及外部环境条件等因素的影响,具体包括充放电倍率、自放电、温度及老化等,这些因素都会让剩余电量发生一定的变化,因此对电池SOC的估算较难达到准确。目前动力电池SOC的估算方法主要有开路电压法、安时积分法、内阻法、卡尔曼滤波法以及神经网络法等等,本文对SOC估算的传统算法及智能算法进行详细分析。
1 传统SOC估算方法
1.1 开路电压法
开路电压法(open-circuit voltage method,OCV)的基本原理是将电池充分静置,让电池的端电压恢复至开路电压,通过大量的实验数据获得电池的开路电压(UOC),而UOC与SOC有着一定的对应关系,可以用式(1)来估算电池的SOC。
式(1)中f(SOC)可以通过对电池进行充放电实验拟合得到。这样就可以通过测量电池的开路电压对电池SOC进行估计[1]。该方法的优点是可以准确地对电池的初始值进行预估,计算简单而精度高,但是需要对电池进行长时间的静置,此过程常需要几个小时或更长的等待时间以达到电压的稳定,从而给测量造成一定的困难。静置所需时间是未知的,因此不能用于连续、动态、在线的电池SOC估算。通常情况下,开路电压法在充电初期和末期SOC估计效果好,一般与其他方法结合起来用而不单独使用。
1.2 安时积分法
安时积分法是目前常用的一种SOC估算方法,其原理是,在初始SOC0已知的情况下,计算充放电过程中考虑了充放电倍率等因素变化的电荷量,然后用电池的起始状态SOC0减去变化的电荷量,即为当前的SOC估算值。据此,通过测量的充放电电流对时间进行积分来确定电池SOC值的变化[2]。
式中:cN为电池的额定容量;I为t时刻流经电池的电流;η为电池的充放电效率。
安时积分法的优点主要是计算简单、可以在线测量以及精度高等,缺点是电流测量不准而造成SOC估算的误差,长时间的积累会使测量误差越来越大,尤其在高温状态和电流波动剧烈的情况下,产生的误差较大。电流测量可以使用高性能的电流传感器来解决,但是成本却相应地增加,另外,电池充放电效率的确定也是通过大量实验数据来建立电池充放电效率的经验公式。
1.3 内阻法
内阻测量法的基本原理是先测得电池的内阻,然后对电池的SOC进行估算。电池内阻有交流内阻和直流内阻之分,它们都与SOC有着一定的关系。而交流阻抗作为电压与电流之间的传递函数,是一个复数变量[3],表示电池对交流电的反抗能力。直流内阻表示电池对直流电的反抗能力,是在同一时间段内,电池电压变化量与电流变化量的比值[4]。
该方法通常在SOC较低或较高的时候测量比较准确,想要得到较好的SOC估算值,则对充电条件有一定的要求。因为电池的差异比较大且内阻很难测量,电池工作过程中工况条件可能会有一定的波动。由于电池内阻很容易受到外在条件影响,所以测量内阻难度较大。内阻法适用于放电后期电池SOC的估计,可与安时积分法组合使用。
1.4 卡尔曼滤波法
卡尔曼滤波(KF)的核心思想是对动力系统的状态做出方差最小的最优估计,是一种自回归数据的处理算法,电池被看成动力系统,而SOC是该系统的一个状态[5]。用KF法来对电池SOC进行估算,将电池充放电的电流作为系统的输入,端电压作为输出,通过端电压的观测值和SOC的预估值的误差来不断更新系统的状态,以此得到最小方差估算SOC值。
一般非线性系统的离散化状态方程可表示如下:
系统的状态方程:
观测方程:
式中:Wk-1和Vk为相互独立的高斯白噪声,即其满足条件与KF中是一致的。
KF只能用于线性系统,所以对非线性系统需要进行一定的线性化预处理以便使用KF法。KF的优点是精度高,适合在电流波动较剧烈的环境下,即使在有噪声的情况下,也对初始值有着很好的修正效果。但缺点是需要建立精确的动力电池模型,对算法本身要求较高,因为KF来估计状态量需要不断预测、更新模型的空间状态方程。
目前常用的改进KF有:扩展卡尔曼滤波(EKF)、无味卡尔曼滤波(UKF)、中心差分卡尔曼滤波法(CDKF)等。EKF基本思想就是上述非线性系统的状态方程进行线性化,再用KF进行处理。文献[6]详细阐述了UKF对SOC估算的实现原理及步骤,弥补了EKF在非线性系统处理上的缺陷,UKF算法采用概率分布的思路处理非线性问题,无味变换(UT)是UKF算法的核心,通过计算非线性随机变量的统计值对非线性函数实行变化的一种算法。
1.5 线性模型法
线性模糊算法是基于SOC变化量、电流、电压和上一个时间点SOC值,建立的线性方程为:
式中:SOC(i)为当前时刻的SOC估算值;ΔSOC(i)为SOC估算值的变化量;U和I为当前时刻的电压与电流;β0、β1、β2、β3为利用参考数据,经过最小二乘法得到的系数[7]。
该方法适用于低电流、SOC缓变的情形。线性模型理论上可应用于不同运行阶段和各种类型的电池,但目前主要在铅酸电池上应用,在其他电池上的普适性及变电流情况的估计效果需进一步研究。
1.6 放电实验法
放电实验法是最可靠、简单直接的一种SOC估计方法,用电池以恒定电流放电到截止放电电压这一段时间内所放出的电量来表示电池的SOC估算值,而剩余电量为放电电流与时间的乘积,其原理可表示如下:
式中:t'为电量放完的时刻;I为恒定放电电流。
放电实验法一般应用在实验室中,适用于所有电池,常用来标定电池的容量、检修以及维护,但其缺点是测量时处于离线状态且需要很长的等待时间。
2 SOC估算的智能法
2.1 BP神经网络法
神经网络算法的主要思想是在学习的过程中不断调整模型的权重和偏差以减小模型的误差,从而提高模型的精度。该算法可以运行在非线性系统下,而电池正好是这种系统,整个过程很难建立比较准确的数学模型,一定条件下利用具有非线性、学习能力强的人工神经网络能够快速而精确地对电池的剩余容量进行估计[8]。
用BP神经网络对电池SOC进行估算,常采用3层典型神经网络法对电池的外特性典型实验数据进行学习,以训练后的网络为数学模型,其中输入层中输入变量分别是电池组的工作电压、电流和温度及内阻等电池性能参数;隐含层为系统的激活函数;输出层即为电池的SOC估算值。输入神经元的个数取决于精度要求,隐含层的激活函数是影响算法准确性的关键,BP神经网络SOC估算原理如图1所示。
图1 BP神经网络SOC估算原理
神经网络法适用于各种电池,对非线性系统的学习能力强,能够对电池的动态特性进行模拟;缺点是需要大量的样本数据进行训练,计算量大,对计算机的要求高,SOC估算的误差也会受训练数据和训练方法的影响,此外,输入变量的选取及确定数量也会直接影响神经模型的准确性和运算量[9]。
2.2 人工免疫粒子滤波算法
把标准粒子滤波的实现原理和人工免疫算法相结合,便可得到人工免疫粒子滤波(AIPF)算法,其基本思想是:根据重要性密度函数随机抽取n个样本,将其作为初始抗体,而这n个抗体就是状态估计时的粒子,对这n个粒子进行基本的运算处理,分别计算出n个抗体之间的亲和力以及排斥力,接着根据亲和性的大小来确定每个抗体应该克隆的数量。将n个初始抗体和克隆后所得抗体组成新的抗体群集,再次计算他们的亲和力和排斥力,然后抛弃相似的抗体,并从抗体群集中选出最好的n个抗体作为对下一时刻状态的估计,从而得到最优粒子。AIPF的优点是可使粒子集保持在最优的状态,让最优粒子用于后验概率密度的估计;主要缺点是整个过程中计算量繁重。AIPF算法流程如图2所示。
图2 人工免疫粒子滤波算法流程
3 其他SOC估算法
3.1 自适应卡尔曼滤波的SOC估算
自适应卡尔曼滤波技术的基本原理是:通过观测得到的数据实时估计未知的噪声统计特性,将系统状态估计和噪声特性估计进行综合运算,从而得到自适应卡尔曼滤波算法。目前应用较广泛的是Sage和Husa的自适应KF算法,该算法分为KF算法和噪声估计两部分,可以实时估计系统的噪声均值和方差,具有良好的适用性能。
考虑线性离散随机系统:
式中:X(k)为状态向量;A为已知的转移矩阵;Z(k)为量测向量;H为已知的量测阵;W(k)为激励噪声序列;V(k)为零均值量测白噪声向量;W(k)和V(k)为相互独立的白噪声。
由于传统的Sage和Husa自适应滤波算法计算量很大,在保证系统滤波准确性下对模型进行简化计算,引入相对简化的自适应滤波算法,如文献[10]中提出的简化自适应滤波算法是基于协方差匹配技术,该方法能够对测量噪声进行估计,在计算量减少的同时又保证了良好的滤波效果。
3.2 主元分析的SOC估算
主元分析(PCA)算法作为多元统计学领域中的一员,通过对各种数据简化、压缩及提取出变量中的重要元素,进行数据的分析和处理。PCA是一种重要的参数预测算法,可以对电池的SOC进行估算,其估算步骤如下。
(1)为了消除数量级的差别及量纲的影响,把每个元素减去它所在列的平均值,即用零均值法(Z-score法)对数据进行零均值的变化,接着对矩阵进行标准化变换,然后求得协方差矩阵。
(2)根据电压U0、直流内阻R、电流I三个变量,由协方差矩阵求出特征值和相对应的特征向量,并把特征值由大到小进行排序,同时将相应的特征向量进行调整。
(3)计算各个主成分的贡献率及其累积贡献率,特征值及贡献率。
(4)最后利用所得到的主成分进行最小二乘法回归建模,便可得到SOC估算模型。
3.3 遗传算法(GA)-BP神经网络的SOC估算
GA算法是一种模仿生物界自然选择和遗传的随机搜索算法,不依赖于梯度信息,而是对任意初始种群优化,计算适应度并选择较高的染色体进复制、交叉以及变异操作,然后进行误差分析得到最优权值和阀值,以便让种群进化到最优的区域,求取最优解。GA算法在有噪声干扰的情况下不易陷入局部最优,也能够尽快找到全局最优解。此外,BP神经网络算法是基于梯度来进行计算,但该法仍存在缺陷,而GA算法能较好地解决这一问题[11]。GA算法与BP神经网络相结合,一般先采用GA算法优化网络的初始权值,然后在BP网络中完成训练,可以使用向量结构表示网络权重系数的结构。这组权重系数使得均方误差达到最小,可表示为:
利用遗传神经网络来求电池SOC最优解时,先是由遗传算法搜索连接权值到全局最优解的附近,接着使用BP神经网络对局部进行求解,最终可求得全局最优的权值,从而得到对动力电池SOC的最优估计,其算法流程如图3所示。
4 结语
本文综述了动力电池SOC估算的各种方法的原理及实现流程,分析了各估算方法的优缺点。动力电池SOC估算策略的选取要充分考虑实测数据、软硬件条件来选择相应的动力电池模型,提高SOC估算的精度。未来可以采取混合控制策略来提高电压和电流测量精度,利用各种算法进行修正,以达到对动力电池SOC的精确估算。
图3 GA-BP神经网络流程
[1]徐欣歌,杨松,李艳芳,等.一种基于预测开路电压的SOC估算方法[J].电子设计工程,2011,19(14):127-129.
[2]刘新天.电源管理系统设计及参数估计策略研究[D].合肥:中国科学技术大学,2011.
[3]LIAW B Y,JUNGST R G,NAGASUBRAMANIAN G,et al.Modeling capacity fade in lithium-ion cells[J].Journal of Power Sources,2005,140:157-161.
[4]AURBACH D,TALYOSER Y,MARKOVSKY B,et al.Design of electrolyte solutions for Li and Li-ion batteries:a review[J].Electrochimica Acta,2004,50:247-254.
[5]ZHANG D,HARAN B S,DURAIRJAN A.Studies on capacity fade of lithium-ion bateries[J].J Power Sources,2000,91(2):122-129.
[6]马群.基于中心差分卡尔曼滤波的动力电池SOC估算研究[D].吉林:吉林大学,2014.
[7]NING G,HARAN B,POPOV B N.Capacity fade study of lithiumion batteries cycled at high discharge rates[J].Journal of Power Sources,2003,117:160-169.
[8]KODAMA T,SAKAEBE H.Development of a plastic Li-ion battery cells for EV application[J].J Power Sources,2001,101:196-200.
[9]RUBINO,ROBERT S,TAKEUCHI,et al.The study of irreversible capacity in lithium-ion anodes prepared with thermally oxidized graphite[J].J Power Sources,1999,81/82:373-377.
[10]赵龙,吴康.新型自适应Kalman滤波算法及其应用[J].压电与声光,2009,31(6):908-911.
[11]路志英,庞勇,刘正光.基于遗传神经网络的自适应电池荷电状态预估模型[J].电源技术,2004,28(8):504-507.