Revolute Joint axis moves out of joint

Typically: "How do I... ", "How can I... " questions
Post Reply
hassan.farag
Posts: 8
Joined: 01 Sep 2020, 07:27

Revolute Joint axis moves out of joint

Post by hassan.farag »

Hello,

We imported our urdf into coppelia. The Revolute Joint axis moves out of joint when starting the simulation. We checked all inertia and center of masses according to urdf and adjusted all collisions. Please see the attached scene and check if it can be fixed? Please check the attached scene.
https://www.dropbox.com/s/pxoqsgqg52g6j ... d.ttt?dl=0

Al.mirante
Posts: 6
Joined: 10 Feb 2020, 21:24

Re: Revolute Joint axis moves out of joint

Post by Al.mirante »

Hi,

did you check the inertia tensors and the centers of mass? I notice that centers of mass are out of link respondable shapes and the inertia tensors are miss oriented. You can quickly check using the inertia visualization: right key -> view ->visualize inertia.

Dimension of blu boxes are proportional to the mass values and red boxes are the inertia tensors orientation.

cheers.

coppelia
Site Admin
Posts: 10364
Joined: 14 Dec 2012, 00:25

Re: Revolute Joint axis moves out of joint

Post by coppelia »

Hello,

check also that you don't have too large differences between adjacent masses/inertias, depending on the physics engine you use. Additionally, try to use a more precise dynamics configuration mode.

Edit: and yes, your inertias look very wrong. Additionally, your model appears very detailed and unnecessary heavy. Make sure to also have a look at this tutorial that illustrates how to build a clean model of a robot.

Cheers

hassan.farag
Posts: 8
Joined: 01 Sep 2020, 07:27

Re: Revolute Joint axis moves out of joint

Post by hassan.farag »

Thanks for the reply. I modified the orientation of the inertia frame and use even approximated inertia values but still the Revolute Joint axis moves out of joint and robot this tilt to side. We will change visuals and lighten the model (collisions are made according to the tutorial and no of vertices is around 10,000). but first needs to fix that joint issue. You can check the new corrected model here https://www.dropbox.com/s/etnnt1xet4pn3 ... s.ttt?dl=0. We will use ode engine but what is the main reason for this issue? how dynamics engine configuration will help? we use the default configuration of ode at coppelia.

coppelia
Site Admin
Posts: 10364
Joined: 14 Dec 2012, 00:25

Re: Revolute Joint axis moves out of joint

Post by coppelia »

The arm now behaves already much better. With a physics engine you won't have the same stability as with a kinematics control.

There are many parameters that can be adjusted in your robot model. Each joint has a position controller, based on PID. You can modify those values. You can also write your own controller. You can also switch to a more precise dynamics configuration mode, etc. It is always a trade-off between calculation speed, precision, functionality, etc.

Make sure to follow design considerations 7 & 8: by increasing a bit the inertias, you'll get much better stability with ODE and Bullet.

In doubt, always try to switch to another engine and see if you get a similar result. In your case, try the Newton engine and you'll see that you won't notice any tilting.

Cheers

Post Reply