掌桥专利:专业的专利平台
掌桥专利
首页

电池SOC估计方法及电源管理系统

文献发布时间:2024-04-18 19:59:31


电池SOC估计方法及电源管理系统

技术领域

本发明属于新能源汽车电源技术领域,具体的说是电池SOC估计方法及电源管理系统。

背景技术

当今社会,全球环境问题日益严峻,环境系统与生态系统都面临着前所未有的挑战,比如日益严重的环境污染与能源短缺问题,因此,新能源技术迅猛发展以应对这一挑战。锂电池因为其充电快、寿命长等优点,已经成为新能源电动汽车的主要能量来源。为了保证电动汽车能够安全的运行,构建一套先进的电源管理系统(Battery ManagementSystem,BMS)成为监测锂电池运行状态的重中之重。荷电状态(state of charge,SOC)定义为电池剩余容量与标定容量的比值,实际含义表示为电池在下一次充电之前还可以运行的时间。准确的SOC估计有助于更好的防止电池过充和过放,是电动汽车安全行驶的前提。

常用的传统SOC估计方法有:安时积分法、开路电压法以及卡尔曼滤波法。安时积分法实施简单,但是积累误差较大,不利于实际应用。开路电压法,开路电压法精度较高,但是必须使电池长时间静置后测量,不能实时测量,应用性过低。卡尔曼滤波法以及各种变体滤波法需要对电池的电化学特性具有深刻的了解,且对解决复杂数学问题的能力要求很高,使模型泛化性不高。

基于深度学习的方法能够在忽略锂离子复杂工作原理与数学模型的前提下自动学习测量参数与SOC值的非线性关系,因此随着最近几年GPU的迅猛发展,深度学习在SOC估计中得到越来越广泛的运用。

然而在所有基于深度学习估计SOC的方法中,初始超参数均需要自己设置,这就导致估计精度具有极大的随机性,预测能力大大下降。因此严重影响了深度学习方法在SOC估计算法中的应用。过去学者提出了通过采用粒子群算法(PSO)、灰狼算法以及蜣螂算法等优化算法对深度学习模型进行优化,

然而传统的优化算法算法虽然可以对深度学习模型的随机超参数问题做到一定程度的改善,但是由于在SOC估计中要融合大量数据集进行训练,导致在海量数据集中对超参数进行多轮迭代寻优会耗费大量时间,并且在预测后期误差逐渐变大,拟合效果变差。因此严重影响了优化算法在基于深度学习的SOC估计方法中的应用。

发明内容

针对现有技术的不足,本发明拟解决的技术问题是,提供了LTG-SABO算法对GRU模型进行超参数寻优,使得在SOC估计精度提升的同时,迭代次数与时间都进一步减少,并且在预测后半段也拥有良好的拟合效果。

本发明解决其技术问题所采用的技术方案是:本发明所述的电池SOC估计方法,包括如下步骤:

步骤1:选用BJDST工况、FUDS工况、DST工况下的放电数据同时作为训练集,US06工况作为测试集,并对所有数据进行归一化预处理;

步骤2:选择GRU模型中的学习率、隐藏节点数以及批量大小作为SOC估计所需要的寻优参数,并选择范围;

步骤3:将SABO算法(减法平均优化算法)的迭代次数与初始种群成员数量均设置为30;

步骤4:使用DST工况下的均方根误差作为适应度函数;

步骤5:使用Logistic-tent复合映射初始化SABO算法的初始搜索代理位置;

步骤6:使用Gold-SA算法(黄金正弦)改进SABO算法,帮助SABO算法跳出局部最优解;

步骤7:使用LTG-SABO算法优化GRU模型的批量大小、隐藏节点数以及初始学习率三个超参数,直至迭代出最优的种群个体并将其最优值代入GRU模型,完成对GRU模型的优化;

步骤8:将训练集输入优化后的GRU模型,并采用测试集进行评估;

