APP下载

一种基于注意力机制的CNN-LSTM锂电池健康状态估算

2022-07-02陈一凡

电源技术 2022年6期
关键词:时序特征提取注意力

楚 瀛,陈一凡,米 阳

(上海电力大学电气工程学院,上海 200082)

车载锂电池作为新能源电动汽车的唯一动力来源,电池健康状态(SOH)是评价电池稳定安全运行的重要指标。电池SOH的准确估计有助于电池管理系统(BMS)对电池性能的检测与监控,对于保障电动汽车的安全运行有重大的意义。

对于车载锂电池SOH的估算研究主要可以分为模型化方法和数据驱动法[1]。模型化方法即事先建立能够表征电池退化性能的电池模型,常运用卡尔曼滤波、递推最小二乘法(RLS)等自适应方法进行模型参数的表征。文献[2]建立了锂离子电池等效电路模型,通过改进的反向传播神经网络(BP)对模型参数进行辨识,最终预测SOH结果。然而,仅通过单一的等效电池模型对电池参数进行表征难以涵盖电池复杂的充放电情况。

随着机器学习的广泛运用,基于数据驱动的估算方法逐渐受到研究者青睐。这类算法无需建立电池模型,注重数据源的质量与数量。文献[3]通过灰色关联度方法选取了等压降放电时间作为健康因子进行模型训练,估计SOH,仅用少量特征因子便较好地完成了SOH估计,但是稀少的数据特征不能完备地涵盖SOH复杂的耦合情况。

随着近年来深度学习领域在理论上的突破以及TensorFlow、Keras 和Pytorch 等深度学习框架的普及,深度学习的应用场景不断扩展。常用的深度学习模型有卷积神经网络(CNN)、循环神经网络(RNN)和长短期记忆网络(LSTM)等。该类算法以模型本身的特点自动挖掘数据特征,直接建立输入-输出的非线性映射模型。文献[4]采用了一维CNN 实现了SOH的估算,验证了CNN 应对网格化数据出色的特征提取能力,但是仅表征了单个充电循环内输入整体与SOH的映射关系,忽略了SOH本身作为时序数据的特征。

综上所述,本文选用深度学习模型作为主要架构,提出了一种基于注意力机制的CNN-LSTM 锂电池SOH估算方法。该方法融合了CNN 对网格化数据强大的特征提取能力以及LSTM 对时序数据的记忆能力,既挖掘了输入序列横向的时序特征,又捕获了SOH纵向时间序列的关联性,且仅需要单个采样周期内电压、电流、温度的采样序列即可获得较高的估算精度。最终基于注意力机制,融合了不同视野域下输出的结果,确保了特征提取的全面性,从而提高精度。

1 SOH 估算数据

1.1 SOH 定义

目前SOH的定义主要体现在容量、电量、内阻、循环次数和峰值功率等几个方面。文献[5]验证了基于充电容量进行SOH估算的可行性,同时考虑到电池容量易于从数据中进行提取,本文采取电池充电容量的角度定义SOH,公式如下所示:

式中:Cnew-max是电池标称充电容量,其值为140 Ah;Caged-max是实际电池充电容量,可通过充电电流与时间积分计算获得。

1.2 输入数据选取

采用上海市电动汽车公共数据采集与监测研究中心提供的车辆行驶工况数据,车辆动力源为三元锂电池,通过BMS 系统采集了上海市2019~2020 年25 辆纯电电动汽车180 天的电池充放电数据以及电池性能数据。为了验证模型的泛化能力,选取了24 号与25 号,14 号与20 号车辆数据为对照组进行测试。

电池SOH在多个充放电循环后会呈现衰退的特点。由式(1)可知,电池容量的减小意味着在相同充电倍率情况下充电时间的缩短。图1 为不同循环次数下充电电压变化曲线。整车输出电压在不同充放电循环次数下,充电电压上升速率不同。由此可见,充电电压序列与电池SOH有强相关性。

图1 不同循环次数下充电电压变化曲线

深度学习模型需要大量的数据输入进行训练,较多的输入量会增加对计算能力和数据存储能力的需求,而较少的输入数据又不足以提取完整的特征信息。由于SOH既由整车电流序列积分计算获得,又受环境温度的影响极大[6]。因此同时截取相同时段的电压、电流以及温度数据作为数据输入,增加输入样本的多样性,以便于提取更完备的特征信息。

1.3 数据分析

不同充电循环下的SOH值对应一组不同的充电电压、电流、温度时间序列,即一次充电过程中的电压、电流、温度均是随时间变化的一维时序数列且对应一个SOH值。

