gpt4 book ai didi

real-time - Dymola/Modelica 实时仿真进展太快

转载 作者:行者123 更新时间:2023-12-02 04:40:16 31 4
gpt4 key购买 nike

我想在 Dymola 中实时模拟模型以供 HiL 使用。在结果中,我看到模拟的推进速度快了大约 5%。

Integration terminated successfully at T = 691200

CPU-time for integration : 6.57e+005 seconds

CPU-time for one GRID interval: 951 milli-seconds

我已经尝试增加网格间隔以减少相对误差,但模拟仍然进行得太快。我只阅读了有关降低模型复杂性以允许在定义的时间步长内进行模拟的方法。

请注意,模拟确实与实时保持同步,而且速度更快。在这种情况下,我如何匹配模拟时间和实时时间?

编辑 1:

我使用了 Lsodar 求解器,并在实时选项卡中勾选了“与实时选项同步”。我有实时模拟许可证选项。我在 Windows 7 上使用 Dymola 2013。这里是步长为 15s 的结果:

Integration terminated successfully at T = 691200

CPU-time for integration : 6.6e+005 seconds

CPU-time for one GRID interval : 1.43e+004 milli-seconds

偏差仍然大约在 4.5% 左右。

但是我没有使用内联集成。

我是否需要硬实时或内联集成来改进这些结果?是否可以使用软实时获得低于 4.5% 的偏差?

编辑 2:relative difference between real time and Simulation advance in %

我从 Berkeley Buildings 库中获取 Python27 block 来读取系统时间并将其与 Simulation advance 进行比较。结果显示,模拟开始后 36 小时,模拟速度略有下降(与实时相比)。模拟开始后大约 72 小时,它开始变得比实时快 10%。此外,在 72 小时后,结果中的抖动会增加。

有什么解释吗?

接下来的步骤是:-更改为固定步长求解器(很可能这是解决方案的重要组成部分)- 从 DDE 服务器更改为 OPC 服务器,但目前在 Dymola 2013 中似乎不可能。

编辑 3: Relative Simulation time deviation with fixed step solver

不……使用固定步长求解器似乎确实可以解决问题。在仿真时间的前 48 小时内,偏差似乎等于使用​​可变步长的求解器的偏差。在此示例中,我使用了 Rkfix 3 求解器,积分器步长为 0.1。

没有人知道如何摆脱那些巨大的偏差?

最佳答案

如果我没记错的话,Dymola 有一个用于实时性能的特殊编译选项。但是,我认为这是一个许可选项(不确定)。

关于real-time - Dymola/Modelica 实时仿真进展太快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20993730/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com