To determine the position of a linear axis, an encoder read head travels along a scale and “reads” changes in light (for optical encoders) or magnetic field (for magnetic types). As the read head registers these changes, it produces sine and cosine signals that are shifted 90 degrees from each other (referred to as “quadrature signals”). These analog sine and cosine signals are converted to digital signals, which are then interpolated — in some cases, by a factor of 16,000 or more — to increase resolution. But the interpolation can only be accurate if the original analog signals are without errors. Any imperfection in the sine and cosine signals — referred to as sub-divisional error — degrades the quality of the interpolation and reduces the accuracy of the encoder.
Sub-divisional error is cyclic, occurring with each interval of the scale or scanning pitch (i.e with each signal period), but it does not accumulate and is independent of the scale or travel length. The two primary causes of SDE are mechanical inaccuracies and misalignment between the scale and the read head, although harmonic disturbances can also cause distortions in the sine and cosine signals.
Using a Lissajous pattern to determine sub-divisional error
To analyze sub-divisional error, the magnitude of the sine wave signal is plotted on an X-Y graph against the magnitude of the cosine wave signal, over time. This creates what is referred to as a “Lissajous” pattern.
With the plot centered at the 0,0 coordinate, if the signals are phase shifted by exactly 90 degrees and have a 1:1 amplitude, the plot will form a perfect circle. Sub-divisional error can manifest as an offset of the center point, or as differences in phase (sine and cosine shift not exactly 90 degrees) or amplitude between the sine and cosine signals. Even in high-quality encoders, SDE can be 1 to 2 percent of the signal period, so signal processing electronics often include gain, phase, and offset corrections to counter sub-divisional errors.
Direct drives require high-accuracy encoders
Encoder accuracy is important for positioning applications driven by mechanically-coupled rotary motors, but accuracy is especially critical when a direct drive linear motor is being used. The difference lies in how speed is controlled.
In a traditional rotary motor application, a rotary encoder attached to the motor provides speed information, while the linear encoder provides position information. But in direct drive applications, there is no rotary encoder. The linear encoder provides feedback for both speed and position, with the speed information being derived from the encoder’s position. Sub-divisional error — which impairs the encoder’s ability to accurately report position, and therefore, derive speed information — can lead to velocity ripple.
In addition, direct drive systems can be operated with high control loop gains, which allows them to respond quickly to correct errors in position or speed. But as the frequency of the error increases, the controller is unable to keep up with the error, and the motor draws more current trying to respond, resulting in audible noise and excessive motor heating.
Sub-divisional error is sometimes referred to as interpolation error and is typically expressed in nanometers (nm) for linear encoders and in degrees for rotary encoders.
Kevin Kaufenberg says
Nice article on interpolation error!