OpenModelica中Modelica示例Interaction1的RealValue块数值不更新问题
该问题的常见成因如下
- OMEdit回放更新功能未启用
OpenModelica的OMEdit编辑器默认可能未开启仿真回放时的组件数值动态更新功能。你可以在OMEdit的工具>选项>仿真页面,确认勾选了「回放仿真结果时更新图表视图的组件值」选项,未开启的情况下所有交互块的显示都不会随时间滑块变化。 - 仿真结果未存储对应输入信号
如果你仿真前开启了仅存储选中变量的设置,且没有手动勾选Modelica.Blocks.Interaction.Show.RealValue块的输入端口变量作为存储对象,回放时OMEdit无法读取到对应时间点的信号值,就会一直显示默认的0.0。你可以在变量浏览器中检查该块的输入信号是否存在历史数值序列验证这一点。 - OpenModelica版本兼容问题
OpenModelica 1.18及更早的版本存在已知缺陷:Modelica.Blocks.Interaction库下的可视化块的显示属性没有和仿真回放的时间索引做绑定,仅会在仿真运行过程中实时更新数值,仿真结束后的回放阶段不会响应时间滑块的变化。这种情况升级到1.20及以上稳定版本即可解决。 - 示例模型的参数配置错误
部分旧版Modelica标准库的Interaction1示例中,RealValue块的useNumberPort参数默认被设为false,此时块不会从输入端口读取信号,只会显示固定的常量参数值,调整时间滑块自然不会有变化。你可以检查该块的参数配置,确认useNumberPort已经设为true。
内容的提问来源于stack exchange,提问作者user17543659
相关产品推荐
相关产品推荐

