一种对电池的健康状态进行估计的方法

文档序号:26000683发布日期:2021-07-23 21:17阅读:108来源:国知局
一种对电池的健康状态进行估计的方法

本发明涉及电池管理系统领域,特别涉及一种对电池的健康状态进行估计的方法。



背景技术:

面对全球环境的日趋加剧以及可再生能源的枯竭问题,各国政府提倡研发新能源汽车来替代传统燃油车来解决这两大难题。其中电动汽车作为新能源汽车的主力已经受到了广泛的关注。由于锂电池具有能量密度和功率承受力高、标称电压高、自放电率低、周期长和没有记忆效应等特点,现在已经被广泛应用在电动自行车、纯电动或混合动力汽车、卫星和飞机等电力辅助系统。随着充放电次数的增加和工作条件的不断变化,电池内部的化学反应会变得非常缓慢,最终会造成电池老化,使得电池的实际容量远远低于其额定容量,从而导致其性能下降。老化的电池会直接导致汽车或者卫星电力系统出现故障,影响整个机器的正常使用。因此,电池健康状况(stateofhealth,soh)和剩余使用寿命(remainingusefullife,rul)的预测是电池监控系统的一项主要任务,可以减少由电池老化而引起的一些重大灾难事故。近些年,电池soh和rul的预测已经成为故障预测和健康管理工程领域的一个热点和挑战性问题,引起了研究人员的广泛关注与研究,并取得了一些出色的效果。这些研究的方法主要分为基于模型的方法和数据驱动的方法两大类。

基于模型的方法主要是利用一些经验数学公式来描述电池历史容量衰减的趋势,然后利用粒子滤波(particlefilter,pf)相关的技术来预测电池的soh和rul。虽然基于模型的方法在电池rul的预测方面取得了一些成功,但是没有一个通用和精确的数学模型来描述不同型号电池的退化现象。此外,一些改进的pf算法并不能完全消除粒子退化现象,而且在仿真过程中受到噪声值的影响较大,仿真结果容易出现较大的偏差。和基于模型的方法相比,数据驱动的方法不需要一个确定的数学模型来描述电池退化现象,更适用于不同型号的电池数据预测。其主要是从电池退化数据中提取典型特征(如容量、电流、电压、阻抗和温度等),然后利用机器学习和深度学习的方法将这些历史特征和当前的soh建立某种映射关系,通过训练大量的数据得到一个模型来预测电池的soh和rul。这些方法主要包括人工神经网络(artificialneuralnetwork,ann)、支持向量回归(supportvectorregression,svr)、相关向量机(relevancevectormachine,rvm)、高斯过程回归(gaussianprocessregression,gpr)、长短时记忆神经网络(longshort-termmemorynetwork,lstm)等。为了提高svr算法的预测精度,一些优化算法,如粒子群优化算法、人工蜂群优化算法和差分进化算法等被提出用于寻找svr算法中最佳惩罚系数c和核函数半径g。随着计算机硬件设备的发展,一些复杂网络的深度学习技术,如lstm算法和卷积神经网络(convolutionneuralnetwork,cnn)算法被应用在电池数据领域的估算上。但是在工作过程中,电池容易受到自身的物理特性和外部工作环境的影响,电池寿命的退化是一个复杂的非线性过程,容易出现短暂的容量再生现象,且伴随着大量的噪声。为了减少这种随机的噪声干扰,一些信号处理的方法,如小波分解技术和带有自适应噪声的互补集合经验模态分解算法(completeensembleempiricalmodedecompositionwithadaptivenoise,ceemdan)被提出。

通过以上分析可知,数据驱动的方法都能够实现对电池的soh和rul精确估算,但是每种算法也都有一些自身的缺点。如一些元启发式优化算法在寻优过程中容易陷入局部最优,从而找不到最优值。一些结构复杂的深度学习网络将耗费巨大的计算量,而且网络中的一些参数不一定为最佳值。ceemdan信号处理方法存在噪声残留和分解早期出现的假模式的问题。



技术实现要素:

本发明要解决的技术问题是克服现有技术的缺陷,提供一种对电池的健康状态进行估计的方法。

为了解决上述技术问题,本发明提供了如下的技术方案:

本发明一种对电池的健康状态进行估计的方法,具体步骤如下:

步骤一,在25℃温度下,对锂离子电池进行三种不同的测试方案,即恒流恒压(constantcurrentconstantvoltage,cc-cv)充电实验、恒流(constantcurrent,cc)放电实验和阻抗测量实验,在充电阶段,开始以cc模式充电,其电流大小为1.5a,直到电压达到充电截止电压4.2v,然后将充电模式转化成cv模式对电池进行充电,即电压保持在4.2v,直到电流下降到充电截止电流20ma,在放电阶段,以cc的模式放电,其电流大小为2a,直到达到放电截止电压2.7v;

得到电池容量数据时,首先利用iceemdan信号分解算法将其分解成若干个高频信号和一个低频部分,并将容量数据进行分解;

步骤二,利用svr算法对分解后高频信号进行预测,然后利用lstm算法对低频信号进行预测,在模型预测过程中,引入ssa优化算法对svr算法的两个参数寻找svr的最佳惩罚系数c和核函数半径g,达到svr算法的最佳预测性能,将容量数据或分解后的各分量设定为训练集,剩余的容量数据或分解后的各分量设定为测试集,通过对各个分量的预测,得出预测结果imf1*、imf2*、imf3*、imf4*和residual*以及相对应的各个分量预测误差;

步骤三,重构步骤二中每一个分量信号的预测结果,最终的容量预测结果为各个分量预测相加之合,即cn*=imf1*+imf2*+imf3*+imf4*+residual*,并对电池soh和电池rul进行评估验证。

作为本发明的一种优选技术方案,所述步骤一当中,在iceemdan分解技术中,ek()为通过emd算法分解得到的第k个imf分量,h()用于计算信号局部平均值,<>用于计算信号的总体平均值,ω(i)为零均值和单位方差的高斯白噪声,噪声标准差为0.2,std()为计算标准差的函数,最大迭代次数为5000,实现次数为500。

作为本发明的一种优选技术方案,所述iceemdan信号分解算法步骤如下:

(1)对原始容量信号cn添加噪声

式中,β0=ε0std(cn)/std(e1(ω(i))),ε0为表示第一个附加噪声和分析信号之间的期望信噪比的倒数。

(2)通过emd算法对加入噪声的信号进行分解,获得第一个imf1分量和第一残余分量r1

r1=<h(ζ(i))>式(2)

imf1=ζ-r1式(3)

(3)计算r1+β1e2(ω(i))的局部均值,将其作为第二个残余分量r2,并计算第二个imf2

imf2=r1-r2=r1-<h(r1+β1e2(ω(i)))>式(4)

(4)当k=3,…,k时,依次计算第k个残余分量

rk=<h(rk-1+βk-1ek(ω(i)))>式(5)

(5)计算第k个imfk分量

imfk=rk-1-rk式(6)

(6)重复步骤(4)和(5),将原始信号分解成若干个imfs分量和一个残余分量。

(7)原始容量数据分解后的分量如图2所示,图中cn为原始容量数据。

作为本发明的一种优选技术方案,所述步骤二算法包括以下三种:麻雀搜索算法、支持向量机(supportvectormachine,svm)和长短时记忆神经网络(longshort-termmemorynetworks,lstm)。

作为本发明的一种优选技术方案,所述该lstm网络模型主要由输入层、lstm层和全连接输出层组成,其重要参数如下:最大迭代次数itermax为500,隐含层中神经元个数nh为150,初始的学习率设为0.005,每125次循环之后学习率下降因子设为0.2,为防止过拟合现象发生,采用l2正则化方法,正则化系数为0.001。

与现有技术相比,本发明的有益效果如下:

本发明的混合模型可以对电池的soh和rul进行实时的精确预测,避免因电池过度使用引发的事故灾难,利用改进的带有自适应噪声的互补集合经验模态分解算法对容量数据进行分解,可以避免数据中噪声的干扰;然后再利用svr算法对分解的高频信号进行预测,同时利用麻雀优化算法出色的优化能力对svr算法的重要参数进行寻优,来提高预测精度,利用lstm算法对分解的低频信号进行预测;最后将各种分解的信号进行重组构成最终的容量预测值,通过与单个算法预测性能进行对比,利用这种组合模型可以大大提高了电池soh和rul的预测精度。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1是混合预测模型的详细流程图;

图2是电池历史容量数据分解示意图;

图3是分解后各分量的预测结果;

图4是三种模型的容量预测结果;

图5是三种模型的容量及寿命预测结果;

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

实施例

如图1-5所示,本发明提供一种对电池的健康状态进行估计的方法,具体步骤如下:

步骤1:在25℃温度下,对锂离子电池(优选常用的18650型号锂电池)进行三种不同的测试方案,即恒流恒压(constantcurrentconstantvoltage,cc-cv)充电实验、恒流(constantcurrent,cc)放电实验和阻抗测量实验,在充电阶段,开始以cc模式充电,其电流大小为1.5a,直到电压达到充电截止电压4.2v;然后将充电模式转化成cv模式对电池进行充电,即电压保持在4.2v,直到电流下降到充电截止电流20ma,在放电阶段,以cc的模式放电,其电流大小为2a,直到达到放电截止电压2.7v,历史电池容量数据是在每次放电时通过对电流进行时间积分得到的。

当得到电池容量数据时,首先利用iceemdan信号分解算法将其分解成若干个高频信号(称为固有模式函数imfs)和一个低频部分(称为残差)。

在iceemdan分解技术中,ek()为通过emd算法分解得到的第k个imf分量,h()用于计算信号局部平均值,<>用于计算信号的总体平均值,ω(i)为零均值和单位方差的高斯白噪声,噪声标准差为0.2,std()为计算标准差的函数,最大迭代次数为5000,实现次数为500。

详细的iceemdan信号分解算法步骤如下:

(1)对原始容量信号cn添加噪声

式中,β0=ε0std(cn)/std(e1(ω(i))),ε0为表示第一个附加噪声和分析信号之间的期望信噪比的倒数。

(2)通过emd算法对加入噪声的信号进行分解,获得第一个imf1分量和第一残余分量r1

r1=<h(ζ(i))>式(2)

imf1=ζ-r1式(3)

(3)计算r1+β1e2(ω(i))的局部均值,将其作为第二个残余分量r2,并计算第二个imf2

imf2=r1-r2=r1-<h(r1+β1e2(ω(i)))>式(4)

(4)当k=3,…,k时,依次计算第k个残余分量

rk=<h(rk-1+βk-1ek(ω(i)))>式(5)

(5)计算第k个imfk分量

imfk=rk-1-rk式(6)

(6)重复步骤(4)和(5),将原始信号分解成若干个imfs分量和一个残余分量。

(7)原始容量数据分解后的分量如图2所示,图中cn为原始容量数据,imf1-imf4为分解后的高频信号,residual为分解后的低频部分。

步骤2:利用svr算法在小样本数据集上出色的预测性能对分解后高频信号进行预测,然后利用lstm算法对低频信号进行预测,在模型预测过程中,为了寻找svr的最佳惩罚系数c和核函数半径g,引入ssa优化算法对svr算法的两个参数进行寻优,以达到svr算法的最佳预测性能;

算法一:麻雀搜索算法

麻雀搜索算法是一种新型的群智能优化算法,麻雀搜索算法ssa主要是根据麻雀种群觅食和反捕食行为的启发而提出的,并在一些测试函数上进行了仿真实验。在麻雀觅食的过程中,整个麻雀种群分为探索者(explorer)和追随者(scroungers),探索者负责寻找食物并为整个麻雀种群提供觅食区域和方向,而追随者主要是通过探索者来获取食物,种群中的每个个体都会监视群体中其它个体的行为,并且会与高摄取量的同伴争夺食物资源,以提高自己的捕食率,此外,当麻雀种群意识到危险时会做出反捕食行为,麻雀搜索算法用数学模型表示如下:

(1)为了模拟麻雀觅食和反捕食行为,在整个麻雀种群中,麻雀的位置可以用下面的矩阵表示:

其中n是麻雀的数量,d为要优化变量的维数。

种群中所有麻雀的适应度值可以用以下向量表示:

其中fx为麻雀种群的适应度值向量,f(·)表示个体的适应度值。

(2)在ssa算法中,因为探索者具有更好的适应度值,可以获得比追随者更大的觅食搜索范围,因此,他可以优先获取搜索过程中的食物,并为整个种群提供食物的位置和方向,麻雀种群中探索者的数量占整个种群的20%,在每次迭代的过程中,探索者的位置更新描述如下:

式中t表示当前迭代次数;j=1,2,...n;表示当前迭代第i个麻雀在第j维中的位置信息;itermax为最大迭代次数;αssa是一个0-1之间的随机数;ar(ar∈[0,1])和st(st∈[0.5,1])分别为预警值和安全值,该方案中ar为0-1的随机数,st=0.8;qssa为服从正态分布的随机数;lssa为一个1×d的矩阵里面的每个元素值都为1;当ar<st时,这表明此时的觅食环境中没有危险,探索者可以扩大搜索范围,当ar≥st,这表示种群中的一些麻雀已经发现了捕食者,并向其它麻雀发出了警报,此时所有麻雀都需要迅速飞到其它安全的地方进行觅食。

(3)追随者的位置更新描述如下:

式中,t表示当前迭代次数;是当前探索者所占据的最优位置;则表示整个麻雀种群中最差的位置;assa表示一个1×d的矩阵,其中每个元素随机赋值为1或-1,且满足条件assa+=assat(assaassat)-1。当i>n/2时,表明适应度值较低的第i个追随者没有获得食物,处于十分饥饿的状态,此时需要飞往其它地方觅食来补充能量。

(4)当意识到危险时,麻雀种群会做出反捕食行为,其数学表达式如下:

式中,是当前的全局最优位置;βssa作为步长控制参数,为服从正态分布的[0,1]之间的随机数;kssa也是步长控制参数,其值为[-1,1]之间的随机数;fi则是当前麻雀个体的适应度值;fbest和fworst分别是当前全局最佳和最差的适应度值;εssa是最小的常数,εssa=1e-80,以避免分母出现零;当fi>fbest表示此时的麻雀正处于种群的边缘,极其容易受到捕食者的攻击;fi=fbest时,这表明处于种群中间的麻雀意识到了危险,需要靠近其它的麻雀以此尽量减少它们被捕食的风险;

算法二:支持向量机(supportvectormachine,svm)

支持向量机(supportvectormachine,svm)分为支持向量分类(supportvectorclassification,svc)和支持向量回归(supportvectorregression,svr),由于svr是一种有坚实理论基础的小样本机器学习方法,在高维特征的回归问题中有突出的表现,该方法不但具有高效简单的特点,而且具有良好的鲁棒性,因此可以用来解决一些样本数量较少的分类回归问题,给定一组数据其中将训练样本从原始空间映射到更高维空间,将样本线性可分,如果原样本空间维数有限,那么一定存在一个高维特征空间是样本可分的,那么在特征空间中,划分超平面所对应的回归模型可表示为:

f(x)=wtφ(x)+b式(12)

