First outdoor run of modified RC truck with home-brew IMU
After some careful testing, re-designing, and re-testing around the yard and house, I sent my modified truck "big bot" out on its first mission.
The goal was to go (in a straight line) from initial position — outside the front gate — 200 m up the road to an intersection. The problem was specified using GPS co-ords off a website, with a couple of "don’t go" areas meant to keep the bot (4" wheels) (a) out of the gutter , and (b) out of people’s yards or piling up against fences.
The wheelbot is a much-hacked 1:4 scale RC truck with a couple of nice DC motors, a 3-speed gearbox (although the DC motors now have speed control), stepped steering over +-45 degree (now under control of a cheap servo; previously it was an "all or nothing" type of operation), a bunch of LED headlights, and version 4 (not counting a few version that didn’t make it to power-up) of my homebrew IMU.
The platform is controlled by an avr32 "grasshopper" with an attached wifi board, which is connected via a 4-wire serial homebrew to an Orangutan board that supplies the motor control, servo control, and interfaces to the sensors in the IMU — presently a 3-axis accelerometer, 2 rate gyros, and a recycled GPS board.
Attached to the front of the bot is a medium-range (3 m) IR ranger, and there are 2 short-range IR rangers pointed down on the left and right of the bot — to detect footpath edges, aka "bottomless pits".
There is no on-board control s/w — that’s what the wifi is for. A desktop with a panel antenna supplies all top-level commands as well as the ability to take over the sensor fusion in case of emergencies. (Initial experiments indicate more work needs to be done to take care of the 10 ms lag that crops up when this is done; the oscillations in the filter were truly prodigious!)
Since the local footpath is crowded with yahoos and other fleshbots during the daylight hours, the mission was scheduled to kick off at 3 am a couple of nights back.
As first missions go, at least no lives were lost and there were no severe injuries. But like many streetbots before it, mine managed to negotiate the first couple of driveways at pretty good speed, but then become confused by concrete cancer in the footpath and steer off directly into the gutter where the jolt promply caused an edge connector the disconnect, thereby causing an unusual "shift into high gear and drive directly into the gutter on the other side of the road" operating mode.
Luckily, there was no passing traffic at the time.
The 2nd jolt caused a merciful complete loss of power as one of the D cells in the main battery pack decided to make a bid for freedom.
I am presently licking my wounds (damn that hot glue!) and planning mission 2.
While I did try to vid the first outing, it seems I’ll need to buy a mess of portable lighting for it to show anything but the inside of a black cat at midnight. So much for the local street lighting…
My bot has gone out of control several times as well. To prevent this I added an E-Stop task to its task cycle. If any thing, especially movement goes outside set ranges it goes into an E-Stop state, this has stopped it going “beserk” many times now. You should look at adding a similar task to your bot.