首页
学习
活动
专区
工具
TVP
发布

安世亚太曾社铨:电池管理系统建模与仿真

BMS建模仿真需求有功能安全,系统构架、软件文本要求和软件设计,系统仿真。

本文为励展博览集团及NE时代于8月28-29日联合主办的 "第二届AWC2019新能源汽车关键元器件技术大会" 演讲嘉宾的现场实录。

演讲嘉宾:曾社铨 广州安世亚太华南区系统与流体主管

演讲主题:电池管理系统(BMS)建模与仿真

曾社铨:大家好,我是来自广州安世亚太的曾社铨,今天下午跟大家交流一下电池管理系统BMS建模及仿真的解决方案,以及分享一个项目案例。首先来看一下BMS的重要性。从电池本质来说,锂离子是不稳定的,例如外部短路、内部短路或者过充。如果对电池管理不善的话,会引起电池容量损失,电池寿命缩短,充电时间更长,热量逃逸,严重会发生自燃爆炸。据报道,国内8月初的5天内就发生了3起电动汽车起火事故。

接下来看BMS建模仿真的必要性。第一,通过建模仿真,可以验证BMS最终代码的正确性,例如验证代码逻辑、SOC/SOH计算、电池状态(电压、温度)和连接状态监控等。第二,通过建模仿真可以优化正确的BMS代码提升BMS性能。例如我们的客户提供了一些数据,电池温度监控可以从13.1微秒降低到12.6微秒,电池电压应用从392微秒降低到253微秒。第三,通过建模仿真可以提升BMS安全性。验证BMS符合ISO 26262汽车安全完整性等级(ASIL),将ASIL B提升到ASIL C甚至到ASIL D。第四,通过建模仿真减少BMS研发时间,成本和上市时间。客户用我们的方案反馈的数据看,研发时间降低了56%。我们方案无需额外的工具辅助,仿真软件可直接生成符合ISO 26262的代码。

接下来看一下BMS建模仿真的解决方案。BMS的主要功能是电压、温度的监测,还有电流的测量、电池之间的平衡、SOC和SOH的计算等等。这些主要功能对应的BMS建模仿真需求有:第一个是功能安全,今天的演讲嘉宾也强调过功能安全的重要性;第二个就是系统构架、软件文本要求和软件设计方面。最后是系统仿真。我们对于开发符合ISO 26262的BMS建模仿真提供的解决方案是,ANSYS Medini软件进行功能安全分析,ANSYS SCADE软件进行系统构架、软件文本要求和软件设计,最后ANSYS Twin Builder软件进行闭环的系统仿真。

ISO 26262是汽车的一个安全性国际标准。标准的核心价值在于:通过系统的功能安全研发管理流程,以及针对汽车电子控制系统硬件和软件的系统化验证和确认方法,保证电子系统的安全功能在面对各种严酷条件时不失效,从而保证驾乘人员以及路人的安全。

我们提供的方案中,第一个,利用Medini软件进行功能安全分析。软件支持电动汽车所有的功能安全分析方法;系统的安全性符合ISO 26262的安全标准;从我们客户数据统计看,用Medini软件进行功能安全分析工作可以减少55%,上市时间也相应的减少,同时提高了效率与供应商或者客户的沟通。此外,功能安全分析工作产品中的不一致性也会被消除掉,认证过程被加速,特别是在设计变更方面。Medini软件是基于模型的方法来确保一致性,可跟踪性以及高效率。

功能安全分析有三个阶段,概念阶段、功能安全概念阶段以及技术安全概念阶段。对应这三个阶段的不同功能安全需求,Medini都提供了相应的功能方法,而且界面操作非常简单。举个例子,概念阶段需要做危害分析和确定安全目标,Medini提供的对应方法有:驾驶状况和危险事件管理、危害和可操作性分析(HAZOP)、危害分析和风险评估(HARA)和ASIL测定与风险图,自动计算ASIL等级。其他两个阶段就不详细介绍了,大家可以看屏幕PPT。

功能安全分析定义好之后,我们就要进行软件的架构以及开发了。ANSYS SCADE软件主要用于安全关键或者主动安全人机界面或控制软件开发,符合ISO 26262和其他适用安全标准,提供了一个经过ISO 26262认证的代码生成器,它可以自动生成可认证、可移植的代码。SCADE的工作流程可分成三个阶段,第一个阶段是模型设计,包括软件架构、人机交互界面的设计,第二个阶段是模型的验证,例如BMS的模型检查、模型覆盖率分析,联合仿真、基于主机的测试等等,最后一个阶段是代码生成和集成,软件会自动生成符合ISO 26262的代码,集成为MBS。

接下来需要使用ANSYS Twin Builder软件进行闭环的验证。为什么要进行闭环验证呢?闭环仿真是在虚拟环境中驾驶一辆虚拟车辆,但是使用的是真正的BMS,用于测试虚拟里程下的BMS。为什么要进行闭环验证?举个例子,BMS所有安全工况和特殊工况的正确响应或者BMS代码在优化过程中需反复测试,如果都用实际车辆或者仪器测试的话,时间和成本高昂。这里涉及到了一个问题,如何从真实车辆到一个虚拟车辆?其实这个过程就是我们常说的系统仿真,或者说数字孪生,数字孪生是工业4.0中的术语。虚拟车辆的建模或者说车辆数字孪生体的建立越接近真实车辆,对BMS验证越可靠。

系统仿真的难点。系统仿真传统做法有两种方法,一种方法是全一维模型系统仿真,例如可以用热阻网络模型进行温度仿真,但是由于不能考虑所有几何细节,所以精准度低,优点是计算速度快,毫秒级;第二种方式用全三维模型系统仿真,就是建立几何模型、划分网格、再进行物理模型的添加建立有限元或者有限体积模型。因为考虑了所有细节,所以精准度很高,但是缺点是计算时间很长,通常以小时或者天来计算,明显不符合BMS验证实时仿真的需求。

Twin Builder在系统仿真方面的解决方案,是一维加三维的降阶模型(ROM)耦合仿真,既保证高精准度又能快速计算。下面用一个例子给大家展示一下,这个例子是发动机,几何非常复杂,而且管路也非常复杂,我们要计算里面流道的压力分布,分别用Fluent软件和用降阶模型进行三维仿真,然后进行比较。用Fluent来算的话,计算机集群(16核)计算时间需要2小时,但是用降阶模型的话,用笔记本PC计算只要3秒,两者结果对比最大误差只有1.2%。

因为降阶模型在系统仿真是最关键技术之一,所以这里简单介绍一下降阶模型生成的流程。首先在ANSYS任何一个仿真器求解器进行数值仿真(如Fluent、Mechanical、Icepak、Maxwell等),然后将仿真结果数据传递到Twin Builder中生成ROM;可以生成线性、非线性、静态或者动态的ROM,最后建立系统数字孪生体。

对于我们电池降阶模型来说,主要有两步,第一步进行三维仿真,利用Fluent软件仿真电流、产热率、温度等等,就会得到一堆相应的数据文件。第二步,将这一堆数据文件导入到Twin Builder中,有相应降阶模型接口,对于电池来说,电流可以用ECM ROM,温度可以用LTI ROM或者SVD ROM。

在Twin Builder中除了降阶模型是重要技术之外,还提供了多种功能实现从零维到三维的建模仿真。如基于语言建模,包括Modelica,VHDL-AMS,C/C++,SPICE和SML等语言。提供多城模型库,提供嵌入式的系统集成(例如和SCADE软件嵌入),还与第三方系统建模工具提供接口。

总得来说,我们提供的BMS建模仿真的解决方案是先在Medini中进行功能安全的定义分析,这些定义分析有接口非常容易传递到SCADE软件中进行软件构架以及搭建,最后嵌入到Twin Builder中进行闭环的仿真,这三个软件之间的数据传递和嵌入是非常简便的。从而可以建模仿真认证BMS代码的正确性,还有后续的优化分析。接下来简单分享下我们项目的案例,是电动汽车400V的BMS案例。

第一步,初步构架,就是项目定义。项目中包含三个部件,电池、开关箱和ECU电控单元;外部接口这里显示两类,分别是SOC/ SOH和冷却/加热;功能的话,这里定义两类,分别是SOA维护与操作和紧急断开,如屏幕中展示。