式中,f(x)表示输出值,φ(x)是一个非线性映射函数,w为权重向量,b是可调因子

svr假设我们能容忍f(x)与y之间最多有ε的误差,仅当两者之间的绝对值误差大于ε时才计算损失,通过引入松弛变量ξi和ξi,可以将svr问题描述成如下形式:

式中,ξi和ξi是非负松弛变量;不敏感系数ε可以反映预测值f(xi)与原始值yi之间的距离;c为惩罚常数,c值越大,表示倾向于f(xi)与yi之间较小的偏差,模型也将会变得复杂,c值越小,表示能容忍f(xi)与yi之间较大的偏差,模型也会变得较为平滑;

引入拉格朗日乘子αi和αi,并利用其对偶性原理,将原始最优问题转化为如下形式:

上述过程需要满足kkt条件,其中的互补松弛条件为:

引入核函数k(xi,x),将原始svr问题最终转化为:

选择高斯径向基核函数,其表达式为:

式中,σsvr为核函数的宽度。

算法三:长短时记忆神经网络(longshort-termmemorynetworks,lstm)

长短时记忆神经网络(longshort-termmemorynetworks,lstm)是由标准的循环神经网络改进而来的一种网络结构,可以有效地解决简单循环神经网络的梯度爆炸或消失问题,lstm适用于处理和预测时间间隔和延迟较长的序列问题,并在机器翻译、语音识别和视频分析等领域得到了广泛的应用,相比于传统的rnn结构,lstm引入了三个控制门单元,遗忘门it、输入门ft和输出门ot。如果去掉三个门控制单元或者将三个门控制函数都设为1,lstm模型就会退化成为标准的rnn模型;

长短期记忆门的输入均为当前时间步输入xt与上一时间步隐藏状态ht-1,输出由激活函数为sigmoid函数的全连接层通过计算得到,三个门元素的值域均为[0,1],假设隐藏单元的个数为h,给定时间步t的小批量输入(样本数为n,输入个数为d)和上一时间步隐藏状态时间步t的输入门遗忘门和输出门的计算公式如下:

it=σlstm(xtwxi+ht-1whi+bi),

ft=σlstm(xtwxf+ht-1whf+bf),

ot=σlstm(xtwxo+ht-1whf+bo),式(20)

式中,σlstm(·)为sigmoid函数,为权重参数,为偏差参数;

然后利用tanh函数作为激活函数来计算候选记忆细胞其计算公式如下:

式中为权重系数,为偏差参数,为t时刻候选记忆细胞;

根据元素值域在[0,1]的输入门、遗忘门和输出门来控制隐藏状态中信息的流动,遗忘门控制上一时间步的记忆细胞ct-1中的信息是否传递到当前时间步,起到截断和帅选过去记忆的功能,而在当前时间步,输入门则控制输入xt通过候选记忆细胞如何流入记忆细胞,将新的信息选择性的记录到记忆细胞中,如果遗忘门一直近似等于1或者输入门一直近似等于0,过去的记忆细胞将一直随着时间保存并传递至当前时间步;

式中,表示按向量元素相乘功能,ct为t时刻记忆细胞,ct-1为t-1时刻记忆细胞;

当得到记忆细胞之后,通过输出门来控制从记忆细胞到隐藏状态的信息流动,决定当前时刻记忆细胞中的信息是否输出给隐藏状态ht,当输出门近似等于1时,记忆细胞中的信息将传递到隐藏状态供输出层使用,当输出门近似等于0时,记忆细胞中的信息只是自己保留,其公式如下:

式中,ht为隐藏状态。

该lstm网络模型主要由输入层、lstm层和全连接输出层组成,其重要参数如下:最大迭代次数itermax为500,隐含层中神经元个数nh为150,初始的学习率设为0.005,每125次循环之后学习率下降因子设为0.2,为防止过拟合现象发生,采用l2正则化方法,正则化系数为0.001。

