我尝试使用 Modelica 库模拟一个“特殊”摆。 摆锤的第一端有一个旋转,另一端有第二个旋转。在
time < t
处,第一个摆应该绕第一个转轴的轴线旋转。在 time > t
处,摆锤应绕第二转轴旋转。我无法模拟具有两个旋转体且其中一个框架未使用的钟摆。
我尝试使用这样的 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;
有人知道如何解决这个问题吗?
我认为这个问题与这里的讨论非常相关: 在两个法兰之间切换
总结:您无法在仿真过程中切换连接,因为这需要在仿真过程中重建方程。
关于您的问题:说实话,我在 Modelica 中没有找到解决该问题的好方法。