Tutorial: The Basics of Stepper Motors - Part I
| By: Kristin Lewotsky, Contributing Editor
Economical, easy to integrate, and capable of delivering high torque at low speeds, stepper motors provide a good solution for a range of applications.
Although servo motors satisfy a wide range of precision motion needs, for some applications, the stepper motor provides a useful alternative. A stepper motor is a synchronous brushless motor with an inherently digital function. Unlike DC brushed motors, which spin constantly for as long as the stator coils are energized, a stepper motor runs on a pulsed current and with each pulse turns some fraction of a full rotation. As a result, they can operate effectively without close-loop feedback. A motion system can position a load with a stepper motor simply by commanding a set number of steps. Stepper motors are particularly well-suited to digital drives and applications. Rugged, economical, and accurate, they play essential roles in everything from spinning-disk hard drives to printers to robotics to CNC machine tools.
Stepper motors 101
A stepper motor consists of a central rotor surrounded by a stator with some number of windings (see figure 1). When one winding or set of windings is energized, it becomes an electromagnet with a polarity determined by the direction of current. In figure A, for example, applying current to winding A creates a north pole facing the rotor. Magnetic attraction applies a force to the rotor pole, causing the rotor to turn some fraction of a rotation until its South pole is positioned in proximity to the windings North pole, driving torque to zero. This constitutes a step.
To continue motion, the first set of windings must be deenergized and another set energized. As a result, the rotor pole is once again displaced from the stator pole. The energized winding applies a force to the rotor, causing it to turn another step.
We can express static torque as a function of angular position for an ideal permanent-magnet (PM) stepper motor as
where is holding torque, which represents the maximum torque the motor can exert to prevent a load from moving, and, S is step angle in radians and θ is shaft angle, in radians.1 In particular, the expression represents the electrical shaft angle.
Types of stepper motors
To understand the process in further detail, let's consider the simplest type of stepper motor, a two-phase permanent-magnet (PM) design. In a PM stepper motor, the rotor consists of a cylindrical permanent magnet with the magnetic poles divided laterally (see figure 3). For a two-phase motor, we have four windings, designated A, A’, B, and B’. If we energize coil A so that the portion closest to the rotor becomes a north pole, the south pole of the rotor will be attracted to it, turning until the two line up, driving the torque to zero. This constitutes a step, with a step angle of 90°.
As described above, we deenergize coil A and energize coil B, causing the motor to advance another step. Energizing the coils in sequence causes the rotor to spin in a series of discrete steps.
PM stepper motors can provide an economical solution, but their ability to generate torque is limited, particularly at high speeds--increased inductance prevents the current from getting high enough to fully realize the torque. PM designs are restricted to coarse step angles of typically 45 or 90°. Such large advances introduce vibration, particularly at low speeds.
The variable-reluctance stepper motor provides a higher resolution alternative. A variable-reluctance stepper motor does not have a permanent include a magnet. Instead, the rotor consists of an iron or steel cylinder formed with teeth such that the air gap between rotor and coils varies. This allows the device to take advantage of a phenomenon called salience, in which changes in the width of the air gap between the rotor and stator cause the inductance to vary. This develops a force called reluctance torque that acts on the rotor.
Magnetic flux, in this case from the stator coils, always seeks the path of minimum reluctance. When the rotor teeth are offset from the energized coils of the stator, the flux applies a force to position the teeth in a way that minimizes the width of the air gap, as shown below:
To drive the torque to zero, the rotor turns to fully align the tooth or subset of teeth to the energized coil, effectively taking a step.
To keep the motor turning, we must deenergize the coil A and energize coil B. This only works if the number of teeth on the rotor differs from the number of stator coils to ensure that when one set of teeth is aligned to the energized coil, the other teeth are all misaligned from their nearest (un-energized) coil. As a result, when we deenergize coil A and energize coil B, the nearest teeth are offset from the magnetic pole. The flux once again acts to minimize torque, causing the rotor to turn another step.
An alternative approach is a hybrid stepper motor which carries characteristics of both types. In a hybrid stepper motor, the permanent magnet of the rotor is oriented so that the magnetic poles are arranged axially rather than laterally. A toothed iron or steel disc is bonded to each side of the magnet. Each disc has the same number of teeth but they are clocked relative to each other so that the teeth on the north pole are are half a tooth pitch out of phase with the teeth on the south pole (see figure 2). The result, viewed axially, is a rotor with alternating north and south poles. A common size for a hybrid stepper motor is 200 steps per revolution, with a step angle of 1.8°.
The number of phases in a stepper motor is defined by the number of distinct sets of coils that must be energized in sequence in order to move the rotor. A single motor can have a large number of phases; conversely, a single phase can have from two to N windings. In general, the greater number of windings energized in a single phase, the greater the power consumption but also the greater the torque. In theory, the design is limited only by machining capabilities and the amount of space required to keep the windings distinct. Practically speaking, however, past a certain point, the empty space consumed by too many phases acts to reduce the total amount of torque that the motor can generate. Thus, winding design and how you drive those windings play a key role in performance.
Full-step single-coil mode
Stepper motors can be excited in any one of several modes, each of which has different characteristics. The simplest excitation mode is full-step single-coil mode, or wave drive, in which just one coil of the stator is energized each step. It provides minimal torque, and so cannot be used with high loads. It does minimize power consumption, however.
Full-step dual-coil mode
In this excitation mode, the coils of the stator are energized in pairs. Recall the torque versus position curve shown in figure 2. If we excite two coils simultaneously, their torque curves superimpose to yield a larger torque that goes as (see figure 5).
The design consumes twice as much voltage or current as single-coil mode, depending on whether it is wired and series or in parallel, but it can produce nearly 100% of rated torque.
Half-step single-coil mode
Half-stepping provides a way to double resolution of a stepper motor without modifying the rotor or stator. A stepper motor operating in single-coil half-step mode will excite a single pole, then excite two adjacent coils to advance the rotor a half step, then excite another single pole to advance another half step, etc. (see figure 6). Half-stepping increases resolution with just a change to the drive electronics.
Half-step dual-coil mode
In this mode, two coils are energized the first step, then four, then two, etc. Initially, opposing windings with north and south poles are energized to extract more torque out of the first step. Next, adjacent coils are energized simultaneously (see figure 7). Note, that for a two-phase motor, this means all coils are excited simultaneously. In this case, half stepping not only increases resolution, it allows the motor to produce optimum torque.
The benefits of increased resolution go beyond positioning accuracy. Shrinking the step angle reduces vibration and avoids exciting resonances in the motor. The result is smoother, quieter motion.
The effect can be taken further with the use of microstepping. Microstepping divides the basic step angle into smaller increments; for example, a divide-by-10 microstep mode would decrease the standard step angle by a factor of 10.
Let's look at the most common form of micro stepping, known as sine/cosine micro stepping. We excite two coils simultaneously to achieve a combined holding torque equal to the holding torque of a single winding according to:
Then the current we apply to the two windings to set the rotor at the angle is given by:
where IA is the current through winding A with equilibrium at angle 0, IB is the current through winding B with equilibrium at angle S, and Imax is the maximum allowed current through any motor winding.
Micro stepping has been enabled by the availability of powerful-low-cost microcontrollers. It's not a perfect solution, however. Digital controllers used to generate the drive signal are limited by the quantization capabilities of the analog-to-digital converter.
Detent, or the attraction between rotor teeth and magnets, can introduce variation and motion, and friction can limit precision. Still, the technique can provide very good performance for a range of applications. In part two of this tutorial, we'll discuss wiring and driver considerations, as well as trade-offs involved in choosing the right type of stepper motor.
1. Douglas Jones, “Control of Stepping Motors,” http://homepage.cs.uiowa.edu/~jones/step/index.html