[ODE] Steering and rolling wheels

skjold@cistron.nl skjold at cistron.nl
Fri Feb 14 01:39:11 2003


Hi Sergio,

I don't know why you get strange results when steering and rolling at the same time. But I did notice you saying that you use dAddRelTorque to power the joints. I thought it might be 'safer' to use the dJointSetHingeParam to do that (with dParamFMax and dParamVel). Also, do you really need the two rear wheels to steer? If the front wheel (the sphere on the ball/socket) can rotate in any direction, then steering can be accomplished by varying the relative speeds of the rear wheel rotations.

About the strange jumping of your robot, the only thing I could guess at was that it has something to do with how ODE calculates friction, or perhaps it's an oddity about how the wheel collides with the floor when you 'roll' and 'steer' at the same time.

Well, I hope this was of any value to you.
Greets,
Mark

> Hi Nate. Thanks.
> 
> > > My robot consists of the robot itself and three wheels, one front
> > > free-rotation wheel and two rear wheels that are (both) steering and
> rolling
> > > wheels at the same time.
> > >
> > > The front wheel is joined to the robot with a BallAndSocket Joint, and
> works
> > > fine.
> >
> > Actually, I'd wager that the ball joint does not work fine, and is in fact
> > the source of the problems you described.
> >
> > If you're using a ball joint, the wheel is free to rotate on ANY axis.
> > For that to work, the wheel would need to be spherical.  A flat-sided
> > wheel will rotate onto its side when you try to steer.  A cap-cyl wheel
> > might work OK, but it will probably bobble up and down as you steer.
> 
> I forgot to mention that the front "wheel" is a sphere, so I'm afraid that's
> not the problem.
> 
> > Instead of the ball joint, try a hinge-2 joint.  Or two hinges with an
> > intermediate body - one hinge providing steering movement, the other hinge
> > allowing the wheel to rotate.  Two hinges is conceptually easy to
> > understand, but the hinge-2 joint does basically the same thing with less
> > computation.
> >
> 
> I tried it with no results, so it seems that I am missing some joint
> parameters or something.
> 
> Anyway, thanks for replying me. If you have any other idea, I will
> appreciate it.
> 
> 
> 
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode
>