Main Content

导入 FMU

使用 FMU 模块将功能模型单元 (FMU) 导入 Simulink® 中。

FMU 模块根据您要导入的现有 FMU 自动选择 FMU 模式:

  • 协同仿真 - 集成实现 FMI 协同仿真接口的 FMU。这些 FMU 可以包含用于工具耦合的局部求解器。

  • 模型交换 - 集成实现 FMI 模型交换接口的 FMU。这些 FMU 不包含局部求解器,而是从 Simulink 继承求解器。

此模块支持 FMI 版本 1.0、2.0 和 3.0。对于 FMI 版本 2.0 和 3.0,如果您的 FMU 同时包含协同仿真和模型交换元素,则模块会检测到此状态并提示您为模块选择运行模式。

您可以像使用其他 Simulink 模块一样使用 FMU 模块。FMU 模块支持普通、快速加速和加速模式。使用 FMU 记录的 FMU 模块不支持快速加速模式。

本主题假设您提供了一个 .fmu 文件。

FMU XML 文件指令

默认参数值派生自 FMU ModelDescription.xml 文件中定义的对应参数 start 的值。模块参数值将覆盖 FMU 二进制实现中定义的对应参数的初始值。

Simulink 对这些 FMU 标记进行了相应的解释。

FMU 标记Simulink

ScalarVariable 的属性设置如下:

  • causality="none"causality="internal"

  • variability="parameter"

  • 定义了 start

ScalarVariable 元素解释为模块参数

Real

将模块参数解释为编辑字段

Integer

将模块参数解释为编辑字段

Boolean

将模块参数解释为复选框

Enumeration

将模块参数解释为下拉列表

String

解释为 UTF-8 编码的字符串

FMU 模块支持以下针对模型描述 XML 文件的编码格式:

  • ISO-8859–1

  • UTF-8

  • UTF-16

其他支持和限制

功能FMI 版本 3.0 支持FMI 版本 2.0 支持FMI 版本 1.0 支持

将模型工作点保存到基础工作区

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持这些功能)

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持这些功能)

 

快速重启

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持此功能。)

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持此功能。)

 

仿真步进器

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持此功能。)

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持此功能。)

 

求解器雅可比矩阵

(FMU 通过将其模型描述 XML 中的 providesDirectionalDerivatives 字段设置为 true,来标记它支持此功能。)

(FMU 通过将其模型描述 XML 中的 providesDirectionalDerivatives 字段设置为 true,来标记它支持此功能。)

 

线性化模型

(FMU 通过将其模型描述 XML 中的 providesDirectionalDerivatives 字段设置为 true,来标记它支持此功能。)

(FMU 通过将其模型描述 XML 中的 providesDirectionalDerivatives 字段设置为 true,来标记它支持此功能。)

 

声明参数为可调参数并在仿真过程中对其进行调整

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持此功能。)

(如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持此功能。)

 

For Each 子系统模块

(仅当 modelDescription.xml 文件中的 canBeInstantiatedOnlyOncePerProcess 属性设置为 false 时才受支持)

(仅当 modelDescription.xml 文件中的 canBeInstantiatedOnlyOncePerProcess 属性设置为 false 时才受支持)

 

字符串类型的参数

(不支持字符串类型参数的数组)

快速加速模式

软件在环 (SIL) 和处理器在环 (PIL) 模式

   

代码生成

嵌套 FMU 导出

受保护模型导出

模型覆盖率

   

Simulink Design Verifier™

   

加速模式下的模型引用

事件模式

  

调度执行模式

   

输入、输出和参数的枚举数据类型

 

Simulink 支持向前和向后步进、调整参数以及保存 FMU Import 模块的状态(只要 FMU 本身支持这些功能)。如果 FMU 的模型描述 XML 中的 canGetAndSetFMUstatecanSerializeFMUstate 字段设置为 true,则表示支持这些功能。

FMU 导入示例

示例描述

将协同仿真 FMU 导入 Simulink

此模型显示如何使用 FMU 模块加载支持协同仿真模式的 FMU 文件。

将模型交换 FMU 导入 Simulink

此模型显示如何使用 FMU 模块加载支持模型交换模式的 FMU 文件。

Simplify Interface for Structured Data with FMU Import Block

此模型显示如何在支持模型交换模式的 FMU 模块中使用总线和结构体参数。

另请参阅

相关主题

外部网站