[ODE] On torque ..

Sergey Kurdakov k15c20 at zelmail.ru
Sat May 8 01:03:08 MST 2004


Hello Wenzel,

> This function should return the torque which needs to be applied
> to the body in order to rotate the coordinate system onto the new
> forward vector in the given amount of time.


there is an approach to get torque which performs desired rotation. this one I seen in russian here
 http://www.gamedev.ru/articles/read.shtml?id=30127&page=1 but I do not think this will suite you as this one does not take time
into account.

another approach is to solve optimal problem of rotation of the body which is usually used in space applications 'optimizing' the
applied torque. the 'optimal ' solution as a rule will consist of three stepts - the first  acceleration phase then free rotation
phase then  deaccelearation phase. But as you need not achive min  'applied over time'
torque you might to make the following.

to develop a controller which will output desired torque observing rotation of the given  body
I suggest to get idea - to
read an article here http://www.ntu.edu.sg/centre/sec/P0609.pdf

and develop a   controller ( maybe be even proportional controller will suite but maybe you will prefer PID  or maybe fuzzy :)
controller)  which for example will keep constant angular vel.

so from desired angular rotation and time you get desired angular rotation speed - then you pass it to controller which outputs
controlling torque...

I might tell  that from my experince to keep a desired angular rotation with a controller which outputs desired torque is not a
prob.

Regards
Sergey Kurdakov

----- Original Message ----- 
From: "Wenzel Jakob" <wenzel at schlund.de>
To: <ode at q12.org>
Sent: Friday, May 07, 2004 11:07 PM
Subject: [ODE] On torque ..


> Hi,
>
> I am implementing a program with several "agents" using simple steering
> algorithms (seek, follow, flee) in 3d space using ODE for
> physics and collision detection. Everything has worked
> quite well so far, but now I am stuck with a problem:
>
> Every body/agent in the simulation has a local coordinate system
> (a forward, up and side vector).
>
> I am trying to write a function which takes
> - a body/agent
> - a new "forward" vector
> - a time value
>
> This function should return the torque which needs to be applied
> to the body in order to rotate the coordinate system onto the new
> forward vector in the given amount of time.
>
> I have spent quite some time messing around with quaternions, but
> haven't come up with something working yet.
>
> Does anybody have some advice?
>
> Thanks in advance,
> Wenzel Jakob
>
>
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode



More information about the ODE mailing list