首页/文章/ 详情

电池被动均衡对寿命的影响

11月前浏览162

概要

本文将基于GT-Autolion介绍电池被动平衡对寿命的影响,并通过与Python的联合仿真执行部分迭代计算。


1 简介

电池不均衡主要由制造误差、使用工况(如热管理)导致的。电池的不均衡会带来一系列不利的影响,如续航降低、老化加剧、过充过放的安全风险、给BMS的SoC和SoH的估计带来了很大的不确定性。本文以一个4S9P的电池包为例,基于GT-Autolion考察电池均衡对寿命的影响。用户很容易扩展到更多的电芯。


   

电池不均衡和电池均衡


2 被动均衡模型

该电池包由4个模组构成,每个模组并联一个被动电阻和一个开关管,用于消耗额外的电能。该模型考虑5种老化模型,分别为SEI模的生长、SEI模的破裂、CEI模的生长、以及负极材料的非线性脱落、正极材料的线性脱落。该电池包进行简单的恒流充放电循环。当4个模组的最小电压低于2.5V时,进入充电模式;当最大电压高于4.5V时,进入放电模式。当不同模组的电压信号差别高于10mV时,就开启被动均衡,即打开对应模组的开关管。


   


GT-SUITE的控制库不适合做迭代运算和矩阵/数组计算,故当电芯数量增多时(如几十个乃至上百个),由于要针对每一个电芯进行控制,使用GT-SUITE的控制库进行控制部分的建模操作就会比较繁琐(涉及大量的信号连接)。此时,用户可以使用Matlab或者Python这样的工具进行内部的迭代运算和矩阵/数组计算,本文将展示使用Python代替迭代计算,这主要是考虑到Python免费且使用方便(程序小、联合仿真速度快)。作为示例,我们通过Python执行以下运算,通过列表推导式,Python仅使用一行代码即可实现该运算。


   
   


在GT-SUITE中,通过PythonFunction模板以‘字典’(key-value)的数据类型与Python脚本进行数据交互,如下图所示。


   

调用电池均衡的脚本


   

定义输入输出信号(字典)


3 计算结果

初始模组的SOC分别为(0.50/0.52/0.54/0.56),但是随着电池平衡策略的工作,模组之间的差异逐渐消失。


   


当初始模组的差异扩大(如0.5/0.6/0.7/0.8),可以看到不同的模组呈现显著不同的特性,这将导致寿命的差异。


   

不同模组的SOC


   

不同模组的电压差异


我们可以对比电池均衡对于寿命的影响,如下图所示。考虑电池均衡时,寿命改善了2%。


   

不考虑电池均衡时各个模组的寿命


   

电池均衡策略对于电池寿命的影响


来源:艾迪捷
非线性MATLABpython材料控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-09-19
最近编辑:11月前
艾迪捷
MBD CAE解决方案专家
获赞 21粉丝 42文章 623课程 4
点赞
收藏
作者推荐

How to | LS-DYNA使用技巧(三)

本系列旨在探讨在LS-DYNA仿真分析中若干问题的解决方案和优化策略,涵盖了从基本的准确性和单位一致性到更高级的主题,如接触能量、截面分析、阻尼特性、双精度计算、有效塑性应变、环境变量设置、状态方程、额外历史变量、力分析、节点力、重力加载、Nastran数据文件读取、内能计算、关节刚度和质量缩放等多个方面,以帮助用户更有效地利用LS-DYNA进行工程模拟和分析。 状态方程在某些情况下,为了准确模拟材料行为,需要EOS。EOS通过将压力计算为密度的函数,也许还有能量和/或温度,来确定材料的静水压或体积行为。需要EOS时,通常是具有这些特点:应变率非常高,材料压力远远超过屈服应力,以及冲击波的传播。当然,这些现象通常是相互关联的。*EOS_LINEAR_POLYNOMIAL或*EOS_GRUNEISEN可能是非气态材料最常用的EOS状态方程。Gruneisen参数可用于包括金属在内的许多材料。总应力是偏应力和压力的总和。平均应力(sig1+sig2+sig3)/3等于压力。不采用EOS的本构模型直接计算总应力。在这些模型中,总应力的压力分量仅基于体积应变。例如,对于弹性材料,p=K*mu,其中K是体积模量,mu = rho/rho0 - 1。需要附带EOS的材料模型只计算应力的偏分量,即强度行为,而EOS计算总应力的压力分量,即静水压力行为。请注意,EOS只能用于连续介质单元(壳类型为13、14或15的*ELEMENT_SHELL或*ELEMENT_SOLID)。这些单元使用在960版本用户手册第II卷第6页开始的表格中为EOS指定的*MAT材料之一。如果您使用的材料模型需要EOS,则可以通过使用*EOS_LINEAR_POLYNOMIAL并将C1设置为体积模量和弹性模量,将所有其他C项设置为0来实现简单的体积行为。只有当应变率为低到中等时,才会推荐这种方法。车辆碰撞中的应变率属于中等。Zukas(1990,John Wiley and Sons)编辑的《高速冲击动力学》一书是关于高应变率下材料行为的一本很好的参考书。大约50种材料的EOS参数在“Equation of State and Strength Properites of Selected Materials”书中给出,Danial J.Steinberg,Lawrence Livermore国家实验室,1991年(1996年发布的变更1),UCRL-MA-106439。(LLNL不提供副本。)关于*EOS_TABULATED_COMPACTION和*EOS_TABULATED:手册不是很具体。说明如下:eVi项(曲线的横坐标)表示ln(相对体积),因此在压缩时为负。eVi=ln(相对体积)值应按降序给出,即首先是拉伸(正)值,最后是压缩(负)值。压缩时压力为正。如果gamma=0,Ci等于加载曲线上的压力。因此Ci应该具有与eVi相反的代数符号。 额外的历史变量当读入d3plot数据库时,额外的历史变量(参见*DATABASE_EXTENT_BINARY中的NEIPH和NEIPS)可以通过LS-POST中选择 Fcomp>Misc>history var#n,绘制显示出该变量随时间的变化曲线。通过选择 History > Scalar 来创建额外历史变量的时间历程图。在用户材料子程序应用中,采用额外的历史变量优势明显,因为用户可以知道额外的历史变量是什么。在LS-DYNA的970以前版本,umat子程序中的第一个历史变量不会作为历史变量#1存储在d3plot数据库中。存储位置取决于许多因素,例如子程序是矢量化的还是非矢量化的,单元是壳还是实体类型等。// 来自Lee Bindeman关于该主题的更多信息“当使用矢量化子程序(即umat46v而非umat46)和一个用于3D实体单元的材料时,无论用户定义的材料是否正交各向异性,都有6个历史变量自动用于转换矩阵的6项中。当材料为正交各向异性(IORTHO=1)时,这6个变量是自动分配的;然而当材料不是正交各向异性(IORTHO=0)时,这些变量不是自动分配的,必须由用户定义的材料输入来分配。因此,如果材料使用46个历史变量,则需要设置NHV=52。为了将46个历史变量写入d3plot文件,需要通过在*DATABASE_EXTENT_BINARY上设置NEIPH=52来请求52个额外的历史变量。后处理时,历史变量1到6将包含转换矩阵项。如果材料是各向同性的,这些都将为零。历史变量7到52将包含子程序中的历史变量1到46。对于二维材料(对于壳单元),上述规则会发生更改。在这种情况下,只存储了2个转换项,因此只需要分配和请求2个额外的历史变量。因为上述这种混乱的情况,在版本970修订版2903及更高版本后做了修正。有了这个修正,就不再需要为NHV分配额外的历史变量,也不再需要在d3plot文件中请求6(或2)个额外历史变量。您只需要分配相同数量的要使用的历史变量,并请求写入d3plot文件的数量。如果材料是各向同性的(IORTHO=0),则将省略转换项,然后用户子程序中的历史变量编号将与d3plot文件中的编号相匹配。然而,如果材料是正交各向异性的(IORTHO=1),那么6个(或2个)变换项将被写入d3plot文件,因此用户子程序和d3plot中的历史变量编号将不匹配。” 力的输出// 可以通过以下几种方式获得受力情况使用*DATABASE_CROSS_SECTION 和 *DATABASE_SECFORC可以获得一个横截面上的内力和内力矩。注意,在使用set选项设置横截面时,必须提供用于定义横截面的节点集以及横截面某一侧的至少一个单元集。使用*DATABASE_NODAL_FORCE_GROUP 和 *DATABASE_NODFOR可以获得施加在节点或节点集上的外部力使用*DATABASE_BNDOUT可以获得边界反力使用*DATABASE_SPCFORC可以获得由*BOUNDARY_SPC定义的边界上的反力*DATABASE_RCFORC可以输出接触力合力。在单面接触中,还需要使用*CONTACT_FORCE_TRANSDUCER_(option)来提取接触力合力单个节点所受的力由*DATABASE_NCFORC输出。必须在*CONTACT中设置SPR, MPR中至少一个输出控制选项为1,以便向程序指定输出侧为接触面主面侧或从面侧。以上数据分别由程序输出到ASCII文件SECFORC, NODFORC, BNDOUT, SPCFORC, RCFORC和NCFORC中。 节点力下表总结了各种ASCII输出文件是否包含由各种载荷或边界条件引起的节点力。NCFORC和RCFORC分别包含节点接触力和接触合力。只有当设置了*CONTACT(Card 2)中的打印标志(SPR、MPR)时,才会包含在NCFORC中。文章来源:https://www.dynasupport.com/howtos/general翻译校对:魏仁委,董骁来源:艾迪捷

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