Just as my patience and gumption were almost completely tapped out, as defeat loomed large in my thoughts, at 2am this morning....
I FINALLY GOT THE ROBOT TO NAVIGATE!!!!
Here is a summary of my recent bug battles that keep draining away hour after hour
- RF interference degrading GPS signal and affecting compass, placed both on 'mast'
- Sensor 'mast' was way too heavy, significantly raising CoG. I dumped the truck on its side during testing. Lightened the 'mast' by about 75%
- Still getting slightly degraded GPS signals, contemplating RF isolation of the main electronics
- Battery refused to fast charge, so had to take a few hours to slow charge
- Major bugs in geo calculation code: jacked up both the onboard nav and offline analysis and plotting.
- Switched to LSM303DLH tilt compass but experienced strange distortions in compass reading; calibrated and fixed only to find...
- Massive noise in LSM303DLH accelerometers causing massive compass heading noise, which I couldn't trace because...
- The addition of compass code was hanging the main bot program unpredictably. Reverted to earlier version.
- Implemented low pass filter (leaky integrator) and increased mast mount rigidity
- Glitch in analysis scripts causes strange speed values, may be affecting plots, not sure
- Continuing to experience occasional filesystem errors on the microSD but am able to fumble around them. I can't wait for that to hold me up two minutes before the beginning of a race... that should be fun (read: not fun and very stressful)
- High zoot AHRS exhibits similar heading distortions as LSM303DLH but was unable to correct by setting offsets and scale matrices or by using the built in calibration. Very disappointed in AHRS.
- AHRS pc client code keeps crashing. Very, very disappointed in AHRS.
- Other stuff I'm forgetting
|Where the robot thought it was|
Purely with dead reckoning!
Three times in a row!
It wasn't perfect, there's still imprecision in heading due to side angles (far less an issue at the SFE building), but the navigation was repeatable and seemed to be accurate to at least 3 meters across a distance traveled of about 40 meters.
Hopefully, combining position and heading info from both dead reckoning and GPS in some semi-intelligent fashion will improve navigation accuracy to the sub-meter range. We'll see.
The next two weeks (!) are going to go by fast.