FMI标准详解:打破工具壁垒的仿真
一、FMI标准是什么?
FMI(Functional Mock-up Interface,功能样机接口)是国际通用的跨平台模型交互标准,由工业界联盟(包括Dassault、BMW等)于2010年提出,现已成为ISO 26262/IEC 62794认证的核心规范。其核心是通过定义统一的接口规范,实现不同建模工具之间的模型封装与协同仿真。
二、FMI标准的两大核心模式
1. Model Exchange(模型交换)
- 功能:将模型方程系统(如微分方程、代数方程)封装成独立模块(FMU),供外部工具调用求解器。
- 适用场景:需要跨工具使用不同求解器(如Simulink与NGM联合求解)。
2. Co-Simulation(联合仿真)
- 功能:将模型与内置求解器打包成FMU,其他工具仅需驱动仿真流程。
- 适用场景:工具间“黑盒”协同(如NGM模型嵌入Simulink)。
三、FMI的核心作用
1. 破解工具孤岛问题
- 允许MATLAB/Simulink、NGM、AMESim等工具直接互操作,无需重复建模。
- 案例:汽车厂商用AMESim建液压模型,以FMU导入Simulink验证控制算法。
2. 保护知识产权
- 将核心模型编译为FMU后,可隐藏源代码(仅暴露输入/输出接口),避免技术泄露。
3. 加速复杂系统验证
- 支持多物理场耦合仿真(如机械+控制+热力学),例如机器人系统在NGM中建模,通过FMU与ROS联合验证。
4. 统一数据交互标准
- 规定标准化变量命名、单位制、时间同步机制,避免工具间数据错位。
四、FMI在工业领域的典型应用
| 硬件在环(HIL) | FMU与实时机交互模拟物理系统 | 与Uwin系列控制系统硬件在环控制 |
| 数字孪生 | FMU与物联网数据联动驱动虚拟模型 | 与UWinTechPro软件虚拟在线控制 |
| 多学科优化 | FMU连接优化工具(如ModeFRONTIER)自动调参 | 飞机翼型气动-结构协同优化 |
| 教学演示 | 分发FMU文件供学生调用,无需安装原建模工具 | 高校控制理论课程实验 |
五、FMI的技术优势 |
| 开放性 | 免授权费,支持C/C++/Python等多种语言调用 |
| 跨平台 | 支持Windows/kylin/嵌入式系统 |
| 轻量化 | FMU文件通常为MB级,远小于原始工程文件 |
| 可扩展性 | 支持自定义接口(如FMI+SSP扩展) |
六、FMI与NGM的协作流程
NGM中有两种方式可以仿真FMU文件。
一种是导出fmu后对于fmu模型在仿真页面仿真。
加载fmu:

导入后显示在库浏览器:

仿真页面仿真查看结果:
第二种是直接打开fmu文件仿真,没有导入到库浏览器的过程。
点击软件左上角快捷菜单栏打开模型按钮:

默认打开的是mo文件,在文件类型筛选中选择fmu文件:

会直接弹出fmu仿真参数设置,点击确定开始仿真: