APP下载

基于FMI的功能模拟单元创建与仿真分析

2019-10-20苏一博臧晶玉绍康

科技创新导报 2019年14期

苏一博 臧晶 玉绍康

摘   要:随着科学技术的不断进步,当今工程系统涉及的学科领域不断扩大。针对各个学科的仿真平台不能兼容的问题,本文研究了基于FMI的功能模拟单元。本文首先介绍FMI标准,然后深入研究基于FMI的功能模拟单元FMU的组成、创建和仿真,并分析仿真数据,以实例仿真的方式证明,基于FMI标准的FMU可以与多种仿真平台兼容,具备良好的移植性,极大地提高了仿真的效率。

关键词:FMI标准  功能模拟单元  兼容

中图分类号:TP391.9                               文献标识码:A                       文章编号:1674-098X(2019)05(b)-0001-02

当今计算机仿真技术应用广泛,涵盖领域众多,在科学研究中发挥了不可替代的作用。为了实现多领域的联合仿真,欧洲的MODELISAR项目开发了一种新的开放接口标准FMI,可以方便地使不同仿真环境的模型通过模型交换或者模型耦合实现仿真。建模软件将模型以FMI标准导出功能模拟单元FMU,可以将FMU与其他模型集成在仿真软件中进行仿真。

1  FMI标准概述

功能模拟接口(FMI)是一种独立于工具的标准,它可以分为模型交换(Model Exchange)和协同仿真(Co-Simulation)两种。其中模型交换的目的是建模平台可以动态生成模型的C代码,并且该代码可供其他模型使用,模型由微分、代数和离散方程所描述;协同仿真的FMI是为在联合仿真环境中耦合两个或多个仿真工具提供接口标准,各子系统之间的仿真数据交换仅被局限于那些离散的通信点上,在两个通信点间的都由各自所带的求解器求解[1]。

2  FMU文件组成

FMU文件主要包含源代码文件和模型描述文件。源代码文件为DLL文件,主要是由C和C++语言编写的源代码文件。这些源代码文件都是以FMI为标准将模型的运动状态以及方程编写成函数封装起来的。模型描述文件为XML格式,仿真软件读取并解析模型的XML文件得到仿真模型的相关属性信息。描述文件中包含模型版本、名称、模型ID、识别码Guid等仿真必须读取的模型属性信息和仿真参数的执行信息。另外FMU中可能会有图片、表格等其他非必须的文件[2]。

3  FMU的创建

创建FMU模型的方法有很多种,本节主要讨论以下两种常见的方法。

3.1 C代码编译生成FMU

该方法主要需要以FMI标准将模型的状态和运动方程编写成C代码文件,还需要将模型的属性信息和仿真参数写在xml描述文件中。将这两个主要文件和其他非必须的描述性文件放在同一目录下在FMU_SDK中使用build命令即可生成FMU模型。

3.2 Modelica编译生成FMU

Modelica是一种使用广泛的、基于方程的模型语言,它可以方便地实现跨领域、跨学科物理系统的建模和仿真。以弹跳球为例,将小球自由落体运动的方程和状态等用Modelica语言编写成BouncingBall.mo模型。编写完成的Modelica模型可以通过Dymola、MapleSim等建模仿真软件的“FMU导出”功能导出BouncingBall.fmu模型文件。

4  仿真与分析

本节以直流电机模型为例来研究FMU模型的仿真并分析。

在MapleSim仿真平台上搭建直流电机模型,其中包含RLC电路和电机两部分,将模型进行仿真,选取电机处的信号Speed如图1所示。

将直流电机模型中的RLC电路部分通过MapleSim封装导出为RLC_motor.fmu文件。将RLC_motor.fmu导入MapleSim并加载模型,用其替代先前的RLC电路。将模型仿真,选取电机处的信号FMU_Speed,结果如图2所示。对比图2中的speed和图1中的speed的数据波形,发现RLC普通电路和封装成FMU模型后的仿真结果相同。可以得出结论:在某些复杂系统中,可以将具有一定功能,并且结构相对独立的部分封装成FMU,用其替代先前复杂的普通模型进行仿真,得到与原仿真相同的结果,FMU模型并不会影响结果的准确性。

再将在MapleSim中创建的RLC_motor.fmu导入到其他仿真平台中,例如OpenModelica仿真平台。用其代替相同工程下的RLC电路部分,得到速度speed如图3所示。

对比图2和图3,发现其仿真结果和在MapleSim平台仿真结果相同。可以得出结论:基于FMI标准封装的FMU模型可以导入到其他的仿真平台使用,拥有很强的移植性,并且仿真结果与在原仿真平台结果相同。还可以说明,在工程中可以将具备特定功能和固定结构的系统封装成一个或几个FMU模型,这样可以方便地将它们接入到需要此功能的系统中,不仅简化了仿真系统,还提高了仿真效率和模型的应用价值。

5  结语

本文简要介绍了FMU模型的创建方法并通过直流电机实例的三次仿真数据的对比,验证了基于FMI标准的FMU模型可以方便地与多种仿真平台兼容,仿真数据准确,具有可移植性强等优点,极大地提高了涵盖有多学科、多平台的仿真效率,对解决多仿真工具和半实物仿真系统之间的兼容性问题以及联合仿真平台的开发具有重要意义。

参考文献

[1] 田紅芳,单立志,李成功.通用模型接口标准FMI[A].信息技术、服务科学与工程管理国际学术会议[C].2011.

[2] 单立志.基于FMI的实时仿真应用研究[D].北方工业大学,2012.