Saturday, May 16, 2009

GPS Car / Autonomous Vehicle


This "R/C" car is is controlled by a basic stamp microcontroller and is interfaced with a nifty GPS unit by Garmin which had a really convenient serial data output port on the back.

Basically, you can program into the GPS an arbitrary route consisting of waypoints, and the microcntroller figures out how to get the car there using a rudimentary proportional control algorithm that can best be described as "highly underdamped". However, it works. You can set this thing down in a large field, let it go, and it will drive out of sight. Assuming you programmed a route that returns to the starting point, it will eventually return of its own accord. It doesn't do any sort of obstacle avoidance, so it wouldn't work it an area with lots of trees or other such hazards. But in large open areas it works fine




Here, you can see the Garmin 12 GPS unit on top, and the basic stamp mounted on a dev board on the bottom. The power sources on this vehicle were somewhat ridiculous -- it used four seperate supplies. One beefy 7.2v pack powered the car, four AAs powered the servo controller, another four AAs ran the GPS unit, and a 9v supplied the basic stamp regulator.



Yes, it's embarrasing to admit it -- that's the wireless radio control transmitter taped to the car. Two servos strapped to the controller actuated the throttle stick and the steering wheel knob. Pretty pathetic! But it also, actually, worked. I did this because at the time I didn't have speed control set up, and I wanted to test the control algorithm & GPS interface. It failed once when the servo which worked the steering wheel knob bounced out of the car, leaving the vehicle on a doomed trajectory, ultimating driving full speed into a ditch




With the success of the ground-based vehicle, I had hoped to continue the project and modify it for use as a general purpose autopilot system for model airplanes. However, time got the better of me, and difficulties with the pressure sensor I was using as barometric altimeter forced me to put the project on hold, indefinitely, rather than risk destroying a great model aircraft.

0 comments: