Sensorless Control of Stepper Motors

Closed-loop stepper motors as an alternative to BLDC motors
Stepper motor technology was long considered to be a cost-effective alternative to applications that do not demand the high performance delivered by servo motors. Due to their attractive production price and comparatively high torque-to-size ratio, they continued to be used in device engineering. For auxiliary axes in mechanical engineering, however, servo systems began to be given preference. Although servos were often more expensive to procure due to the tedious testing of ramps to avoid resonance bands and because of the more complex sizing on account of the lack of feedback, they were easier to commission, and this made them more attractive for limited lot production. 

This trend has been halted and even reversed in recent years by the development of field-oriented closed-loop controlled stepper motors. The heart of closed-loop technology is a power-adjusted current control and control signal feedback. These stepper motors are controlled in exactly the same way as servo motors: the rotor position is detected using the encoder's signals and sinusoidal phase currents are generated in the motor windings. Vector control of the magnetic field ensures that the magnetic field of the stator is always perpendicular to that of the rotor and that the field strength corresponds precisely to the desired torque. Thus, a closed-loop stepper motor is basically nothing more than a high-pole brushless DC servo motor (BLDC). All of the disadvantages traditionally associated with stepper motor technology, such as resonances and excessive heat development, are no longer an issue. Instead, we now have a system that can continuously achieve a torque that is 2 to 3 times than that of a servo motor of the same size at 20–50% of the rated speed.

Combined with the more favorable price of a stepper motor system, closed-loop stepper motors are an economical alternative to servo systems. Nevertheless, closed-loop systems have not always succeeded in supplanting open-loop systems in traditional stepper motor applications, such as in laboratory automation or small CNC milling machines. While closed-loop technology does offer advantages here as well, the high cost of the encoder, which usually far exceeds that of a small motor, is generally prohibitive to widespread use of this technology in these applications. Moreover, the positioning accuracy of stepper motors without an encoder is usually sufficient in these applications.

A virtual encoder replaces a real encoder
To be able to benefit from the advantages of field-oriented control in these applications, Nanotec has developed a sensorless, i.e. an encoder-free, control for stepper motors in which the actual position and speed of the rotor is determined by a "virtual encoder" in the controller. 

Sensorless systems have been in use in BLDC motors for many years, especially in fans and pumps that do not require position control. All sensorless systems utilize the physical effect that the motor induces a counter voltage (back-EMF) during operation that is proportional to the speed.

The simplest sensorless control is to directly measure the back-EMF while a coil is de-energized in the commutation cycle. Compared to a standard actuation, however, this method requires special hardware and is only stable at approx. 10–20% of the rated speed of the motor, below which the measurement signal is too small.  For this reason, demanding applications now rely on systems that, using an "observer", reconstruct values that cannot be measured directly, such as the speed or back-EMF, from other values that are measured by the current controller. The core of this type of system is a precise model of the motor that, in parallel with the real motor, calculates the values, such as the current in the winding, from the known input values, such as the set PWM. These calculated values are measured as well.  The calculated values are then compared to the measured values in every cycle. On account of the observation error determined in this way, the internal values of the motor model are permanently adjusted. Thus, correct estimates can be obtained for the values that are not actually measured, such as the speed. Although this method only works because the reaction of the winding changes as a function of the speed on account of the induced voltage, the directly measured values can be readily measured even at small speeds. The result is a "virtual encoder" that delivers the position and speed information, beginning at a certain minimum speed, with the same precision as an actual optical or magnetic encoder. 

All Plug & Drive motors from Nanotec implement field-oriented control (closed loop).  BLDC and stepper motors are controlled on a field-oriented basis as a function of the load and differ only in terms of the working points resulting from the differing number of poles. Thus, both of these motor types behave like DC servos. The rotor position required for control, or the field angle, can be established using either a rotary encoder or a sensorless method, which is described below.

No step losses, no resonances
A critical factor for the quality of the observer-based controller is a good model of the motor in use, both in terms of the mathematical formulas and the motor constants of the connected motor.   

Thus, the task at hand was to find a sufficiently precise mathematical model of the motor that can be fully calculated in every control cycle, even in a small microprocessor. In principle, stepper motors are mathematically similar to BLDC motors, but have only two instead of the usual three phases of the BLDC and also exhibit some special features in the model at higher speeds because of the higher pole count.

Another important aspect regarding the practical use of a sensorless controller is the identification of the parameters of the model. BLDC controllers frequently require a large number of motor-dependent parameters that are often not specified on the data sheets but need to be determined with considerable effort. This also applies to systems that do not implement "true" sensorless control but only have a blocking detection mechanism or a simplified control that reduces the rated motor current as a function of load. Even in these cases, motor-dependent threshold values must be recognized and configured.

The sensorless system from Nanotec, in contrast, operates with very few parameters, which do not actually have to be known to the user: an auto setup routine measures the connected motor and automatically determines all of the required parameters.
Depending on the motor type, the speed and positioning information is obtained between 100 and 250 rpm. This information is equally precise as that of an optical encoder with 500 or 1000 increments. The resulting motor control is of the same quality and torque as that of a motor controlled via an encoder. Even below this threshold value, sensorless control still operates down to approx. 10–25 rpm. However, its accuracy decreases with the speed, and the achievable torque drops as well.

At high speeds, in contrast, the sensorless system actually works better than a rotary encoder, which always exhibits a runout tolerance that leads to a sinusoidal angular error. In standard encoders without their own bearings, this error can reach a magnitude of up to ±1°, which will lead to vibrations in closed-loop mode at higher speeds. In virtual encoders, on the other hand, the error at high speeds is on the same order as the step angle error of the motor (±0.09°). In addition, encoders always deliver digital, discrete position values. Especially at low resolutions, this leads to synchronization fluctuations of the motor. The virtual encoder value, in contrast, is continuous and constant.

The observer-based control makes it unnecessary to use motors with a very high back-EMF but with the disadvantage of a high inductance and consequently with poorer dynamics. On the contrary: motors with very low inductance and low resistance – and thus a high rated current – work far better.

Open loop and closed loop combined
Sensorless control is particularly appealing for stepper motors because it can be used not only for speed applications, but also for positioning when used in combination with open-loop control. The sensorless algorithm is able to detect the accuracy with which the speed is currently being estimated. If the signal becomes too imprecise as the speed decreases, the system automatically switches to open-loop mode and positioning continues to be possible. Because only few steps are generally traveled at low speeds in open-loop mode, resonances are not an issue here. When restarted from a standstill, only a few degrees are needed to return to closed-loop mode. Thus, sensorless technology makes it possible to benefit from the advantages of field-oriented control in almost all traditional stepper motor applications.

Back

Questions? Comments?

Do you have questions or remarks about this article?

Contact support