Closed-loop stepper-motor control with step-loss compensation is a common performance-boosting algorithm for stepper systems.
In one prevalent form of step-loss compensation, an angle sensor or encoder tracks the motor-rotor position and any missed steps. Then the controller records its commands and the actual motor position from the encoder … converting position data to the equivalent number of steps. When the controller detects missed steps, it triggers position correction with makeup steps.
This form of step-loss compensation is useful when a stepper motor must deliver full speed or run near its maximum load (or where the output shaft is at risk of jamming).
Control in context: Preventing motors from missing steps
In another sensorless setup of step-loss compensation, the controller detects stalls through use back-EMF measurements for feedback.
Here, the controller uses a position loop to avoid lost steps from external disturbances through a current loop that modifies input to the motor … and keep the motor going, even under variable load.
Stepper motors have the advantage of running in an open loop configuration, as explained in FAQ: What is closed-loop control with load-position control? But closed-loop systems such as step-loss or load-position control require system feedback. Even so, these setups are less complicated and need less feedback than systems based on servomotors.
Different definitions for closed-loop stepper control
Note that some manufacturers define closed-loop stepper control as sinusoidal commutation using encoder feedback — to track rotor position and enable true field-oriented control. They argue that encoder-fitted stepper motors without field-oriented control (or sinusoidally commutated current control) are not true closed-loop options. The logic here is that such systems can only track step position and can’t correct for lost step during operation.
In contrast, true closed-loop stepper setups can correct for step losses. Here, the motor windings carry sinusoidal phase currents and the drive ensures the stator and rotor magnetic fields are complementary — so field strength delivers the target torque level. Such well-metered current in the windings lets the motor output consistent force with minimal noise and heat waste.
Another way to differentiate step-loss compensation
In contrast with load-position controls, step-loss controls don’t continuously compensate for errors throughout the movement profile.
Rather, only if the system detects lost steps does it take any corrective action.
Step-loss compensation is simpler than load-position control. Still, when considering whether to use closed-loop stepper motor control with step-loss compensation, think about what a particular system needs. Lost steps can throw off the entire operation of a stepper-motor-driven system. However, the degree to which a particular setup is sensitive to such failures will dictate whether it’s worthwhile to include step-loss compensation.
Another caveat: Step-loss compensation can correct errors and act as insurance. However, it shouldn’t serve as a first line of defense to make a stepper-control system foolproof. Take steps to ensure as few steps as possible are missed in the first place:
1) Select an appropriately sized motor. Here, use safety factors and ensure external causes don’t cause stalls.
2) Always test systems to make sure they won’t skip steps. Usually when a motion design misses steps, it loses multiple steps and not just one at a time. Careful checking and testing along with step-loss compensation can lead to more stable, reliable systems.
Edited by Zak Khan.
For more information on closed-loop stepper motor control with step-loss compensation:
PDF Download: Mircomo Solutions — How to prevent step losses with stepper motors?