Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Increasing current drawn in Arduino Motor Shield

  1. Feb 28, 2016 #1
    I am currently using the Adafruit Motor Shield in conjunction with an Arduino Motor Shield to control two 7.2V DC Motors. The DC Motors are being powered by a 7.2V, 3000 mAh Nimh battery. When the two DC Motors are being powered in parallel directly by the Nimh battery, they are able to move rapidly and drive their load (a fairly heavy colson wheel). However, when used with the Adafruit Motor Shield intermediary, they are unable to draw enough current and hardly move at all. Is there any way I can make provide the motors with more current or force them to draw more current through the Motor Shield?

    I am currently only using the arduino board to stop the vehicle at a specific point and just need a way to stop the motors after a desired point. If I cannot increase the current drawn by the motors, is there any other way I could stop the motors with the two motors directly connected to the power supply.
  2. jcsd
  3. Feb 28, 2016 #2


    User Avatar
    Gold Member

    You need to include:
    The model number of the shield board and a link to its schematic
    How you are controlling the shield. (how you setup the motor controller)
    Motor characteristics/specifications

    How much current does each motor draw when connected directly to the battery?
    How much when connected to the shield?
    What voltage appears across the motor when driven by the shield? Is it pulsing?

    One possibility is that the motors require more than the shield is rated for, and the battery has no issues with that load.
    Or, maybe you have the controller set up wrong,
    Or ??

    How do you want to stop the motors? Just open the supply?

    If you don't want speed or direction control, you can use a simple power MOSFET circuit to switch the motors on and off.
    Just google "motor on off circuit mosfet" and look at images (try "pmos" and "nmos" also)
  4. Feb 28, 2016 #3
    Whoops, looks like all the links I provided didn't show up when I made the post. Hopefully this works:

    Motors: http://www.banebots.com/product/M3-RS380-72.html
    Gearbox (Used with each Motor): http://www.banebots.com/product/P60S-5-3.html
    Motor Shield: https://www.adafruit.com/products/1438
    Motor Shield Datasheet: https://www.adafruit.com/datasheets/TB6612FNG_datasheet_en_20121101.pdf
    Battery: http://tinyurl.com/thisisthebattery

    Both of my DC motors are connected into the motor shield at the M1 and M2 terminal each. Power is supplied into the motor shield at the power terminals. The arduino board itself is powered at the vin/gnd terminals. The set up is similar to this (except for the DC motors only):


    When the motors are connected in parallel directly to the battery, each motor draws around 1.5 A of current. With this setup, the motors still have enough power to move my vehicle fairly rapidly. However, when used with the motor shield, the motors seem to receive very low current and do not move at all. The motor shield itself can supply a maximum of 1.2 A to each motor and 3A overall. As you mentioned, the motors do require more current than the shield is rated for (poor planning on my part, unfortunately) - is there any way to account for this?

    I am using the arduino board so the vehicle can be stopped autonomously after a designated amount of time that I pre-program. Speed control would be ideal, but not necessary. Would it be possible to create a time-delay circuit that can stop the vehicle after a designated amount of time? How precisely would I be able to control the amount of time the circuit runs for before turning off?

    Appreciate the help.
  5. Mar 4, 2016 #4


    User Avatar
    Gold Member

    You are running the circuit outside of it's rated capacity. I wouldn't expect it to work properly.

    You may be able to parallel the two circuits and buy a second driver board for the second motor. Just be sure all of the inputs are paralleled too. Jumper them together on the board. Don't just rely on the cpu to keep them the same.

Share this great discussion with others via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted