0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析基于matlab Parameter Estimation Tool工具箱的电池参数

simulinker赛博科技 来源:simulinker赛博科技 作者:simulinker赛博科技 2024-03-11 09:45 次阅读

背景

之前我们介绍过电池不同的等效电路模型(基于simulink的电池(储能)模型仿真),主要是由内电源及RC元器件电路组成,完成电池RC等效后,如何确定等效电路中各元器件的参数是关系到电池模型精度的关键。确定电池等效电路参数的过程一般被叫做电池模型参数辨识,目前关于电池参数辨识的方法也很多,如基于遗传算法的电池参数辨识、带遗忘因子最小二乘法电池参数辨识方法、递推最小二乘参数辨识方法、在线参数辨识方法等。作者作为门外汉角度来看,相对主流方法为数值计算法和最小二乘法。

数值计算法

该方法的思路是通过HPPC(Hybrid PulsePower Characteristic,混合功率脉冲特性)测试计算各元器件参数,具体HPPC测试可以参照《Freedom CAR测试手册》。

6d5c2e66-dedc-11ee-a297-92fbcf53809c.png

HPPC测试曲线

(1)一阶RC等效电路 一阶RC等效电路非线性特性好,能够快速便捷模拟仿真出锂电池的动静态电压特性,动锂电池系统的研究和仿真具有一定的帮助,一阶等效电路图如下所示:

6d689db8-dedc-11ee-a297-92fbcf53809c.png

一阶RC等效电路

(2)二阶RC等效电路

二阶RC等效电路用电阻表示欧姆压降,一个RC网络表示电化学极化特征,另一个RC网络表示浓差极化特征。二阶RC等效电路图如下所示:

6d6c37fc-dedc-11ee-a297-92fbcf53809c.png

二阶RC等效电路

通过上述HPPC测试曲线中电压和电流不同的稳态点和拐点,结合伏安特性及经验公式,可计算出一阶和二阶RC参数。该方法虽然可以计算,但该方法涉及的公式中有时候也存在一些相对不确定的参数,如果进一步配合其他方法,可以提高参数辨识的效率。

最小二乘法

最小二乘法是目前应用十分广泛的电池参数辨识方法,其原理是对过度确定系统,即其中存在比未知数更多的方程组,以回归分析求得近似解的标准方法,在这整个解决方案中,最小二乘法演算为每一方程式的结果中,将残差平方和的总和最小化。

大体理解起来就是根据已有确定参数,针对未知系数,不断根据输入输出确定回归方程系数,直到找到满足误差要求的合适的参数。

为方便操作,节省程序开发成本(其实是不会),以下针对之前建的二阶RC等效电路,通过matlab自带的Parameter Estimation Tool工具箱演示参数辨识的过程。

当然,要进行参数辨识,前提是要有一组已知的确定参数,可以是根据上文提到的实际电池HPPC测试获得的实测参数,也可以是其他充放电方式获取测试参数。

本文以matlab自带的电池模型进行脉冲充放电测试,记录电池电流及电池电压数据,将此数据作为自建二阶RC参数辨识的基础数据,同时也作为辨识后校准模型。

6d824056-dedc-11ee-a297-92fbcf53809c.png

电池充放电模型及结果记录

6da440d4-dedc-11ee-a297-92fbcf53809c.png

电池充放电模型仿真结果

Parameter Estimation Tool工具箱辨识操作步骤如下:

(1)将上述模型得到的电压电流数据保存至文件或工作空间,仿真时,我们直接在模型中给定同样的脉冲电流信号,因此,只需要输出电压数据即可。

6db22514-dedc-11ee-a297-92fbcf53809c.png

校准模型电压数据

(2)打开已经搭建好的二阶RC等效电路模型,在matlab中将要辨识的参数变量进行定义,并给定一组初始值。

6db75a2a-dedc-11ee-a297-92fbcf53809c.png

自建二阶RC等效电路数学模型

6dc58140-dedc-11ee-a297-92fbcf53809c.png

定义自建二阶RC等效电路数学模型中变量初始值

