The best motor is the one that meets the application requirements. However, when both servo motors and stepper motors satisfy the basic requirements of a positioning application, it's important to have a deeper understanding of the two technologies to make an informed decision.
In this blog post, we will summarize the differences between servo motor systems and stepper motor systems.
Let's start with a quick comparison of the two motor technologies.
Although servo motors and stepper motors both use permanent magnets in the rotor and require drive circuits to operate, there are fundamental differences in their design that lead to differences in performance.
A stepper motor can be commanded to move to a position, stop, then hold, while a servo motor needs to "hunt" for the target position with encoder feedback. The first major difference that you'll notice is that the servo motor's requirement for an encoder increases the motor length.
The second major difference is the number of poles. The poles discussed here are "magnetic poles" and can be defined as either north or south magnetic poles on the rotor. These poles provide specific stable points where the magnetic flux from the stator would interact with the rotor.
To understand the difference in the number of poles between stepper motors and servo motors, we'll need to look deeper into each motor design. The left image below shows the construction of a stepper motor, and the right image below shows a cross-sectional diagram of its rotor and stator.
A stepper motor design uses an axially magnetized rare earth permanent magnet that is sandwiched between two teethed rotor cups. By axially magnetizing the permanent magnet, the teeth of the two rotor cups become magnetic poles of the opposite polarity. A rotor cup can have either 50 or 100 teeth, and the two rotor cups are skewed at half a tooth pitch. The teeth from both rotors are shown in blue and red in the right image above (if you were looking from the shaft side). For a stepper motor, every tooth on both rotor cups becomes a pole.
A servo motor (shown above) uses a radially magnetized rotor instead of teeth (shown below), which is the main reason servo motors have significantly fewer poles. The low number of poles also requires the use of encoder feedback to minimize error.
A servo motor design typically uses a rotor with 2~8 poles and a 3-phase stator (U, V, W). Its rotor is radially magnetized with segmented permanent magnets instead of axially magnetized like a stepper motor.
An example of a 4 pole rotor with a 6 pole stator design is shown on the right.
As you can see, a servo motor offers significantly fewer poles than a stepper motor due to lack of teeth.
A servo motor requires more footprint due to the requirement of an absolute encoder. The fewer number of poles gives it the ability to generate higher torque at higher speeds. A stepper motor can run in open-loop without an encoder, therefore it's more compact.
For positioning applications, one of the primary requirements we have to satisfy is the motor's stop accuracy. Both a stepper motor and a servo motor can stop accurately.
A stepper motor's stop accuracy depends on the manufacturing quality of the windings (electrical) and teeth construction (mechanical), while a servo motor's accuracy depends on the assembly accuracy, encoder resolution, and algorithm.
Remember that there is a very thin air gap between the rotor and stator, and the only friction is from its ball bearings. Friction torque or gravitational load can cause the actual stop position to deviate, so there's a tiny bit of error as you move from position to position. When we plot the errors that occur as the motors rotate 1 full revolution, they look like the graphs below.
|Servo Motor||Stepper Motor|
Notice that they both offer a stop accuracy of about +/-0.02°, which is under a stepper motor's typical repetitive stop accuracy specification of 3 arc minutes, or +/-0.05°. While a stepper motor offers better repeatability at 7.2° increments or almost perfect repeatability at 360° increments, a servo motor’s stop accuracy is dependent on its encoder resolution.
The stop accuracy of a stepper motor is highly dependent on its winding characteristics, rotor construction accuracy, as well as the number of teeth/poles in its rotor. The stop accuracy of a servo motor is dependent on assembly accuracy, encoder resolution, and operating algorithm. In a way, you can say that a stepper motor is "mechanically designed" for positioning applications, and servo motors are "electrically designed" for positioning applications.
|High Speed Performance|
Servo motors are generally known for running higher speeds than stepper motors. What this really means is that the servo motor will output more torque at a specified RPM than a stepper motor. This difference in torque performance comes from the difference in pole count as well as winding inductance between servo motor and stepper motor designs.
The number of poles also affects the number of times a motor winding needs to be advanced for a full motor revolution. For a servo motor, it may take only 12 "steps" to advance a full revolution. However, it takes 200 "steps" for a 2-phase stepper motor. At low speeds, this doesn't make a significant difference. However, at high speeds, the driver will not be able to fully energize the windings. Since current is proportional to torque, the torque decreases at high speeds.
The performance difference between stepper motors and servo motors can be best shown by their speed-torque curves. Here's an example comparing a stepper motor and a servo motor of the same frame size.
|NEMA 23 Stepper Motor||200 W (1/4 HP) 60 mm Servo Motor|
The high pole count of stepper motors allows them to generate high starting and run smoothly at low speed. They can respond quickly, position accurately without an encoder, and easily generate holding torque. However, due to high winding inductance, pole count, and L/R constants, the torque decreases in the high speed region. The low pole count and low winding inductance of servo motors do not generate high starting torque but allow them to maintain its torque better throughout its entire speed range.
By definition, a servo motor has to operate with closed-loop control, and a stepper motor typically operates with open-loop control. A servo motor uses feedback in order to control the motor's position, speed, or torque. A stepper motor is commanded to move to a specific location without the need for feedback but could lose synchronism due to overload.
The addition of feedback to keep synchronism does complicate the driver design and increases the number of components. In addition to a pulse generator, phase sequencer, and FET from a typical stepper motor system, a servo motor system also contains a rotor position counter, F/V converter, current amp, speed amp, position amp, and deviation counter. All of these components are required to run the motor in a PID loop where the driver constantly computes errors and adjusts the proportional/integral/derivative gains for correction on the fly. This is why servo motors are more expensive and requires processing time.
|Servo Motor System||Stepper Motor System|
Along with closed-loop feedback, the motor's load-to-rotor-inertia-ratio also increases. A stepper motor can handle about 10x its rotor inertia, while a servo motor can handle 100x its rotor inertia. As a comparison, a closed-loop stepper motor can handle 30x its rotor inertia.
Stepper motors operate without the need for feedback, so they require fewer components to operate. This is why they're more cost-effective. Servo motors require feedback and operate in a PID loop, therefore more components are necessary.
Stepper motors use a current chopper driver technology, which provides a constant current supply regardless of load. Current is proportional to temperature, so a stepper motor's duty cycle needs to be limited to about 50%. Servo motors offers more efficient current control because it only draws the current it needs. One thing that a stepper motor is better at is its ability to generate holding torque at zero speed. Servo motors use more power to generate holding torque.
Closed-loop feedback also allows more efficient current control, which affects motor temperature and service life. In the graph below, we plot the temperature rise against the operating duty cycle [%] of a motor. Notice how the temperature rises with operating duty. This is why duty cycle needs to be limited for stepper motors. The service life of a motor is determined by its bearing grease life, and the bearing grease life depends on temperature.
Efficient current control can also lead to other performance benefits, such as lower noise and vibration. Also, size motors properly. Stepper motors tend to vibrate more when it's not properly sized. Servo motors tend to "hunt" more if it's not properly sized or tuned.
The ability to only draw the required current is a big advantage of servo motor systems that can also help increase service life, lower noise for certain applications, or lower power consumption. For a stepper motor to offer the same kind of efficient current control, it would require closing the loop.
To help with product selection, we have compiled a list of differences between servos and steppers.
Product selection is a constant balancing act between cost and performance. If you have the budget, a servo motor system may be a one-for-all solution that may be excessive at times but will offer the best performance with some tuning. For point-to-point applications, a stepper motor system may be a way to simplify design and reduce cost.
Hold on. There's more...