DSP to GO

Over the past decade, digital signal processor (DSP) technology has significantly reduced the physical complexity of industrial drives by replacing hardware with real-time embedded software. Today, DSP technology is also being harnessed to minimize, or even replace, motor mounted feedback devices, making motion systems more robust and even less expensive. Here we explore several feedback schemes for ac servomotors made possible by DSP-based drives.

Count the cost

Ac servomotors are the workhorses of the motion control industry. But tapping into their performance has traditionally come at the cost of multiple feedback devices and increased wiring. The added expense is necessary because controllers must know position, velocity, and electrical angle (theta) in real-time to fully harness the capabilities of modern servo machines.

One of the more common feedback devices used with ac servomotors is a commutating encoder. Three commutation sensors (S1, S2, and S3) embedded in the device measure rotor position to within 60 electrical degrees. This information is read during startup, giving the controller a coarse (angular) reference as it initially applies current.

As the motor begins to rotate, the relative position count from encoder channels A+B is captured at the commutation sensor edge. This captured value is arbitrary and is used as an offset to align the signal theta with the rotor's absolute electrical angle. Once aligned, theta is then driven incrementally from channels A+B, providing an exact measurement of electrical angle.

The A+B derived signal theta is normally used as an input to drive field transformations. Field transformations behave like ac-to-dc and dc-to-ac conversions, making it possible to measure motor current and apply voltage relative to the rotor's position, or electrical angle. This transformation approach is often called field-oriented control. One of the benefits of field-oriented control is that it allows position, velocity, and current to be dynamically controlled in a dc manor, independent of the rotor's electrical angle.

Room for improvement

Although commutating encoders are widely used, there are some drawbacks to this approach. Specifically, after starting the motor, the commutation signals are normally not used. If these signals are driven differentially, this means that six additional wires are present only for the purpose of starting the motor. The additional wiring adds cost and can reduce reliability, especially in a mechanism where feedback cabling is routinely flexed.

Another issue is that not all encoders are provided with commutation signals. For this reason, some ac servomotors are fitted with an incremental encoder plus magnetic Hall sensors to monitor rotor position. This alternate approach takes a toll, adding component count, cost, and volume to the motor.

Replacing sensors with DSPs

As their name implies, digital signal processors are specifically designed for real-time control and signal processing. As DSP-based drives continue to evolve, designers are finding new ways to harness their capabilities. In the case of ac servocontrol, this means that newer software techniques are now being offered to replace the need for commutation signals, encoder A+B signals, and in some cases, both.

The trick to eliminating commutation sensors is to find an alternative method for determining electrical angle at startup. One such approach is to simply lock the motor into a pole position by ramping current to a high level at a fixed angle for a given period of time. In this case, the rotor naturally runs to a preset position and settles in.

Though simple, this is an open-loop approach and, as a result, must be empirically qualified in each application. Variation in load friction, inertia, and starting angle over time and temperature must be taken into account. The approach also causes a significant amount of shaft movement during startup, which is unacceptable in some applications.

A variation of this startup method is to hold the shaft in place using servocontrol while ramping current. Here, the position control loop drives theta (as a variable) to an appropriate angle during startup. In the process, the absolute electrical angle can be determined directly from the A+B channels with a minimal amount of shaft movement. Properly tuned, this closed-loop technique also offers better immunity to variations in load characteristics over time and temperature.

Linear Hall sensors

An alternative to eliminating the commutation signals (S1, S2, and S3) is to eliminate the encoder A+B+I channels. This approach also eliminates up to six wires. Starting the motor with commutation feedback alone is not a problem; here, the challenge is synthesizing feedback at a resolution high enough to control velocity and position with the necessary precision.

One way to accomplish this is to substitute linear-output Hall devices in place of the digital ones normally used. Linear Hall sensors appropriately placed in the motor's magnetic circuit can generate two or three phase-shifted sinusoidal signals. By reading and interpolating these analog inputs — two at 90° or three at 120° — a DSP can determine absolute shaft position to a relatively high degree of accuracy.

Consider a system employing a four-pole motor, two linear Hall sensors, and a DSP capable of × 256 interpolation. This inexpensive setup can calculate motor shaft position to 1:1,024, or about 0.3 mechanical degrees, a resolution sufficient for many servo applications.

Another advantage of using linear magnetic Hall sensors (in place of optical encoders) is the improved immunity to contamination in harsh environments. The low-frequency nature of linear Hall signals can also simplify cabling and electromagnetic compatibility issues. In addition, low-frequency feedback permits higher operating speeds that may otherwise be limited by high-resolution incremental encoders.

Going sensorless

In some applications, it is even possible to eliminate both sets of feedback signals by further harnessing the processing power of DSPs. Physical feedback devices can be replaced by measuring the terminal quantities of applied motor voltage and the resulting current. In this case, only the motor's phase leads are connected to the drive. This approach is known as sensorless control, and over the years researchers have developed many ways to achieve it.

The key to any sensorless control approach is to find a mathematical relationship between rotor position, as a variable, and real quantities that can be directly measured. One such approach, proven in many applications, uses a mathematical model of the motor and a control technique known as estimation.

An estimator is a special class of control filter that, in this case, repetitively guesses, or estimates, the shaft angle based on pre-existing knowledge of the motor's inductance, resistance, pole count, and magnetic flux distribution. Each time the filter is processed, an estimated position value is used to calculate applied voltage and measured current. The difference between these calculated terminal quantities and those actually measured provides an indication of error in the original guess.

The guessing process in the sensorless control algorithm is guided by an integrator routine, the effect of which drives position error to zero. The integrator operates by adding or subtracting a given distance from each new guess, subsequently forcing the calculated terminal quantities to match the measured values. In the process, shaft position is indirectly identified and controlled in real-time.

Limitations and reality

Sensorless control, in practice, imposes some limitations of its own, especially at low speeds. In place of sensor signals, sensorless control algorithms “read” position by observing the influence of the motor's back emf on applied voltage and resulting current. A fundamental limitation here is that when the motor is operating at low speed, it doesn't generate enough back emf to significantly influence these measured values. In other words, position feedback is generally lost at zero speed.

For this reason, ac servo sensorless control is normally limited to variable-speed applications. Only in special cases — perhaps where some observable motor parameter varies as a function of shaft position — can sensorless control be made to operate at zero speed.

Another limitation associated with sensorless control has to do with starting the motor. In the absence of hardwired feedback, most starting algorithms involve locking the motor into a pole position and then dragging it up to speed before switching to closed-loop control. However, ac servomotors are generally low pole-count machines, meaning that during the dragging process, the load is free to oscillate over a broad mechanical angle, making startup difficult to control. If load friction is too low, or load inertia too high, the motor can skip from one pole to the next (when accelerating) and eventually stall. The behavior, similar to that of a stepmotor dropping pulses at resonant frequencies, requires careful control.

Despite these limitations, however, the benefits of sensorless control far outweigh the challenges in many real-world applications. And with the increasing power of DSPs, software-based control is improving at a rapid clip, leaping over hurdles one by one.