(3)在simulink中打开Parameter Estimation Tool工具箱并新建实验。

6dd98ad2-dedc-11ee-a297-92fbcf53809c.png

打开Parameter Estimation Tool工具箱

6dddb670-dedc-11ee-a297-92fbcf53809c.png

新建辨识测试实验

(4)导入已有数据,并设置输入输出参数的数值范围,个人认为如果每个参数可以大体确定一个数值范围,在一定程度上可以加快参数辨识的速度,节省时间,也避免出现一些不合理的数值。

6df3da54-dedc-11ee-a297-92fbcf53809c.png

选择输出信号

6e0594e2-dedc-11ee-a297-92fbcf53809c.png

选择目标输出信号

6e1089d8-dedc-11ee-a297-92fbcf53809c.png

设置需要辨识的参数

6e1e82c2-dedc-11ee-a297-92fbcf53809c.png

设置需要辨识的参数数值范围

(5)参数设置完成确认无问题后,点击Estimate开始进行参数辨识,整个过程可能会有些慢,只需稍等片刻即可。

6e2c3e26-dedc-11ee-a297-92fbcf53809c.png

正在参数计算

6e40d5de-dedc-11ee-a297-92fbcf53809c.png

参数计算结束

(6)参数计算完成后,最终各个参数数值会显示并更新在matlab的工作空间。

6e56eedc-dedc-11ee-a297-92fbcf53809c.png

参数辨识后数值结果

(7)将辨识后的参数应用于自建二阶RC模型,并与一开始搭建的校核模型进行电压结果对比,可以看出,与标准模型结果重合度还是挺高的。

6e6f24c0-dedc-11ee-a297-92fbcf53809c.png

辨识后参数仿真结果与校准模型结果对比

另外,需要注意的是,不同的matlab版本Parameter Estimation Tool的界面可能略有差别,但整个过程基本是一样的。

总结

1.上述方法只是举例针对固定的RC值,在使用过程中,为使电池模型更加精确,可针对电池OCV(Open Circuit Voltage)-SOC曲线或外部温度等条件通过多维查表的方式,设计变RC参数的电池等效模型,当然,获取RC查表数据的过程将又是一项十分艰巨的工作。

2.通过上述过程也可以看出,只要有测试对象的确定数据及与测试对象一致的测试条件,就可以进行辨识,比如电机参数、光伏电池参数、控制器控制参数等都可以通过类似思路进行一试,当然,搭建的本体模型也要正确才行。



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 锂电池
    +关注

    关注

    259

    文章

    7981

    浏览量

    169000
  • 等效电路
    +关注

    关注

    6

    文章

    291

    浏览量

    32702
  • Simulink
    +关注

    关注

    22

    文章

    522

    浏览量

    62228
  • 电池充放电
    +关注

    关注

    1

    文章

    164

    浏览量

    9009
  • 静态电压
    +关注

    关注

    0

    文章

    9

    浏览量

    7319

原文标题:基于matlab Parameter Estimation Tool工具箱的电池参数辨识

