A new mbed is on order from Sparkfun (I put off spending $60 as long as I could) and it will be plugged into a revised baseboard, connecting it to all Data Bus' sensors and actuators.
It's smaller, has an integrated microSD card slot, a built-in buzzer for audio feedback and status, inline resistors on all the UARTs (to prevent burning them out again) and will have nice laser-printed silkscreening instead of sharpie scribblings like the current board.
In other news, I haven't made much progress increasing the robot's speed. As soon as I upped it a few m/s, several issues cropped up that have to be addressed before further increases are possible.
I've been working on position estimation refinements. After the robot updates heading estimate with lagged GPS data, it now updates current heading and position based on that estimate. That required converting all the code to using cartesian coordinates instead of latitude, longitude.
I'm also working on a way to deal with gyro bias. I haven't had much luck so far. Part of the problem is that the robot is extremely sensitive to initial heading; there's a steady state error that isn't being corrected. As a result, the gyro bias compensation doesn't work properly.
I did some test runs at SFE on Monday and met Team Viator. Their robot made several successful runs around the building.
I'm happy to report Data Bus made its first autonomous trip around the building with a final position error of only a couple meters. Yay!
|Purple path is the estimated position|