第二步,在Medini进行车辆层面功能安全分析,在软件里面功能安全分析以以树形图的形式进行了可视化。危险和可操作性(HAZOP)等功能,通过配置检查表用于识别与不同项目功能相关的故障。在这里描述的例子中,因果链故障用故障网络图来可视化。

第三步,ASIL、安全目标和安全要求的确定。一旦识别出不同的功能和故障,就要进行危险和风险分析(HARA),通过确定安全完整性等级(ASIL)、相应的安全目标(SG)和安全要求(SR)来识别危险事件及其对安全的影响。

第四步,从安全要求到软件要求。安全分析完之后,我们就要确定对软件的需求,例如这里软件控制器接触控制、电池温度的监控,SOC计算和报警管理等等。

第五步,SCADE 软件设计和需求跟踪。每个软件组件都由一个SCADE操作符(黄色块)表示。导线和箭头表示块之间通过定义好的输入/输出或局部变量进行的通信。SCADE还将我们的高级需求连接到单个软件元素来支持需求管理功能。通过这种方式,我们使用有限代码生成确定性正式定义语言来开发所有软件。SCADE语言的这种性质使我们能够有一个可执行的规范,这样我们就可以立即使用交互式模拟器来测试您的设计

第六步,利用SCADE快速测试模型。在这个模拟视图中,我们可以设置输入向量,循环地运行模型,并获得完整的白盒可见性。该模型也可以通过使用连续模式模拟来实现,其中每个顶层输入都可以通过SCADE快速原型开发的显示图形面板进行监控。对于每一个顶层的输入我们都可以设计显示图形面板,进行可视化,例如这个项目中,我们可以为每个电池管理单元(CMU)选择活动电池的数量,并通过使用滑块设置不同的电压值,使电池组的充放电效果可视化。当达到高或低值阈值时,警报检测和监控也可以实现可视化。

第七步,接下来会进行软件测试及覆盖率测试。在交互仿真之后,可以通过SCADE测试实现一个完整的基于需求的测试过程,以满足ISO 26262软件验证目标。SCADE测试支持使用csv等格式开发测试过程和场景。此外,测试过程可以很容易地一键执行,并且每个过程的通过/失败状态在图形用户界面(GUI)中被可视化。测试模型的覆盖是评估测试完整性的一种有效方法,并且支持在设计中检测到意外的能。自动生成符合ISO 26262的代码。

第八步,Twin Builder闭环系统仿真。这种封闭式模拟的目的是实现我们的系统级目标,即验证BMS正确的系统响应w.r.t.功能需求,并调整控制参数,以在一系列任务中改善驾驶员体验。这页PPT展示了是电池管理系统中电池的降阶模型,满足系统仿真的高精准度和实时仿真。

第九步,系统模拟-验证正确的系统响。这里有四幅图,第一幅是电池组总电压,第二幅是电池组充电状态,第三幅是平均温度,第四幅是电池组发热。这个集成的设计和仿真过程让我们充分了解所有系统交互,帮助我们降低缺陷的风险。

第十步,系统模拟-验证满足Medini定义的安全目标。检查整个系统在关键情况下的(物理)行为(故障注入);各级因果链验证(FMEA、FTA);获得安全机制有效性的证据;通过仿真估计系统变量(支持设计决策)。

这里介绍流程看起来比较简单,但是我们都了解BMS从产品的概念设计到产品真正上市的研发过程是非常复杂的。总结下,我们提供的BMS建模仿真的解决方案是在Medini中进行功能安全的定义分析,在SCADE软件中进行软件构架以及搭建,最后嵌入到Twin Builder中进行闭环的仿真,这三个软件之间的数据传递和嵌入是非常简便的,从而实现BMS的建模,仿真、测试和优化。

我的演讲到这里,顺便说下,安世亚太是国内最大的仿真技术供应商。谢谢各位,非常感谢NE时代提供这次交流机会。

转载声明:本文系NE时代原创作品,未经授权许可,不得转载。如未经授权转载或抄袭,NE时代将保留法律追究的权利。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190901A03H5600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券