Making an active revolute joint passive during simulation
3 次查看(过去 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?
0 个评论
采纳的回答
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 个评论
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 Center 和 File Exchange 中查找有关 Multibody Dynamics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!