Servo and stepper motors have similar construction and share the same fundamental operating principle. Both motor types incorporate a rotor with permanent magnets and a stator with coiled windings, and both are operated by energizing, or applying a dc voltage to, the stator windings, which causes the rotor to move. However, this is where the similarities between servo and stepper motors end.
Stepper motors have 50 to 100 poles and are 2-phase devices, where servo motors have between 4 and 12 poles and are 3-phase devices. Stepper motor drives generate sine waves whose frequency changes with speed, but whose amplitude is constant.
Servo drives, on the other hand, produce sine waves with variable frequency and amplitude, allowing them to control both speed and torque.
Traditional stepper motors move when they receive a command to advance a certain number of pulses, which correlate to a distance. Steppers are considered open-loop systems because they lack a feedback mechanism to verify that the target position has been reached. Servo motors also move on receipt of a command signal from their controller. In contrast to the open-loop operation of stepper motor systems, servo motors are closed-loop systems, with built-in encoders that continuously communicate back to the controller, which makes any needed adjustments to ensure the target position is reached.
In stepper motor systems, if the available motor torque is not adequate to overcome the load, the motor will stall or skip over one or more pulses, creating a difference between the desired position and the actual position reached. To avoid this, stepper motors are often oversized to ensure there’s a large margin between the worst-case load torque and the motor’s available torque. But there is an alternative to oversizing the motor. By adding an encoder and operating in closed-loop mode, stepper motor systems can achieve position monitoring and control much like servo motors.
The most straightforward way to operate a stepper motor in closed-loop mode is to compare the theoretical position which should have been reached based on the number of steps, with the actual position reached based on the encoder feedback. If there is a difference between the target and actual positions, the controller initiates a correction move.
While the above method is reactive, correcting the motor’s position after completion of the move, a closed-loop stepper can also continuously monitor the difference between the position steps and the encoder feedback (which is typically mounted on the load). With continuous feedback, compensation can be done in real-time, by increasing the pulse rate, temporarily increasing the current, or adjusting the step angle.
A third method for operating stepper motors in closed-loop mode employs sinusoidal commutation. If the rotor and stator magnetic fields are not properly aligned, the encoder adjusts the motor current to exactly match the torque needed to move or hold the load. Because the feedback is used to control torque by manipulating the motor current, this mode is sometimes referred to as servo control. In servo control mode, the stepper motor is essentially acting like a high-pole count servo motor, but without the noise and resonance that traditional stepper motors exhibit, providing a much smoother movement and more precise control. And with current that is dynamic, rather than constant as in a traditional stepper, the problem of motor heating is largely avoided.
Closed-loop stepper motors eliminate many of the disadvantages of traditional open-loop stepper systems, making them similar in performance to servo motors. But servo motors outperform even closed-loop steppers in applications that require high speed, high torque at high speed, or the ability to handle changing loads.
Feature image credit: Advanced Micro Controls, Inc.