You are on page 1of 12

The Dial-a-Speed: One Motor Controller

to Rule Them All

One of the most common problems in building small robots and other electromechanical
projects is that off-the-shelf DC motors just run too fast for many applications. Sometimes
a mechanical fix like a gear or capstan drive is the solution, but many times youll want to
skip the additional noise, space, and precise construction that mechanical drive-trains entail.
In these cases, a direct-drive arrangement, in which the motor shaft is directly coupled to
the load it turns, is likely best. And youll find yourself in need of an electronic speed
controller.
Enter the Dial-a-Speed, a DIY one-size-fits-most speed controller for small DC motors. Its
built in a compact physical package around a full-size potentiometer, includes built-in
back-EMF protection, and has on-board screw terminals for easy motor and power
connection. The Dial-a-Speed accepts 5-12V DC, can be easily panel-mounted in most
enclosures, and will provide effective speed control of any continuous-rotation motor or fan
in the RadioShack catalog as of this writing.

RadioShack motors and fans tested with Dial-a-Speed.

VOLTS MIN
PRODUCT MAX (RPM)
(DC) (RPM)

11,030 /
9 / 12 176 / 795
14,300

9-18V Hobby
Motor

6 15,500 1,191

6V Micro Motor

7.5 15,900 1,259

7.5V Micro Motor

9 20,200 2,641

9V Micro Motor
5* 17,900 2,462

1.53V Gear
Motor

5* 16,700 2,798

1.53V Hobby
Motor

12 6,640 115

12V Micro Fan

12 2,432 130

12V 3 Fan

12 2,611 100

12V 4 Fan
*Technically, these motors, which are only rated to 3V, are overdriven at 5, which is the
minimum needed for the Dial-a-Speed to work. However, Ive had no failures or other
problems running them at 5V. If you want to use one of these motors with your Dial-a-
Speed and are concerned about damaging it, it would be simple enough to add a resistor
and/or diode network between the Dial-a-Speed and the motor itself to step 5V down to 3
(or even lower) as needed.

How Does it Work?


This is a pulse-width modulation (PWM) speed controller, using a 555 timer IC wired in
astable mode to control an N-channel power-enhancement MOSFET that actually switches
the motor on and off. It is based on a circuit posted by Rick Bickle of the Dallas Personal
Robotics Group, with minor modifications for use in a shared power supply configuration.

What does all that mean? Basically, instead of a continuous stream of current, the circuit
sends power to the motor in little pulses, at a more-or-less constant frequency (around 50
times a second). The length of these pulses (aka their width) can be changed (aka
modulated), which causes the speed at which the motor turns to change, too. The
longer/wider the pulses, the faster the motor goes.
Square wave with 60% duty cycle. Pulse width modulation implies changing the duty
cycle without changing the frequency of the underlying wave.

If you were to plot the voltage going to the motor against time, perhaps using an
oscilloscope, it would look more-or-less like a square wave, illustrated above. When
describing square waves, the amount of time spent in the high voltage state is called the
mark time, and the amount of time spent low the space time. The duty cycle is a
percentage expressing how much of each wave cycle is mark time. For example, if your
pulses are coming 1 a second, and your mark time is 0.6 seconds, then the duty cycle is
60%. This circuit is cleverly designed to offer a wide range of control, and can produce
square waves with duty cycles ranging from less than 5% to more than 95%, depending on
where you set the dial.

Advertisement

Advertisement

Parts
/
Tools

100K audio-taper potentiometer RadioShack #271-1722


1N4001 micro 1A diode (3) RadioShack #276-1101
22AWG solid hookup wire, (red, black, green) RadioShack #278-1224
1/8" Heat-shrink tubing RadioShack #278-1610
MOSFET IRF510 transistor RadioShack #276-2072
TO-220/TO-202 aluminum heat sink RadioShack #276-1368
Ring-tongue lug, #6 (16-22 gauge) RadioShack #64-3030
1/4" 4-40 machine screw RadioShack #64-3011
Lock washer, #4
3/4" double-sided foam tape RadioShack #64-2343/#64-257
Round PCB, 1" diameter RadioShack #276-004
555 timer chip RadioShack #276-1723
2-position PC board terminals (2) RadioShack #276-1388
100F axial-lead electrolytic capacitor, 35V 20% RadioShack #272-1016
0.1F ceramic disc capacitor (2) RadioShack #272-135
10K resistor, 1/8W RadioShack #271-006
Silver tone knurled knob RadioShack #274-424 (or other style)
Motor and power source for testing (optional) If you don't already have a project in
mind for the Dial-a-Speed, you can test it with any small DC motor rated 12V or
less. RadioShack #273-106 is a good off-the-shelf choice. For power, try a 6V
4AA battery pack like #270-391. Higher-rated motors may work at 12V or less,
too, but don't try to run your Dial-a-Speed at more than 12V.

Steps
Project Steps View All

1. Prep the pot.
2. Mount the heat sink.
3. Mount the IC.
4. Install the PC terminals.
5. Add the snubber diode.
6. Mount the ceramic caps.
7. Install the big filter cap.
8. Connect the pot.
9. Install the MOSFET.
10. Make solder-side connections.
11. Put it all together.
12. Take it for a spin.

Advertisement

Step #1: Prep the pot.


The potentiometer comes with a long shaft in case you want to mount it behind a
thick panel. Chances are, you'll want to cut it down a bit. Figure out the best length
for your application and cut the shaft off with a hacksaw. 3/8", measured from the
top of the threaded portion, is a good length with this knob. You may also want to
drill or file a flat spot for the set screw so the knob won't spin on the shaft. Also cut
off the potentiometer's free-hanging ring terminals now; you'll be soldering directly
to the rivets.
Twist a pair of 1N4001 diodes together in series to make a Y-shaped junction, as
shown. Note the orientation of the silver stripes. Solder the twisted leads together
and form them into a little loop. Solder a ~2" length of green hookup wire to the
loop.
Solder the free ends of the diode junction to the potentiometer's outer terminals as
shown. Solder a ~2" length of black hookup wire to the center terminal. Apply heat-
shrink tubing as necessary to make sure the diodes don't short against the center
lead.

Conclusion
Potential applications for this circuit are many and varied. You could use it to build an
adjustable magnetic stir plate for your kitchen, brewery, or laboratory. Or an adjustable fan
or fluid pump. Or to make a zoetrope. Or use it for non-motor applications like dimming
incandescent or solid-state (LED) lighting, controlling a heating element, or whatever else
you can imagine. I'm going to use mine to upgrade my original Optical Tremolo Box for
better low-speed control and to run on 9V DC, like the rest of my FX pedals. What will you
do with yours? Please let us know in the comments below.

Troubleshooting

Once you have the PCB soldered to the potentiometer body, it is much harder to
troubleshoot, so be sure to test and make sure the circuit is working before completing Step
11.

If the motor is not turning, first put a voltmeter across the motor terminals, turn on the
power, and turn the knob fully clockwise. You should measure a voltage very close to your
supply voltage. If not, try turning the knob fully counterclockwise to see if you have the pot
wired backwards. If that fixes the problem, swap the potentiometer connections to IC pins 2
and 3, test again, and verify that full-clockwise now gives full-power. If turning the knob
has no effect, things get a bit more complicated. If you have access to an oscilloscope,
measure the waveform between 555 pin 7 and ground. If you see a square wave that varies
when you turn the knob, the problem is with the MOSFET or MOSFET wiring. If you don't
see a square wave at pin 7, the problem may be in the chip power supply or in one of the
chip's timing components. Step through the circuit with your multimeter's continuity tester
and look for broken and shorted connections.

If you have a hard time soldering to the potentiometer body, here are some tips that should
make it a lot easier:
1. Use the recommended 62/36/2 silver-bearing rosin-core solder, in the recommended
0.022" diameter. It's RadioShack Part #64-013.
2. Make sure your iron is hot enough. I use the RadioShack digital soldering station
(#64-053) with the factory tip, set to 680 F.
3. Clean the surface of the pot with a scouring pad, then pretin the ends of the wires
and the body of the pot.
4. Use a vise to hold everything in place while you solder. Let the joints cool before
loosening the vise.

If turning the knob causes little or no change in your motor's speed, the problem may be
with your potentiometer. If gentle pushing or pulling on the pot's shaft causes the motor
speed to change dramatically, try replacing the pot. If that doesn't fix the problem, first
carefully check the circuit with your multimeter's continuity setting, and reflow any solder
joints that look grainy, dull, or incomplete.

You might also like