基于GRA-BP 神经网络的锂电池剩余容量估计方法
2023-11-03韦雨亭刘欣伟孙金磊景含笑温珂镌
韦雨亭,刘欣伟,孙金磊,景含笑,温珂镌
(南京理工大学自动化学院,江苏南京 210094)
锂电池以其输出电压高、循环寿命长、能量密度大、自放电率低、工作温度范围广等优点被广泛应用于电力储能、电动汽车等领域[1]。然而,随着锂电池的使用次数增加,其性能将显著下降,容易导致锂电池可用容量下降和功率性能衰退,异常和故障概率增大,严重时甚至可能出现燃烧和起火。因此,准确掌握电池剩余容量状态对于保障锂电池安全使用具有重要作用[2]。目前,锂电池剩余容量估计主要有2 类方法,分别为基于电池内部化学机理的方法与基于数据驱动的方法。
基于电化学机理的方法基于电池内部化学机理进行建模分析。徐等[3]利用电化学阻抗谱法研究电池单体的老化规律,基于交流阻抗法建立了估计电池剩余容量的模型。田等[4]基于电化学机理的电池单粒子模型以及热力学定律,搭建了电池容量衰减率与内阻的动力电池老化模型,在1 635 s的仿真时间内模拟了电池3.6×107s 的老化过程。虽然现有方法都可以在实验室阶段掌握电池老化机理并定量分析容量损失,但是该类方法难以实际应用,同时需要专业设备配合。
基于数据驱动的方法近年来广泛发展,这些技术[例如,卡尔曼滤波器(KF)[5],粒子滤波(PF)[6],神经网络,支持向量机[7]]通常用大量退化数据来训练黑盒模型,不需要了解电池失效方面的专业知识,而直接从锂电池运行过程中产生的相关参数,例如电压、电流、内阻等数据获取电池性能退化的规律,建立剩余容量估计模型。Rauf 等[8]主要介绍了基于机器学习方法对健康状态(SOH)和剩余使用寿命(RUL)的估计,提供了理论研究方法。Li 等[9]利用粒子滤波算法进行短期SOH估计和长期RUL估计,在2 个不同的起始循环点均有较好的估计结果,然而该实验方法估计曲线较为平滑,对于一些容量波动点的跟踪不敏感。Cui 等[10]提出了一种基于特征转换过程神经网络的锂离子电池剩余容量估计模型,估计的精度较高,但是并未综合电池老化过程中性能变化进行研究。Lee 等[11]指出电化学阻抗谱(EIS)测试结果可用于估计电池的容量损失,含有重要的电池状态行为信息,但参数的测量比较复杂,需要专门的测量仪器。
本文针对锂电池剩余容量研究中忽视电池老化特性、剩余容量估计难、波动追踪难等一系列问题进行了详细的研究,以随电池劣化程度而变化的特征量为切入点,通过灰色关联分析(GRA)筛选后,使用反向传播(BP)神经网络对相关数据进行训练和估计,所建立的GRA-BP 神经网络剩余容量估计模型能实时跟踪电池的劣化状态,追踪容量波动点。
1 表征电池容量衰减的特征量提取
本文的数据来源为计算机辅助寿命周期工程中心(CALCE)数据集,研究对象为四个额定容量1 100 mAh 的方形电池CS2。
实验方案为:采用标准恒流/恒压充电模式,在25 ℃的环境下,先以0.5C恒流充电直到工作电压达到4.2 V,再以4.2 V 恒压充电,直到电流降至50 mA 以下,再采用1C恒流放电模式,直到工作电压低于2.7 V 的截止电压为止。每个CS2 电池在1C的恒定电流下多次循环。
1.1 电池老化特征量
在恒流充电阶段(CC)、恒压充电(CV)和恒流放电阶段,电池的老化特征最为显著,在锂离子电池的整个寿命周期中,内阻随容量衰减紧密变化,故从上述三个阶段的实验数据中提取特征量作为原始特征。选择恒流放电过程提取平均放电电压、等时间间隔放电电压降,恒流充电过程提取等时间间隔充电电压升,恒压充电过程提取恒压充电时长。
1.1.1 平均放电电压Vd_avg
Vd_avg为恒流放电阶段的电压平均值。随着电池老化,平均放电电压下降,由图1(a)可看出,在约700 次循环后,Vd_avg急剧下降,原因主要是随着电池循环老化,电池内阻增大,放电电压曲线下降导致平均放电电压下降。
图1 特征量变化曲线
1.1.2 恒压充电时长Thv
Thv为恒压充电阶段开始和结束的时间之差。电池容量退化之后,恒压充电时长上升。主要原因是在恒压充电阶段,电流逐渐减小,电池老化造成的内阻增大对于小电流充电影响会有所减小,所以对于容量衰退的电池,其恒压充电时长将有所增加。
1.1.3 欧姆内阻R
电阻是实验数据中极其重要的一个参量。在每次循环中,理想情况下电池欧姆电阻为一个定值,因此取众数为每次循环中电阻值。在电池老化过程中,正极结构材料遭到腐蚀,阻碍电化学过程的发生,使得电芯内阻增加。由图1(c)可看出,在约700 次循环后,R急剧上升,这主要是因为电池早期老化是由于锂离子的损失活性锂(LLI)导致的,而老化后期则是LLI 和正负极活性物质(LAM)共同作用导致的加速老化过程。
1.1.4 等时间间隔放电电压降Veq_td
电压变化率绝对值最大的区间才能使退化趋势更加清晰,兼顾高效性和准确性,选择10 s 为时间间隔,则Veq_td由恒流放电阶段电压变化率最大绝对值的10 倍得出。随着电池老化,Veq_td降低。主要原因是电池容量衰退后,电压曲线偏移,起始电压逐渐上升,充电前期阶段逐渐消失,较早进入了电压平台期。
1.1.5 等时间间隔充电电压升Veq_tc
与Veq_td类似,仍然选择10 s 为时间间隔,Veq_tc由恒流充电阶段最大电压变化率的10 倍得出。电池在恒流充电过程中,其在相同时间间隔内的老化电池电压升降低。由图1(e)可看出,在约700 次循环后,Veq_tc会急剧下降。
1.2 基于灰色关联分析的特征量筛选
灰色关联分析[12]的基本思路是通过线性插值的方法将系统因素的离散行为观测值转化为分段连续的折线,进而根据折线的几何特征构造测度关联程度的模型。几何形状越接近,关联度就越大。
计算步骤如下:
(1)确定反映系统行为特征的参考数列和影响系统行为的比较数列;
(2)对参考数列和比较数列进行无量纲化处理;
(3)求参考数列与比较数列的灰色关联系数ξ(xi);
曲线间差值大小可作为关联程度的衡量尺度。各比较数列x1,x2,…,xn与参考数列x0在各个时刻(即曲线中的各点)的关联系数ξ(xi)可由式(1)算出:
式中:ρ为分辨系数,一般在0~1 之间,通常取0.5;Δmin 为第二级最小差;Δmax 为两级最大差;Δ0i(k)为各比较数列xi曲线上每一个点与参考数列x0曲线上每一个点的绝对差值。
(4)求关联度,对各个时刻比较数列xi对参考数列x0关联度求平均值ri,表示关联程度,ri值越接近1,相关性越好;
(5)关联度排序,因素间的关联程度用关联度的大小次序描述,若r0i>r0j,则称{xi}对于同一母序列{x0}优于{xj},r0i表示第i个子序列对母数列的关联度。
表1 为关联度计算结果和相关性排序。
表1 关联度结果
计算结果与变化趋势图契合,且所有特征量都可以较好地反应电池老化状态。
综上所述,选择等时间间隔充电电压升Veq_tc,等时间间隔放电电压降Veq_td,平均放电电压Vd_avg,欧姆电阻R,恒压充电时长Thv作为神经网络的输入。
2 基于BP 神经网络的电池剩余容量估计方法
2.1 BP 神经网络算法原理及结构
BP 神经网络是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小的神经网络,能够以任意精度逼近任何非线性映射,可以学习和自适应未知信息,构造出的系统具有较好的鲁棒性。
BP 神经网络模型拓扑结构包括输入层、隐层和输出层。
其过程主要分为两个阶段:
第一阶段是信号的正向传播,从输入层经过隐层,最后到输出层。
从输入层到隐层输出α:
从隐层到输出层输出β:
式中:d、q为输入单元数;vih、whj为每一层数值对应的权重;θh、θj为偏置变量。
第二阶段是误差的反向传播,从输出层到隐层,最后到输入层,依次调节隐层到输出层、输入层到隐层的权重和偏置,通过计算输出值与期望值之间的误差来调整网络参数,从而使得误差变小。计算误差E的公式为:
式中:yk为输出值;Tk为期望值。
本文选择5个筛选得出的特征量作为神经网络的输入,电池剩余容量作为输出。BP 神经网络的基本结构如图2 所示。
图2 BP神经网络结构
对输入数据进行归一化处理,公式为:
式中:Minvalue和Maxvalue为样本最小值和最大值。
2.2 网络性能优化
2.2.1 传递函数的选择
引入传递函数是为了增加神经网络模型的非线性,从而逼近任何非线性函数、应用到众多非线性模型中。
传递函数决定了神经元的连接方式。在BP 网络中的传递函数有tansig、logsig、poslin、purelin、satlin 等,综合特征量数据特点,在处理神经网络输入和输出值时将不同函数进行搭配,测试不同传递函数的组合对网络性能的影响后,以效果最好的组合作为传递函数的选择。在本文中,选择purelin,即线性函数,作为输入和输出的传递函数:
2.2.2 训练函数的选择
训练函数的作用是在神经网络中调整权值和阈值,使得整体误差最小。不同的训练函数对网络收敛性、训练速度、估计误差等有重要影响。在测试不同训练函数的组合对网络性能的影响后,选择traincgp(无须线性搜索固定变比的变梯度算法)作为神经网络的训练函数。
2.2.3 隐层节点数的选择
网络的输入与输出节点数是由实际问题的本质决定的,与网络性能无关。而对于给定的训练样本数,存在一个最佳BP 网络结构,即最少隐层节点数,使网络训练次数最少且具有最广泛的估计能力,最佳隐层节点数随着训练样本的线性相关性减少而增加。
在确定隐层节点数m时,可以参考以下几个经验公式,根据输出值的误差适当增减。
式中:n为输入层节点数;l为输出层节点数;α为1~10 之间的常数。
当该模型中隐层节点数最优时,误差最小,再增加隐层节点数时,误差反而上升,且隐层节点数增加会使训练时间增加。
3 结果与讨论
3.1 估计方案
以35 号电池为例,在该数据集中,共有916 次充放电循环,在筛除剩余容量异常点后,剩余816 次充放电循环,取电池老化过程中前80%的充放电循环作为训练集对网络进行训练,后20%的充放电循环作为测试集验证网络的估计能力,适当改变隐层节点数,以此分析训练后的网络是否收敛、得出的误差是否在期望范围内、能否较好地追踪剩余容量衰减曲线。
3.1.1 不同训练集比例验证实验
为研究训练集占比对BP 神经网络模型估计精度的影响,以35 号电池为例,设计方案为:
(1)取电池老化过程中前60%充放电循环作为训练集,后40%充放电循环作为测试集;
(2)取电池老化过程中前50%充放电循环作为训练集,后50%充放电循环作为测试集;
(3)取电池老化过程中前20%充放电循环作为训练集,后80%充放电循环作为测试集。
以此方案分析训练网络的收敛能力、误差大小与估计能力。
3.1.2 泛化能力研究方案
为研究基于5 个电池老化特征量的BP 神经网络模型的泛化能力,设计方案如下:
(1)将CALCE 数据集36 号电池976 次充放电循环按训练集与测试集占比80%与20%进行划分,对网络进行训练和测试;
(2)将CALCE 数据集37 号电池1 043 次充放电循环按训练集与测试集占比80%与20%进行划分,对网络进行训练和测试;
(3)将CALCE 数据集38 号电池1 082 次充放电循环按训练集与测试集占比80%与20%进行划分,对网络进行训练和测试。
3.2 不同训练集占比的估计情况分析
在进行充放电循环时,以35 号电池为例,电池剩余容量随循环次数的増加从1.1 Ah 衰减到0.3 Ah,训练集占比80%时,如图3 所示,网络的估计平均误差(SEM)为2.28%,均方根误差(RMSE)为5.40%。为进一步测试模型的效能,将训练集占比缩小为60%、50%、20%时,训练的BP 神经网络依然能估计出电池的剩余容量,并且能够响应电池容量波动。数据集占比及对应误差如表2 所示。
表2 数据集占比及对应误差 %
图3 训练集占比80%时估计情况及误差
3.3 泛化能力分析
BP 神经网络在根据数据规模适当调整参数后,可以估计出CALCE 数据集36 号、37 号、38 号电池的剩余容量,平均误差均可控制在±5%以内,均方根误差均可控制在10%以内,且能快速响应容量波动点。值得注意的是,如图4 所示,在38号电池数据集中,在电池剩余容量衰减的后期有一段较大的电池容量回升断崖,训练的网络也能够进行响应。不同电池误差如表3 所示。
表3 不同电池误差 %
图4 38号电池预测情况及误差
4 结论
本文提出了GRA-BP 神经网络估计锂电池剩余容量方法,结合老化过程中电池的实际变化,将其5 个特征量作为模型的输入参数,通过CALCE 数据集对网络训练结果进行验证。
通过对数据集原始数据进行滤波处理、对影响锂电池老化的特征量进行灰色关联分析,确定了等时间间隔充电电压升、等时间间隔放电电压降、平均放电电压、欧姆电阻、恒压充电时长是最能表征电池老化程度的特征量。
建立了基于BP 神经网络的锂电池剩余容量估计模型,训练集占比80%时,网络的估计平均误差为2.28%;改变BP 神经网络训练集和测试集比例对电池剩余容量的估计趋势误差影响较小,仅20%训练集时,估计平均误差为5.99%,且均能快速响应容量波动点。建立的锂电池剩余容量估计模型适用于多个电池剩余容量的衰减趋势,平均误差均在5%以内。
结果的准确度和精度说明,基于电池老化特征量的BP 神经网络对于电池剩余容量具有较好的估计能力。