APP下载

一种基于神经网络法的锂电池管理系统的设计与研究

2020-11-30陈瑞张博伦白创

科学与信息化 2020年31期
关键词:神经网络

陈瑞 张博伦 白创

摘 要 本文针对21700锂电池管理系统(BMS)的设计,提出了以STM32F104处理器为核心,基于神经网络法的电池管理系统设计方案。设计中,使用了LTC6803芯片完成了电压监测电压均衡,电池组保护的设计要求。通过BP神经网络模型实现模型的建立,该设计可以应用于锂离子电池的管理系统中。

关键词 BMS;神经网络;电压监测;电池组保护

引言

本文基于BP神经网络模型,电压监测芯片LTC6803,霍尔电流计ACS758,数字隔离器ISO7241,处理器STM32F104,温度监测芯片TMP36以及其他外围电路,提出了一种基于神经网络法的电池管理系统,它能够实现对电池进行状态估算,对电池组中每节电池进行电压均衡以及安全保护的功能。

1常见的SOC估算方法分析

首先,我要阐述两个概念:

第一个概念是SOC,全称是State of Charge,荷电状态,也叫剩余电量,代表的是电池放电后剩余容量与其完全充电状态的容量的比值。其取值范围为0~1,当SOC=0时表示电池放电完全,当SOC=1时表示电池完全充满。SOC的计算公式[1-3]为:

第二个概念是电池放电倍率(C)放电倍率是指在规定时间内放出其额定容量(Q)时所需要的电流值,它在数值上等于电池额定容量的倍数。即:充放电电流(A)/额定容量(Ah),其单位一般为C ( C-rate的简写),如0.5C,1C,5C等。

对于电池管理系统来说,主要的监测对象就是SOC。然而,动力电池SOC的估算不能简单地通过仪表观测得到,它必须对动力电池采集大量的动态数据,并通过相应的估算方法来间接估算。目前常见的方法有:安时法、开路电压法、卡尔曼滤波法,神经网络法等。下面将对这几种常见的SOC估算方法进行分析:

1.1 安时法

安时法也称库仑计量法,主要通过对一段时间内动力电池回路中电流與时间进行积分,然后根据SOC初始值,就可以计算出当前的SOC值:

式中:SOC0为动力电池数据采集时的SOC初始值。 安时法对于估算动力电池当前状态的SOC十分有效,但安时法的缺点非常明显:首先,安时法对于初始状态SOC0的精度非常依赖,不仅如此,在后续的工作过程中,安时法会累计误差,最终导致系统误差变大,精度降低。

1.2 开路电压法

开路电压法的工作原理主要是采集动力电池的开路电压值(OCV),由于大量的试验数据证明,动力电池的OCV和动力电池的SOC之间存在一定的函数关系,所以可以通过使用专业仪器测量电池开路电压与SOC之间的关系,得到OCV曲线。

1.3 卡尔曼滤波法

卡尔曼滤波法通过一个状态方程和一个量测方程来完整的描述一个线性动态过程,计算基础是利用动力电池的工作特性建立相应的等效模型,然后通过等效模型的具体表征来描述动力电池的状态方程,通过结合状态空间和随机估计理论,来估算动力电池的SOC。

但是锂电池的工作状态并不是线性过程。同时,卡尔曼滤波法严重依赖建立的等效模型的准确度,所以我们选取了神经网络法。

1.4 神经网络法

神经网络法通过大量的电池充放电数据建立神经网络模型,并且利用神经网络模型的强非线性、自主学习能力等特点,可以在自主学习过程中会不断修改自身的权重以及偏差,使其误差始终保持在最小值,从而确保神经网络模型的精度。

2电池数据的采集

本设计针对“天津力神21700锂电池”进行设计。

首先,我们要获得电池的OCV曲线,方法是:将一个充满电的电池在25℃的温度下,通过0.33C的电流恒流放电,每放电10%,等待30分钟后记录此刻的开路电压。重复此步骤,直到电池工作电压低于放电截止电压。将这些开路电压通过Matlab软件进行拟合,就得到了OCV曲线。

根据神经网络模型的要求,我们需要准确的知道电池放电过程中,电压与电池剩余电量的对应关系,这样,我们就可以通过检测电池在工作中的电压,得到电池的剩余电量。但是,由于锂电池会受到放电电流和环境温度的影响,所以我们也将放电电流和环境温度作为参变量考虑在模型内。

具体的测试方法是:我们通过锂电池测试仪,在控制环境温度恒温的前提下,对充满电的锂电池进行恒流放电。根据公式Q=It,我们就可以得到在该条件下电压与剩余电量的关系。在室温为20℃,放电电流1C的情况下,测得的放电电压与剩余电量的关系。

用同样的方法,我们改变环境温度和放电电流,就可以得到不同环境下,放电电压与剩余电量的关系。将数据通过神经网络模型进行训练,就可以得到适合于本系统的电池工作模型。

3系统设计

3.1 电压监测的实现方法

LTC6803中,C1至C12是用于监视电池电压的输入。底端电池的负端子连接至引脚V- 。 S1至S12引脚用于平衡电池组里的电池。如果串联电池中的一节电池过度充电,则S输出的内部可用于对该节电池进行放电。每个S输出的内部具有一个用于放电N沟道MOSFET。(见图1),实现电压均衡的效果。

