导出功能和与其他软件的接口连接
Dymola 支持将 FMI(功能模型接口)、代码和模型导出到其他平台,并提供与其他软件的接口。
Dymola 的集成和模型导出功能
Dymola 可提供与其他软件工具和仿真环境进行接口连接的出色功能。此外,Dymola 还支持实时仿真、二进制模型导出、源代码生成等模型导出选项。
FMI:仿真代码交换的行业标准
功能模型接口 (FMI) 是一种由 Modelica 协会开发的独立于供应商的标准,用于组合来自各种工具的仿真代码模块 (FMU)。FMI 提供两种交换格式:一种是模型交换(通过中央求解器保持一致性),另一种是协同仿真(允许通过嵌入式求解器实现特定应用的灵活性)。它推动了多功能仿真基础设施的发展。
- FMI 的优势
- Dymola 中的 FMI 支持
FA 非专有标准,用于交换仿真代码
功能模型接口 (FMI) 是一种行业标准,用于组合来自多个工具和供应商的仿真代码模块 (FMU)。该规范是在 Modelica 协会的支持下开发的,为代码(二进制或源代码)以及相关数据和文档提供了定义明确且独立于供应商的交换格式。
FMI 受大量创作工具的支持,包括非基于 Modelica 的工具,因此成为独立于供应商的仿真基础设施的理想基石。
选择交换格式
FMI 规范定义了两种交换格式。一种交换格式用于为模型交换的 FMI 定义了仿真代码模块的接口,该模块必须与通用的中心求解器结合使用。这确保了统一的数值解和可靠的集中仿真误差控制。
还有一种交换格式用于为协同仿真的 FMI 定义了带有嵌入式数值求解器的代码模块的接口,由生成工具使用。这种方法使您有机会为建模应用嵌入专用求解器,并有助于与创作工具中的仿真兼容。
CATIA Dymola 导出电路仿真模型
全面支持 FMI 1.0 和 2.0
自 Dymola 2015 FD01 版本起,Windows 和 Linux 上的 Dymola 均支持 FMI 2.0(2014 年 7 月 25 日发布)。自 2010 年发布以来,Dymola 一直支持用于模型交换和协同仿真的 FMI 1.0 规范。Dymola 在模型交换(导出和导入)和协同仿真(主程序和辅程序)方面都通过了 FMI 1.0 交叉检查。有关支持可选 FMI 功能的详细信息,请参阅 Dymola 发行说明和用户手册。
FMI 3.0
Dymola 支持 FMI 3.0,但有一定的限制。完整的 FMI 2 功能以及 FMI 3.0 的新数组功能已实现。支持事件模式(混合)协同仿真和终端+图标,作为 beta 测试功能提供。
面向 Simulink 的 FMI 工具 - FMI 套件
达索系统提供的工具全面支持在 Simulink 中导出和导入 FMU。该工具套件可免费使用,无需任何许可证密钥。
面向 Simulink 的 FMI 套件版本 2.6 已于 2019 年 6 月发布。请注意,不同的 Dymola 官方版本之间可能会有更新。请从 GitHub 上的项目页面下载面向 Simulink 的 FMI 套件。
通用功能和兼容性信息:
全面支持 FMI 导出和导入。
FMI 版本 1.0、2.0 和 3.0 - 模型交换和协同仿真。
MATLAB/Simulink R2016a 至 R2022a。
Simulink FMU 块用于将 FMU 导入并嵌入到 Simulink 模型中。使用 FMI 套件导出的 FMU 是独立的,无需与 Simulink 进行任何耦合即可在目标环境中运行。
Simulink Coder Target 用于从 Simulink 导出 FMU。
导出功能
Dymola 支持导出模型和模型的源代码,提供了三种具有不同功能的导出备选方案。
- 实时仿真
- 二进制模型导出
- 源代码生成
“实时仿真”允许在不支持 Microsoft C 编译器的环境中使用模型。它专门为实时平台而设计,例如 dSPACE 和 xPC 平台,Dymola 支持使用这些平台进行硬件在环 (HIL) 仿真。实时仿真是标准 Dymola 产品的一部分。以下限制适用
“实时仿真”只允许导出使用内联集成的模型,即具有嵌入式固定步长积分器的模型。使用实时仿真导出的运行时例程不包括大多数高级库例程。
“二进制模型导出”选项允许将模型导出到其他计算机,而且目标系统无需具备 Dymola 许可证。导出模型的仿真功能与具有 Dymola 许可证的计算机上的仿真功能相同。优势包括:
轻松将仿真代码部署到其他计算机,而无需承担管理运行时许可证的成本和开销。导出的代码中提供了完整的仿真功能,不受有复制保护的运行时库的限制。因此,支持在 Modelica 专家领域以外进行大规模部署。
“源代码生成”可导出能在任何平台上使用的代码,而且目标系统无需具备 Dymola 许可证。有许多标记可用来修改所生成模型代码的内容。
“源代码生成”允许导出可读高且文档齐全的代码,便于检查、调试、性能分析等。因此,该导出选项适合基于模型的高级应用,例如快速原型设计。
当模型在 Dymola 或 Simulink 中转换时,“源代码生成”选项包括“实时仿真”(不受内联集成限制)和“二进制模型导出”提供的功能。
“二进制模型导出”和“源代码生成”选项都允许将符号表信息导出为 XML 文件,例如模型结构、变量名称、类型和单位。
与其他软件接口连接
DYMOLA 可以与其他软件轻松集成。
- 功能模型接口
- 系统结构和参数化
- 面向 Simulink 的 FMI 工具
- 硬件在环
- Python、Java 和 JavaScript
- Dymola 和 SIMULIA 软件的接口连接
FMI 可以无缝集成 Dymola 中各种工具的动态系统模型。通过导入 FMU,可以轻松添加控制器或子系统,从而增强 Modelica 模型的高级功能。
Dymola 支持根据 SSP 1.0 规范导入和导出系统描述,包括对参数值和映射文件的支持以及建议的 SRMD 元数据格式。
达索系统提供的工具全面支持在 Simulink 中导出和导入 FMU。该工具套件可免费使用,无需任何许可证密钥;Dymola 客户可享受支持和维护。
全面支持 FMI 导出和导入。
FMI 版本 1.0、2.0 和 3.0 - 模型交换和协同仿真。
Simulink Coder Target 用于从 Simulink 导出 FMU。
Simulink FMU 块用于将 FMU 导入并嵌入到 Simulink 模型中。
Dymola 可以为 HILS 平台生成高效代码,例如 dSPACE 和 Concurrent。此外,源代码生成还允许用户为可编译 C 代码模型的任何环境设置工具链。Dymola 还支持新的 eFMI 规范,可从 Modelica 模型生成优化的算法代码。
Dymola 可以轻松地与常见脚本编写环境(例如 Python 和 Java)进行接口连接,从而对常见任务进行灵活的脚本编写。可以使用提供的实用程序库来设置参数并读取仿真结果。可以采用各种格式来导出数据,包括 Excel 的 CSV 格式和 HDF5。
可以将 Dymola 与 SIMULIA 工具 Abaqus、iSight 和 Process Composer进行接口连接。
开启您的旅程
系统工程行业瞬息万变。了解如何利用 Dymola 保持领先。
欢迎加入 CATIA MBSE 网络系统用户社区中的精彩对话!
关于功能模型接口/单元的常见问题答疑
FMU(功能模型单元)与 FMI(功能模型接口)之间的主要区别在于,它们在基于模型的工程和仿真环境中的作用和定义:
- FMU(功能模型单元):封装动态系统模型的文件格式,包括输入、输出、参数和仿真算法。
- FMI(功能模型接口):定义 FMU 与仿真环境之间相互作用的标准接口规范,包括导入、查询、交换数据和分析结果。
功能模型接口 (FMI) 是动态系统模型代码交换和仿真的标准。
- 模型导出:将动态系统模型保存为 FMU,封装输入、输出、参数和仿真代码。
- 模型导入:将 FMU 导入支持 FMI 标准的仿真环境,查询模型信息和代码。
- 协同仿真:代表系统组件的多个 FMU,每个 FMU 都使用自己的数值求解器,在仿真过程中交换数据。
- 模型交换:仿真环境可以使用通用的数值求解器和误差检查来仿真 FMU。
- 仿真执行:仿真时间不断推进,FMU 根据输入计算输出并更新内部状态。
- 结果分析:对每个 FMU 的结果进行仿真后分析,以评估系统性能并做出设计决策。
FMI 方法是一种标准化协议,用于在仿真环境中集成功能模型单元 (FMU) 并与之交互。它涵盖导入 FMU、数据交换、模型交换、协同仿真、集成到工作流程和结果分析。
FMU 是功能模型单元的缩写。它用于基于模型的系统工程 (MBSE) 环境,是指动态系统模型的标准化单元或封装。FMU 用于跨不同仿真环境和工具进行模型交换和协同仿真。它们通过封装模型及其输入、输出、参数和仿真算法,实现各种建模和仿真工具之间的互操作性。FMU 可用于工程和科学领域的 模型集成、协同仿真和模型交换等任务,使用户能够组合不同来源的模型并进行综合全面的系统级仿真。
了解更多
了解 CATIA 可以为您做些什么
与 CATIA 专家进行交谈,了解我们的解决方案如何在各种规模的企业中实现无缝协作和可持续创新。
了解更多内容
学生、学术界人士、专业人员和企业人员均可参加相关课程并加入班级。查找适合您的 CATIA 培训。
获取帮助
查找有关软硬件认证、软件下载、用户文档、支持联系人和服务产品的信息