首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fmi2GetFMUState/fmi2SetFMUState支持Matlab/OpenModelica生成FMU?

fmi2GetFMUState/fmi2SetFMUState支持Matlab/OpenModelica生成FMU?
EN

Stack Overflow用户
提问于 2020-01-11 02:39:42
回答 1查看 318关注 0票数 0

我正在尝试测试一个简单的fmu来保存和恢复状态。

例如openmodelica:

代码语言:javascript
复制
model modelicatest
input Real In1;
output Real Out1(start=0, fixed=true);
equation
der(Out1) = In1;
end modelicatest;

也适用于simulink:

我使用FMPy来模拟生成的FMU。

但是对于OpenModelica v1.14.1生成的FMU,在从FMPy调用getFMUState时会出现以下错误:

代码语言:javascript
复制
Exception: fmi2GetFMUstate failed with status 3

对于Simulink (2019b)使用内置导出器生成FMU,当我运行setFMUState时,FMU状态不重置(即输出值)。

只是想知道OpenModelica和Simulink生成的FMU支持这些函数吗?还是FMPy问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-12 00:22:40

关于fmi2GetFMUstate/fmi2SetFMUstate,FMI规范,第2.1.8节。各国:

如果XML文件中的可选功能标志<fmiModelDescription> <ModelExchange / CoSimulation canGetAndSetFMUstate in = "true">显式设置为true (参见第3.3.1节和第4.3.1节),则这些函数仅由FMU支持。

您可以解压缩fmu文件并查看modelDescription.xml文件,以确定是否设置了标志:如果标记为false或未设置all,则不支持get和set函数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59691189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档