Give your project a muscular interface with the Compact Motor Driver Robot (CMDR) Shield! Bi-directionally drive TWO gear motors or a single stepper motor, read 6 analog sensors, and control up to 8 servos all at the same time.
The CMDR (pronounced “commander”) Shield is an all-in-one kit solution for driving a pair of DC motors, or a stepper motor, 8 servos and still offer easy access to all your analog lines. Power can be supplied via the external voltage port on the shield, which gives you the best current capabilities or it can be optionally come from the Arduino 2.1mm barrel jack. Low voltage operation for the L298 and Arduino tests down to 3VDC, but ideally, you will want to supply ‘Ext Pwr’ terminal block with 6.5VDC or better.
For best performance, the CMDR Shield uses Arduino lines 3,5,6 & 11 which have the ability to do Pulse Width Modulation (PWM). Using PWM allows you to slow your motors down via software pulsing commands. Leave one pin high (or low), and pulse the other to vary the speed. Learn about this feature by using the Arduino command AnalogWrite.
We've had lots of fun using this shield with the Brutusbot and even have some sample code under our Documentation tab for your convenience.
Since the L298 motor driver can drive up to 4A and the LM1084 voltage regulator can consume up to 5A, it is wise to use a power source capable of 9A, especially if you will be using most of the capabilities of this shield. Lithium Polymer (aka: LiPo) batteries are excellent for providing this sort of capability, such as our 7.4V 2200mAh battery. Your voltage source should be higher than the 6.5V lower-limit necessary for proper stable regulation from the LM1084 regulator.
Please Note: If you have the “Ext Pwr jumper” installed, you are limited to the maximum voltage your Arduino/Freeduino is designed for! The Arduino Uno R3 input limit is 20V (regulator limitation) and the Freeduino limit is 16V (input capacitor limitation).
If you want to use the maximum rated 30V input the L298 will handle, remove the jumper, and use separate power for your Arduino/Freeduino! Additionally, bolt a heat-sink to the metal tab on the L298 to dissipate excess heat that will be generated at these higher power settings.
PS: We recommend a heat sink for the L298 IC, as it is usually the first to reach its thermal limits causing motor shutdown.
PPS Here’s a little helpful advice: When hooking up the ‘Ext Pwr’ battery, hook up the “+” Red wire first! Hooking up the “-” black wire first exposes you to the risk of shorting your battery out through the metal L298 heat sink tab, which is connected to ground! Trust us on this one, bad things happen...