3.2 停机保护的实现方法

保护模块中,每当电压,电流和温度中任意一项超过了预设的警戒值,处理器就会立刻输出信号,关断继电器,使电路停止工作。由于并联电容的作用,虽然电路被关断,但是整个系统并不会瞬间失去供电,而是缓慢的耗尽电容中储存的电量,继而停机。这一缓冲装置在实际的应用中,能够减轻突然开关机产生的瞬时电压对电路的冲击,起到保护效果。

4神经网络模型的搭建

4.1 神经网络建模原理

BP神经网络是一种信息正向传播,误差反向传播的多层前向型网络。常见模型结构如图1所示. 按照信息传播的方向给出网络的状态方程,用和分别表示第i层第j个神经元的输入和输出量,则BP网络的每一层输入输出关系可描述为:

人工神经网络无须事先确定输入输出之间映射关系的数学方程,仅通过自身的训练,学习某种规则,在给定输入值时得到最接近期望输出值的结果。作为一种智能信息处理系统,人工神经网络实现其功能的核心是算法。BP神经网络是一种按误差反向传播(简称误差反传)训练的多层前馈网络,其算法称为BP算法,它的基本思想是梯度下降法,利用梯度搜索技术,以期使网络的实际输出值和期望输出值的误差均方差为最小。

基本BP算法包括信号的前向传播和误差的反向传播两个过程。正向传播时,输入信号通过隐含层作用于输出节点,经过非线性变换,产生输出信号,若实际输出与期望输出不相符,则转入误差的反向传播过程。误差反传是将输出误差通过隐含层向输入层逐层反传,并将误差分摊给各层所有单元,以从各层获得的误差信号作为调整各单元权值的依据。通过调整输入节点与隐层节点的连接强度和隐层节点与输出节点的连接强度以及阈值,使误差沿梯度方向下降,经过反复学习训练,确定与最小误差相对应的网络参数(权值和阈值),训练即告停止。此时经过训练的神经网络即能对类似样本的输入信息,自行处理输出误差最小的经过非线性转换的信息。

4.2 神经网络建模方法

21700锂电池 SOC 预测需考虑的因素有很多,在进行21700锂电池 SOC 预测时必须综合考虑,研究选取电池的放电电压作为预测指标,荷电状态 SOC 为网络输出,以生成 BP 神经网络的21700锂电池 SOC 预测模型。

(1)数据预处理

原始数据预处理包括数据量化和归一化。预处理后的数据能够被 BP 神经网络读入。

数据归一化是神经网络预测前对数据的预处理,是将网络中所有输入数据都转化为[0,1]之间的值。数据归一化的函数形式为

式中,和分别为数据序列中的最小值和最大值。

(2)训练集/测试集产生

为保证训练数据随机性,随机选取测试数据库中—— 组数据作为训练集,其余 —— 组数据作为测试集。

(3)BP 神经网络

把训练集输入构建好的 BP 神经网络,然后进行网络训练,具体步骤如下:①随机生成BP神经网络的初始权值和阈值构造 BP 神经网络;②BP 网络创建完毕后,便可将训练集向量输入到网络中,利用BP 神经网络对网络的权值和阈值进行优化调整,直至满足训练要求,迭代终止。

(4)21700锂电池 SOC 测试

网络训练完成后,即可对测试集的21700锂电池SOC 进行预测。

5软件系統的实现方法系统框架:采用uC/OS-III内核

uC/OS-III被设计用于32位处理器,适合本系统使用的STM32F103主控芯片。

uC/OS-III允许多个任务具有相同的优先级,例如本系统中的SPI函数、温度检测函数和电流检测函数的优先级便相同。这三个函数通过时间片轮转法轮流(round robin) 运行。uC/OS-III是一个可扩展的,可固化的,抢占式的实时内核。当状态异常时,便能及时插入停机保护函数。虽然目前的任务数不多,但是在二次开发增加功能时,该框架可以为各个任务之间的调度提供方便。

参考文献

[1] 杨保亮,杨守良. 基于STM32和PWM的锂离子电池检测系统设计和研究[J]现代电子技术,2018(12):128-131.

[2] 唐俊龙,龚磊,禹智文,等. 基于UCOSII锂离子电池监控管理系统的设计[J].电子测试,2019,407(2):48-50,115.

[3] 高文敬.动力电池 SOC 估算方法研究与BMS开发[D].淄博:山东理工大学,2018.

猜你喜欢

神经网络
复杂神经网络下的多行为识别技术研究
基于人工智能LSTM循环神经网络的学习成绩预测
基于BP神经网络算法的成绩预测模型研究
基于CNN的轻量级神经网络单幅图像超分辨率研究
基于图像处理与卷积神经网络的零件识别
基于改进VGG-16神经网络的图像分类方法
基于 BP 神经网络的城市轨道交通客流预测研究
基于自适应神经网络的电网稳定性预测
基于遗传算法对广义神经网络的优化
基于遗传算法对广义神经网络的优化