凌 珑,黄 瑞,俞小莉
(浙江大学能源工程学院,浙江杭州310027)
受益于新能源汽车的快速发展,锂离子电池是目前发展最快的储能方式与最有前景的汽车动力源[1]。SOC作为电池管理系统的关键状态量,是整车能量管理与剩余行驶里程计算的主要依据。精确的SOC对于提高能量利用率,防止过充、过放,保障电池的安全与长寿命运行至关重要。由于SOC不能直接测得,所以需要进行估计,但电池系统动态的非线性特性使得SOC的准确估计具有较大难度[2]。
常用的SOC估计方法可以分为四类:基于开路电压模型或阻抗的查表法、安时积分法、基于模型的方法以及基于数据驱动的方法[3]。其中,查表法需要长时间放置电池来确保内部电化学的稳定性,不适合实时SOC估计。安时积分法由于对SOC初值非常敏感,且易受电流传感器测量噪声的干扰,同时估计误差还会不断累积,所以精度较低。基于数据驱动的方法则需要大量的计算资源来训练模型,且结果高度依赖训练样本,同时响应较慢[3]。基于模型的方法可实现闭环估计,同时复杂度较低,已被证明是准确且可在线实施的[4]。研究较多的电池模型可分为三类:电化学模型、等效电路模型(ECM)、电化学阻抗模型。由于ECM能够准确描述电池的各种动态行为,且具备良好的适用性与可拓展性,因此在基于模型的SOC估计方法中应用最为广泛[5]。
基于ECM的方法包含基于滤波器或观测器两种策略,与后者相比,前者在估计稳定性以及处理各种不确定性上具有诸多优势,已成为SOC估计的通用技术[6]。文献[7,8]比较了扩展卡尔曼滤波(EKF)、无迹卡尔曼滤波(UKF)、容积卡尔曼滤波(CKF)以及粒子滤波(PF)算法在SOC估计中的表现,得出综合考虑精度与计算复杂度,基于CKF的SOC估计算法更适合在嵌入式平台上进行部署。
尽管CKF能以3阶泰勒精度逼近高斯非线性系统状态量的均值和协方差,但在实际应用中噪声的先验统计信息是很难准确获取的,当非线性度较大时SOC估计可能会出现较大的误差甚至发散[6,9]。为了限制不确定性因素对SOC估计精度的影响,文献[6]将基于5阶球面径向容积规则的AHCKF应用于SOC估计,由于AHCKF出色的逼近能力,其在动态压力测试(DST)与国际轻型车测试循环(WLTC)两个工况下的估计精度与鲁棒性均优于ACKF。
然而,在不确定因素的干扰下,滤波算法逼近的对象本身可能存在偏差。由于AHCKF逼近能力更强,其受影响程度更大。考虑到容积卡尔曼滤波算法的精度是其先验过程采样点对真值逼近,以及后验过程对先验值校正综合作用的结果,当先验误差较大时,AHCKF的校正能力可能不足以使其相对ACKF还有优势。这意味着AHCKF可能无法在整个SOC估计期间都比ACKF具有更低的误差,即二者的精度优劣具有一定的随机效应,是不断变化的。为了进一步提高SOC估计的精度,本文充分利用这一特性,提出一种将两种自适应容积卡尔曼算法结果进行融合的SOC估计方法。
SOC定义为当前剩余容量Qa与最大可用容量Qn的比值,如式(1)所示:
(1)
借助上述定义可以推导出电池在充放电过程中的SOC值,即安时积分法:
(2)
式中,SOC(t)与SOC(t0)分别表示电池在t时刻、t0时刻的SOC值,I(t)表示t时刻的电流,η表示电池的充放电库伦效率。安时积分法由于精度较低,通常与其他方法结合使用,在本文中其将与CKF一起进行SOC估计。
由于基于CKF的SOC估计方法的精度高度依赖于电池模型的准确性,且嵌入式硬件的计算能力有限,所以电池模型应具有较高的精度以及较低的计算复杂度。并行RC网络的ECM由电压源和并列的电阻、电容网络组成,是采用最多的解决方案。其特征在于RC网络的数量越多,模型的精度越高,但同时计算负载也越大。文献[10]综合考虑电池模型的精度、复杂度与泛化性比较了12种常用的ECM结构,认为复杂的模型通常需要更高的计算成本且易受不确定性的影响,因此具有足够准确性且简单的模型是SOC估计的首选。文献[4]将CKF分别与1RC等效电路模型和分数阶模型相结合进行SOC估计,比较得出CKF与1RC模型的组合方式更适合嵌入微型处理器。综上,本文选择1RC等效电路模型,即戴维南模型作为研究对象。
如图1所示,UOCV表示电池的开路电压(OCV),Up和Ut分别表示电池的极化电压以及端电压。R0、Rp与Cp分别代表电池的欧姆电阻、极化电阻与极化电容。iL表示负载电流,放电时为正,充电时为负。
图1 戴维南模型示意图
假设x(=[SOCUp]T)表示状态量,iL表示输入量,Ut表示输出量,戴维南模型的离散时间状态方程可表述为:
(3)
其中,xk、uk和yk分别表示时间步长k处的状态量、输入量与输出量。wk与vk分别表示时间步长k处的过程噪声与测量噪声,都服从均值为0的高斯分布。f(·)和h(·)分别代表过程方程与测量方程,由于戴维南模型的f(·)是线性的,而h(·)由于OCV与SOC的非线性对应关系是非线性的,方程组(3)可进一步表达为以下形式:
(4)
根据戴维南模型,可以推导出其工作时电学关系的微分方程:
(5)
将方程式(5)进行离散化可进一步得到戴维南模型离散时间状态方程的具体表达形式,离散后的过程方程为:
(6)
测量方程为:
Ut,k=UOCV,k-Up,k-iL,kR0,k-1
(7)
其中,下标k与k-1均指时间步长,Δt表示采样时间间隔。根据方程组(6)与方程(7)可得:
(8)
为使基于戴维南模型的容积卡尔曼滤波SOC估计方法正常工作,需要确定OCV与SOC的映射关系,以及模型参数R0、Rp与Cp的数值。
本文采用的电池实验数据来源于NASA PCoE,其通过使锂离子电池以0.04 A的低电流持续放电来观察电池OCV与SOC的对应关系[11]。借助函数对低电流测试基础上选取的采样点进行拟合,可以得到该映射关系。现有研究多采用n次多项式来进行拟合,其特征在于多项式阶数过低会导致拟合误差较大,多项式阶数过高会出现过拟合。因此,应谨慎确定多项式阶数,经过对比本文选择的多项式阶数为12,如式(9)所示,图2给出了拟合结果。
UOCV=a0+a1×SOC+a2×SOC2+…+a11×SOC11+a12×SOC12
(9)
从图2中可以看出,根据采样点进行拟合后的OCV-SOC曲线几乎与原测试曲线完全重合,拟合精度非常高,能够满足本文的研究需要。n阶多项式的各阶系数如表1所示。
图2 低电流测试下的OCV-SOC曲线拟合结果
表1 OCV模型各阶系数
由于模型参数会随SOC变化而改变,因此采用固定的模型参数势必会引入一定的模型误差,进而影响SOC估计的精度。带遗忘因子的递推最小二乘法可有效避免最小二乘法在递推过程中旧数据逐步积累,进而导致递推结果不能良好反应新数据特性的弊端[12]。因此,本文采用该方法在线辨识电池模型的参数,针对戴维南模型的参数在线辨识步骤如下:
令Zk(=UOCV,k-Ut,k)表示观测矩阵,Фk(=[zk-1iL,kiL,k-1])表示输入输出序列,θk(=[a1a2a3]T)表示待辨识的参数,可得:
zk=φkθk
(10)
进一步引入带遗忘因子的递推最小二乘法:
(11)
其中,K与P分别表示增益矩阵和协方差矩阵,I是单位矩阵。λ为遗忘因子,当λ=1时,该算法退化为普通的递推最小二乘法。λ越小跟踪能力越强,但波动也越大,通常在(0.95,1)之间进行取值。最终可以得出电池模型参数的表达式:
(12)
在高斯近似下,贝叶斯滤波器的函数递归简化为代数递归,即在时间更新与测量更新时计算条件概率密度函数的均值和协方差。由此可见,滤波过程的核心在于如何计算被积体形式为非线性函数×高斯概率密度函数的高斯权重积分[13],如式(13)所示:
(13)
p(x)是任意函数,D⊆Rn表示积分域,权重函数w(x)≥0,x=[x1x2…xn]∈D。通常来说,该积分的数值计算方法是寻找一系列具有权重Wi的点xi加权求和来进行逼近,如式(14)所示:
(14)
如1.1.2所述,由于状态量与观测量服从均值为0的高斯分布,CKF算法假设过程噪声与测量噪声的协方差分别为Q和R。Q和R的值会影响滤波过程中过程信息与测量信息的权重,如果与真实值相差太远,会导致滤波结果出现较大偏差甚至发散[15]。由于噪声的统计信息随估计进行是不断变化的,因此应对Q、R进行实时更新。文献[16]提到了四种自适应卡尔曼滤波策略,其中基于协方差匹配思想的策略应用最为广泛。因此,本文采用移动窗口法,根据固定窗口内的新息序列对噪声协方差进行自适应更新[17]。综上,基于自适应容积卡尔曼滤波(ACKF)的SOC估计方法步骤如下:
1)初始化参数
2)时间更新
分解后验误差协方差:
(15)
生成容积点:
(16)
(17)
其中,m(=2n)表示容积点数目,n(=2)表示戴维南模型的状态量数目。[1]i代表式(18)的第i列:
(18)
ACKF容积点权重:
(19)
容积点传播:
(20)
预测状态量:
(21)
估计先验误差协方差:
(22)
3)测量更新
分解先验误差协方差:
(23)
生成容积点:
(24)
传播容积点:
Zi,k|k-1=h(Xi,k|k-1,uk)
(25)
预测测量值:
(26)
估计新息协方差:
(27)
估计互协方差:
(28)
估计卡尔曼增益:
(29)
估计后验状态量:
(30)
更新后验误差协方差:
(31)
4)噪声自适应
(32)
更新过程噪声协方差:
(33)
更新测量噪声协方差:
(34)
(35)
本文研究涉及的高阶容积卡尔曼滤波基于5阶球面径向容积规则[6],其与ACKF的不同之处主要在于容积点的生成方式以及权重分配,以下简称AHCKF。
AHCKF容积点展开方式:
ξ1,k-1=0
(36)
(37)
(38)
(39)
Ij、Ik分别代表n×n的单位矩阵的第j列与第k列。
AHCKF容积点权重:
(40)
由于AHCKF理论上能够达到5阶泰勒精度,相比ACKF具有更强的逼近能力,故其对初始误差的收敛速度以及真值的跟踪效果都应更好。然而,如引言所述,在不确定因素的干扰下AHCKF可能会产生较大的先验误差,其校正能力可能不足以使其估计误差还低于ACKF。因此,两种算法精度的高低会具有一定的随机效应。也就是说,尽管AHCKF总体误差更小,但单个步长下的精度优势其无法在整个SOC估计期间一直保持。因此,为了提高SOC估计的精度,应该充分利用这一特性,即在估计过程中选择误差绝对值更小的SOC值作为最终的SOC估计结果。为此,本文并行ACKF与AHCKF以在每个步长估计结束后对最优SOC值进行筛选保存。具体的融合流程如图3所示。
图3 基于滤波算法融合的SOC估计示意图
为评估上述融合SOC估计方法的效果,本文使用NASA PCoE发布的锂离子电池随机充放电使用数据集(RBUDS)来进行SOC估计。
RBUDS包含4节18650锂离子电池的试验数据,本文选择的是标号为“RW9”的实验结果。这些电池在常温下被随机加载-4.5 A到4.5 A之间的充电或放电电流并持续运行,当电池电压超过截止电压(3.2 V,4.2 V)或5 min的加载周期后,当前电流加载停止。每个加载周期之间会有一段小于1 s的休息期,以便选择下一个加载电流。部分实验的电池电流与端电压数据如图4和图5所示。
由于电池在车载条件下易受环境因素干扰,且SOC可能存在累计误差,为评估融合算法在SOC估计中的表现,本文设置了最大幅值为0.05 V的随机电压噪声和30%的SOC初始误差,估计结果通过平均绝对误差(MAE)以及均方根误差(RMSE)来进行描述。
图4 随机充放电下的电池电流曲线 图5 随机充放电下的电池端电压曲线
仿真分析选取了两个小时的电池随机充放电实验数据,为了验证电池模型以及参数辨识的精度,本文将端电压的测量值与估计值进行对比,结果如图6所示。从图6中可以看出,基于ACKF与AHCKF估计的电池端电压与其测量值在大部分时候是非常接近的。端电压的误差曲线如图7所示,不难发现ACKF与AHCKF的端电压误差大部分时候在±0.05 V间波动。其中,间隔出现的误差阶跃是由于电池在休息期静置,采样时间间隔发生突变,同时电压因欧姆极化迅速上升或下降,对参数辨识算法影响较大造成的。由于该影响时间很短,且误差快速收敛,因此可以忽略。最终ACKF与AHCKF端电压估计的MAE均为0.0189 V,RMSE分别为0.0282 V和0.0298 V。这说明电池模型能够很好地模拟电池的动态特性,且开路电压模型和参数辨识均具有较高的精度。
图6 端电压估计结果 图7 端电压估计误差曲线
图8与图9分别展现了融合算法估计的结果和误差情况。从图9中可以发现,由于AHCKF对误差收敛能力更强,其误差曲线相比ACKF更快到达0值附近。紧接着,受测量噪声干扰,两种算法同时呈现不同程度的波动,且AHCKF波动更大。随估计进行,二者的误差大小不断变化,精度交替领先,这印证了2.3中对两种算法性能的讨论。
图8 融合SOC估计结果 图9 融合SOC估计误差
此外,图9还可显示融合算法估计结果能够时刻与精度较高的估计结果保持一致。在图8中也可看出,融合后结果与安时积分参考值非常接近。如表2所示,融合算法估计的MAE与RMSE分别为0.53%和0.75%,相比ACKF与AHCKF,MAE分别减少了26.39%和11.67%,RMSE分别减少了20.21%和 6.25%。这表明所提出算法能够很好地利用ACKF与AHCKF估计精度优劣不断变化的特性,较大程度地提高SOC估计的精度。
表2 SOC估计误差比较
通过将ACKF与AHCKF应用于锂离子电池随机充放电工况下进行SOC估计,本文发现:尽管AHCKF的总体精度比ACKF的更高,但在估计过程中二者的精度优劣是不断变化的。考虑到容积卡尔曼滤波的这种特性,本文对两种算法估计结果进行择优选择,提出了一种基于容积卡尔曼滤波算法融合的SOC估计方法。进一步,本文应用该融合算法在同一工况下进行仿真分析,验证了该算法能有效利用上述特性。比较发现,融合后SOC估计方法的精度相对于ACKF和AHCKF有较大程度的提高。