Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Abstract
A new decoding method is presented for analog encoders enabling major improvements in both accuracy and resolution. A
simulation study and experiments with real, industrial-grade, equipment demonstrate the performance improvement of the proposed
method, revealing that the new method can generate position estimates with accuracy about three times better than that of standard
methods. Moreover, in some special cases, the resulting position accuracy can reach sub-nanometer levels, thus enabling further size
reduction in the semiconductor industry. The proposed algorithm also yields velocity estimates better by about two orders of
magnitude than those obtained with standard methods.
r 2005 Elsevier Ltd. All rights reserved.
Keywords: Encoders; Kalman filters; Estimation algorithms; Nonlinear filters; Accuracy; Measurement noise
0967-0661/$ - see front matter r 2005 Elsevier Ltd. All rights reserved.
doi:10.1016/j.conengprac.2005.01.008
ARTICLE IN PRESS
338 Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350
nature, using the filtering algorithm off-line for the sole sub-micron resolution, as required by production
purpose of calibrating the analog encoder. Other systems, the analog signals must be sampled and
researchers (Hagiwara, Suzuki, & Murase, 1992; Mayer, decoded. The measurement vector z 2 R2 can be
1994) deal only with the issue of calculating the encoder described as follows:
angle from the sine and cosine signal by applying inverse " # " #
zð1Þ V sinð2pf s xðtÞÞ
trigonometric functions. z9 ¼ , (1)
This paper deals with the accuracy issue of analog zð2Þ V cosð2pf s xðtÞÞ
encoders by applying on-line filtering to the measured
signals. Using the extended Kalman filtering (EKF) where f s is the scale spatial frequency, V is the signal
framework, a novel decoding algorithm is developed amplitude and xðtÞ is the position.
and verified. The new algorithm enables improved Most manufacturers use the following equation to
position estimation and a dramatic improvement in estimate the position from the measured signals
velocity estimation, relative to commercially available (Venema, 1994):
existing algorithms. atan2ðzð1Þ; zð2ÞÞ
The remainder of this paper is organized as follows. x¼ , (2)
2pf s
In the next section the operational principles of an
analog encoder are described and the measurement where atan2ð; Þ is the 4 quadrant inverse tangent
model is constructed. The system model is then function. Some manufacturers increase the estimation
developed and both models are put together within the accuracy by normalizing the signals and applying an
framework of an EKF. The following section presents a arcsine or an arccosine function, depending on the signal
simulation study through which the filter’s performance absolute value, as follows:
8
is verified, and a discussion of the results. Some of the > arcsinðzð1Þ=kz kÞ
>
> ; jzð1Þjpjzð2Þj;
more interesting and promising aspects of the proposed < 2pf s
decoding method are pointed out. Next, the proposed x¼ (3)
>
> arccosðzð2Þ=kz kÞ
algorithm is experimented with real industrial hardware >
: ; jzð2Þjojzð1Þj:
2pf s
and confronted with a conventional algorithm. Con-
cluding remarks are offered in the final section. This procedure increases the signal-to-noise ratio (SNR)
by taking the information from the more sensitive
regions in the signal harmonic.
2. Encoder model All of the above algorithms do not apply any filtering
procedure to the signal, i.e., they do not use any prior
2.1. Principle of operation information regarding the signal to weigh it against the
current measured information. In the presence of
The encoder’s principle of operation is schematically measurement noise, the algorithm’s output, i.e., the
depicted in Fig. 1. A scale, having gold-made triangular estimated position, becomes noisy as well. Furthermore,
facets, reflects the light of an infra-red LED light source, the estimated velocity signal, calculated by numerically
through an index grating, unto a photo-detector. Due to differentiating the (noisy) position signal, is subject to
the periodic pattern of both the scale and the index much higher noise levels.
grating, sinusoidal interference fringes are produced on To account for the sampling operation that trans-
the detection plane of the photo-detector. Whenever the forms the continuous signal xðtÞ to its sampled version
moving parts are in motion, i.e., the light source, the xðk þ 1Þ; and for the contamination of the measurement
index grating and the photo detector move relative to by the measurement noise, Eq. (1) is rewritten as
the static scale, the fringes move along the detection
plane. Using a special assembly, the photo detectors z ðk þ 1Þ ¼ h ðxðk þ 1ÞÞ þ v ðk þ 1Þ
" #
provide signals related to the motion of the fringes. An V sinð2pf s xðk þ 1ÞÞ
electronic circuit amplifies and combines the photo ¼ þ v ðk þ 1Þ, ð4Þ
detectors’ signals to generate two sinusoidal waveforms V cosð2pf s xðk þ 1ÞÞ
of equal amplitude and period (equaling the scale where v ðk þ 1Þ is the measurement noise. There are
period), separated by a 90 degrees phase shift. The several sources for measurement noise (Venema, 1994),
interested reader is referred to (Webster, 1999; Re- but the most dominant one is introduced by an
nishaw, 1998) for further details. electronic noise within the sampling operation (ground
noise of the analog-to-digital (A/D) converter). The
2.2. Measurement model measurement noise is assumed to be a white, zero-mean
Gaussian stationary sequence:
The most accurate scales now commercially available
have resolutions of a few micrometers. To obtain v Nð0; R Þ. (5)
ARTICLE IN PRESS
Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350 339
Moving
Analog incremental
parts
Analog combination signal Sine & Cosine
electronics
Preamplifiers
Photocurrent
Photo Detectors
Light Source
Read Head
window
Index
Grating
Static
Part
Scale
Eq. (4), relating the measurement vector z to the desired and its inherent sensitivity to the quality of its under-
position signal x, is nonlinear. The filtering algorithm lying mathematical model.
used is, therefore, the well-known EKF. The state Following Bar-Shalom and Fortmann (1988) a kine-
equation, needed also in the EKF framework, is matic model of a linear system driven by a white noise
discussed next. was adopted. The state variables are the position, the
velocity and the acceleration of the system. The state
2.3. State space model vector is, thus
Trigonometric Standard
cosine A/D
decoding processing
True
position
Fig. 2. Simulation block diagram.
1.02
1.01
position [µm]
1
0.99
0.98
0.97
0.244 0.246 0.248 0.25 0.252 0.254 0.256
1.02
1.01
position [µm]
0.99
0.98
0.97
0.244 0.246 0.248 0.25 0.252 0.254 0.256
time [sec]
Fig. 3. True vs. estimated position, EKF (top) and inverse trigonometric (bottom) decoding methods.
20
10
error [nanometer]
-10
-20
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
20
10
error [nanometer]
-10
-20
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
time [sec]
Fig. 4. Position estimation error, EKF (top) and inverse trigonometric (bottom) decoding methods.
Table 2
Position 1-s error (nanometer) for sinusoidal signals (designated by frequency and amplitude) and constant velocity signal (designated by amplitude)
Table 3
Velocity 1-s error ðmm=sÞ for sinusoidal signals (designated by frequency and amplitude) and a constant velocity signal (designated by amplitude)
50
error [µm/sec]
-50
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
500
error [µm/sec]
-500
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
time [sec]
Fig. 5. Velocity estimation error, EKF (top) and inverse trigonometric (bottom) decoding methods (notice the different vertical scales).
4
[nanometer]
0
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
3
[µm/sec]
0
0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
time [sec]
Fig. 6. Predicted error standard deviation calculated from the EKF covariance matrix. Position (top) and velocity (bottom).
ARTICLE IN PRESS
344 Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350
Fig. 6 presents the predicted error standard deviation cases results of sub-nanometer position accuracies were
as calculated from the EKF error covariance matrix. obtained by using the proposed algorithm. This is
Note the good correlation of the accuracy predicted by mainly due to the fact that the low values of acceleration
the filter, 1.7 nm in position and 2:6 mm=s in velocity, enable tuning of the filter with relatively low values of
with the actual results shown in Tables 2 and 3. Note s2m ; as shown in Table 4. Accuracy is also commonly
also the fast convergence of the filter and its quasi-static improved by raising the sampling frequency. To-date
behavior. commercial controllers are limited to sampling fre-
In some special cases, wafer production and inspec- quency of about 20 kHz, but future hardware develop-
tion systems are subject to very low amplitudes in ment will surely enable higher rates. Table 4
position (quasi-static behavior). When simulating such demonstrates that sub-nanometer accuracy can be
Table 4
Simulation results—sub-nanometer accuracy, 2 Hz signals (position and velocity errors are 1-s values)
Host Computer
Matlab/Simulink
Real−Time Interface
DS1103
MASTER PPC Renishaw RG2
Z Axis
Analog Encoder
Renishaw RG2
X Axis
Analog Encoder
DS1103 ADC
Cosine Channel
dSPACE DS1103
achieved by raising the sampling frequency to 100 kHz. are detailed in Table 5. Fig. 8 shows a picture of the
The two cases are compared to the normal setting of the Anorad Ltd. ‘‘EVEREST’’ multi-axis precision stage.
filter (third row of Table 4). Note that the accuracy of The experiments consisted of applying a series of
the standard inverse trigonometric decoding method is motion profiles to the X -axis of the testbed. The
independent of the above setting and remains ca. 5 nm. resulting encoder signals were recorded and the pro-
posed algorithm applied to the acquired data. The
results were compared to the ones obtained when
applying a conventional algorithm to the same data.
5. Experimental validation The recorded data were first analyzed to determine noise
parameters, important for a successful implementation
In the previous section the performance improve- of the proposed algorithm.
ments associated with the new algorithm were demon- The experiments comprised the following two stages:
strated via a simulation study. To further validate the
simulation and demonstrate the capability of the (1) static tests, in which the X -axis was held in some
method, an experiment using real data, acquired via constant position,
an operative industrial system, has been carried out. The (2) dynamic tests, where several dynamic motion
experiment was performed at the Mechatronics Labora- profiles were executed.
tory of the Technion—Israel Institute of Technology’s
faculty of mechanical engineering. The testbed centers
x 104
on an ‘‘EVEREST’’ industrial X –Y –Z precision stage 10
assembled by Anorad Ltd., using RG-2 linear analog 9
encoders made by Renishaw Ltd., as the position
8
sensors. The stage is normally used for wafer inspection,
which requires resolution of 40 nm. A dSPACE data 7
acquisition system with real-time interface (dSPACE,
6
Samples
3
Table 5 2
Experimental setup parameters
1
Parameter Value
0
-5 -4 -3 -2 -1 0 1 2 3 4 5
Sampler dynamic range (V) 10
LSBs
Sampler resolution (bits) 12 (a) Sine channel
Sampling frequency (kHz) 20
Signal amplitude (V) 5.45 x 104
10
Encoder scale cycle ðmmÞ 20
9
6
Samples
0
-5 -4 -3 -2 -1 0 1 2 3 4 5
LSBs
(b) Cosine channel
Fig. 8. Anorad-assembled ‘‘EVEREST’’ multi-axis precision stage Fig. 9. Noise histograms and corresponding Gaussian PDFs in both
used for the experimental investigation. encoder channels: (a) Sine channel; (b) cosine channel.
ARTICLE IN PRESS
346 Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350
The former tests facilitate an assessment of the noise 5.1. Noise statistics assessment
statistical properties due to the table’s known constant
position and zero velocity, both serving as reference The statistical parameters of the measurement noise
signals for comparison. The latter tests were executed in associated with each encoder channel (sine, cosine) were
order to verify and demonstrate the ability of the assessed from data acquired in the static tests, where all
proposed algorithm to track dynamic motion profiles. variations from the mean constant position are assumed
10-5
V /Hz
-6
10
2
10-7
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000
Frequency [Hz]
(a) Sine channel
10-5
V /Hz
10-6
2
10-7
0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000
Frequency [Hz]
(b) Cosine channel
Fig. 10. Experimental PSDs of measurement noise in both encoder channels: (a) Sine channel; (b) cosine channel.
ARTICLE IN PRESS
Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350 347
20
10
error [nanometer]
-10
-20
0 0.05 0.1 0.15 0.2 0.25
20
10
error [nanometer]
-10
-20
0 0.05 0.1 0.15 0.2 0.25
time [sec]
Fig. 11. Position estimation error in the static experiment: EKF (top) vs. inverse trigonometric (bottom) decoding methods.
ARTICLE IN PRESS
348 Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350
50
error [µm/sec]
0
-50
0 0.05 0.1 0.15 0.2 0.25
500
error [µm/sec]
-500
0 0.05 0.1 0.15 0.2 0.25
time [sec]
Fig. 12. Velocity estimation error in the static experiment: EKF (top) vs. inverse trigonometric (bottom) decoding methods (notice the different
vertical scales).
Table 6 9
Position and velocity 1-s estimation errors in static experiment
8.5
7
EKF 2.4 2.0
6.5
6
as zero in the static test, which serves as the reference to 5.5
which both estimates are compared. As can be seen from
5
Fig. 12, the velocity estimation error is reduced by the
new method by more than an order of magnitude (notice 4.5
the different scales of the vertical axes). The estimation 4
error standard deviation corresponding to the new 0 0.05 0.1 0.15 0.2 0.25
time [sec]
method is 2:0 mm=s; vs. a value of 182:0 mm=s corre-
sponding to the inverse trigonometric decoding method. Fig. 13. A typical motion profile executed during the dynamic
Again, these values are in good agreement with the experiment.
results of the simulations presented in Section 4. Table 6
summarizes the position and velocity 1 s errors of method and the conventional one. As can be clearly
both algorithms in the static experiment. observed, the estimates obtained using the proposed
algorithm are much smoother than those obtained using
5.3. Dynamic experiment results the standard method. Although the accuracy of the
estimates cannot be quantitatively determined in this
In the last stage of the experiment, the new estimation test due to the absence of an independent, accurate
algorithm was applied to data acquired when the table reference signal, it can be safely stated that the smooth
was in motion, in order to verify the algorithm’s ability position and velocity estimates computed by the new
to track dynamic motion profiles. The same tuning method are in much better agreement with the table’s
parameters used during the static tests were employed dynamics, which is low-pass in nature.
during this stage. A typical motion profile is presented in Finally, Fig. 15 presents the velocity estimates during
Fig. 13. Fig. 14 presents estimates of this motion profile a typical dynamic motion test. As evident from Fig. 15,
as computed by both the proposed EKF-based decoding the standard algorithm generates an extremely coarse
ARTICLE IN PRESS
Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350 349
7.9
7.85
position [um]
7.8
7.75
7.7
0.045 0.05 0.055 0.06 0.065 0.07
7.9
7.85
position [um]
7.8
7.75
7.7
0.045 0.05 0.055 0.06 0.065 0.07
time [sec]
Fig. 14. Position estimates as computed by the new method (top figure) and the standard algorithm (bottom figure) during the dynamic experiment.
500
velocity [µm/sec]
-500
0 0.05 0.1 0.15 0.2 0.25
500
velocity [µm/sec]
-500
0 0.05 0.1 0.15 0.2 0.25
time [sec]
Fig. 15. Velocity estimates as computed by the new method (top figure) and the standard algorithm (bottom figure) during dynamic motion of the
table.
velocity estimate, which is virtually useless for the conventional algorithm’s velocity estimate is so large
purpose of driving a feedback control loop. In clear that it is bound to introduce significant delays.
contradistinction, the newly proposed method generates
a much smoother estimate that can be considered a good
source for a control feedback signal, without presenting 6. Conclusions
too much risk of loop stability. It should be noted that
although low-pass pre-filtering of the velocity estimate is A new decoding method is presented for analog
possible, the amount of filtering needed to smoothen the encoders. Based on the EKF technique, the new method
ARTICLE IN PRESS
350 Y. Zimmerman et al. / Control Engineering Practice 14 (2006) 337–350
enables major improvements in accuracy and resolution. Ltd. The authors also thank Dr. Izhak Bucher of the
The algorithm can be easily implemented in multi-axis Technion—Israel Institute of Technology for providing
table controllers and other applications using analog the facilities and instrumentation of the Mechatronics
encoders (linear or otherwise). The position accuracy is Laboratory.
normally three times better than that of a standard
inverse trigonometric decoding method and, in some
special cases, can reach sub-nanometer levels, thus References
enabling further size reduction in the semiconductor
industry while using off-the-shelve, commercially avail- Bar-Shalom, Y., & Fortmann, T. E. (1988). Tracking and data
able sensors and hardware. Another important benefit association. San Diego, CA: Academic Press, Inc.
of the proposed algorithm is its inherent velocity dSPACE (2001). Real time interface implementation guide. Paderborn:
dSPACE.
estimation capability, with velocity estimates better by
dSPACE (2003). dSPACE DS1103 PPC controller board installation
two orders of magnitude than those obtained with and configuration guide. Paderborn: dSPACE.
standard methods. Guidelines regarding the filter tuning Hagiwara, N., Suzuki, Y., & Murase, H. (1992). A method of
are also provided. Experiments using industrial hard- improving the resolution and accuracy of rotary encoders using a
ware show good correspondence with simulated results code compensation technique. IEEE Transactions on Instrumenta-
and further point out the possibilities enabled using the tion and Measurements, 41(1), 98–101.
Mayer, J. R. R. (1994). High-resolution of rotary encodes analog
proposed algorithm. quadrature signals. IEEE Transactions on Instrumentation and
Measurements, 43(3), 494–498.
Mendel, J. M. (1987). Lessons in digital estimation theory. Englewood
Acknowledgements Cliffs, NJ, USA: Prentice-Hall Inc.
Renishaw. (1998). RG2 linear encoder system. Renishaw Ltd.,
commercial catalog.
The authors wish to express their gratitude to the Venema, S. C. (1994). A Kalman filter calibration method for analog
Anorad Ltd. and Mega-F Motion Systems Ltd. quadrature position encoders. Master’s thesis, University of
companies, that facilitated the experiment by generously Washington, Seattle, Washington, USA.
providing some of the required experimental Webster, J. (Ed.). (1999). The measurement instrumentation and sensor
handbook. Boca Raton, FL, USA: CRC press.
setup components. In particular, the help of the
Yang, Y., Rees, N., & Chuter, T. (2002). Reduction of encoder
following individuals is gratefully acknowledged: measurement errors in UKIRT telescope control system using a
Alex Novikov of Anorad Ltd., and Dr. Max Sakhartov Kalman filter. IEEE Transactions on Control Systems Technology,
and Avraham Levkovich of Mega-F Motion Systems 10(1), 149–157.