Searching \ for '[OT] Driving a DC motor' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page:
Search entire site for: 'Driving a DC motor'.

Exact match. Not showing close matches.
PICList Thread
'[OT] Driving a DC motor'
1999\03\23@160304 by Eric Oliver

Hi guys,

Sorry for the OT post but I need to bounce a simple question off you guys.
I am experimenting with a small DC motor I bought from Radio Shack - .98
amps at 3 VDC.  I have a bench top DC supply and I can easily vary the RPM
by varying the DC voltage.  So I thought, if I use a pot to drop voltage, I
could feed 3 volts to the motor and then use the pot to vary the RPM.

That didn't work .. so I said hmmmmm...  Maybe what I need is a voltage
divider with a pot on one side. Well as you probably already know, after
thinking about it, that's the same as the first approach in principle.
Except I did get the motor to barely turn and I began to smell the
resistors burning.

So then I started thinking, am I going to have to use PWM to drive the
motor ?  Surely not.  I did some browsing on the Internet, but most of what
I came up with were complicated DC controllers for driving large DC motors.

Finally, today, a small ( very small ) light bulb went off in my head.
After I got over the blinding flash and sharp pain <g>, I thought : the
resistors / pot I was using are very low wattage resistors (1/4 - 1/8
watt). Maybe, they aren't letting enough current through to the motor to
drive it ?  So I attempted to calculate how many watts the DC motor uses. P
= V x I so 3 x .98 = 2.94 watts, correct ?

Now before, I go and buy a 3 watt pot (say that three times fast.  Hey, 3
watt pot, that sounds like a good name for an American POP band), I would
appreciate your take on the matter.


1999\03\23@160932 by Dave VanHorn

>Now before, I go and buy a 3 watt pot (say that three times fast.
Hey, 3
>watt pot, that sounds like a good name for an American POP band), I
>appreciate your take on the matter.

Using a pot is maybe righter than you think.
RPM of an unloaded DC motor is proportional to voltage, BUT you need
to have a voltage source that can output some current.

PWM is the most efficient method, in that the switching element
dosen't dissipate much power.
Think in terms of a buck regulator, with the motor as the output load.
You can use the PIC to create the switching, or use something like a
CS38XX regulator chip, (which will also do current limiting, and
prevent nasty burnouts) and have the PIC output a control voltage
through MUCH simpler PWM.

1999\03\23@163247 by Harold Hallikainen

picon face
       The problem is probably that in your first experiment, you were
driving the motor with a voltage source with a very low internal
resistance (close to an ideal voltage source), while when driving it with
the pot, it was a voltage source with a relatively high source resistance
(You can determine the Thevenin equivalent of the voltage source and the
pot).  The "resistance" of the motor (as seen by the voltage source
driving the motor) varies with speed and mechanical load.  When the motor
has not yet started, the resistance is very low.  If the voltage source
has a relatively high resistance, little voltage will appear across the
motor, and it won't start.
       With appropriate circuitry, the PWM drive appears as a voltage
source with a low source resistance, so it would drive the motor nicely.
Even then, the motor speed varies substantially with mechanical load.
       Many years ago a friend designed a low speed motor drive for use
in a toy.  He had a circuit that detected the commutator noise out of the
motor (whose frequency varied with motor speed) and adjusted the voltage
to the motor to maintain a constant commutator noise frequency.  Pretty


Harold Hallikainen
Hallikainen & Friends, Inc.
See the FCC Rules at and comments filed
in LPFM proceeding at

You don't need to buy Internet access to use free Internet e-mail.
Get completely free e-mail from Juno at
or call Juno at (800) 654-JUNO [654-5866]

1999\03\23@164710 by Jeff Jolie

Make your life easy and use a L6201 or L6202 DMOS full bridge
driver(SGS-Thomson).  It's easy to implement and interface with a PIC.  You
can control direction and speed(PWM) if you like.

Jeff Jolie
New England Automated
Machine Engineering, Inc.

> {Original Message removed}

1999\03\23@170354 by Wagner Lipnharski

picon face
A DC motor has a variable impedance relative to; first load, then rpm.
If you hold the motor shaft and apply power, it will consume maximum
possible current, since its resistance will be barely few Ohms.  It will
burn its coil wiring.  As far as the motor gain speed it will increasing
its torque, that you can poorly translate to "inertia x capacity to
still driving rotational power", and its "impedance" increases, reducing
electric current and power.  This is why using a gear-box to reduce rpm
you increase motor torque.

As the motor has a variable "resistance" you need to control it with
also a "variable resistance control circuit", and a potentiometer is not
such thing.  Torque is almost directly proportional to the capacity to
delivery mechanical motion with the same electrical power.  When you
apply a resistor in series (potentiometer) to the motor, you are
increasing the power supply output impedance and limiting the motor
torque. It happens because you are creating a condition that when you
apply more load to the motor, to keep the torque it reduce its
"resistance" and will drain more current, but because this extra
resistance you applied, the voltage will drop fast and also the power,
so the torque.

The motor will not react in a linear work region, but instead it will be
difficult to supply any mechanical rotational energy in low rpm, it will
rotate only without any load, or with load it will almost jump from zero
to a medium rpm (when it will has enough torque to do it).  Again, this
is because its "resistance is variable according to the torque, your
resistor is not".

A PWM is the safer way to control a DC motor speed.  You can drive it to
rotate as slow as just one rpm with the same torque as if it running at
5000 rpm.

18 years ago I produced a "railroad locomotive model" speed control to a
friend, using a simple NE555 and a power transistor (2N3055) to drive
the motor. It used a linear potentiometer to control speed, then I
received dozens of requests from his friends.  At the same period, it
was forbidden to use electronic pwm controllers at "autorama" style
races, since it increased so much the car motor torque that it was
impossible to loose the race.  It was a non commercial device, so not
everyone could have one, then it was forbidden... :(  What happens is
that at the curve entry you reduce the rpm but keep the torque as high
as possible since the motor is receiving peaks of high current, then at
the curve exit you just flat the voltage and the motor just jump its rpm
without any waste of time, while the other cars need some time to gain
back its lost torque at the curve. Using PWM the car jumped ahead aprox
half second per curve.

Well, don't ask me about the EMI (electric noise) generated... :) it was
something enormous, but the car was really fast with a cheap motor,
racing much better than any nakamishi or very expensive japanese motors
at that time.

The price you will pay for a 5W potentiometer you can build a PWM device
using simple electronics, with the PIC or not.


1999\03\23@175423 by Milt Ollenberger

Wagner, do you still have a schematic for that RR DC motor control I sure
would appreciate it if yiu have. My e-mail
{Original Message removed}

More... (looser matching)
- Last day of these posts
- In 1999 , 2000 only
- Today
- New search...