Sunday, May 24, 2009

NXT Steering Rover

This simple NXT Steering Rover vehicle steers by pivoting its front wheels like a real car, and is controlled by a wired remote control. The remote control has a steering wheel to control the steering, and buttons to make the rover go forward, backward, slower, and faster.

Two ways are shown to handle the steering. In the first method, the steering wheel on the remote control is used as an electrical generator to produce and send electrical power directly to the steering motor on the vehicle through a wire, without the NXT even being involved. In this mode, the steering even works when the NXT is off! In the second method, the steering wheel acts as a rotation sensor for the NXT, and the NXT then controls the vehicle's steering motor by program control through a different wire.

In the program-controlled steering method, the steering motor on the vehicle is acting like a "servo" motor, which seeks out the desired position as determined by the other motor (the steering wheel), which is acting like a rotation sensor. Doing this is surprisingly tricky, given that the end effect is so simple. The program measures the degree difference between the two motors and then continuously modifies the direction and power level of the servo motor to try to zero in on the desired position without any noticeable overshooting or oscillation (see the program provided).

Given the very simple construction of the rover (solid rear drive axle and parallel arm steering), turning very sharply doesn't work very well, so the model can also serve as a demonstration for why real cars need a differential and perhaps Ackermann steering. Some links are provided for users who want to try to investigate these topics.

Here is a video of the rover in action:

No comments:

Post a Comment