Outdoor Autonomous Vehicles

I have some Traxxas Rustler Skeletons in my basement that I eventually wanted to make into an autonomous outdoor vehicle. On of the things I have been having difficulty figuring out if what to do about how I tell it where to go. I am guessing the only way to do it is to integrate a GPS into it. If so what kinda of GPS can one get for a project like this.

If you want a GPS module this module has great reception and is very easy to interface with. You will just have to write some code that will parse the NMEA stream to get the data you want.

You can also set up boundaries, for example if you don’t want the robot to leave your backyard. This could be as simple as a buried wire with low-power radio frequencies on it (kind of like those invisible fence thingies for pets), or a simple colored border (think a piece of tape), to an infra-red light beam that cannot be crossed (like a Roomba virtual wall).

Better still would be to give your outdoor vehicle a purpose. Here in the northeast, picking up sticks or leaves from the trees is one choice. Maybe yours can harass the local fauna, or act as a watch-bot.

For cross-country navigation, you need some kind of rangefinding, and a vision system. Vision seeks the clearest path, rangefinding determines if the camers is seeing a path or just the scenery over the edge of a cliff…

No matter what, put two safety shut-offs on the bot: One big red button right on it where it can easily be reached, and another via Radio. Just in case something goes wrong, anyone who is about to be run down by it can hit the red button instead.

Sounds cool, approach the problem in stages instead of as one huge project. Get a rolliong chassis first, then start adding more and more autonomous features.


A “Big Red Button” might be a bit excessive, unless there’s a chainsaw attached–the Traxxas Rustler he refers to is a 2WD stadium truck about the size of a large Vex robot. Assuming a stock motor and a reasonable bumper (RPM makes a great one for the Rustler), the worst damage one could do is a little ding to the ankles or chewing up the neighbor’s flower bed.

Now, don’t get me wrong, I’d still have something in such a project besides flipping the truck on its body (although that would stop a Rustler every time)–perhaps a portion of the wire could route through the roof of the body with a quick-disconnect battery connector attached?

I’ll be watching this thread closely–my Rusty is a bit…well, rusty.

Be aware that when you start adding weight to an R/C car, you have to start making adjustments and upgrades to suspension, motor, gearing, speed control etc. R/C cars are not made to carry a lot of weight.

There is a fine line between using a R/C car saving you development time and money and the modifications and hassle of the premade stuff slowing you down.

Just keep that in mind. I’ve been involved in a few R/C car to robot projects and in the end we’ve always scrapped the chassis in favor of custom stuff. Usually, the only usefully thing at the end of the day are transmissions and suspension. Weight is you’re absolute enemy if you don’t want to do any hardware modification.

Good luck!

-Andy A.

Oh. Here, I’m thinking of something around the size of a barbie Jeep.

Hmmm. Chainsaws, eh?


Another great RS232 receiver is the one that comes with the Microsoft Streets and Trips with GPS Sensor Software/GPS bundle. It comes with a serial-usb converter, but if you unplug it from the sensor then it just runs 4800bps 8-N-1 RS232.


My first plan was to actually use a chainsaw, but it would have cost too much to make everything myself.

Andy makes a great point…

If you gonna be adding a GPS module you are gonna also have to add the processor and possibly more batteries. If you are planning to go any further than that the speed of the car with most likely be decreased.

uhhhh…Wouldn’t I have to add a processor to make it autonomous anyways? Unless I don’t understand what you are asking.

So my senior design project was a drive-by-wire ATV with a semi-autonomous mode built in. We used an Innovation FIRST MiniRC (also known as the 2004 Edu RC) with a Garmin 18-5hz GPS receiver. The receiver pipes data out to the MiniRC via the TTL port. We attached a 900Mhz serial radio modem out of the “program” RS-232 port on the MiniRC to transmit data back to a laptop. The laptop has a map of the area that can be clicked on and the ATV would drive to the location. I’m not saying it is the best it could be, but you can check out what we did on our website at http://mem15.no-ip.org . Click on the Documents link on the left and you will be able to find (in one form or another) all of our documentation and how to recreate it.

what do you mean you hook up to the GPS’s TTL port? Is it a TTL serial port?

The Garmin 18-5Hz GPS unit has a RS-232 output designed to be plugged into a computer or mC of your choice. We used an RS-232 to TTL adapter and piped the NEMA strings into the MiniRC. Is this what you were asking?

On the software side, we used code from Kevin Watson’s FRC Code Repository as a base-line for our I/O functions. Both the RS-232 and TTL ports on the MiniRC can be used to input or output data.

Is the actual positioning data hard to interpret?

Data streaming out of most GPS devices conforms to the NEMA standard for information. There is a formatted string that identifies the rest of the data in that line. There are several lines per updated data packet output from the GPS receiver. The specifications for the NEMA strings can be found online. If you know a little bit about dealing with ASCII strings, then it is quite easy to parse out the data you need (lat, lon, heading, etc) from the NEMA data packet. Some GPS receivers will allow you to turn off data strings that you don’t care about (Like the Garmin 18-5Mhz that my team used). This will decrease the time between new data packets.

What is the model number of the GPS that you used, I went to their website but they have so many of them.

The Garmin model number is: 010-00321-07

This is the product’s website: http://www.garmin.com/products/gps185hz/