步骤9:设计电源管理系统并将训练好的模型通过STM32 X-CUBE-AI进行部署。

进一步的,本发明选用了18650电池在BJDST工况、FUDS工况以及DST工况下的放电数据同时作为训练集对模型进行训练;BJDST工况模拟了北京公交车的运行情况;美国联邦城市驾驶FUDS工况模拟了新能源汽车在城市交通中的典型驾驶行为;动态应力测试DST工况模拟了新能源汽车在行驶过程中的高动态负载情况,更侧重与瞬态驾驶情况。

测试集则采用US06工况,旨在模拟高负荷驾驶情况,例如高速驾驶和高功率输出;所有工况数据均为对2000mAh的18650电池从80%电量进行一系列循环工况测试得到,本发明全部采用室温25℃下的电池测试数据;

在实验过程中,对所有数据进行归一化处理,本发明采用常用的最小-最大归一化法,如式(1)所示,使数值范围全部收敛到0~1之间;

进一步的,选择GRU模型中的学习率、隐藏节点数以及批量大小作为寻优目标,即LTG-SABO算法的寻优维度为3;

本发明根据训练内容与实际情况将学习率寻优范围设置为[0.001,0.1],隐藏节点数寻优范围设置为[50,400],批量处理数量寻优范围设置为[50,150];并将SABO算法的迭代次数与初始种群成员数量均设置为30进行寻优。

进一步的,采用DST工况训练数据下放电数据的均方误差(MSE)作为适应度函数;如式(2)所示,当MSE值最小时,得到的优化参数为最优值;

其中,T为总训练时间,SOC'(t)为T时刻SOC的预测值,SOC(t)为T时刻SOC的真实值。

进一步的,采用Logistic-tent复合映射来生成初始混沌序列,将初始粒子均匀分配到搜索空间的不同区域,如式(3)所示,

其中,r为随机参数值,x

进一步的,使用Gold-SA算法改进SABO算法,在使用SABO算法连续两次适应度值为改变时,即采用Gold-SA算法进行迭代。Gold-SA策略的核心思想是利用黄金分割比的特性在解空间中进行广域搜索,如式(4)所示,通常会按照规定的角度增量螺旋前进,并计算每个位置的目标函数值,通过不断的位置更新逐步逼近算法的最优解;

式(4):

Gold-SA策略在位置更新的过程中引入黄金分割系数的概念,起到缩小搜索空间的作用,更方便地将搜索代理引导至最优解。俩者的数学建模如式(5)和式(6)所示;

式(5):x

式(6):x

式(4)-式(6)中,a和b为黄金分割比搜索初始值,一般为-π和π。t为

进一步的,采用LTG-SABO算法对GRU模型的三个超参数在设定好的范围内进行寻优,利用搜索代理的减法平均思想来更新每个种群成员在搜索空间内的位置,SABO算法引入了一个新的计算概念“-v”,即搜索代理B与搜索代理A的v-减法;A为当前正在进行循环迭代的搜索代理,而B为与搜索代理A交互计算的其他搜索代理;

在SABO算法中,任何搜索代理X

式(9)为搜索代理位置更新公式,若得到的新位置代入目标函数后小于旧值,则位置更新;若反之则位置不变;

式(7):

式(8):

式(9):

进一步的,使用优化后的GRU模型对电池SOC进行预测,将电池数据的电压以及电流作为输入,SOC作为输出,并利用测试集计算均方根误差(RMSE)、平均绝对误差(MAE)作为模型预测效果的评价指标;其中均方根误差(RMSE)如式(10)所示,平均绝对误差(MAE)如式(11)所示。

式(10):

式(11):

电源管理系统,包括硬件部分和软件部分;所述硬件部分包括电池信息采集模块、控制模块、充放电模块、显示模块以及电源本体;

所述软件部分利用matlab将训练好的GRU模型转化为ONNX格式,在STM32 X-CUBE-AI中进行C语言转换,并选择压缩率为8,将模型成功部署在MCU中。

本发明的有益效果如下:

1、本发明采用多工况数据集整合进行模型的训练,还原汽车在现实生活中的全场景行驶条件,使训练模型得到更多的实际意义与真实性。

2、时间序列模型的超参数设置对最后的输出精度影响很大,其中学习率更是最为关键的参数。然而GRU模型的初始超参数大多数为随机设置,这严重影响了SOC值的估计精度。为了使得GRU模型结构与输入数据匹配,根据锂电池特性,本发明采用SABO算法(减法平均优化算法)对模型的隐藏节点个数、初始学习率以及输入数据的批量大小作进行寻优。

3、SABO算法通常采用随机化初始搜索代理的方法,因此初始搜索代理位置分布不均匀,可能导致算法在优化过程中停滞于局部最优解的位置,使最后SOC的估计精度受到影响,本发明采用Logistic-tent复合映射来生成初始混沌序列,复合映射极大优化了初始粒子的均匀分布特性,相比起单一的Logistic以及Tent混沌映射具有了更多的自相关性,并且缩短了迭代时间,使其更适用于大规模混沌序列的生成。

4、因为SABO算法在迭代寻优的过程中并没有让目标函数的全局最优值参与运算,而是利用搜索代理的算术平均值达到位置更新的目的,因此本发明采用Gold-SA算法(黄金正弦)进行改进,帮助搜索代理跳出局部最优解,既可以减少收敛时间,也可以保证达到最佳适应度时搜索代理位置为全局最优。

5、本发明通过电源管理系统,可以起到采集电池信息以及显示的基本功能,并采用STM32.CubaAI插件将优化后的GRU模型部署到STM32单片机上,以此为基础进行充放电控制保证电池安全。

附图说明

下面结合附图对本发明作进一步说明。

图1是BJDST工况电压电流数据图;

图2是FUDS工况电压电流数据图;

图3是DST工况电压电流数据图;

图4是US06工况电压电流数据图;

图5是采用LTG-SABO算法优化GRU模型并进行SOC估计流程框图;

图6是电源管理系统框图。

具体实施方式

考虑到锂电池在实际运行过程中面临的环境复杂性,同时选用了在BJDST工况、FUDS工况以及DST工况下三种放电数据作为训练集对模型进行训练。如图1-3所示为三种不同工况示意图,其中图1为BJDST工况,模拟了北京公交车的运行情况。图2为美国联邦城市驾驶FUDS工况,旨在模拟新能源汽车在城市交通中的典型驾驶行为。图3为动态应力测试DST工况,旨在模拟新能源汽车在行驶过程中的高动态负载情况,更侧重与瞬态驾驶情况。

测试集则采用US06工况的实验数据,如图4所示,旨在模拟高负荷驾驶情况,例如高速驾驶和高功率输出。所有工况数据均为对2000mAh的18650电池从80%电量进行一系列循环工况测试得到,本发明全部采用室温25℃下的工况数据。

在实验过程中,因为不同输入数据的量纲不同,对于优化算法而言,数据范围过大的特征输入会导致迭代寻优时间过长,需要多次收敛才能达到最优解。并且量纲过大还会使那些数值范围较大的特征在深度学习模型训练的过程中占据主导地位,影响模型的训练效果。

因此数据归一化是数据预处理的一个重要特征,本发明采用常用的最小-最大归一化法,如式(1)所示,使数值范围全部收敛到0~1之间。

式(1):

深度学习将许多隐藏层部署在输入层与输出层之间,这使得深度学习模型可以从输入数据中学习到复杂的特征信息并进行大量的操作。因为GRU模型在时间序列特性中的优异表现,本发明采用基于GRU模型的SOC估计方法,GRU模型是传统神经网络RNN的变种,它能够在处理序列数据时更好地捕捉长期依赖关系,同时可以改善梯度消失以及梯度爆炸的问题;相对于另一种变体LSTM模型,GRU具有更简单的结构,参数较小,在处理数据量不是特别复杂的情况下,可以有效提高训练效率并减少内存占用。