设SOH序列集合为H={SOHk,k∈[1,m]},电压、电流、温度的全过程量集合为,令E为k取任意值时的一个集合,n为电压、电流、温度数据采样点的数量。两者为相关联的非同轴向时序序列,在此将E定义为横向时序序列,H定义为纵向时序序列。

2 模型结构及其估算步骤

2.1 卷积神经网络原理

使用CNN 提取横向时序序列中的关键特征。卷积层是CNN 的核心,不同于一般的全连接神经网络,CNN 采用滑动窗口的方法使用复数个可学习的滤波器对网格数据进行局部运算,并且对整体数据共享滤波器权值。在锂离子电池SOH估算中,一次恒流-恒压充电过程中的电压、电流、温度曲线均是随时间变化的一维时序数据,且对应一个共同的SOH估算值。本文选用CNN为横向时序序列E(k)的特征提取手段。

为了更高效提取横向序列特征,特此设计高度为1,长度为length的卷积核。如图2 所示,将卷积核的高度设为1,不会破坏数据纵向的数据特点,仅关注输入序列横向的局部关联性。

图2 卷积特征提取范例

使用该卷积核的优势主要为:输入数据为连续时序数据,连续数据的局部存在着一定的相关性,长条形的卷积核更善于提取局部信息的特征且能够确保连续数据特征提取的完整性;因局部信息具有较大的相关性,所以该区域范围内的神经元权值近似相同,卷积核具有权值共享的性质,能够大大缩减网络所需要学习的参数数量,降低模型所占的内存量和计算量。

2.2 长短期记忆网络原理

LSTM 是一种特殊的RNN,在时间序列预测领域有很好的应用。如图3 所示,总共有三种逻辑门结构,即遗忘门、更新门、输出门。这种逻辑门设计使得由LSTM 单元组成的网络具有长时记忆能力。

图3 LSTM 单元结构

假设xt=E*(t)为LSTM 单元的一个输入数据点,具体计算方式如下所示:

(1)使用遗忘门决定前一个细胞状态Ct-1的信息量在当前单元状态Ct中的保留程度:

式中:Wf为遗忘门的权重矩阵;ht-1为t-1 时刻的输出值,同时也是隐层状态值;xt为t时刻的输入值;bf为遗忘门的偏置项;σ 为sigmoid 激活函数。

(2)更新门用于选择新增信息的保留程度:

式中:Ot为t时刻输出门的输出值。Ct通过tanh 函数缩放后与Ot相乘,即得到t时刻隐藏状态ht的值,将其作为输出值输出。

2.3 CNN-LSTM

综合CNN 在局部特征提取的优势以及LSTM 在序列数据上的记忆性,CNN 与LSTM 相结合处理锂离子电池电压、电流、温度曲线与SOH之间的映射关系。

CNN-LSTM 流程如图4 所示。E(k)为1.3 节中划定的原始输入数据,分别为一次恒流-恒压充电过程中的电压、电流、温度曲线,通过设计的CNN 进行横向特征提取。E*(k)为对E(k)进行卷积操作后的新特征图,相比原来的输入数据,其横向特征点从p变为p*(p>p*),直观上体现了原本的横向数据经过卷积操作后,减少了冗余信息,实现了数据降维。将特征图E*(k)以滑动窗口的方式,切分为LSTM 的输入数据,其中t为时间跨度,s为样本数量。使用LSTM 能够深度挖掘纵向时间序列的关联特征,最终完成SOH估计。至此,通过CNN 和LSTM 分别挖掘了横向纵向两个维度上的时间序列特征,确保了特征提取的全面性。

图4 CNN-LSTM 流程

2.4 注意力机制

模型中的注意力机制能够通过结果与该点的误差大小调整其权重的大小,控制其对结果的影响程度。本文的注意力机制如图5 所示。首先重复上述CNN-LSTM 过程,设计多个CNN 卷积核进行多SOH估计。将多个SOH估计值作为注意力机制的输入,通过全连接层和Softmax 函数计算注意力权值,在各SOH估计值加权整合后输出SOH的最终估计值。Softmax 函数如式(8)所示:

图5 注意力机制

注意力机制除了能够加权计算更优的输出外,还可以根据其训练完成后的注意力权值从各个估计模块中筛选较为优异的CNN-LSTM 子估计模块,借此能够得出其中较优的用于特征提取的卷积尺寸。

2.5 模型设计与计算步骤

表1 为模型流程表。本文设计了4 个CNN-LSTM 模块进行SOH初步估算并对其进行加权输出。数据预处理阶段,将输入输出数据进行归一化处理。由于数据采样间隔为10 s,分别采集15 个电压、电流、温度采样序列作为数据输入。模型每次输入形为(5×3×15)的电压、电流、温度序列数据,通过模型运算后输出形为(1,1)的SOH值。即使用前五个时间步的序列数据对此时的SOH进行估算。将输入数据复制四份分别输入卷积核大小为(1×2)、(1×4)、(1×6)、(1×8)的子模块中,为了挖掘数据序列关联性,卷积跨度设为1。LSTM 模块分别接收时间跨度为5,输入维度为42、36、30、24 的二维特征图。通过上述各CNN-LSTM 子模块的计算,分别得到4 个SOH的初步估计值。

表1 模型流程表

在注意力模块处,为了获得四个初步估计值整合得到最优的估算结果,将4 个SOH估计值率先通过全连接层,全连接层设定为4 输入1 输出结构,则能够获得其形为[1,4]的权重系数,将权重系数提出后送入Softmax 层,使权重之和归化为1,最终加权输出最终的SOH估计值。为了避免每个子模块对数据输出的初始贡献不同,设定全连接层的初始权重参数为(0.25,0.25,0.25,0.25),随着训练的进行,根据链式法则反向调整权重参数,具体方式如式(9)~(10)所示:

式中:error 为模型设定的MSE 损失函数值;wi为所在全连接层中的某一个参数;out 为输出值;η 为学习率,此处设定为0.001。由链式法则能够计算出全连接层中各个参数对整体误差产生了多大的影响,最终根据式(10)更新参数。全连接层的参数更新完毕后由Softmax 层归一化得出注意力权值,注意力权值的大小能够体现某一个或几个尺寸下的SOH子结构的输出更好,对贡献较低的输出则会下降其权值。

3 SOH 估算结果

为了验证提出的基于注意力机制的CNN-LSTM 锂离子电池SOH估算方法的有效性,展示了基于上海市电动汽车公共数据采集与监测研究中心车辆行驶工况数据的估算结果。软硬件有:CPU (intel Core i5-4590 3.3 GHz)、GPU (NVIDIA GeForce GTX 980Ti 4 GB)、RAM (16 GB)、Python 语言下的Pytorch 环境。

图6~7 为各方法对锂离子电池SOH估算的结果与误差。本文估算方法良好地跟踪了SOH参考值的退化趋势,大部分数据点误差保持在1.22%~0.95%以内。

各项评价指标如表2 所示,结合图6~7 可知,3 种算法所建立的锂离子电池SOH估算模型精度上有一定的差异。LSTM 算法考虑了SOH的时序联系性,但是对于输入数据的特征挖掘不够透彻,该算法虽能够跟踪SOH的退化趋势,然而单个SOH值的估算精度较差。CNN-LSTM 算法估算结果较优,在两个测试集上的MAPE达到了1.41%和1.03%,能够较为精确地跟踪SOH退化趋势,验证了CNN 对序列数据较强的拟合能力,然而仅使用了单一尺寸的卷积核,故精度略低于本文方法。基于注意力机制的CNN-LSTM 算法在CNNLSTM 的基础上加入了注意力权值对多个估算结果调控,融合了多个卷积尺寸下的估算结果。本文方法的误差分布除个别数据点外,均低于其余方法,各项评价指标均优于其他方法。

图6 20号、25号样本估算结果

图7 20号、25号样本误差分布

表2 评价指标表 %

4 结论

本文提出一种基于注意力机制的CNN-LSTM 电动汽车锂离子电池SOH估算方法。将充电周期内的电压、电流、温度作为SOH估算方法的输入,以SOH值作为输出,直接估算锂离子电池SOH值。基于上海市电动汽车公共数据采集与监测研究中心提供的车辆行驶工况数据的实验结果表明,相比LSTM 神经网络和CNN-LSTM 神经网络,本文提出的方法估算精度更高。该方法结合了CNN 对网格化数据强大的特征提取能力以及LSTM 对时序数据的记忆能力,既挖掘了输入序列横向的时序特征,又捕获了SOH纵向时间序列的关联性,能够更全面地挖掘数据特征,基于注意力机制,融合了多个CNN-LSTM 的估算结果,进行了有效且精确的估算。

猜你喜欢

时序特征提取注意力
顾及多种弛豫模型的GNSS坐标时序分析软件GTSA
让注意力“飞”回来
清明
基于不同建设时序的地铁互联互通方案分析
如何培养一年级学生的注意力
空间目标的ISAR成像及轮廓特征提取
基于Gazebo仿真环境的ORB特征提取与比对的研究
基于特征提取的绘本阅读机器人设计方案
基于Daubechies(dbN)的飞行器音频特征提取
基于FPGA 的时序信号光纤传输系统