Self Driving Car - Part 2

Sparkfun recently announced the rules, and a new venue for their Autonomous Vehicle Challenge, so it's time to dust off my entry from last year and contemplate what I need to do differently this time around.  Last year's challenge was more difficult than we had imagined. mostly due to the very challenging GPS environment at last year's venue (racing around the Sparkfun building) and my car's near total reliance on solid GPS data to navigate.  I never did manage to properly integrate odometry data into last year's code, so that a big priority for me this time out, but the "open sky" nature of the new venue at the Boulder Reservoir may make this less necessary.  Nevertheless, it bugs me that I couldn't get this working, so I plan to devote some time to it.

Assessing the New Venue

The new course, rules and challenges will make this year's race very different from last years race, IMO.  First, the much improved GPS environment at the reservoir, as well as a much wider track with fewer embedded obstacles (the Sparkfun building has several places where parking dividers significantly narrowed the course) should make it possible for many more vehicles to finish.  That is, if they manage to at least master the basics of GPS and compass-based navigation.  In fact, based on my reading of the placement of the infamous red barrels in fixed, predetermined locations this time, it should be possible to even navigate through this area just using blind GPS guidance.  So, my first order of business will be to test this hypothesis by setting up a test track of appropriate dimensions down at the parking lot at my local sports stadium and trying this out with last year's software (just as soon as I put things back together.)

The more challenging sections of the course, however, are the sections with our old friend, the hoop, and a new bonus obstacle in the form of a 8 inch ramp that is 45 inches wide by 45 inches long.  In last year's race, the hoop was the first obstacle a vehicle faced on the course, which made it possible to use a bit of dead reckoning to try and hit it.  At least, this is what some of the competitors seemed to be trying to do.  For me, I did my best to hit a GPS waypoint set on the hoops location and chalked it up to dumb luck if this managed to work (it did on one run, by we hung up on the hoop in another run.)  This time, however, the hoop has been positioned just after the red barrel slalom, so dead reckoning of any sort will be much hard to pull off.

Likewise, the ramp is another puzzle to unravel, strategy wise.  At only 45 inches wide, it will be difficult to hit with GPS guidance and, worse, the consequence of a near miss, such as hitting on only the left, or right wheels, could easily flip a car over and do serious mechanical damage.  It's painted blue, so some kind of optical detection might work, but distinguishing a blue ramp against a blue sky, especially given the angle of view from a very low vehicle and a small, 8 inch high outline will be very difficult, too, even assuming I has some kind of optical camera system that could detect the ramp and help the car navigate toward it.  So, the safe bet is probably just to avoid the ramp altogether.  But, it should be spectacular to watch those vehicles that actually attempt it.

My Plans for AVC 2013

Even before Sparkfun announced the new course and venue, I'd been working on a set of improvements and new technologies I wanted to incorporate into my vehicle design.  I plan to reuse last's year's ECX Torment-based Chassis, but most of the other components will all be new designs.  However, this will be mostly to tighten up the electronic hardware and make it more compact and resilient.  The first thing I tackled was switching to a new 2-way RC transmitter/receiver system that will let me get real time telemetry back from the car during test runs.  I'm still working on the design, but it's coming along very well and I think it will really help streamline setup and configuration for field testing.

The second thing I've been working is my own custom version of the DIYDrones FailSafe Mux I used last year to handle remotely taking back control of the car when running autonomous tests.  This one component was probably the most essential tool I used lat year, but hooking it up to the car resulted in a virtual "wire farm" of connections that often got confusing to reconnect.  So, I decided to build my own design in the form of a compact PC board that plugs directly into my new 2-way RC receiver.  This greatly simplifies the wiring, as many connections are handled by connectors on the PCB, and also results in a more compact design.  You can read more about this on my "2 Channel RC Safety Mux" page.

I also plan to update my GOS module to the new 3D Robotics uBlox LEA-6 GPS board, which got a lot of discussion at AVC 2012 when the founder of 3D Robotics, Chris Anderson, show up with one in his vehicle.  This design is a custom board made by 3D Robotics using the uBlox LEA-6 chipset combined with a 25mm x 25mm taoglas ceramic antenna, which is said to give it improved performance.  Naturally, I rushed down to the 3D Robotics office the day this board became available to get one and, in future post I'll detail the results I got when putting it through some tests at a nearby location that very similar to the new AVC 2013 venue at Boulder Reservoir. However, so far, I'm very impressed with this module.

<more to come in the following weeks>