Page 1 of 1

Maximum rotation velocity of Joint

Posted: 04 Jun 2014, 12:05
by qiushi.ji
Hi Admin,

In my simulation I have to reach a max. velocity of 200km/h. My cylinder has a diameter of 0.5m so it's circumference is 1.57m.
Translated into rotation is: 35rpm or 12600°/s.

Is there anyway to reach this velocity with a joint or any other solutions?

Cheers,
Ji

Re: Maximum rotation velocity of Joint

Posted: 04 Jun 2014, 19:30
by coppelia
Hello Ji,

not exactly sure what you mean. Is your robot a wheeled robot? And what problem do you have? Reaching a rotational velocity of 180 degrees/sec (which is 30 rpm) is not a problem. What are your settings? What is your construction?

Cheers

Re: Maximum rotation velocity of Joint

Posted: 04 Jun 2014, 23:41
by qiushi.ji
Hi Admin,

sorry I wrote wrong, not 35rpm but 35 rotations per second.

In my simulation a vehicle must run over on some cylinders (one wheel over two cylinders, totally 8 cylinders). The vehicle has max. velocity of 200km/h. So the cylinders must have the ability to reach this velocity to simulate like a real street, on that the vehicle runs just like on the real street without speed lost while driving inertia moments of cylinders (speed synchronizing of wheels and cylinders) .
The diameter of the cylinder is 0.5m, so it can be very quickly calculated that the cylinder has to rotate more than 35 times per second.

Good night,
Ji

Image

Re: Maximum rotation velocity of Joint

Posted: 07 Jun 2014, 10:49
by coppelia
Hello,

when you go at high speed, then you should reduce the calculation step sizes, otherwise there will be a confusion when measuring the speed (and this at various levels/locations in your programs or in the simulator itself). Just make sure that there is not more rotational movement than 180 degrees within one simulation step.In general, high rotational speeds are not well handled by the physics engines.

Finally, there is also a small bug in the hinge handler, that will be fixed in next release (that should be out within a few days).

Cheers

Re: Maximum rotation velocity of Joint

Posted: 10 Jun 2014, 09:45
by qiushi.ji
Good morning Admin,

thanks a lot for the answers. It is very helpful.

1, What you mean about less that 180° within one simulation step, is exactly right and now I can understand all I've tried about the Joint Velocity.
So if I set dt=50ms, that means velocity < 3600° per second.
So it would be no problem if dt=10ms and velocity=12600° per second, because according to this principle, the max velocity by dt=10ms is 17999° per second.

2, But in simulation the curve of joint speed shows finally stable after about 40 seconds, just like 1 peak per simulation step. From 0s to 40s there were always more peaks in 1 simulation step (dt=10ms). Is this maybe the point what you've said, "high rotational speeds are not well handled by the physics engines"?

3, For scientifically researching I wondering that how the physic engine calculates this? e.g. why can the engine calculate the speed right only if the rotation angle of joint is less than 180° per simulation step? ... Is there any algorithm in background that I can probably get?

Re: Maximum rotation velocity of Joint

Posted: 10 Jun 2014, 20:59
by coppelia
About your point 2, the peaks could be anything, including the physics engine, or some external disturbances on your system. Sometimes also if attached masses and inertias are not well-dimensioned, there could be strange results. Best is to try and compare the 3 physics engines.

About your point 3, the velocity measure of the joint is done inside of V-REP, at each simulation pass, by comparing current position with previous position: that's why if the difference is larger than 180 degrees, there will be apparent mistakes, since V-REP will think the rotation speed inverted suddenly.

Cheers