基于无序测量粒子滤波的锂电池剩余寿命预测
2021-03-25李俊霞
李俊霞,张 淼,郑 慧
(浙江科技学院 a.机械与能源工程学院;b.自动化与电气工程学院,杭州 310023)
锂电池作为目前便携式电子设备及电动汽车的重要供能来源[1],在现代生活中扮演着不可或缺的角色。锂电池失效会导致整个系统性能下降,带来运行事故[2]。如果能准确地估计出锂电池的剩余使用寿命(remaining useful life,RUL)[3],为用户提供合理的电池更换时间,就能在电池失效前避免故障的发生。锂电池剩余使用寿命预测方法可分为模型驱动方法和数据驱动方法两大类[4]。模型驱动方法主要根据电池的失效机制、电池材料特性和负载条件来建立锂电池性能退化模型,从而实现对锂电池剩余使用寿命的预测[5]。He等[6]建立了锂电池物理降解行为的双指数经验模型,通过训练数据集来实现对模型参数的辨识,从而实现对锂电池健康状态和剩余使用寿命的估算。Li等[7]通过测量锂电池的阻抗谱,并将其作为充放电循环次数的函数,从而研究锂电池的循环使用寿命。Micea等[8]采用二阶多项式模型并根据电池循环次数,利用最小二乘法实现了对电池容量的估计。锂电池的电化学反应过程复杂,很难用精确的数学模型来描述两者之间的关系。近年来,许多研究者采用数据驱动方法进行锂电池剩余使用寿命预测。
数据驱动方法不需要知道对象系统的精确数学模型,它是以数据为研究对象,根据锂电池历史数据或状态数据进行剩余使用寿命预测的方法[9]。李赛等[10]采用相关向量机算法实现锂电池剩余使用寿命的预测,试验结果表明概率密度分布能有效地反映预测结果的不确定性。秦琪等[11]采用粒子群算法对粒子滤波(particle filter,PF)算法中的重采样过程进行优化,获得了准确的锂电池剩余寿命的概率分布。张朝龙等[12]采用混沌粒子群算法对相关向量机算法进行优化,并将其应用于锂电池充放电循环中容量衰退的预测,试验结果证明了其有效性。锂电池作为非线性电化学系统,其容量呈非线性退化,针对非线性非高斯问题,PF算法被证明是一种很有效的方法。PF算法是一种采用蒙特卡罗方法的贝叶斯状态估计算法[13],它被广泛应用于更新模型的状态和参数[14]。Dalal等[15]提出PF框架实现对锂电池剩余容量进行预测,试验结果表明PF算法对锂电池剩余容量预测准确度提升。Miao等[16]使用经验衰减模型和无迹PF算法对锂电池剩余使用寿命进行预测,试验结果表明PF算法能对预测结果的不确定性进行表达。Wang等[17]应用球形容积PF算法预测锂电池剩余使用寿命,使用球体积作为PF算法的主要方程,采用阈值法来推算锂电池的剩余使用寿命,试验结果表明无迹PF算法能准确预测锂电池剩余使用寿命。罗悦[18]采用AR模型,应用PF算法,实现准确的锂电池剩余使用寿命估计,并给出结果的不确定性表达,有助于提高系统可靠性。Ahwiadi等[19]提出了增强突变粒子滤波(enhanced mutated particle filter,EMPF)算法,通过加入突变粒子和粒子剔除机制方面的改进措施,从而实现对锂电池荷电状态估计和剩余使用寿命的预测。Cheng等[20]提出了增强粒子滤波(enhanced particle filter,EPF)算法,该算法通过对小权重粒子进行校正并对多项式重采样改进,实现对风力涡轮机传动系齿轮箱寿命的预测。然而,PF算法在锂电池剩余寿命预测中也存在一定的缺陷,如果在序贯重要性采样阶段将部分模糊测量的值用于粒子的更新,多次迭代后估计误差增大将会导致不准确的状态估计,因此,笔者针对上述缺陷提出无序测量粒子滤波(out of sequence measurement particle filter,OOSMPF)算法。
1 模型构建
在锂电池的寿命预测与健康管理中,一般采用定期的电池容量测试来制定相应的电池维护和更换策略。从容量测试中获得的电池容量衰退数据用于描述电池健康状况和寿命预测。在实际锂电池寿命评价中,研究人员通过加速充放电试验来获取电池容量退化数据。经试验证明锂电池容量衰退数据更接近于双指数衰退曲线,因此许多研究者采用双指数模型预测电池寿命。双指数模型被描述如下:
Qk=aexp(bk)+cexp(dk)。
(1)
式(1)中:Qk为第k次循环的锂电池容量;k为锂电池循环次数;a、b、c和d为双指数模型的参数,参数a和c与锂电池内部电阻有关,b和d与锂电池衰退速率有关。
双指数模型中有4个参数需要训练,这样会加大模型训练的难度,因此需要对模型进行改进以减少模型参数的个数。通过多项式推导得到锂电池容量衰退的递推公式:
Qk=Qk-1exp(b)+cexp(d(k-1))(1-exp(b-d))+ωk,ωk~N(0,σw)。
(2)
式(2)中:b、c、d为锂电池容量衰退模型的参数;ωk为状态噪声,满足均值为0、方差为σw的标准正态分布。
状态方程对应的观测方程为
(3)
2 OOSMPF算法的提出
2.1 PF算法
PF算法是贝叶斯框架下的一种概率预测方法。对于一个动态系统模型,状态转移函数为
xk=fk(xk-1,wk-1)。
(4)
式(4)中:xk为第k循环系统状态;xk-1为第k-1循环系统状态;fk为状态转移函数;wk-1为第k-1循环过程噪声。
测量函数为
zk=hk(xk,vk)。
(5)
式(5)中:zk为第k循环测量值;hk为观测函数;vk为第k循环观测噪声。
粒子滤波算法过程描述如下:
2)重要性采样。假设在k-1时刻,已知后验概率p(xk-1|z1:k-1),且xk服从一阶马尔科夫过程,则k时刻的先验分布为
更新k时刻的后验概率p(xk|z1:k)为
3)计算重要性权重,得
(6)
式(6)中:z1:k等同于前一公式中的zk。
4)序贯重要性重采样。经过几次迭代,有些粒子的权重因太小而被忽略,只有少部分粒子的权重较大,将这部分粒子用于状态估计会导致最终结果的不准确,因此需要对粒子进行重采样,得有效粒子数为
(7)
采样后,粒子的后验概率为
(8)
5)获得粒子状态的估计值。
(9)
2.2 OOSMPF算法
图1 粒子更新过程Fig.1 Process of particle renewal
图2 无序测量时的粒子状态更新Fig.2 Out of sequence measurement for particle state update
测量的模糊性是导致滤波器退化和粒子发散的一个重要原因。模糊测量更新不仅由测量模型决定,而且还要由滤波器估计的先验分布决定。模糊测量更新会使粒子的后验分布分散,从而导致较低的粒子状态置信估计。针对PF算法局部测量模糊问题,本研究提出OOSMPF算法用以获得准确的当前位置估计,其核心思想是保留模糊测量数据,当先验分布变得适合用于测量更新时再使用,这在本质上等价于某些延迟到达的情况。图2显示了无序测量时的粒子状态更新,观测值zk-1对应于k-1时刻的状态值xk-1。若k-1时刻的测量值zk-1是模糊的,那么在测量更新阶段先跳过测量zk-1,在下一次粒子状态更新阶段再使用zk-1。
利用无序测量进行粒子的更新,
(10)
归一化后的粒子权重为
(11)
三是保障机制不到位。从顶层设计看,对镇街人大的法律规定还存在有待探讨的地方,如乡镇人大主席团在闭会期间的机构性质不明确,监督职能和执行程序模糊笼统,运转操作存在实际难处。从上下级人大关系看,受“上下级人大不是领导与被领导关系、而是指导与被指导关系”等影响,工作指导停留在一般业务要求、工作协商、活动联系层面,且往往偏散偏软,系统推进、激励约束、实质监督不够。
2.3 试验步骤
OOSMPF算法的实现步骤如下:
4)对粒子进行重采样,得到重采样粒子;
9)重采样;
3 试验结果和性能评价
3.1 试验平台
试验所采用的电池容量退化数据为美国航空航天局(NASA)卓越故障预测中心(PCoE)提供的锂电池试验数据。试验平台采用额定容量为2 A·h的18650型钴酸锂电池,采用电池编号为No.0005、No.0006、No.0007的数据进行分析。电池充放电试验在室温24 ℃环境下进行,在1.5 A恒定电流模式下充电,直到电池电压达到4.2 V,然后在恒定电压模式下充电,直到充电电流降至20 mA。No.0005、No.0006、No.0007电池分别在2 A的恒定电流下放电,使电池电压分别降至2.7、2.5、2.2 V。反复地充放电循环以加速电池老化,而阻抗测量提供了内部电池参数的变化情况。随着老化的加快,当电池达到寿命终止(end of life,EOL)标准,即额定容量下降20%时试验停止。锂电池容量衰退曲线如图3所示,从图中可以看出,电池容量整体呈下降趋势,在短时间内容量呈升高趋势,这种现象是由于电池在休息时间内自动充电引起的。
图3 锂电池容量衰退曲线Fig.3 Capacity decline curve of lithium battery
3.2 试验效果图及数据对比分析
试验采用的No.0005、No.0006、No.0007号锂电池均有167个生命周期点,为了得到较好的训练效果,No.0005和No.0007电池选用60次循环数据作为训练数据,剩下的107次循环作为测试数据。No.0006电池容量下降较快,在60次充放电周期后就达到了寿命终点,因此选择的训练数据不应大于60个,本试验选择前40个数据作为训练数据。
基于实测值和预报值,本研究采用以下3个指标来衡量RUL预报模型的性能:平均绝对误差(mean absolute error,MAE)、均方根误差(root of mean square error,RMSE)及剩余使用寿命预测误差(remain-ing useful life predict error,RULPE),其值VMAE、VRMSE、VRULPE的计算方法分别如下:
(12)
(13)
VRULPE=|VRULT-VRULP|。
(14)
式(12)~(14)中:m为样本数;h(xi)为预测值;yi为真实值。VRULT为剩余使用寿命的真实值,VRULP为剩余使用寿命的预测值。
图4 PF算法和OOSMPF算法在锂电池No.0005上的测试结果Fig.4 Test results of PF algorithm and OOSMPF algorithm on lithium battery No.0005
图5 PF算法和OOSMPF算法在锂电池No.0006上的测试结果Fig.5 Test results of PF algorithm and OOSMPF algorithm on lithium battery No.0006
图6 PF算法和OOSMPF算法在锂电池No.0007上的测试结果Fig.6 Test results of PF algorithm and OOSMPF algorithm on lithium battery No.0007
仿真试验结果如图4~6所示。
当电池容量达到失效阈值1.6 A·h时,可以认为电池已接近使用寿命的终点,因此对电池进行寿命预测是在电池达到失效阈值附近区域时进行的。通过对3组电池的试验结果对比发现,在电池达到失效阈值范围内OOSMPF相比较于PF算法在进行电池剩余寿命预测效果上得到提升,预测曲线也能更准确地反映锂电池容量下降的过程,因此预测结果更准确。
对3组数据均选取粒子数为100个进行测试。表1总结了PF算法、EMPF算法、EPF算法和OOSMPF算法在电池No.0005、No.0006、No.0007的预测误差。从表1中可以看出,No.0005号和No.0007号电池在相同的预测起点第60次循环时,PF算法对锂电池的RULPE结果分别为15次和8次,EMPF算法对锂电池的RULPE结果均为13次,EPF算法对锂电池的RULPE结果分别为12次和7次,而OOSMPF算法得到相应的误差结果分别为7次和5次。对No.0006号电池,PF算法、EMPF算法、EPF算法和OOSMPF算法得到的锂电池RULPE结果分别为26次、18次、16次和15次。引入的平均绝对误差和均方根误差对试验做进一步评价,得出OOSMPF算法相比较于PF算法、EMPF算法和EPF算法误差更小,即OOSMPF算法的预测精度高于其他PF算法的预测精度。
表1 4种算法的预测误差比较Table 1 Comparison of errors of four algorithms
4 结 语
本研究提出了基于OOSMPF算法的锂电池剩余寿命预测方法,本算法解决了基本粒子滤波算法中模糊测量对锂电池剩余寿命预测不准确的问题。OOSMPF算法针对模糊测量现象增加了无序测量步骤,这样就避免了将模糊测量的值直接用于计算粒子状态,进而导致算法的灵敏度不高的问题。OOSMPF算法用于锂电池剩余寿命预测的试验结果显示,相比于PF算法,OOSMPF算法的预测结果与实际电池容量衰退曲线更接近,拟合度更高,同时所得的锂电池剩余寿命的预测结果更准确。