How to rotate a solid with revolute joint

3 次查看(过去 30 天)
I've created this block and link. I'm trying to make the link rotate on the surface of the block. I've read in the documentation that the z axis should point in the direction that I want it to rotate. However, I cannot seem to get the joint working.

采纳的回答

Ameer Hamza
Ameer Hamza 2020-9-16
See the attached file for an example.
  3 个评论
Leeann Newton
Leeann Newton 2020-9-16
I have this, but it only works if the gravity is in the Y direction and I'm trying to recreate it without changing the direction of the gravity
Vasco Lenzi
Vasco Lenzi 2020-9-18
The joint per se will not rotate if there is no external force acting on it. When you change the gravity to y, you see movement because there is a force. If you have gravity on the z and the system setup as in your pictures, of course it would not move because no force is acting on the joint!
You need to add a torque to the joint to make it move. I'm attaching an example where I give torque for one second and then stop for the other 9 seconds of the simulation. The rod starts rotating and continue to rotate because there are no internal mechanics (damping, friction) acting on the rotation.
Additionally you may not see the movement because the rod is all red with no distinctive mark - I've added a black line as a marker

请先登录,再进行评论。

更多回答(0 个)

类别

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

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by