This shield makes it easy to build an Arduino-controlled Zumo robot. The shield includes dual motor drivers, a buzzer for playing simple sounds and music, a user pushbutton, and a 3-axis accelerometer, compass, gyroscope and boosts battery power to the Arduino.
The Zumo Shield is designed specifically to be a convenient interface between a Zumo chassis and an Arduino Uno or Leonardo. The shield mounts directly to the chassis, connecting to its battery terminals and motors, and the Arduino plugs into the shield’s male header pins, face down. The shield provides all the electronics necessary to power the motors and includes some additional fun components for making a more interesting robot, such as a buzzer for making sounds and a 3-axis accelerometer and compass and gyroscope.
The only differences between this v1.2 shield and the previous version are the addition of a 3-axis gyro and an upgrade of the accelerometer/magnetometer module.
With the Zumo Shield and an Arduino, the Zumo chassis becomes a low-profile, Arduino-controlled tracked robot that is less than 10 cm on each side (small enough to qualify for Mini-Sumo competitions). It works with a variety of micro metal gearmotors to allow for a customizable combination of torque and speed, and a stainless steel sumo blade is available for applications that involve pushing around other objects. Arduino libraries and sample sketches are available for quickly getting a Zumo robot up and running.
Assembled Zumo robot with a Zumo Shield, Arduino Uno, and Zumo blade
Zumo robot assembled with a Zumo Shield and Arduino Uno, back view
Integrated DRV8835 dual motor drivers capable of delivering enough current for two high-power (HP) micro metal gearmotors. See the Zumo chassis product page for specific motor suggestions.
Piezo buzzer for playing simple sounds and music. The buzzer is controlled by one of the Arduino’s PWM outputs, so the tones can be generated in the background without taking up a lot of processing power.
Integrated LSM303D 3-axis accelerometer and 3-axis magnetometer that can be used to detect impacts. The compass gets a lot of interference from the motors, batteries, PCB, and its surroundings, so it is not generally useful for precision navigation, but we have found that with proper calibration, it can be used for rough orientation measuring in many environments. This part is an upgrade over the LSM303DLHC accelerometer/magnetometer IC included on previous versions of the Zumo shield for Arduino.
Integrated L3GD20H 3-axis gyroscope that can be used to track rotation. This is new on the v1.2 version of the Zumo shield; previous versions did not include a gyro. With this sensor and the LSM303D mentioned above, the shield effectively has a built-in MinIMU-9 IMU module that can optionally be used to make a attitude and heading reference system (AHRS) so that your robot can its orientation.
Optional user pushbutton on pin 12.
7.5 V boost regulator for powering the Arduino from the Zumo’s 4 AA batteries.
Convenient access to Arduino I/O lines, the pin 13 user LED, and the Arduino reset line via the shield.
General-purpose prototyping areas and an expansion area at the front for connecting additional sensors (it is easy to add up to five QTR sensors for edge detection or line following).
Compatible with the Arduino Uno R3 and Arduino Leonardo, and can also be used with older Arduinos that have the same form factor, like the Duemilanove.
The Zumo Shield ships with all of the components required for shield assembly, as shown in the main product picture. Note that soldering is required; please see the user’s guide for detailed assembly instructions. The shield does not include motors or the Zumo chassis itself, though it is available as part of a combination deal with the Zumo chassis and Zumo blade.
Required Accessories (not included)
To use this shield you will need a few additional parts:
Two micro metal gearmotors. These gearmotors are available in several power options and a wide variety of gear ratios, allowing for a customizable combination of torque and speed. The Zumo Shield can deliver enough power for all of the micro metal gearmotors we carry, including the high-power (HP) versions. Note that some gear ratios are better suited for the Zumo than others; please see the Zumo chassis kit product page for specific motor suggestions.
Four AA batteries. The Zumo chassis works with both alkaline and NiMH batteries, though we recommend rechargeable NiMH cells.
An Arduino. The Zumo Shield works with both the Uno and the Leonardo. It is not compatible with the Arduino Mega or Due, but it can be used with older Arduinos that have the same form factor as the Uno, such as the Duemilanove.
Battery charger for charging the Zumo’s battery’s through the Zumo Shield’s 2-pin charge port. Note that you only need a battery charger if you plan on powering the Zumo with rechargeable cells, and that charger should be capable of charging 4 NiMH cells in series. Alternatively, since the Zumo just uses ordinary AA batteris, you can use AA chargers (into which you stick the individual cells) available at most general electronics stores.
QTR-1RC sensors. There is room to plug up to five of these sensors into the front expansion area of the Zumo Shield for edge detection or line following.
This is a library for the Arduino that interfaces with our LSM303D, LSM303DLHC, and LSM303DLM 3D compass and accelerometer carriers as well as the compass and accelerometer ICs on the MinIMU-9 v3 and AltIMU-10 v3 (it also works with older versions of those boards, some of which used the LSM303DLH and LSM303DLHC). It makes it simple to configure the device and read the raw accelerometer and magnetometer data, and it has a function for computing the tilt-compensated heading for those looking to use the LSM303 as a tilt-compensated compass.
This is a library for the Arduino that interfaces with our L3GD20H and L3GD20 3-axis gyro carriers as well as the gyros on the MinIMU-9 v3 and AltIMU-10 v3 (it also works with older versions of those boards, some of which used the L3G4200D and the L3GD20). It makes it simple to configure the device and read the raw gyro data.
This library can be used to program an Arduino-controlled Zumo through MATLAB and Simulink. It provides driver blocks for all the sensors present on the Zumo Robot as well as example models showing their usage.
This article was written by Professor Erich Styger for his class on embedded systems programming at the Lucerne University of Applied Sciences and Arts. It describes various ways to tweak the performance of a Zumo to be more competitive in a Mini Sumo competition. Note that his Zumos use a custom PCB rather than our Zumo shield for Arduino; our shield has a lot of capacitance in parallel with the batteries that generally prevents the “battery inertia” problem Erich describes.
This is a YouTube playlist by control systems lecturer Brian Douglas that uses the L3GD20 MEMS gyroscope. It describes the fundamentals of the gyro and how to use it for closed and open loop control projects with MATLAB/Simulink and Arduino.