Electronic – arduino – Motor shield R3 does not supply full power

arduinodc motor

I'm currently trying to build a small independent rover from my old Lego Technics set. Currently I power two 9v DC motors (2838) using an Arduino motor shield R3 in combination with an Arduino Uno. I connect the motors independently to the two outputs of the motor shield and use an external 9V power supply to power the Arduino via the barrel jack. All this worked fine in the beginning with both motors doing their job at full speed. (The software should be OK – I did set all needed pins on their desired values (brakes off, directions on, PWM to 255)).

Now here's the problem: After having tinkered around a bit with my design it seems to me as if I have broken the motor shield. As I said, the software worked in the beginning. I also double checked the motors by directly connecting a 9V battery to them, they both work just fine. Also, the Arduino board itself is unharmed; I checked it with other designs just to make sure. But the motor shield does not supply enough power to the outputs anymore and so the motors don't run properly. I used my multimeter on the motor shield's output terminal screws and voltage was down to about 7.4v. Is this a normal behaviour or is the shield really broken? If so, what could be a possible cause for the lack of power on the output?

I would be very thankful for any comments or hints, since googling the problem did not show any useful results.

Best Answer

I had a similar project such as yourself, arduino powering 2 motors: I ran into several problems (I Used an HBridge and not the motor shield but you might run into these)

1)My partner and I removed the battery tray housing the 6 AA batteries and instead used 1 9V battery, thinking that was better. It was not, 9V do not provide as much current as AA batteries, it's like using 6 AAAA batteries, google it. You might be better switching to AA batteries b/c once the voltage got low (< 7V) on our project I had to switch it out for a new one, and they didn't last long. Also test that voltage on the motor shield's output terminal screws and compare w/ the voltage across the 9V to confirm it's the same or different (accounting for voltage drop from the various motor shield components, if any).

2)There is an issue w/ the Arduino Uno R2 where it will not run the code correctly if it is being powered via the VIN pin. VERY hard bug to detect.