Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations MintJulep on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Problem with dc motor

Status
Not open for further replies.

serbar

Automotive
Oct 1, 2012
37
Hello.

I am trying to put a small dc motor working and regulate speed with PWM generated by arduino. The transistor i am using is a bc547c.

The problem is that the motor make a strange noise but doesn t spin (no its not damaged). Connected an amp to see the colector current and it increases as i increase duty cycle, but the voltage between colector and emiter stays more or less the same. Shouldn t that decrease as current increase? There is no voltage across the motor as it stays in the transistor.

Motor is a mabuchi from a car toy;

As external motor source i used 4 1,5 V batteries;

I calculated resistor base to have enough current to feed the motor according to transistor and motor datasheets.

Do you have any idea for wath is happening?

Thanks.

PS: Atached are the schematic hand made and a picture of the circuit.
 
Replies continue below

Recommended for you

It is unlikely that your transistor is switching cleanly into saturation with such a large base resistor; you need the transistor to operate as a switch, not in its linear region.
A MOSFET is a better choice of switch than a BJT at low voltage, and easier to drive unless you're running at very high frequency.
You need a freewheel diode across the load, otherwise you will destroy the transistor.

Buy a book on the fundamentals of power electronics. ;-)
 
Thanks.

From what i understood of your reply the base current is not enough?

I based my calculations on the atached datasheet. Could u have a look and tell me if 0,5 mA in base is not enough for saturation?

I don t know the meaning of "freewhel" but i have a 1N4007 diode across the motor, i just forgot to draw on the schematic.

The PWM frequency is 430 Hz.

I based this project on another person's, he uses a 2n222 NPN and it works great.

Thanks again. Have to buy on book of these.
 
 http://www.datasheetcatalog.org/datasheet/fairchild/BC547C.pdf
Have you tried just a constant 5 volts into the base/resistor? Does it spin then?
 
I have tried with 6 volts, the same voltage source in base as for colector. It does the same.

I will try to lower resistance in base to 1 K.

Thanks.

 
OK. Finally could spin the motor.

I put a 1K pot in base and moved it to lower resistance till the motor spin. Voltage source was 6 volts, the same as colector.

The motor decreases speed till the max pot value that corresponds to more or less 4,7 mA in base, VCE is around 2,6 V and Icolector is around 170 mA. I have one more litle problem, sometimes the motor doesn t start when the pot is at its max resistance, and i have to lower ir for the motor to start spining. Could this be connection problems or is this normal?

Thnaks to everyone.

PS: Tomorrow will try with PWM from arduino.
 
That issue is the motor's brushes. All you can do is hit the motor with full power and a very short time later reduce the speed to what you want. That's so short a time that the motor doesn't accelerate past the speed you want to achieve.

That same problem is why a lot of house fans and ceiling fans that are multi-speed, always have the highest speed immediately adjacent to OFF. This means the fan will always be jerked into motion.

Keith Cress
kcress -
 
Humm. I see. That makes sense.


By the way, allready tried with arduino and it works ok.

Next task is connect a tooted ring to motor axle and read rpm with a inductive sensor. Lets see if i can do this.


Thanks guys.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor