在 Modellica.mechanics 中动态切换连接

问题描述 投票:0回答:1

我尝试使用 Modelica 库模拟一个“特殊”摆。 摆锤的第一端有一个旋转,另一端有第二个旋转。在

time < t
处,第一个摆应该绕第一个转轴的轴线旋转。在
time > t
处,摆锤应绕第二转轴旋转。
我有两个问题:

  1. 我无法模拟具有两个旋转体且其中一个框架未使用的钟摆。

  2. 我尝试使用这样的 if 子句来更改旋转旋转:

    if time < 5 then 
    connect(world.frame_b, revolute.frame_a);
    else
    connect(world.frame_b, revolute1.frame_b);
    end if;

    开始模拟我收到此错误:
    Failed to expand block containing connect:
    if (time < 5) then 
    connect(world.frame_b, revolute.frame_a);
    else
    connect(world.frame_b, revolute1.frame_b);
    end if;

有人知道如何解决这个问题吗?

modelpicture

dynamic modelica dymola
1个回答
0
投票

我认为这个问题与这里的讨论非常相关: 在两个法兰之间切换

总结:您无法在仿真过程中切换连接,因为这需要在仿真过程中重建方程。

关于您的问题:说实话,我在 Modelica 中没有找到解决该问题的好方法。

© www.soinside.com 2019 - 2024. All rights reserved.