Second, look for a picture of Data Bus in race-ready configuration posted later today! EDIT: here it is
Not surprisingly, I've been very busy the last few nights...
- Tested out longer, lighter mast. Handling went into the toilet
- Rerouted motor wires and wrapped motor in magnetic shielding; slight improvement
- Experimented some more with IR and Sonar sensors without much progress made
- Fixed a major coding bug with calculating encoder distance traveled
- Finally, at long last, introduced code to sorta-kinda merge the different sensors
- Fought for hours and hours with bugs (see above)
- It rained Wed night. I tested anyway. The robot handles really well on wet asphalt!
- Discovered that inkjet labels with light coating of acrylic spray aren't waterproof
- Printed new decals on the inkjet and sprayed with automotive clear coat to waterproof
- Uncovered an intermittent problem with the right encoder skipping counts
So, still struggling with navigation. Figures.
Thoughts and Reflections
I posted a couple weeks ago that it was during that week I'd win or lose. I realize that actually every week before that, all the way back to November, was a win/lose thing.
I could've spent time on navigation basics instead of learning the Kalman Filtering and associated math. I don't regret it because I never would've been motivated to slog through that stuff otherwise.
I can take this learning forward to other projects. Same's true for really everything I've done. I've learned a little more about analog circuits, wheel encoders, various navigation sensors. I can build on all that later.
Given that I'm still struggling a day before the competition, it's clear that I've been reaching way beyond my capabilities, but that's when you really learn a ton. There have been dozens of mountainous learning curves to climb. So, yeah, learned a lot. Such as...
- The mbed environment
- Passable C++ (I've stuck to C all these years)
- Gnuplot (wildly complex/feature-rich tool)
- Kalman Filtering of course
- Behavior, faults, errors of GPS, gyro, accelerometer, compass
- Compass tilt compensation and calibration
- Interfacing various devices: Maxbotics Sonar, various compasses, AHRS, etc.
- Various "new" regulators: e.g., LM4941
- Wheel encoder interfacing
- Doxygen syntax
- NMEA sentences
- Improved Eagle techniques (BOM-EX, board layout, etc.)
- DIY PCB fab techniques (SMD, Silkscreen)
- Painting lexan RC bodies
- RC car suspension tuning
- And probably a dozen other things I'm forgetting
Yikes. Well it's been fun. Now I have to go try to sort out the remaining nav bugs and issues. I still am not entirely sure what to do about object avoidance. I sure hope we know where the barrels are going to be before each heat. But that would just be too easy, huh? :)