GETTING CONTROL
by KEVIN MCCULLOGH
WITH THE
Propeller
PART 3:
Stepper Motors
Introduction
In the last article of this series, David Carrier covered
how hobby servos work and an appropriate control scheme
using the Propeller™ microcontroller. By taking advantage
of the Propeller’s multiple onboard processors, the control
board was designed to be easy to use with a minimum
number of components. In this part of the series, we will
take a “step” (bad pun intended) into the world of stepper
motors. We will look at bipolar steppers in particular and
some methods to improve their performance.
Stepper Motor General
Description/Comparison
In general, stepper motors are brushless motors with
many poles per rotation. In a standard DC motor, an
applied voltage causes the motor to spin continuously
because the windings are automatically commutated
(switched) internally as the rotor travels through a full
rotation. In a stepper motor, windings are commutated
externally, usually with either discrete transistor switches or
H-bridges. The main advantage they have over DC motors is
their ability to be controlled to precise angles without using
closed loop feedback. This is at the expense of increased
motor weight, and lower efficiency and speed. However,
open loop control systems are generally much simpler and
cheaper than closed loop servo systems.
Types of Stepper Motors
Stepper motors come in a variety of configurations, as
shown in Figures 1-3, but are generally categorized as
48 SERVO 11.2008
unipolar or bipolar. From a controller’s point of view,
the main difference is that unipolar motors only require
current flow in one direction, while bipolar motors require
the current to reverse direction. This makes unipolar motors
easier to control electrically since current can simply be
switched on or off in each winding. Bipolar motors
generally require more complex circuitry, such as H-bridges
to reverse current through the windings. This can increase
the cost of the controller.
On the positive side, the power-to-weight ratio of
bipolar motors surpasses unipolar motors since the entire
winding is utilized at any given time on each pole. In
unipolar motors, only half the coil is driven at a time. This
reduces the size and usually cost of bipolar motors over
unipolar motors with comparable specifications.
For this article, we will implement a control scheme for
a bipolar stepper motor using the Propeller microcontroller
and some external circuitry. And, since there is always
something satisfying about improving hardware
performance, we will also go over some ways to
optimize the stepper motor drive system.
S
N N
S
S
N NN
S
S
N NN
S
Figure 1: Unipolar
stepper with
continuous
windings
Figure 2: Unipolar
stepper with
separate windings
Figure 3: Bipolar
stepper motor