GRU模型的超参数设置对最后的输出精度有很大影响,GRU模型作为RNN模型的简易变体,其中学习率更是最为关键的参数。因此本发明选择GRU模型中的学习率、隐藏节点数以及批量大小作为寻优目标,即LTG-SABO算法算法的寻优维度为3。

学习率过大会导致模型训练不稳定,会更快地收敛至一个局部最小值。

相反,较小的学习率会使模型收敛速度减慢,但是训练更加稳定。增加隐藏节点数会使模型更加适合对数据集进行训练,但是过多会增加过拟合的风险,过少虽然会使模型具有更好地泛化能力,但是会导致训练效果不理想。

较少的批量处理数量有助于提高模型的泛化能力,因为每个迭代中使用的样本较少,模型更容易收敛到局部最小值,这可以有效防止过拟合,反之则会降低泛化能力。

因此有效地确定寻优范围对于模型的改进至关重要,本发明根据训练内容与实际情况将学习率寻优范围设置为[0.001,0.1],隐藏节点数寻优范围设置为[50,400],批量处理数量寻优范围设置为[50,150]。

本发明采用DST工况训练数据下放电数据的均方误差(MSE)作为适应度函数,如式(2)所示,当MSE值最小时,得到的优化参数为最优值;

式(2):

其中,T为总训练时间,SOC'(t)为T时刻SOC的预测值,SOC(t)为T时刻SOC的真实值。

对于SABO算法,迭代次数与初始种群成员数量一般都在20-40之间,迭代次数与初始种群成员数量越多,搜索代理越有可能搜寻到全局最优解,但是寻优时间也会大幅增加并且存在过拟合的风险,为了在合理的时间内得到最优解,本发明设定SABO算法迭代次数与初始种群成员数量均为30。

为了使得GRU模型结构与输入数据匹配,根据锂电池特性,本发明采用SABO器算法对模型的隐藏节点个数、初始学习率以及输入数据的批量大小进行寻优。

SABO器算法主要是利用搜索代理的减法平均思想来更新粒子成员在搜索空间内的位置,SABO算法引入了一个新的计算概念“-v”,即搜索代理B与搜索代理A的v-减法。

A为当前正在进行循环迭代的搜索代理,而B为与搜索代理A交互计算的其他搜索代理;

如式(3)所示,将两个搜索代理所得到的目标函数值相减。后面的差异值用来迭代搜索代理位置,保证下一次位置会朝着更好地方向更新。用sign函数将这俩种差异的乘积提取出来。若差值大于0,那么输出值为1。如果差值等于0,则输出值为0。如果差值小于0,那么输出的值为-1。通过更新来更新搜索代理A在一个维度上的搜索代理位置,直至算法迭代到最优解。

在SABO算法中,任何搜索代理X

式(5)为搜索代理位置更新公式,若得到的新位置代入目标函数后小于旧值,则位置更新;若反之则位置不变。

式(3):

式(4):

SABO器算法通常采用随机化初始粒子的方法,因此初始粒子位置分布不均匀,会导致算法在优化过程中停滞于局部最优解的位置,使最后SOC的估计精度受到影响。

融合混沌映射思想可以使初始粒子位置具有更高的复杂性和随机性,能够更好地将搜索代理分配到搜索空间的不同区域,减少了优化算法陷入局部最优解的可能性。

Logistic混沌映射是一个应用广泛的一维混沌映射,它因为结构简单却能表现出良好的混沌特性而受到广泛应用。然而Logistic混沌映射却存在混沌范围不足的问题。

如式(6)所示,其中控制参数μ的混沌范围必须局限于3.57-4之间,严重制约了混沌序列的分布情况,有时并不能产生良好的混沌性。

