Motor overpower

Hi guys,

I have a quick question about how to set something up with an arduino and a small DC motor.

Basically the DC motor is only meant for 3volts, yet it does what I need with a 9 volt on it perfectly. The motor is cheap, will only be used very short periods of time. It is also small and light weight which is important.

I followed a tutorial (Tutorial 5 for Arduino: Motors and Transistors – JeremyBlum.com) that helped me understand how the sensors, motors and servos work with the arduino. But the circuit setup he uses does not give the motor the power I need.

Would a controller or shield solve this for me? If you have any tips please share.

But the circuit setup he uses does not give the motor the power I need.

What circuit set up, there are several in that video?

Would a controller or shield solve this for me?

Probably not.

Basically the DC motor is only meant for 3volts, yet it does what I need with a 9 volt on it perfectly

So are you applying 9V to the motor?

See:-
http://www.thebox.myzen.co.uk/Workshop/Motors_1.html

I hope you are not using those small 9V square batteries, they are a poor choice when powering motors.

Grumpy_Mike:

But the circuit setup he uses does not give the motor the power I need.

What circuit set up, there are several in that video?

The video contains instructions for motor, servo, and a sensor on the seervo. The motor is the first part of the video. The setup uses a transistor, diode, 1k resistor, 1uf cap to connect the motor to the arduino.

Basically the DC motor is only meant for 3volts, yet it does what I need with a 9 volt on it perfectly

So are you applying 9V to the motor?

See:-
http://www.thebox.myzen.co.uk/Workshop/Motors_1.html

I hope you are not using those small 9V square batteries, they are a poor choice when powering motors.

Yes I am using a regular 9v square battery. If I connect it directly to the motor it works perfectly, if I do the above circuit it does have the power to turn the the gears I want it to.

Yes I am using a regular 9v square battery.

Bad choice.

If I connect it directly to the motor it works perfectly,

OK

if I do the above circuit it does have the power to turn the the gears I want it to.

So there are two possible causes for this.

  1. The transistor takes about 0.7 V or so across it when it is on so you only get 8.3V when driving it through a transistor.

  2. You may have a mistake in wiring up the circuit or identifying which pins of the transistor are using incorrectly. All transistors are different and it is not necessarily the same as in that tutorial, look at the data sheet for the transistor you used.

And as Grumpy said, the standard 9v rectangular battery is a VERY poor choice for driving a motor. Yes, the motor will spin when unloaded, but once you put any serious load on it the battery will NOT be able to keep up with the current demand. You'd be much better off using a battery pack made up of enough NiCad or NiMH cells to get the voltage you need. More than likely a 5 or 6 cell (series wired) will do you just fine.

Grumpy_Mike:
if I do the above circuit it does not have the power to turn the the gears I want it to.

So there are two possible causes for this.

  1. The transistor takes about 0.7 V or so across it when it is on so you only get 8.3V when driving it through a transistor.

  2. You may have a mistake in wiring up the circuit or identifying which pins of the transistor are using incorrectly. All transistors are different and it is not necessarily the same as in that tutorial, look at the data sheet for the transistor you used.
    [/quote]

Sorry about the typo, that "not" was a critical part of my post that I left out. I have triple checked the part numbers, wiring, etc of my breadboard with respect to the diagram and they are the same. Unless having a titanimic (sp?) 1uf capacitor would cause this when he used a ceramic.

I used the package that the transistor came in to lay it out with respect to the base, emitter, collector.

Brewgyver:
And as Grumpy said, the standard 9v rectangular battery is a VERY poor choice for driving a motor. Yes, the motor will spin when unloaded, but once you put any serious load on it the battery will NOT be able to keep up with the current demand. You'd be much better off using a battery pack made up of enough NiCad or NiMH cells to get the voltage you need. More than likely a 5 or 6 cell (series wired) will do you just fine.

Hmm, that does not make any sense. I just hooked the 9 volt straight to the battery and put it under the exact same load as when I use the circuit setup and it easily powers what I want, unlike when in the circuit arrangement.

So measure the voltage you are getting across the motor when it is in the circuit with the transistor.

Grumpy_Mike:
So measure the voltage you are getting across the motor when it is in the circuit with the transistor.

With the circuit I get 7 volts. With a direct connect I get 8.4 v

My issue is the motor lacks the "power" when under load and I am using the circuit. I can stop it easily with my finger, but if I try to stop it when I do a direct connect it is allot harder to stop.

Yes we know what your issue is, we have told you the solution but you don't seem to want to listen.

It is to provide more voltage to the circuit and ditch the idea of using a square 9V battery.
I am not sure what other sort of solution you are expecting.

The transistor used in that tutorial is a darlington, which means it will have a high saturation voltage. If you want to maintain the voltage across the motor under load, I suggest you use a mosfet to switch the motor instead of that transistor. Bear in mind that if you prevent the motor turning with your fingers, and it is rated at 3v but you are applying 8.4v to it, it will burn out quite quickly.

As for using a 9v rectangular battery to drive a motor, if you're really set on this then I suggest you the lithium variety, which is capable of supplying much greater current than the regular sort. But it's an expensive way of providing power, compared with using alkaline or NiMH AA cells.