基于片段充电时间和GRU的锂离子电池健康状态预测方法与流程

文档序号:28424601发布日期:2022-01-11 23:45阅读:143来源:国知局
基于片段充电时间和GRU的锂离子电池健康状态预测方法与流程
基于片段充电时间和gru的锂离子电池健康状态预测方法
技术领域
1.本发明涉及一种基于片段充电时间和gru的锂离子电池健康状态预测方法。


背景技术:

2.锂离子电池具有能量密度高、循环寿命长、无记忆效应等优点,是新型储能系统的重要技术路线之一。然而,随着电池的老化,电池的健康状态会持续衰减,影响储能系统的有效容量和安全性。因此,在电池运行过程中,要对电池的健康状态进行持续预测。
3.目前对于锂离子电池健康状态的预测方法,有直接测量法、模型辨识法和数据驱动法。直接测量法需要通过对电池进行满充满放来计算剩余容量,从而计算健康状态,在电池实际运行中难以使用,且严重依赖于测量精度。模型辨识法需要先建立锂离子电池的电化学模型或等效电路模型,通过实验辨识模型参数,然后采用卡尔曼滤波、粒子滤波等方法获得电池健康状态,其预测精度依赖于模型及参数辨识实验的精度。数据驱动法不需要建立电池电化学或等效电路模型,通过电池充放电过程中的数据特征来预测健康状态,是目前的主流技术路线。现有基于数据驱动的锂离子电池健康状态预测方法,一般需要根据电池从放电截止电压充电至充电截止电压的全过程数据来预测电池健康状态,即需要电池从放空到充满。然而,在实际运行过程中,锂离子电池一般很少放电至截止电压,也经常出现未充满即投入运行的状态,难以满足从放空到充满的理想测试条件。
4.因此,为了使锂离子电池健康状态预测方法符合实际运行工况,需要研究基于片段充电时间的数据来预测锂离子电池健康状态的方法。


技术实现要素:

5.有鉴于此,本发明的目的在于提供一种基于片段充电时间和gru的锂离子电池健康状态预测方法,能够快速有效的预测锂离子电池健康状态。
6.为实现上述目的,本发明采用如下技术方案:
7.一种基于片段充电时间和gru的锂离子电池健康状态预测方法,包括以下步骤:
8.步骤s1:获取锂离子电池循环老化过程中的充电电压数据及对应的时间数据、最大放电容量数据,并提取充电电压数据及对应的时间数据,构建时间差数组;
9.步骤s2:根据最大放电容量数据计算相应的电池健康状态数据,与时间差数组构成锂离子电池健康状态预测数据集,并划分成训练集和测试集;
10.步骤s3:构建门控循环单元神经网络模型;
11.步骤s4:根据训练集对门控循环单元神经网络模型进行训练,并使用测试集对训练后的门控循环单元神经网络模型进行测试;
12.步骤s5:将测试通过的门控循环单元神经网络模型用于在线预测,根据片段充电时间内的充电电压数据及对应的时间数据实时预测锂离子电池健康状态。
13.进一步的,所述步骤s1具体为:
14.步骤s11:在锂离子电池放电截止电压与充电截止电压范围内,选取电压值v1作为
片段充电时间对应的起始电压,将充电截止电压v
n+1
作为片段充电时间对应的结束电压,将该电压区间均匀分为n段,产生电压等差数列[v1,v2,

,v
n+1
],电压等差数列中相邻元素之间的电压差δv为
[0015]
步骤s12:在每次锂离子电池充放电循环过程中,当锂离子电池端电压从初始电压v0上升至片段充电时间起始电压v1时,将该电压对应时间记录为t1;然后,每当电压上升δv达到电压等差数列[v1,v2,

,v
n+1
]中下一个电压值vi时,将该电压对应时间记录为ti(i=2,3,

,n+1);直至端电压达到充电截止电压v
n+1
时停止记录,并将整个过程记录的所有时间形成时间数组t=[t1,t2,

,t
n+1
];
[0016]
步骤s13:根据时间数据集中的数据,计算时间差数据集,具体计算方法为:
[0017][0018]
根据计算结果,形成单次充放电循环的时间差数组δt=[δt1,δt2,

,δtn]。
[0019]
进一步的,所述步骤s2具体为:
[0020]
步骤s21:根据每次充放电循环的最大放电容量与电池标称容量,计算每次循环的锂离子电池健康状态如下:
[0021][0022]
其中c1表示锂离子电池标称容量,cn表示当前循环的最大放电容量;
[0023]
步骤s22:对于单次充放电循环,将本次循环的锂离子电池健康状态soh与时间差数组δt组合,形成单次充放电循环的锂离子电池健康状态预测数组[soh,δt1,δt2,

,δtn];
[0024]
步骤s23:对于所有k次充放电循环,循环执行步骤301,可以构建锂离子电池健康状态预测数据集d:
[0025][0026]
步骤s24:将预测数据集d的前60%的数据作为训练集d1,后40%的数据作为测试集d2:
[0027]
[0028][0029]
其中,i=k
×
60%。
[0030]
进一步的,所述步骤s3具体为:构建门控循环单元神经网络模型,设置神经网络模型的输入为时间差数组,设置所述神经网络模型的输出为锂离子电池健康状态数据,并设置神经网络模型参数,其中输入节点个数为n,输出节点个数为1,优化算法为adam。
[0031]
进一步的,,所述步骤s4具体为:
[0032]
步骤s41:对训练集d1的时间差数据和健康状态数据分别进行归一化处理,然后使用时间差数据作为门控循环单元神经网络模型的输入,对应的健康状态数据作为门控循环单元神经网络模型的输出,对门控循环单元神经网络模型进行训练,最后得到经过训练的门控循环单元神经网络模型;
[0033]
步骤s42:将测试集d2的时间差数据和健康状态数据分别进行归一化处理,然后将时间差数据输入经过训练的门控循环单元神经网络模型,将模型输出的健康状态预测值反归一化处理后,与测试集中的健康状态实际值对比,计算均方根误差(rmse)和平均绝对误差(mae),以此评价门控循环单元神经网络模型的准确性;
[0034]
步骤s43:如果步骤502计算得到的rmse和mae指标不符合预设要求,则返回步骤s41重新进行训练;如果符合要求则将该门控循环单元神经网络模型用于步骤s5的预测。
[0035]
进一步的,所述步骤s5具体为:
[0036]
步骤s51:当锂离子电池端电压上升至片段充电时间起始电压v1时,将该电压对应时间记录为t1;然后,每当电压上升δv达到电压等差数列[v1,v2,

,v
n+1
]中下一个电压值vi时,将该电压对应时间记录为ti(i=2,3,

,n+1);直至端电压达到充电截止电压v
n+1
时停止记录,并将整个过程记录的所有时间形成时间数组t=[t1,t2,

,t
n+1
];
[0037]
步骤s52:根据时间数据集中的数据,计算时间差数据集,具体计算方法为:
[0038][0039]
根据计算结果,形成时间差数组δt=[δt1,δt2,

,δtn];
[0040]
步骤s53:对时间差数组δt进行归一化处理,并输入测试通过的门控循环单元神经网络模型,输出健康状态数据,反归一化后,得到最终的锂离子电池健康状态。
[0041]
本发明与现有技术相比具有以下有益效果:
[0042]
本发明根据充电过程中片段时间的时间差数据来预测锂离子电池健康状态,无需建立复杂的电化学模型或等效电路模型,电池也无需满足满充,适用于在实际运行工况下对锂离子电池的健康状态进行准确预测;门控循环单元神经网络的结构简单,需要调节的参数少,有利于节省计算资源,适用于嵌入式系统。
附图说明
[0043]
图1是本发明方法流程图;
[0044]
图2是本发明一实施例中门控循环单元神经网络模型结构示意图。
具体实施方式
[0045]
下面结合附图及实施例对本发明做进一步说明。
[0046]
请参照图1,本发明提供一种基于片段充电时间和gru的锂离子电池健康状态预测方法,包括以下步骤:
[0047]
步骤s1:获取锂离子电池循环老化过程中的充电电压数据及对应的时间数据、最大放电容量数据,并提取充电电压数据及对应的时间数据,构建时间差数组;
[0048]
步骤s2:根据最大放电容量数据计算相应的电池健康状态数据,与时间差数组构成锂离子电池健康状态预测数据集,并划分成训练集和测试集;
[0049]
步骤s3:构建门控循环单元神经网络模型;
[0050]
步骤s4:根据训练集对门控循环单元神经网络模型进行训练,并使用测试集对训练后的门控循环单元神经网络模型进行测试;
[0051]
步骤s5:将测试通过的门控循环单元神经网络模型用于在线预测,根据片段充电时间内的充电电压数据及对应的时间数据实时预测锂离子电池健康状态。
[0052]
在本实施例中,采用多个同型号电池作为测试样本,进行多次充放电循环,采集所有充放电循环中的特征数据,包括:对于每次充放电循环,采集充电过程中的所有电压数据及对应的时间数据,以及该循环的最大放电容量数据,具体如下:
[0053]
对出厂状态的锂离子电池进行循环充放电测试;在每个充放电循环中,首先按照恒流充电方式将锂离子电池充电至额定电压,然后转为恒压充电方式将锂离子电池充电至满电量,记录此过程的电压数据和对应的时间数据,然后将锂离子电池进行恒流放电直至放电截止电压,记录放出的总电量作为该循环的最大放电容量;重复上述充放电循环,直至锂离子电池的最大放电容量下降至标称容量的70%,认定其使用寿命终止,结束测试。
[0054]
在本实施例中,优选的,步骤s1具体为:
[0055]
步骤s11:在锂离子电池放电截止电压与充电截止电压范围内,选取电压值v1作为片段充电时间对应的起始电压,将充电截止电压v
n+1
作为片段充电时间对应的结束电压,将该电压区间均匀分为n段,产生电压等差数列[v1,v2,

,v
n+1
],电压等差数列中相邻元素之间的电压差δv为
[0056]
步骤s12:在每次锂离子电池充放电循环过程中,当锂离子电池端电压从初始电压v0上升至片段充电时间起始电压v1时,将该电压对应时间记录为t1;然后,每当电压上升δv达到电压等差数列[v1,v2,

,v
n+1
]中下一个电压值vi时,将该电压对应时间记录为ti(i=2,3,

,n+1);直至端电压达到充电截止电压v
n+1
时停止记录,并将整个过程记录的所有时间形成时间数组t=[t1,t2,

,t
n+1
];
[0057]
步骤s13:根据时间数据集中的数据,计算时间差数据集,具体计算方法为:
[0058][0059]
根据计算结果,形成单次充放电循环的时间差数组δt=[δt1,δt2,

,δtn]。
[0060]
在本实施例中,优选的,步骤s2具体为:
[0061]
步骤s21:根据每次充放电循环的最大放电容量与电池标称容量,计算每次循环的锂离子电池健康状态如下:
[0062][0063]
其中c1表示锂离子电池标称容量,cn表示当前循环的最大放电容量;
[0064]
步骤s22:对于单次充放电循环,将本次循环的锂离子电池健康状态soh与时间差数组δt组合,形成单次充放电循环的锂离子电池健康状态预测数组[soh,δt1,δt2,

,δtn];
[0065]
步骤s23:对于所有k次充放电循环,循环执行步骤301,可以构建锂离子电池健康状态预测数据集d:
[0066][0067]
步骤s24:将预测数据集d的前60%的数据作为训练集d1,后40%的数据作为测试集d2:
[0068][0069][0070]
其中,i=k
×
60%。
[0071]
在本实施例中,优选的,步骤s3具体为:构建门控循环单元神经网络模型,如图2所示,其隐藏层输出h
t
的计算公式为:
[0072]zt
=σ(wz·
[h
t-1
,x
t
]+bz)
[0073]ft
=σ(wf·
[h
t-1
,x
t
]+bf)
[0074]
[0075][0076]
其中,x
t
为门控循环单元神经网络隐藏层的输入,h
t-1
为上一时刻的输出,z
t
为更新门输出,f
t
为重置门输出,为中间量,wz和bz分别为更新门的权重参数和偏置参数,wf和bf分别为重置门的权重参数和偏置参数,和分别为中间量的权重参数和偏置参数,为矩阵相乘,σ代表sigmoid函数,tanh代表双曲正切函数;
[0077]
设置所述神经网络模型的输入为时间差数组,设置所述神经网络模型的输出为锂离子电池健康状态数据。神经网络模型的输入节点个数为n,隐藏层节点个数为250,输出节点个数为1,初始学习率为0.005,迭代次数为120次,优化算法为adam。
[0078]
在本实施例中,优选的,所述步骤s4具体为:
[0079]
步骤s41:对训练集d1的时间差数据和健康状态数据分别进行归一化处理,然后使用时间差数据作为门控循环单元神经网络模型的输入,对应的健康状态数据作为门控循环单元神经网络模型的输出,对门控循环单元神经网络模型进行训练,最后得到经过训练的门控循环单元神经网络模型;
[0080]
步骤s42:将测试集d2的时间差数据和健康状态数据分别进行归一化处理,然后将时间差数据输入经过训练的门控循环单元神经网络模型,将模型输出的健康状态预测值反归一化处理后,与测试集中的健康状态实际值对比,计算均方根误差(rmse)和平均绝对误差(mae),以此评价门控循环单元神经网络模型的准确性;
[0081]
其中归一化公式为:
[0082][0083]
式中x为待归一化数据,为归一化后的结果,x
min
为数据序列中最小数,x
max
为序列中最大数。
[0084]
反归一化公式为:
[0085][0086]
式中为反归一化结果。
[0087]
均方根误差(rmse)和平均绝对误差(mae)公式如下:
[0088][0089][0090]
式中m为测试集的循环次数,为预测值,soh为实际值;
[0091]
步骤s43:如果步骤502计算得到的rmse和mae指标不符合预设要求,则返回步骤s41重新进行训练;如果符合要求则将该门控循环单元神经网络模型用于步骤s5的预测。
[0092]
在本实施例中,优选的,步骤s5具体为:
[0093]
步骤s51:当锂离子电池端电压上升至片段充电时间起始电压v1时,将该电压对应时间记录为t1;然后,每当电压上升δv达到电压等差数列[v1,v2,

,v
n+1
]中下一个电压值
vi时,将该电压对应时间记录为ti(i=2,3,

,n+1);直至端电压达到充电截止电压v
n+1
时停止记录,并将整个过程记录的所有时间形成时间数组t=[t1,t2,

,t
n+1
];
[0094]
步骤s52:根据时间数据集中的数据,计算时间差数据集,具体计算方法为:
[0095][0096]
根据计算结果,形成时间差数组δt=[δt1,δt2,

,δtn];
[0097]
步骤s53:对时间差数组δt进行归一化处理,并输入测试通过的门控循环单元神经网络模型,输出健康状态数据,反归一化后,得到最终的锂离子电池健康状态。
[0098]
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1