ACKERMANN PROGRAMMING

We’ve decided to prototype an Ackermann steering setup using a fisher price motor.

This would be our first year trying this method, and actually I think it will work quite well with the exception of actually programming the thing.

Any suggestions?

I was thinking of modifying a standard…high end RC car controller for use as the controller… however, we don’t have very much programming experience on our team and the more I think about it, the more I feel like the programming is going to be our biggest hurdle with this type of steering.

I would suggest installing a position sensor on the steering arm to be used for “closed loop” control to set the position of the steering arm.

A few possible options for the sensor:

  • if using a pitman arm to move the steering arm, install a potentiometer directly to the motor shaft
  • if using a rack/pinion or lead screw to move the steering arm, use a multi-turn potentiometer or an encoder
  • if the steering arm doesn’t move particularly far, you could install a slide potentiometer directly to the steering arm.

With the above approach, the robot controller will be able to query the sensor to determine the “current position” of the steering arm.

The operator interface would then be used to set the “desired position” via the joystick, steering wheel, or whatever you use in the OI.

The robot controller could use a PID control loop to force the “current position” to match the “desired position”.

Best Regards,
–ken

Sorry, but I this is my first year with the FRC. What is ACKERMANN steering?? I hope that is not a dumb question.