文章出处:【微信号:simulinker赛博科技,微信公众号:simulinker赛博科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    虽然下载contourlet工具箱但是运行代码出现函数或变量 \'resampc\' 无法识别。

    下载并将contourlet工具箱放到matlab路径中了,依然不能使用pdfbdec函数
    发表于 08-22 17:14

    如何利用Matlab进行神经网络训练

    Matlab作为一款强大的数学计算软件,广泛应用于科学计算、数据分析、算法开发等领域。其中,Matlab的神经网络工具箱(Neural Network Toolbox)为用户提供了丰富的函数和
    的头像 发表于 07-08 18:26 1530次阅读

    如何使用MATLAB神经网络工具箱

    神经网络是一种模拟人脑神经元网络的计算模型,广泛应用于各种领域,如图像识别、语音识别、自然语言处理等。在MATLAB中,可以使用神经网络工具箱(Neural Network Toolbox)来构建
    的头像 发表于 07-03 10:34 2006次阅读

    matlab神经网络工具箱结果分析

    神经网络是一种强大的机器学习技术,广泛应用于各种领域,如图像识别、语音识别、自然语言处理等。MATLAB提供了一个功能强大的神经网络工具箱,可以帮助用户快速构建和训练神经网络模型。本文将介绍
    的头像 发表于 07-03 10:32 491次阅读

    MATLAB如何使用训练好的网络

    引言 在本文中,我们将探讨如何在MATLAB中使用训练好的神经网络。神经网络是一种强大的机器学习技术,广泛应用于图像识别、自然语言处理、预测建模等领域。MATLAB提供了丰富的工具箱,使得神经网络
    的头像 发表于 07-03 10:06 939次阅读

    MATLAB信号处理常用函数详解

    MATLAB是一款功能强大的数学软件,尤其在信号处理领域,它提供了众多的函数和工具箱,使得信号的分析、处理、仿真变得简单而高效。本文将详细介绍MATLAB在信号处理中常用的函数,并通过具体示例来阐述其应用。
    的头像 发表于 05-17 14:31 1504次阅读

    使用PSoc6在Modus工具箱中创建一个示例应用程序时,终端报错的原因?

    你好, 每当我尝试使用 PSoc6 在 Modus 工具箱中创建一个示例应用程序时,我的终端都会显示以下两个错误。 有人有什么建议吗? 1) make[1]:*** [../mtb_shared
    发表于 03-04 07:01

    为什么无法在modustoolbox™工具箱中打开新应用程序?

    我无法在modustoolbox™工具箱中打开新应用程序。 如何解决这个问题?
    发表于 01-31 07:32

    可以在Modus工具箱eclipse中使用DAVE™创建的项目吗?

    我们可以将项目(在 IDE 中创建 DAVE™ )使用 Modus 工具箱 eclipse IDE 吗? 如果是,怎么做? 如果不是,为什么不呢?
    发表于 01-26 06:55

    使用自定义BSP的空项目出现Modus工具箱编译错误的原因?

    的日志。 有人能为我指出有关这个错误的方向吗? 也许使用 BZI 芯片然后尝试在 LQI 芯片上加载代码是更好的主意吗? (我可以确认 BZI 芯片成功兼容空应用程序)。 看来这是我要问的关于 modus 工具箱的众多问题之一。
    发表于 01-23 06:32

    请问KitProg2是否支持加载使用Modus工具箱构建的程序闪存?

    我明白 KitProg3 或更高版本的工具(例如 需要 miniProg4) 才能调试使用 Modus 工具箱创建的项目。 但是,我想使用 KitProg2(例如 miniProg3) 加载程序闪存
    发表于 01-19 06:29

    MATLAB课程之第五章v3 文件操作(2)

    后,真的希望在医学方面能有所贡献!所以,现在就积累!扩展一下知识面吧! MATLAB的图像处理工具箱(image processing toolbox)自带了读取医学图像DICOM文件的函数dicomread、dicominfo等,如果MRI影像数据的扫描
    的头像 发表于 12-08 12:25 406次阅读

    一个安卓渗透工具箱

    在V1版本中,没有在软件里集成工具调用,用termux或mt管理器在安装路径下执行以下命令可调用信息收集、内网穿透、nucli和xray等工具
    的头像 发表于 11-30 16:21 809次阅读
    一个安卓渗透<b class='flag-5'>工具箱</b>

    在ADAU1761的工具箱库下的部分组件没有Help说明是为什么?

    在ADAU1761的工具箱库下的部分组件没有Help说明,比如MSEnv组件,有没有这部分的资料?
    发表于 11-29 07:20

    如何在TSMaster面板和工具箱中实现多语言切换

    TSMaster软件平台已经提供了多语言的支持,对于软件内部用户二次开发的模块如Panel和工具箱模块,TSMaster也提供了多语言的支持。这一特性让基于TSMaster开发的工程只需要制作
    的头像 发表于 11-11 08:21 836次阅读
    如何在TSMaster面板和<b class='flag-5'>工具箱</b>中实现多语言切换