• 发文
  • 评论
  • 微博
  • 空间
  • 微信

BMS算法设计之SOC估算方法(三)

Elektroauto 2020-04-04 16:20 发文


今天是2020年4月4日,在这里向为抗击疫情斗争作出牺牲的烈士和逝世同胞表示致敬。愿花飨逝者,春暖人间!

大家好!很高兴又跟大家见面啦,本篇文章是【BMS 算法设计】系列文章的第三篇。本期主要介绍的是电池SOC 估算方法中的第二种(+部分第三种)方法——库伦计数法(+部分间接测量法)。我们一起来学习吧!

老规则,还是先用图片来简单说明下本期文章主要介绍的SOC估算方法(蓝字部分为本期主要讲述方法):

库仑计数法和修正式库仑计数法被分为两种估算的方法。这种方法的输入信息来源于电池的充放电电流。它允许增加几个电池内部的效应(比如自放电和容量损失)用来估算电池的SOC,也可以增加电池的数据,如标称容量等。

间接测量法主要有神经网络法,支持向量法,模糊逻辑法,卡尔曼滤波器法等。由于自适应系统可以处理电池系统的非线性,并且能够展现出很高的精度,因此他们是一致的。然而,为了从自适应系统中得到好的结果,我们通常需要蓄电池特性的特定信息和精准的ECM 模型。

库仑计数法

在库仑计数方法(也被称为安时法- Ampere-hour method)中,电池SOC是通过累积流入或流出电池的电量被计算的。库伦计数法的计算精度取决于初始的SOC 估算精度和电池电流的测量精度(电流传感器的精度)。锂离子电池往往有比较高的充放电效率,并且需要长时间的监测,因此库伦计数法是很方便用于锂离子电池的SOC 估算的。尽管这种方法不适用于实时的SOC 估算,但是它可以用来验证用其他估算方法得到的结果的精度。

其中,SOCo 表示的是初始的SOC 值,电池包的电流 i(t)充电时候为负值,Crated 是额定容量。初始化的SOC 值(SOCo)可以用OCV 的方法获取。尽管这种方法很简单并且成本又低,但此种方法的缺点列举如下:

1. 因为库仑计数器属于开环估算器,所以电流传感器的误差会被估算器一直累积。当SOC 估算器通过长时间周期的运行,累积的误差也就越来越大。同时地,当电流传感器出现比较大的误差时,可能会更快的生成错误的结果;

2. 当电池实时的老化时,电池的容量会发生变化,但是库仑计数器不能检测到此问题,也不会为此采取其他措施。结果就是,如果电池估算的实际模式与预期模式产生偏差,相应的SOC 估算也是不准确的;

3. 初始的SOC 应该通过测量电池包的终端电压来获取。因此,初始估算方法中包含的任何误差都会贯穿整个过程,而且该方法没有办法检测或者修复初始误差。

修正式库仑计数法

库仑计数法可以通过考虑不同温度和充电率下的库伦效率来提高其精度。可以被定义为放电过程中输出的电荷数和充电过程中输入的电荷数或者放电容量和充电容量的比率。见下面的公式:

因为效率取决于上面提到的当前充放电的比率,因此提出了包含放电库仑效率和充电库仑效率在内的等效库仑效率(Equivalent Coulombic Efficiency- ECE,此处用ηeq来表示)。我们可以用下面的等式来表示修正式的库仑计数器:


其中,ηeq代表ECE ,Ca 代表可用的容量(此处的可用容量由于有温度和老化因素的影响,与Crated是有区别的)。在不同的电化学成分中,锂离子电池在正常的SOC 区域提供最高的ECE(超过99%)。但是估算库仑效率往往需要高精度的设备,因此库仑效率的估算是个十分困难的任务。

经网络法

神经网络是一种数学模型(Artificial Intelligence- AI 人工智能的子领域),包括相互连接的人工神经元受到生物神经网络的刺激并预测非线性系统的输出用于该系统的过去数据。神经网络方法不依靠于任何物理、电气、化学或者热模型,并且可以花费更少的时间来获取结果(相比于扩展式卡尔曼滤波器)。神经网络包含输入和输出,并且由许多称为神经元的处理单元相互连接组成。神经网络法的精度取决于网络被训练了多远和训练的过程,这些都是很重要的阶段。