Tent混沌映射是一种常见的分段线性一维映射,有优越的混沌特性以及自相关性。同样,Tent混沌映射也存在着控制参数混沌区间过小的问题;如式(7)所示,其中k的取值介于2到4之间,并且以上俩种混沌映射都存在控制参数数量过少的问题。

优选地,因此本发明采用Logistic-tent复合映射来生成初始混沌序列,如式(8)所示,复合映射极大优化了初始粒子的均匀分布特性,相比起单一的Logistic以及Tent混沌映射具有了更多的自相关性,并且缩短了迭代时间,使其更适用于大规模混沌序列的生成。

式(6):x

式(7):

式(8):

因为SABO算法在迭代寻优的过程中并没有让目标函数的全局最优值参与运算,而是利用搜索代理的算术平均值达到位置更新的目的。因此当连续两次适应度值无变化时,即采用Gold-SA算法进行改进寻优,既可以减少收敛时间,也可以保证达到最佳适应度时搜索代理位置为全局最优。

Gold-SA策略的数学灵感来源于黄金螺旋。该策略的核心思想是利用黄金分割比的特性在解空间中进行广域搜索,如式(11)所示,通常会按照规定的角度增量螺旋前进,并计算每个位置的目标函数值,通过不断的位置更新逐步逼近算法的最优解。

Gold-SA策略在位置更新的过程中引入黄金分割系数的概念,起到缩小搜索空间的作用,更方便地将搜索代理引导至最优解,两者的数学建模如式(9)和式(10)所示。

本发明为了防止Gold-SA策略改进SABO算法时增加无意义的计算量,选择仅在适应度值相比于前一时刻无变化时融合Gold-SA策略进行寻优。若适应度值下降,则依旧保持SABO算法的位置更新方式。这样既保证了在全局寻优上的优越性,又减少了迭代过程中适应度值的计算量。

式(9):x

式(10):x

式(11):

式中,a和b为黄金分割比搜索初始值,一般为-π和π。t为

使用LTG-SABO算法优化GRU模型超参数,具体流程图如5所示。直至迭代出最优的种群个体并将其最优值代入GRU模型,完成对GRU模型的优化。使用优化后的GRU模型进行训练,并输入测试集对SOC的预测结果进行验证,本发明选取均方根误差(RMSE)、平均绝对误差(MAE)作为评价指标对模型的SOC估计效果进行评价。均方根误差(RMSE)如式(12)所示,平均绝对误差(MAE)如式(13)所示。

式(12):

式(13):

本发明设计了一种电源管理系统用于SOC估计,具体电源管理系统框图如图6所示,其中采集模块主要以SH367309芯片为主,负责采集电流电压以及温度信息。当温度高于阈值时启动过温保护,当温度低于阈值时启动低温保护。当电压高于阈值时启动过压保护,当电压低于阈值时启动欠压保护。当电流高于阈值时启动过流保护。启动保护时断开电路以保证电池的安全。之后将采集到的信息传给显示模块进行显示,并通过CAN通讯的方式传给STM32F407VET6进行控制。

通过STM32CubeMX中的X-Cube-AI扩展包,当GRU模型转化为C代码进行部署。首先通过matlab中的“exportONNXNetwork(net,'GRU.onnx')”语句将模型转化为onnx格式。ONNX格式是一种深度学习模型的开放标准,兼容性高,可适合于各种工具和框架。之后将压缩率选择为8,对神经网络的权重模型系数进行压缩,使得模型大小适合在嵌入式设备上进行部署。然后将代码部署并对SOC做出估计,估计后在显示模块进行显示,并根据SOC值进行充放电控制。当充满时自动断开电路起到保护作用,并起到控制温度的作用,最后反馈给电池模块保证电池可以运行在一个安全的环境下。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。

相关技术
  • 一种基于多源多元遥感技术协同的区域能见度预测方法
  • 一种基于多源多元遥感技术协同的区域能见度预测方法
技术分类

06120116523096