吴华伟,张远进,叶从进
(1湖北文理学院纯电动汽车动力系统设计与测试湖北省重点实验室,湖北襄阳441053;2湖北文理学院汽车与交通工程学院,湖北襄阳441053)
电动汽车具有节能环保、噪音低、易保养、维护方便等优点。锂电池作为电动汽车的主要能源部件,对车辆的加速爬坡、刹车制动起到关键性作用。电池荷电状态(state of charge,SOC)是反映锂电池能量的重要参数,准确地估算SOC 能延长电池的使用寿命,避免电池的过充/放电,是保障电动汽车安全行驶的前提。SOC 属于电池内部特性参数无法直接测量,而且SOC 同电池电压、电流、温度等参数间表现出强烈的非线性关系。因此,如何提高SOC 估算的精度和准确性是当前电动汽车领域亟待解决的问题。
当前,电动汽车常用的SOC 估算方法有:安时积分法[1-2]、神经网络法[3-5]、卡尔曼滤波法[6-8]等。文献[9]为了使荷电状态量SOC 估计精确,提出以遗传算法优化最小二乘支持向量机的方法对电池的SOC进行估算的模型。为解决BP 网络收敛速度慢和容易陷入局部最小值的问题,文献[10]提出了一种蓄电池荷电状态估算的遗传算法和BP 网络相结合方法。文献[11]以无迹卡尔曼滤波(UKF)算法为基础,采用自适应无迹卡尔曼滤波(AUKF)算法估算电动汽车电池SOC。文献[12]将基于遗传算法的径向基函数(GA-RBF)神经网络应用于磷酸铁锂电池SOC 的估算,提高了算法的自适应能力。文献[13]提出一种基于扩展Kalman 滤波(EKF)的算法对SOC 进行估算,实验表明,该方法提高了SOC 估算精度。
上述方法分别从不同角度(电池估算模型、测量参数、控制策略等)对动力电池SOC 估算进行了改进,而本文主要着眼于锂电池SOC 估算影响因素的关联性及复杂性。针对BP 神经网络算法的非线性处理能力和萤火虫算法的全局寻优能力,并充分考虑锂电池端电压和放电电流对算法的影响,本文提出了一种基于萤火虫算法(firefly algorithm,FA)和BP 神经网络算法相结合的方法应用于锂电池SOC 估算。充分发挥二者的优势,基于FA 对BP神经网络的权值和阈值进行优化,然后利用BP 神经网络找到其最优解。以磷酸铁锂电池为测试对象,在ARBIN 公司生产的EVTS 电动车动力电池测试系统装置上进行测试,收集锂电池的各项性能参数。仿真实验结果表明,与现有的BP 神经网络估算方法相比,基于FA-BP 神经网络的锂电池SOC 估算方法准确度高,具备很好的实用性。
萤火虫算法[14]于2008年由剑桥大学Xin-She YANG 首次在文献中提出,作为群集智能优化算法领域的最新算法,该算法具有更好的寻优效果,且更易于工程实现。近些年专家学者的研究表明,萤火虫算法在全局寻优能力上比遗传算法(genetic algorithm,GA)及粒子群算法(particle swarm optimtzation,PSO)等更有效,成功率更高[15-17]。萤火虫算法是基于生态环境下的萤火虫通过发光相互吸引,进而实现位置的更迭的自然现象演变而来。
BP神经网络具有很强的并行处理能力以及自适应性,因此非常适用于解决复杂的非线性问题。然而,BP 神经网络本质上是一个具有多极点的非线性函数,因此在运行过程中BP 神经网络极有可能陷入这些局部极小值。为提高BP 神经网络的学习能力及识别精度,基于萤火虫算法对BP 神经网络的部分参数进行优化。具体步骤如下。
(1)编码设置
BP 神经网络由输入层N、隐含层H 和输出层O组成。其中,网络中的权值和阈值可以表示为ωnh、ωHO和θH、θO。在FA-BP 神经网络训练时,萤火虫个体采用实数编码的方式。因此,FA-BP 神经网络亟待优化的参数L可表示为
萤火虫种群间位置向量公式为
(2)参数初始化
构建BP 神经网络的网络参数,包括训练次数、初始权值、训练误差和初始阈值等。设置萤火虫算法的初始值,包括萤火虫数目n、随机步长α、最大吸引度因子β0和最大迭代次数T等。算法开始前,在可行区域内随机初始所有个体位置。
(3)适应度函数计算
计算FA-BP 神经网络的目标函数,也就是计算萤火虫个体的适应度值。FA-BP 神经网络训练过程中,每一个萤火虫即代表着一个神经网络。FA-BP神经网络的训练精度由均方误差函数E确定,即
式中,E为FA-BP 神经网络的均方误差;Ti为第i个节点的输出值;Ki为第i个节点的目标值;N为输出的个数。
萤火虫个体的适应度值,即目标函数f为
(4)确定萤火虫个体间吸引度和相对亮度
种群之间相互的吸引力β的数学公式可表示为
式中,r为任意两个萤火虫间的距离;β0为r=0的萤火虫最大吸引力;γ为光照强度的吸收系数。
任意两萤火虫间满足如下数学公式
其中rij为萤火虫i和萤火虫j之间的距离,d为维度。
(5)位置更新
根据萤火虫个体间的适应度值,进行位置移动更新。
萤火虫i的发光亮度远远高于萤火虫j的发光亮度,则萤火虫j的位置可做如下更新:
式中,α为(0,1)之间的随机数;Xj为萤火虫j更新后的位置。
在FA-BP 神经网络的训练过程中,为了避免萤火虫间的不规则运动,种群间的移动范围扩大导致萤火虫间的有效距离增加,进而造成种群寻优转变为随机移动的结果。本文在萤火虫位置更迭的公式中添加吸引力下限βmin,提高算法的搜索能力,即
(6)条件判断
迭代次数达到最大或训练误差收敛,结束,否则返回上一步。
(7)确定权值与阈值
将萤火虫最优位置向量映射给BP 神经网络,作为BP 神经网络的初始权值和阈值。
(8)BP 神经网络训练
训练结束,得到适应度值最大个体。将测试样本输入,进行电动汽车SOC 估算。
以磷酸铁锂电池为测试对象,在ARBIN 公司生产的EVTS 电动车动力电池测试系统装置上进行测试,由与其连接的上位机保存及读取数据。EVTS电动车动力电池测试系统是大功率自动电池测试系统,专门用于电动车电池或混合电动车电池的研究测试,可以采集电池的各项性能参数(电池的电压、电流、SOC 等)。动力电池测试系统如图1 所示,磷酸铁锂电池技术参数如表1 所示。
图1 电池测试系统Fig.1 Battery testing system
表1 磷酸铁锂电池技术参数Table 1 Technical parameters of lithium iron phosphate battery
根据EVTS 电动车动力电池测试系统进行不同恒流放电模式的锂电池测试,保持测试的环境温度为25 ℃。采取3 种不同的放电倍率(1 C、2 C、3 C)进行恒流放电,在测试过程中设备会自动记录锂电池各个参数的变化,采样频率为1 Hz。训练与测试样本数据如表2 所示。
表2 训练与测试样本数据Table 2 Training and testing sample data
本文采用萤火虫算法和BP 神经网络相结合的方法进行电动汽车锂电池SOC 估算。萤火虫算法参数设置:最大吸引度因子β=0.08,最大迭代次数T=100,萤火虫算法的种群大小n=50,初始随机步长α=0.03,光吸收系数γ=0.6。BP 神经网络算法参数设置:训练次数N=1000,学习率η=0.1,网络误差E=0.00001。
为了测试网络的性能,将表2 中的测试样本输入网络,其结果由图2 所示。由图可见,电池SOC网络估算结果和实验测量结果非常吻合,其绝对误差平均值为1.01%,表明FA-BP 神经网络具有较高的准确性。
图2 锂电池SOC 网络估算结果与实验测量结果Fig.2 Estimated and measured results of SOC network for lithium batteries
为了进一步验证FA-BP 神经网络的实用性和泛化能力,将训练好的网络模型编程嵌入到EVTS电动车动力电池测试系统中,进行不同放电倍率下的放电测试。图3 为随机选取的放电倍率为0.5 C情况下磷酸铁锂电池放电电压与SOC 变化曲线。其实际测试SOC 值与FA-BP 神经网络估算SOC 值的误差在1.54%左右,而与BP 神经网络估算SOC 值的误差范围在2.78%左右,表明基于FA-BP 的动力电池SOC 估算具有良好的估算效果。
图3 锂电池放电电压与SOC 关系图Fig.3 Relation between discharge voltage and SOC
(1)本文建立了基于FA-BP 神经网络的锂电池SOC 估算模型,并应用于磷酸铁锂电池SOC 的估算中。仿真结果表明,基于FA-BP 神经网络的SOC估算方法可行,比BP 神经网络估算的结果更加精确,实现了电动汽车SOC 的最优估算。
(2)由于实验条件的影响,本文仅考虑了放电电流和工作电压对电动汽车SOC 估算模型的影响,人为排除了电池寿命、室内温度等因素。下一步的工作是考虑多种因素下SOC 估算模型的建立,实现复杂工况下的电动汽车SOC 估算。