您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
   
 
     
   
 订阅
  捐助
FMU/FMI
 
作者:宋华振
   次浏览      
 2020-3-13
 
编辑推荐:
本章描述FMU/FMI背景与基本概念,FMU/FMI基本概念与功能,FMU/FMI实现过程,FMU/FMI与数字孪生等希望对您有所帮助。
本文来源于微信号说东道西,由火龙果软件Delores编辑,推荐

FMU/FMI是用于机电一体化设计的最新标准与接口,对于正向设计而言,它会对于复杂的系统设计带来很大的便利,虽然它最初来源于汽车这样的复杂设计,但同样可以被其它领域所采用。

一、FMU/FMI背景与基本概念

1.1FMU/FMI背景

在汽车工业、航空、机电装备等领域都会存在着不同的应用、建模系统,用于解决不同的问题,为了仿真整个系统,往往需要在不同的仿真程序之间进行交互,而且系统的集成必须将来自不同供应商的仿真环境协同工作才能完整的调试,这产生了模型交互的需求,但却没有标准化的接口,因此为了解决这个问题,开发了FMU/FMI。

工具独立的标准用于支持动态模型的交互以及联合仿真,用于解决汽车工业中模型互操作问题,最初是由欧盟资助的Modelisar项目,由戴姆勒公司承担该项目,而第一个版本是在2010年发布,改善的版本在2014年发布,由Modelica协会积极的主持开发。

图1-支持FMU/FMI的Modelica协会会员分布在欧洲的主要建模软件企业

1.2FMU/FMI基本概念与功能

1.2.1FMI是什么?

功能打样接口(FMI)是一个工具独立的标准,通过XML文件与编译的C代码的融合来支持动态模型的交互和联合调试.

图2-FMI的描述结构

图所示的就是FMI的XML格式描述文件。

1.2.2FMU

FUM是一个压缩文件(*.fmu)包含了XML格式接口数据描述和功能(采用C代码或二进制实现);

所谓的FMU就是采用FMI接口而开发的软件组件。

FMU主要干两件事情:

图3-模型交互与协同仿真是FMU/FMI的主要目的

(1).FMI用于模型交互

其意图是建模环境可以以输入/输出模块形式生成一个动态系统模型的C代码,可以被其他建模和仿真环境使用。模型(没有求解器)用微分,代数和离散方程来描述,包括时间,状态和速度。

(2).FMI用于协同仿真:

目的是在协同仿真环境中将两个或更多模型与解算器耦合。子系统之间的数据交换仅限于离散通信点。 在两个通信点之间的时间内,子系统通过各自的解算器彼此独立解决。主算法控制子系统之间的数据交换和所有从模拟求解器的同步。该接口允许标准以及高级主算法,例如可变通信步长的使用,更高阶信号外推和错误控制。

二、FMU/FMI实现过程

在2016年贝加莱即投入在FMU/FMI接口的研发,由于之前在2008年贝加莱即推出MATLAB/Simulink的接口导入,即,贝加莱的Automation Studio作为一个控制系统的集成开发平台,与建模仿真的MATLAB/Simulink进行了接口的开发,包括MapSim-来自Maple公司的建模仿真软件,因此,贝加莱可以支持与他们相关的FMU,如图,在建模仿真平台如MapleSim上生成的FMU就可以被Automation Studio导入。

2.1基于建模仿真软件的导出FMU

图4-采用MapSim建模软件进行模型构建

在其软件中会有FMU Component Code Deneration这样的工具,即可生成FMU模块

图5-MATLAB/Simulink针对FMU的过程

对于MATLAB/Simulink也是同样如此,其FMI Target for Simulink® Coder™用于实现FMU的生成,这样的FMU就可以为Automation Studio所导入。

图6-实现FMU/FMI的过程

对于客户而言,其基于建模仿真软件所开发的模型或算法,可以导出FMU的方式形成一个ZIP文件,包括了XML的描述与代码文件两个部分,然后导入到Automation Studio中。

图7-FMU/FMI对快速原型的支持

2.2基于3D建模的导出仿真

对于机电一体化对象的开发而言,如果可以对机械的三维模型直接导入到MapleSIM即可实现便捷的对象快速建模,并直接仿真其控制工艺,生成FMU在直接到控制器来实现硬件在环测试,这样就可以节省整个测试验证的过程。

图8-3D建模到控制器FMU的导出

图9--MapleSimFMI流程

三、FMU/FMI与数字孪生

那么,我们就可以理解Digital Twin是为了解决客户的问题,而采用的一种解决问题的方法系统,那么,在过去有各种CAD/CAE/CAM/CAPP等软件,本身就是在完成Digital Twin的事情,而今天面对数字时代,需要更多的软件的协同开发,那么,就会需要按照数字时代而统一命名为“Digital Twin”。

图10-DigitalTwin在智能制造中的角色扮演

Digital Twin就像阳明所说的“知行合一”,“知”可以被理解为虚拟世界,而“行”可以被理解为物理世界,阳明先生说“知之真切笃实处即为行,行之明觉精察处即为知”,也就是说,理论指导实践,实践反馈又来优化理论,两者之间为一体,均服务于“致良知”—你可以理解为这个良知,即为“本心”—创新的源头,是为了解决客户的问题。

   
次浏览       
 
相关文章

UML概览
UML图解:用例图(Use case diagram )
UML图解:活动图(activity diagram )
UML图解:类图(class diagram )
UML图解:对象图(object diagram)
UML图解:顺序图( sequence diagram )
 
相关文档

模型跟踪:跟踪图、矩阵、关系(建模工具EA)
自定义表格(Custom Table)在EA中的使用
元素的详情浏览控制
UAF 1.2规范解读(DMM 和 UAFML )
EA中支持的各种图表
EA中的界面原型建模
 
相关课程

UML与面向对象分析设计
UML + 嵌入式系统分析设计
业务建模与业务分析
基于SysML和EA进行系统设计与建模
基于模型的需求管理
业务建模 & 领域驱动设计