FMI2.0

您所在的位置:网站首页 仿真模型规范 FMI2.0

FMI2.0

2023-02-25 15:04| 来源: 网络整理| 查看: 265

这是我参与11月更文挑战的第7天,活动详情查看:2021最后一次更文挑战

本文是来自于FMI2.0规范的第四章联合仿真的译文,基于机翻与个人理解修订而成。

一、开题

本文定义了函数模拟接口(FMI)用于在联合仿真环境中联合两个或更多仿真模型(FMI进行共模)。联合仿真是一种相当常见的方法,用于仿真仿真的技术系统和相关的物理现象,着重于稳定性(time-dependent)问题。

联合模拟(coupling simulation ):应用共享网格技术,解决数字化环境下多学科CAE视图模型耦合仿真的难题。 时间依赖性:time-dependent

联合仿真的设计是为了与多个子系统模型耦合,它们已由其仿真器及其求解器导出为可运行代码;还可用于仿真工具的耦合(仿真器耦合,工具耦合)。

image.png

在工具耦合情况下,仿真工具提供的FMU实现类将FMI函数的调用包装为API调用(C->其它语言)。此外,还需要使用仿真工具来对FMU进行联合仿真。最常见的是,基于工具耦合的联合仿真在分布式硬件上实现了由不同计算机处理不同的子系统,其中包括不同的操作系统(集群计算机,计算机农场,不同位置的计算机)。

子系统之间的数据交换和通信通常使用一种网络通信技术(例如MPI,TCP / IP)完成。该通信层的定义不是FMI标准的一部分,但可以使用FMI来实现分布式联合仿真方案,如下图所示

image.png

主机必须实现通信层,用于建立网络通信的其他参数(例如,远程计算机的标识,端口号,用户帐户)将通过主机的GUI进行设置,而这些数据都不会通过FMI API传输。

二、数学描述 1. 基础

联合仿真利用了仿真过程中所有的阶段都会遇到的耦合问题(模块化结构),从针对不同仿真工具(可以是功能强大的仿真器以及简单的C程序)中各个子系统单独的模型设置和预处理开始。

在进行时间积分时,将限制子系统间的数据交换只能在离散的通信点tci中进行, 对所有子系统独立执行仿真。对于模拟耦合,子系统中的仿真工具独自完成仿真数据的可视化和后处理。在不同的上下文中,通信点tci、通信步长tci->tci+1 以及通信步长总个数hci:=tci+1- tci 分别称为取样点(同步点)、宏步长和取样率。FMI中用于联合仿真的术语“通信点”是指联合仿真环境中子系统之间的通信,不应与用于将仿真结果保存到文件中的输出点混合使用,

取样:指的是取样的时间点 宏步长:指的是两次取样的时间间隔 取样率(Sampling Rate)是指在数码音频和视频技术应用中,当进行模拟/数码转换时,每秒钟对模拟信号进行取样时的快慢次数。例如,CD和MD的取样率为44.1kHz,表示每秒钟对模拟音频信号进行了44100次取样。取样率越高,转换的精度就越高,重放出的模拟信号波形就越接近原始的模拟信号波形。取样率的高低。决定了所能转换模拟信号的频率上限。

FMI为联合仿真提供了一个接口标准,提供了与时间依赖性相关的耦合系统的解决方案,该耦合系统由时间连续(由平稳差分方程描述的模型组件)或时间离散(由差分方程描述的模型组件,例如离散控制器)的子系统组成。在耦合系统的块表示中,子系统由具有(内部)状态变量x(t)的块表示,这些块通过子系统输入 u(t) 和子系统输出 y(t) 连接到其他耦合的子系统(模块)的模块。在这个框架中,子系统间的物理连接由所有子系统的输入 u(t) 和输出 y(t) 间的数学耦合条件表示。

image.png

差分方程:包含未知函数的差分及自变数的方程。在求微分方程的数值解时,常把其中的微分用相应的差分来近似,所导出的方程就是差分方程。通过解差分方程来求微分方程的近似解,是连续问题离散化的一个例子。

为了进行联合仿真,必须实现两个基本函数组:

子系统之间的数据交换函数 用于算法问题的函数,以同步所有子系统的仿真,并从初始时间tc0:= tstart到结束时间tcN:=tstop执行通信步长tci->tci+1。

在用于联合仿真的FMI中,这两个函数都在一个软件组件中实现,即联合仿真主机(Master)。子系统(Slave)之间的数据交换仅通过主站进行,从站之间没有直接通信;主函数可以通过特殊的软件工具(单独的仿真背板)或所涉及的仿真工具之一来实现。最常见的是,耦合系统可以在嵌套的协同仿真环境中进行仿真,并且用于协同仿真的 FMI 适用于层次结构的每个级别。

用于联合仿真的FMI定义了在联合仿真环境中主机与所有从机(子系统)之间进行通信的接口规则。最常见的主站算法是在每个通信点tci停止所有从站的仿真(时间积分)、收集所有子系统的输出y(tci)、调整子系统输入u(tci)将这些子系统输入分配给从站,然后继续与下一个交互步骤tci->tci+1 = tci + hc的(协同)仿真,交互步长为固定参数hc。在每个从站中,适合的求解器应当被用于给定交互步长 tci->tci+1 的子系统之一求积分。最简单的联合仿真算法通过冻结数据u(tci)来近似 tci≤t tci)。用于联合仿真的FMI支持这种经典的暴力解法以及更复杂的主算法,旨在支持一类非常通用主算法,但它本身并未定义主算法。

从站支持更复杂的主站算法的能力,在从站的XML描述中包含一组功能标志(capability flags)。典型的例子是

具有处理可变通信步长hci的 能力 具有使用减小的通信步长重复执行被拒绝的通信步长tci≤t


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3