Now that the WallBot has functioning wheel encoders I’m eager to evolve it from a simple wall-avoiding robot to one that can autonomously navigate its environment.

First I need to design how the software will work.

Put together a quick and dirty dead reckoning experiment now that the encoders and PID controller are working. Very happy with the results, even if they are superficial.

With the encoders working it’s time to tune the PID controller for driving in straight lines.

Discovered there was an alternate and simpler solution than using Trinket.

Also received a bluetooth module and put it to use.

Finally completed the Zumo build, code and all. It was way more work than I bargained for.

Ended up adding a second microprocessor (The Trinket) to handle sensor and servo functions, implemented an I2C slave and wrangled new interrupt-driven servo code.

Completed the Zumo hardware side and got the encoders working but then hit a road block trying to get the motors to turn…

Did a little more work on the sumo type bot.

Added a perfboard with a mounted servo for a sweeping collision sensor.

Decided to build the Pololu Zumo chassis with their optical encoders.

Still need to figure out a circuit to convert the encoders’ analog signal to digital.

I’ve implemented a PID-based closed-loop system to ensure my bot travels in a straight line.

The data says it is going straight, however, in reality it seems to be deviating quite a bit.

Mighty confused.

My first introduction to PID controllers was inĀ an article about a robotics dead-reckoning competition which the author won using a Lego Mindstorms creation called Peeves. This was back in 2001. It’s an interesting read. I had only recently purchased my own Mindstorms set and so was very impressed with the “toy” robot beating all the […]