At the Dragon*Con 2012 Mini-Sumo competition
, my bot
came in third place (out of four contestants), winning me a Pololu Zumo chassis kit
. I sprang for the Zumo Shield and Reflectance Sensor Array
to complete the set, with the intention of using it in the 2013 competition. It's a good kit overall, but has some...quirks...that make it more difficult to use than it should be. What follows is my experiences (read: screw ups and how you can avoid them).
Available Arduino Pins
The official assembly instructions give a chart of available pins
. What it does not show are the pins tied up by the optional Reflectance Sensor Array. If you use the sensor array, the updated chart looks like this:
| Arduino UNO Pin||Zumo Mapping ||Notes |
| 0|| Rx|| |
| 1|| Tx|| |
| 2|| reflectance sensor array: LEDON||optional|
| 3|| buzzer control||optional, disabled by default |
| 4|| reflectance sensor array|| |
| 5|| reflectance sensor array|| |
| 6|| ||available |
| 7|| right motor direction control|| |
| 8|| left motor direction control|| |
| 9|| right motor PWM|| |
| 10|| left motor PWM|| |
| 11|| reflectance sensor array|| |
| 12|| user pushbutton|| |
| 13|| yellow LED|| |
| A0|| reflectance sensor array|| |
| A1||battery level voltage divider ||optional, disabled by default |
| A2|| reflectance sensor array|| |
| A3|| reflectance sensor array|| |
| A4|| I2C-SDA; used for compass/accelerometer module|| |
| A5|| I2C-SCL; used for compass/accelerometer module|| |
The bottom line is that only Arduino pin 6 is completely unused; pins 2, 3, and A1 have optional functions that you can probably live without and can count as available. (In fact, using a buzzer might be considered illegal in most minisumo rulesets as it could maybe be an active countermeasure against ultrasonic range finders). If you're willing to endure the programming hassle, you could also use pins 0 and 1; in that case I'd recommend pulling the Arduino off the Zumo shield and programming it with an AVR programmer cable.
- Pay attention to the section in the instructions that strongly suggests you add any custom components to the Zumo Shield before assembling it. This was my biggest blunder. In particular, I recommend soldering male pin headers to all the Arduino break-out holes (including the four holes on each side at the front) and the extra 5v/GND holes. Make sure you only do this with the outermost sets of holes, as these will clear the Arduino when it is installed. Note that adding pin headers here interferes with the front laser-cut spacer plate that sandwiches between the Zumo shield and the chassis; so far it doesn't seem to be a problem, but don't crank down on the front mounting screws too hard lest you break the PCB.
- After a dis-assembly snafu, I realized the solid leads used to connect the PCB to the motors are problematic. I replaced them with short pieces of stranded wire -- enough that the motors can give a little.
- If using this for a minisumo competition, you should probably put electrical tape over the motor LED's, just in case they're ruled "active" countermeasures. :)
- Do not pull the wheels straight off the motor shafts. I did this and destroyed a motor -- pulled the motor body straight off the end cap, wrecking the brushes. Instead, use a pin punch and gently tap the shaft out of the wheel.
- Be mindful of the battery lead with the spring on it. The spring must be compressed to remove (or replace) the PCB from the chassis.
My Additions (in case you care...)
This is still in-progress, but so far I've added a Parallax PING))) ultrasonic rangefinder (for enemy detection) and a 7.4 LiPo battery. I still keep the 4 AA's in their holder because I need the weight; I pulled out the battery tabs so they don't conflict with the LiPo.
It's still underweight. :)
Dragon Con 2013 Competition De-briefing
- Came in 2nd out of 2 competitors. The other competitor, Dale Heatherington, wasn't even there -- he sent his bot at the organizers' request. :) I did win a nice Boarduino.
- Actually did pretty well. Some thoughts on mods for next year:
- My biggest issue was too much speed. Much of the time it wouldn't stop in time to avoid the white ring. My best guess is that I tested it with the LiPo battery weaker than full charge -- and that at full charge it went too fast. Possible solution is to use the Zumo Shield's voltage monitoring function and adjust speed accordingly.
- Need to get closer ground clearance with the scoop. Dale managed to still get under it.
- Possibly start using the accelerometer to detect hits.