Stepper vs Servo
Alex Maslakow - Applications Engineer
Overview When designing a new system, it can be difficult to determine which type of motor should be used to achieve the required motion. When precise speed and positioning are required the two most common motor technologies are Stepper and Servo motors.
In many cases, the speed and/or torque required from the motor determines whether an application is a better fit for a stepper or a servo motor. Other factors that impact motor selection are cost, type of load, and integration into the system.
Speed vs Torque Generally, stepper motors can provide higher torque at lower speeds than a comparably sized servo. However, the output torque available from a stepper decrease as the velocity increases and the maximum velocity is typically around 3000 RPM. Whereas, servo motors can provide a fairly constant torque output over a wider range of velocities and are usually better suited than stepper motors for applications requiring speeds over 1000 RPM. Below are the Torque vs. Speed curves for a stepper and a servo motor of similar sizes.
On an open-loop stepper motor, if the required motor torque (due to load or acceleration) exceeds what the motor can produce, the motor will lose synchronization and torque output. This will stall the motor and it will be unable to restart until the load or speed has been reduced to be within the motor’s capacity. The chart below represents a typical stepper motor torque/speed curve. A motor stall occurs when the required torque/speed exceeds the shaded area under the curve.
Overload Conditions The rotating component in a motor is the Rotor and the stationary part of the motor housing is the Stator. In a stepper motor, the permanent magnets in the rotor align with the magnetic field in the stator, locking the rotor in position, each position is a step. Many stepper motors have 200 steps in a full revolution. If the motor stalls it is because the load or speed caused the rotor to deviate too far from the commanded stator location. In newer stepper motor designs, the issue of stalling has been overcome by implementing closed-loop controls, an encoder built into the motor. This allows the motor driver to monitor the location of the rotor relative to the stator and if the position varies too much it can intervene by slightly “slowing” or “accelerating” the stator to prevent a loss of synchronization. This closed-loop feedback gives these stepper motors a more servo-like performance.
Servo motors are closed-loop motors that provide consistent torque output over a wide range of velocities. Servos are generally available in a wider variety of frame sizes and stack lengths when compared to Stepper motors. This allows a motor to be selected for the specific requirements of each application. A servo can handle overloaded conditions for a short amount of time without issue, the same conditions could cause a stepper to stall. If the servo is overloaded for too long the motor will likely become disabled due to a fault on the motor drive. The type of fault generated would likely be along the lines of too much torque or current being required by the motor, a high-temperature fault due to a prolonged increase in current draw, or the following error due to the actual motor position falling behind the commanded position.
Stop Positions When a stepper motor is powered and comes to a stop at a position there is no movement. The holding current keeps the shaft fixed at the current step position. On Servo motors, with closed-loop feedback, the motor is constantly trying to maintain the commanded position by constantly hunting back/forth around the commanded position. Generally, this movement is just a few feedback counts.
Tuning To achieve the desired motion or response to loads a servo motor must be tuned. The motor tuning determines how quickly and accurately the servo responds to a commanded move and the sensitivity to the load parameters. A couple of the primary components in tuning a servo are the P.I.D (Proportional, Integral, and Derivative) position loop and the Feedforward velocity. The Feedforward parameter is essentially the internal commands that are needed so that the commanded motion is followed without any error in a system where the motor and load parameters are correctly modeled. The PID control loop is used to combat any disturbances seen by the motor. Adjusting the PID loop impacts how quickly the motor moves to a commanded position, the amount (if any) the motor overshoots the commanded position and the settling time for the motor to reach a steady state.
Integration into System The ease and cost to integrate into the system are additional considerations if the required motor torque and speed indicate that either a stepper or servo could be used. In general, a stepper motor will be lower cost than a servo motor because the components that go into the motors themselves are lower cost and the required cabling is more simplistic and lower cost.
Conclusion To control both stepper and servo motors a motor drive and controller are needed. Servos are generally connected to a motor drive and a single drive or series of drives are then connected to a motion controller. Multiple axes of servo motion can be accurately coordinated by a motion controller. Servos are better fit for the coordinated motion because of the fast responses to disturbances, whereas steppers could stall or be slower to respond to disturbances.
The benefit of stepper motors and drives is that they are simpler to set up and have fewer parameters that need to be configured to get the system running. Integrated stepper motors with the drive/controller built into the body of the motor are an increasingly common option. This design makes integrating a stepper motor easier by reducing the number of components in the system.