1

I am using small dc motors connected to the 5V of the arduino which is known to provide 200mA without damaging it.

The motor I am using is a very common one found in toys -> https://www.sparkfun.com/datasheets/Robotics/ROB-09608.jpg

As I see the maximum current of this motor is 170mA. Does it mean that the motor will not drain more current than that or it means that I need to use a resistor in series with my 5V in order to make sure the current will not pass 170mA?

1
  • 1
    Note that (like you say) the 200mA is the limit of the VCC pin only. For the IO pins there is a safe limit of 40mA. See the playground for the numbers. Commented Nov 26, 2014 at 0:58

1 Answer 1

1

YES (typically resulting in melting the coils). The current used by standard or brushless motors is related to the voltage applied and the load applied. As you approach the load limit, current rises over the limit. There are many ways to control this but controlling the load is the easiest way. DO NOT run the motor through the Arduino even if you think it will be under the 200mA limit. Motors produce a lot of spikes and back-flow.

Here's a tutorial on safely running a motor and controlling the speed: https://learn.adafruit.com/adafruit-arduino-lesson-13-dc-motors/overview

enter image description here

4
  • Thank you so much. But if in the specs of the motor says that it consumes 170mA should I even use a resistor if my source provides more than that? I will not connect it to arduino, you told me it will damage it I will not. I will use an external plug that provides 9 V (same as motor) but it provides 1A. Do I really need to use a resistor in this 1A? I think the motor will only consume what it is designed to, isnt? Commented Nov 25, 2014 at 18:35
  • No, there is nothing about the motor itself that limits the current that will be used. The rating of the motor is how much current it can handle before something fails - usually the insulation on the coil wires overheats and melts, causing shorts and destroying the motor. I have photos of that kind of damage somewhere. It was caused by too much weight/load on the motor. Tuning the current load involves tuning the actual load on the motor. Most motor usages never come close to the limit, so people tend to ignore this issue sometimes. ALL the example programs are like that. Commented Nov 25, 2014 at 22:35
  • thank you I didnt know that. I believed that the current specified in the motor datasheet was the current it was gona use and nothign else even if I provided more current. I just did not understand this phrase of yours "Most motor usages never come close to the limit,". If I provide more current, according to you the motor would pass the limit, isnt? Or am I wrong? Commented Nov 27, 2014 at 2:34
  • What I meant by that is, in the examples, they are not loading the motor with a significant load, so they don't need to use any current-limiting scheme. It's such a light load you don't have to worry about it. I would bet most of the examples from the tutorials pull about 30mA from that motor. They are "playing it safe" with the examples, but if you want to get the most from your motor, you won't be playing it safe. Commented Nov 28, 2014 at 16:15

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.