该ssa-svr模型中最大迭代次数itermax为50,ssa算法中的种群规模n为50,c和g的搜索范围都为[0.001,1000],麻雀中探索者的数量占整个种群数量的20%,意识到危险的麻雀数量占整个种群的10%,安全值st为0.8。

soh是电池老化程度的关键指标,在每个充放电循环测试中可以直接反映出电池的寿命状况,可以有效判断电池是否达到寿命终止条件,并及时更换电池,降低系统故障的概率,目前,soh可以用容量、电池内阻、电流和电压等参数来表示,因为电池容量数据更容易直接反映出电池的老化程度,因此本文应用电池容量比来定义soh。

式中,cn表示第n次充放电循环中的电池实际容量;c0表示电池额定容量。

通过式(24)可以将预测电池soh的问题转化为预测充放电循环中电池容量的问题,在利用ssa-svr和lstm算法来预测电池实际容量时,将第n次之前观测到的电池实际容量作为预测模型的输入,第n次循环中的电池容量作为预测模型的输出;

式中,cnp为第n次循环预测的电池容量,cn-1p为第n-1次循环的历史观测值,dcn为输入的滑动窗口大小。

当电池实际容量cn衰减到一定值时,可以认为电池已经达到了寿命失效(end-of-life,eol)阈值,需要及时更换电池,eol阈值一般为额定容量值的70%,因此,四个电池容量的eol阈值为1.4ah,电池剩余寿命rul可以用下式表示:

rul=neol-necl式(26)

式中,rul表示电池剩余循环次数,neol表示当电池容量达到eol阈值时的充放电循环次数,necl表示当前电池的电流充放电循环次数。

利用ssa-svr预测模型对分解的4个高频部分imf1-imf4进行预测,利用lstm模型对低频部分residual进行预测,实验中混合模型的参数dcn=3,即利用前三次的实际容量值来预测当前的容量值,其输入x=[cn-3,cn-2,cn-1],预测输出y=cn。

将前80次循环的容量数据或分解后的各分量设定为训练集剩余的容量数据或分解后的各分量设定为测试集。该混合模型的预测原理是在测试集上进行离线训练得出一个预测模型,然后再利用这个预测模型对测试集进行在线预测。通过对各个分量的预测,得出预测结果imf1*、imf2*、imf3*、imf4*和residual*以及相对应的各个分量预测误差,如图3所示。

步骤3:重构步骤2中每一个分量信号的预测结果,最终的容量预测结果为各个分量预测相加之合,即cn*=imf1*+imf2*+imf3*+imf4*+residual*,为了评估模型预测电池容量的准确性和稳定性,使用以下几种流行的度量指标对模型进行验证:平均绝对误差(meanabsoluteerror,mae)、均方根误差(rootmeansquareerror,rmse)和平均绝对百分比误差(meanabsolutepercentageerror,mape),其主要计算公式如下:

式中,m为测试集中样本的数量,cn为实际容量值,cn*为预测的容量值。

对于电池rul而言,使用相对误差(relativeerror,re)来评估模型的准确性。

re=rulpre-rultrue式(30)

为了验证该模型的可行性和预测效果,现引入未加入iceemdan信号分解算法的ssa-svr和lstm预测模型进行对比,图4为三种模型的预测结果和误差结果。

从图4可以看出,该混合模型的预测精度远远高于其他两种模型。其各项评估结果mae、rmse和mape分别为0.3279%、0.4617%和0.2301%。

为了进一步验证所提出算法在预测性能上的鲁棒性和有效性,在第64个循环点处来实现电池的容量和rul预测。图5为从第64次循环处开始对容量和rul的预测结果。当开始的循环点为64的情况下,其mae、rmse、mape和rul的结果分别为0.2842%、0.4113%、0.1982%和+1,这表明所提出的混合模型可以提高电池容量和rul的预测精度,并使得电池健康状况预测具备更好的精确性和鲁棒性。

最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1