最常见的估算SOC 的两种网络架构是非线性的输入输出前馈网络(Nonlinear Input-Output feed-forward network- NIO)和带有外部输入的非线性自回归反馈网络(Nonlinear AutoRegressive with eXogenous input feed-back network - NARX)。下图是前馈神经的结构网络:

为了表示出输入变量和输出变量,神经网络由分别具有节点的输入层和输出层组成。另外,中间的隐藏层是一个或多个,用于模拟输入变量和输出变量的非线性关系。两个相邻层之间的节点互相连接。只有在输出层和隐藏层是分别具有激活功能的处理层节点。激活函数有几种类型,例如逻辑正切,双曲正切和线性整流函数(ReLu)等。在多数情况下,双曲正切S 型函数和线性传递函数用在激活隐藏层和输出的函数层。由于没有理论性的选择标准,通常会使用专业知识来选择隐藏层和神经元的数量。关于SOC 的估算,神经网络方法直接用电压和电流来确定SOC,不需要去查表,以下步骤可以作为神经网络SOC 估算的构造方法:Step1. 初始化(决定输入层的维度和隐藏层的神经元的数量);Step2. 使用输入变量(温度,电流,电压)和输出变量(SOC)来训练神经网络;Step3. 计算估算输出和实际输入之间的误差;Step4. 如果误差在期望的范围内,则停止搜索,否则的话重复Step2。许多因素都会对电池的SOC 产生影响。由于电流、终端电压和温度会对电池SOC 产生巨大影响,因此这三个参数被当成网络的输入变量,电池SOC 被当成网络的输出变量,并且隐藏层节点数量的设置主要还是依靠于已有的经验。

模糊逻辑法模糊逻辑方法可用于非线性和时变系统的建模,而且不需要电池的数学模型或者ECMs。当使用模糊逻辑法来估算电池SOC时,环境温度、施加的电流和电池终端电压被认为是平衡复杂度和准确性的输入变量。输入变量的数量越多(模糊控制器的尺寸),其结果也越加精确。但是,随着维数变大,模糊控制器实现会起来变得很复杂。第一步,模糊化是利用隶属函数将上述输入与模糊变量进行映射。考虑到存储器的内存和效率,成员函数可以是三角函数或者梯形函数。第二步,使用基于专家知识规则描述输入和输出之间的关系。第三步是执行推理过程的推理机制。去模糊化是将修改后的控制输出转化为真实值输出的第三步。成员函数和规则集通过生成神经网络算法或者专家算法定义。为了使模糊控制模型可以不考虑初始容量而准确的预测电池的SOC ,需要构建一个训练数据集。

在大多数的模糊控制方法中,电池的SOC 值是在没有额定容量或者电池电芯的放电历史数据的情况下,仅仅通过测量某些特定频率下的阻抗的虚部来预测的。
在大多数场景中,聚类算法用于构造输入成员函数和规则。利用最小二乘法来优化输出隶属度参数。

支持向量机支持向量机(Support Vector Machines- SVM)是一种用于回归和分类的相关的监督学习的方法,它一般适用于任何多变量的函数,具有比较高的精度,特别是在高度非线性系统中得到了有效的应用。为了使用SVM 回归模型来估算SOC,通常将温度、电流测量和电压视为非线性输入变量。在SOC 估算过程中,使用核函数,选取一个能够覆盖期望操作范围的上述输入变量的训练数据集,然后,使用未被用于训练的新数据对支持向量机模型进行验证。

以上就是本期对SOC 估算算法里的直接测量法的介绍,下期文章将继续为大家介绍其他估算算法(卡尔曼滤波器法)。我们下期再见啦!为了防止有的小伙伴没有看到系列文章的前几篇,特附上前面原文链接:BMS算法设计之电池SOC介绍(一)
BMS算法设计之SOC估算方法(二)
如果有不同的看法欢迎扫描下方的二维码关注本公众号,我们期待着和大家一同交流。参考资料:知网、Energy期刊、相关书籍等

免责声明:本文章中部分图片来源于网络搜索,内容是由小编阅读大量书籍和期刊总结整理而成,免费分享知识,如涉及版权问题,请与我们联系,第一时间做删除处理。

声明:本文为OFweek维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
2
评论

评论

    相关阅读

    暂无数据

    Elektroauto

    本维科号定期更新新能源电动汽车设...

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名/手机/邮箱

    请输入密码