Friday, April 22, 2011

AVC Bot: Another Update

First of all, a big thank you to all of you who have written and commented along the way. I really appreciate your support and great advice. I've tried to check it all out and where my brainpower was sufficient, implement.

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
  • CMUcam1
  • 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? :)

No comments:

Post a Comment