Making an active revolute joint passive during simulation

11 次查看(过去 30 天)
I am trying to model a window washer robot and control its motion interactively. In my model, some revolute joints are active and controlled by motion input, while some others are not actuated and act just as passive joints.
I need a joint that can be turned on or off manually during simulation. I mean, sometimes It has to be a passive joint (but engaged), and sometimes it needs to be actuated. I wish to be able to switch between these two modes during simulation, as many times as I would like.
In real world, we can turn a servomotor on or off during operation, making it a controllable active joint or a passive one with its own internal mechanics. How should I simulate it in simscape multibody?

采纳的回答

Juan Sagarduy
Juan Sagarduy 2020-11-13
Hello Amir
I think the joint will be set to Torque (provided by input) and motion (automatically calculated).
Then, when the servomotor is active, input torque is non-zero and regulated. When off, apply a factor zero - the joint will act passively likely dragged by the inertial movement in the shaft.
You need to use a Rotational Interface as u find in the documentation example to connect motor and joint.
Good luck Juan
  2 个评论
Amir Jafarimoghaddam
Hello Juan
Thank you for your answer. But I think it would work only in forward dynamics mode.
I have set my revolute joints to inverse dynamics mode. I mean motion (provided by input) and torque (automatically computed). What should I do now? Is there any way? Or I have to set the joints as you said.
Juan Sagarduy
Juan Sagarduy 2020-11-14
Hi Amir,
I believe use the forward dynamics mode is the only way to accomplish this. In your control loop, the angle prescribed becomes the command.
The controller Pi for instance will then give the actuation torque to the joint. A zero torque will then mean that the joint is passive.
HTH / Juan

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Multibody Dynamics 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by