Position error using a Joint

Typically: "How do I... ", "How can I... " questions
Post Reply
qiushi.ji
Posts: 30
Joined: 28 Apr 2014, 10:45
Location: Deutschland

Position error using a Joint

Post by qiushi.ji »

Hi Admin,

I have one more question about the joint.
In my current project, I have to simulate an actuation system with motor, axis and cylinder. The cylinder has a mass about 250-350kg.

Image

I have noticed that, during the simulation, it occurs some position errors on the entity, which belongs to the child of Joint. And the error values are different between Bullet and Vortex, as I have seen in Vortex much more bigger. Otherwise, the errors DURING the simulation also influence the positions/orientations AFTER the simulation. That means, the positions/orientations of entities change themselves.

Image

Image

I've tried with some different weights of cylinder, for example extreme heavy: 10000kg.
1, visually I can see is that, in Vortex the blue part of Joint would dropping down a little bit, which has nothing happened in Bullet.
2, the error values raised up in both engines when the cylinder is heavier.
3, the error value in Vortex is always bigger that in Bullet.

Image

I've also checked the Engine Properties of Joint, but it sees all values "infinity".

Image

Because in my simulation the actuation system is more complicated than such a simple combination with "Cuboid-Joint-Cylinder". So I have noticed that the position errors of entities are already big enough, which are dangerous and not good for my simulation result and verification.


Cheers,
Ji

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

Re: Position error using a Joint

Post by coppelia »

Hello Ji,

This situation happens when your parameters are ill-defined. You can greatly improve results by adjusting the inertias and mass-mass ratios. Make sure to follow the dynamics design considerations.

Cheers

qiushi.ji
Posts: 30
Joined: 28 Apr 2014, 10:45
Location: Deutschland

Re: Position error using a Joint

Post by qiushi.ji »

Hello Admin,

actually I've already considered the mass-mass ration during the simulation according to Design Consideration 7: Keep masses similar and not too light. With this rule I adjusted the ratio and the result were exactly stabler, but errors still existed.

Pls look at in this case above, the cuboid is simply "static" without any mass - combined to joint - then to the cylinder. That means, in this simulation there is only one mass value to set: the mass of cylinder. So, as my opinion the "mass-mass ratio" doesn't exist in this simulation and the errors still occurred.

I've also read the Design consideration 8: Keep principal moments of inertia* relatively large but can't understand it good. Is it may be something to do with?

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

Re: Position error using a Joint

Post by coppelia »

Can you post that scene so that we can test it here?

Cheers

qiushi.ji
Posts: 30
Joined: 28 Apr 2014, 10:45
Location: Deutschland

Re: Position error using a Joint

Post by qiushi.ji »

Hi Admin,

good morning. I can't find upload here, so I uploaded scene file on a random internet upload website.

http://www.filedropper.com/00positionerror

martin_simulation
Posts: 7
Joined: 06 Dec 2013, 10:40

Re: Position error using a Joint

Post by martin_simulation »

Hi Qiushi,

The constraints are like springs maintaining rigid bodies together. Those springs have stiffness that are not infinite.
The default maximum stiffnesses for the constraint are provided in the Physics engine properties.
The error you see is along Y, this is the gravity pushing on the object. You notice an error of 1e-5, the default stiffness is 1e7.
Using hook's law force = stiffness * elongation you can make sense of the error you see.
You can increase the default stiffnesses if you need to decrease this error.

Best regards,

Martin

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

Re: Position error using a Joint

Post by coppelia »

Yes, Martin's explanation is correct. So there will always be some small error. In the scene you uploaded, the positional error is below 0.006 millimeters for all 3 physics engines. Given the size of your cylinder and block (100 millimeters), this is negligible.

Cheers

Post Reply