Iterative Methods for Precision Motion Control with Application to a Wafer Scanner System Hoday Stearns Advisor: Professor Masayoshi Tomizuka PhD Seminar Presentation 2011-05-04 1/42
Dec 31, 2015
Iterative Methods for Precision Motion Control with Application to
a Wafer Scanner System
Hoday StearnsAdvisor: Professor Masayoshi Tomizuka
PhD Seminar Presentation2011-05-04
1/42
Semiconductor manufacturing
Courtesy of ASML
Photolithography
2/42
Advances in Photolithography
Resolution
Wavelength Numerical aperture
Semiconductor manufacturing
Wafer stage motion control• Ultra-high positioning precision• High velocities• Synchronization
22 nm Half-pitch0.55 nm Inter-atom spacing in silicon
Advanced control schemes
3/42
Courtesy of IEEE Spectrum
Wafer stage test system
4/42
Overall experimental setupPrototype wafer stage
FPGA 7831R RT Target
Linear motorInterferometer
Motor driverPCI axis board
5/42
0 0.5 1 1.5 2 2.5 3 3.5-1
-0.5
0
0.5
1x 10
-4
Time (s)
Err
or
(m)
tracking error measur
eposition
0 0.5 1 1.5 2 2.5 3 3.50
0.2
0.4
Time (s)
Po
sitio
n (
m)
Challenges in precision tracking
Error while accelerating
disturbances
sensor noise
Reference Command
vibrations
Decreasetrackingerror
6/42
Baseline controller design
• Uses sensor measurements
• Increases robustness• Trajectory independent• Limited to being causal
Feedforward control …• Uses a-priori information• Improves transient
response• Trajectory dependent• a-causal
Feedback control … Feedforward control …
Feedback Controller
FeedforwardController
Plantreference error measurement
+-
++
7/42
Repetitive processeswafer
die
8/42
Repetitive processeswafer
die
Information from past runs is used to improve future runs
Iteratively update a feedforward signal
Iterative learning control (ILC)
Iteratively update a controller parameters
Iterative feedback tuning (IFT)
9/42
• Improves performance of systems that operate repetitively over a fixed time interval
• Updates a feedforward signal iteratively based on the tracking error signal of previous runs.
)()()()()( 111 dkqLkqQk jj
ILCjILC euu
C Pr(k) e(k) y(k)+
+-
UILC(k)
+
ILC update law
Iterative learning control
L: learning filter
Q: Q filter• Low-pass filter• Zero-phase• Q ≈ 1 : turn learning on• Q ≈ 0: turn learning off
• In P-type ILC, L = scalar
10/42
Iterative learning control
Simple to implement Effective Data-driven method Does not change feedback loop
ILC is effective at reducing error due to :Repetitive disturbancesTrajectory
disturbances
sensor noiseError while accelerating
vibrations
Advantages:
11/42
ILC example
0 0.5 1 1.5-4
-2
0
2
4x 10
-5
Time (s)
Err
or (
m)
Run 1
Run 3Run 5
0 5 100
0.5
1
1.5
2x 10
-7
IterationR
MS
err
or (
m)
12/42
ILC considerations
Stability
0 5 100
2
4x 10
-7
IterationR
MS
err
or (
m)
0 5 100
2
4x 10
-7
Iteration
RM
S e
rror
(m
)
Asymptotic performance
Transient performance0 5 10
0
2
4x 10
-7
Iteration
RM
S e
rror
(m
)
Robustness
ILC design should satisfy the following considerations:
13/42
ILC challenges Vibrations
Nonrepetitive High frequencyILC can only compensate for repetitive disturbances
Difficult to design ILC algorithms with robust performance at high frequencies
ILC design for systems with
vibrations
#1
14/42
ILC challengesNew Trajectories
When trajectory changes, learning must be restarted from scratch
0 1000 2000 30000
0.05
0.1
0 2000 4000 60000
0.2
0.4
0 1000 2000 3000-5
0
5x 10
-5
Trajectory 1 Tracking error ILC signal
0 1000 2000 3000-5
0
5x 10
-5
Trajectory 2 Tracking error ILC signal
? ?
ApplyILC
Feedforward signalrecalculation method #2
Feedforward controller iterative
tuning #315/42
ILC design for systems with
vibrations
#1
16/42
Error sources categorization
Repetitive Non-repetitiveLow frequency Force ripple (< 20
Hz)Table vibration (18 Hz)
High frequency Vibration modes of plant (150 Hz)
Sensor noise
DOB
DOB and ILC
Special ILC design
17/42
filtering
First try: P-type ILCP-type ILC, Q filter with 250 Hz cutoff
Large learning transient
0 0.2 0.4 0.6 0.8 1 1.2 1.4-2
-1
0
1
2x 10
-6 Tracking error after 20 runs
Time
Err
or (
m)
Q filter function:
Learning turned on in frequency bands where Q ≈ 1
Learning turned off in frequency bands where Q ≈ 0
18/42
First try: P-type ILC
0.2 0.22 0.24 0.26
-1
0
1
2
x 10-6 Tracking error after 20 runs
TimeE
rror
(m
)
100 Hz cutoff
250 Hz cutoff
P-type ILC, Q filter with 250 Hz cutoffP-type ILC, Q filter with 100 Hz cutoff
0 0.2 0.4 0.6 0.8 1 1.2 1.4-4
-2
0
2
4x 10
-6 Tracking error after 20 runs
Time
Err
or (
m)
100 Hz cutoff
250 Hz cutoff
Worse peak error
19/42
Transient eliminated
0.2 0.22 0.24 0.26 0.28 0.3 0.32
-2
-1
0
1
2
x 10-6 Tracking error after 20 runs
Time
Err
or (
m)
250 Hz cutoff
250 Hz cutoff w notch
P-type ILC, Q filter with 250 Hz cutoffP-type ILC, Q filter with 250 Hz cutoff and notch at 150 Hz
0.2 0.22 0.24 0.26 0.28
-2
-1
0
1
2
x 10-6 Tracking error after 20 runs
Time
Err
or (
m)
250 Hz cutoff w notch
250 Hz cutoff w dynamic notch
P-type ILC, Q filter with 250 Hz cutoff and dynamic notch
P-type ILC with notch Q filter
20/42
Transient eliminated
Notch L filter
0.2 0.22 0.24 0.26 0.28 0.3
-1
-0.5
0
0.5
1
1.5
x 10-6 Tracking error after 20 runs
Time
Err
or (
m)
250 Hz cutoff
notch L filter
P-type ILC, Q filter with 250 Hz cutoffNotch L filter, Q filter with 250 Hz cutoff
0.2 0.21 0.22 0.23 0.24 0.25 0.26 0.27
-1
0
1
2x 10
-6 Tracking error after 20 runs
Time
Err
or (
m)
notch L filter
dynamic notch L
Dynamic notch L filter, Q filter with 250 Hz cutoff
21/42
0.2 0.22 0.24 0.26 0.28
-1
-0.5
0
0.5
1
x 10-6 Tracking error after 20 runs
Time
Err
or (
m)
250 Hz cutoff
frequency shaped L
P-type ILC, Q filter with 250 Hz cutoffFrequency-shaped L filter, Q filter with 250 Hz cutoff
Frequency shaped L filter
0
10
20
Mag
nitu
de (
dB)
100
101
102
103
-45
0
45
90
135
Pha
se (
deg)
Bode Diagram
Frequency (Hz)
L filter shape
22/42
Notch LFrequency shaped L
0.56 0.58 0.6 0.62 0.64 0.66
-5
0
5
x 10-6 Tracking error after 20 runs
Time
Err
or (
m)
model inverse L
Model-inverse L, Q filter with 250 Hz cutoff
Model-inverse L filter
23/42
Overall comparison - experiment
24/42
Frequency shaped L filter gives 42.2% improvement over P-type 250 Hz cutoff
2 4 6 8 10 12 14 16 18 200
0.5
1
1.5
2
2.5
x 10-8 RMS tracking error during learning
Iteration number
RM
S e
rror
(m
)
P-type 100 Hz cutoff
P-type 250 Hz cutoffQ notch
Q dynamic notch
L notch
L dynamic notchL frequency shaped
L model inverse
Dynamic notch L filter gives 28.3% improvement over P-type 250 Hz cutoff • Time-varying filters (Q and L) can give better performance than fixed filters• For L, choosing a filter can give better performance than choosing a scalar
Conclusions
Stability of designed ILC
25/42
-60
-40
-20
0
Mag
nitu
de (
dB)
100
101
102
103
-360
0
360
720
Pha
se (
deg)
Bode Diagram
Frequency (Hz)
P-type 100 Hz cutoffP-type 250 Hz cutoffFrequency shaped L
Stability condition
The lowest is ILC with frequency-
shaped L
Performance of designed ILC
26/42
100
101
102
103
10-5
100
Mag
nitu
deBode plot
100
101
102
103
-20
0
20
40
60
Pha
se (
deg)
Frequency (Hz)
P-type 100 Hz cutoffP-type 250 Hz cutoffFrequency shaped L
Asymptotic error equation
The lowest is ILC with frequency-
shaped L
Feedforward signal generation
for new trajectories via ILC
#2
27/42
ILC for feedforward signal generation• A learned ILC signal is limited to a single trajectory.• If trajectory is changed, ILC signal must be relearned.
Develop a method for generalizing ILC results to other scan trajectories
0 1000 2000 30000
0.05
0.1
0 2000 4000 60000
0.2
0.4
0 1000 2000 3000-5
0
5x 10
-5
Trajectory 1 Tracking error ILC signal
0 1000 2000 3000-5
0
5x 10
-5
Trajectory 2 Tracking error ILC signal
? ?
ApplyILC
28/42
Construction of a scan trajectory
0 500 1000 1500 2000 25000
0.02
0.04
0.06
0.08
0.1
sample index
Pos
ition
(m
)
0 500 1000 1500 2000 25000
0.05
0.1
0.15
0.2
Vel
ocity
(m
/s)
0 500 1000 1500 2000 2500-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Accele
ration (
m/s
/s)
Po
siti
on
Vel
oci
tyA
ccel
erat
ion
Scanning at constant velocity
Constant acceleration
scantacct acct
• Specify • scan length, • velocity limit,• acceleration limit
• Time-optimal trajectory• Polynomial spline
29/42
Construction of a Scan Trajectory
0 500 1000 1500 2000 2500-2
-1
0
1
2
Acc
eler
atio
n (m
/s/s
)
0 500 1000 1500 2000 2500-2
-1
0
1
2
Acc
eler
atio
n (m
/s/s
)
0 500 1000 1500 2000 2500-2
-1
0
1
2
Acc
eler
atio
n (m
/s/s
)
0 500 1000 1500 2000 2500-2
-1
0
1
2
Acc
eler
atio
n (m
/s/s
)
+
Notice that acceleration is superposition of 4 shifted and scaled step signals
30/42
0 0.2 0.4 0.6 0.8 10
0.02
0.04
0.06
0.08
0.1
Time (s)
Po
sitio
n (
m)
Trajectory 1
0 0.2 0.4 0.6 0.8 1-2
-1
0
1
2
Time (s)
Acce
lera
tion
(m
/s2 )
Trajectory 1 Acceleration
Feedforward signal analysisILC feedforward input signal is also a superposition (assume no disturbances)
)()()()()( 4,3,2,1,max ttuttuttuttuatu uILCuILCuILCuILCILC
Base feedforward signal
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5x 10
-5
erro
r (m
)
time (s)
=+
ILC input for Traj 1
31/42
-1 0 1 2 3 4-1
0
1
2x 10
-5
Time (s)
FF
sig
na
l (m
)
Base feedforward signal
acausal part
0 2 40
1
2x 10
-5
0 2 40
1
2x 10
-5
Learned signal decomposition
Then, test it in the system:
Feedforward signal synthesis
32/42
New scan trajectory
0 0.5 1 1.5 20
0.05
0.1
0.15
0.2
Time (s)
Po
sitio
n (
m)
Trajectory 2
Synthesize ILC input
0 0.5 1 1.5 2-4
-2
0
2
4x 10
-5
Time (s)u IL
C (
m)
Synthesized input for traj 2
• Doesn’t require model• Doesn’t require redoing learning iterations• Achieves low tracking error
Advantages of proposed method
Experimental Results
0.2 0.25 0.3 0.35
-4
-2
0
2
4x 10
-6
Time (s)
Tra
ckin
g e
rro
r (m
)Tracking error for Traj 2
Before ILCAfter 5 iters ILCUsing the synthesized FF inputUsing FF controller
The proposed method achieves performance that is:• Similar to ILC, but without need to repeat learning iterations• Better than feedforward controller
33/42
RMS error is 33.5% lower than with FF controller
Iterative tuning of feedforward
controllers
#3
34/42
Feedforward signal vs. controller
Feedback Controller
FeedforwardController
Plantreference error measurement
+-
++
Feedback Controller
Plantreference error measurement
+-
++
ILC feedforwardsignal
Inverse plant structureDisturbance model structure
35/42
Iterative Controller Tuning
No model of the plant is needed for optimization
IFT is an iterative method of tuning controller parameters Minimizes a cost functionDescent algorithm searchGradient direction estimated from experimental data
0
0.5
1
0
0.5
10
2
4
6
8
x 10-7
p1
p2
Obj
ectiv
e fu
nctio
n
Iterative Feedback Tuning
36/42
k
JRkk
11= scalar to control step size
ρ= controller parameters to be tuned
k = iteration #R = positive definite matrix
0 0.5 1 1.5 2 2.5 3 3.5-1
0
1
0.5
-0.5
x 10-4
Time (s)
Err
or
(m)
The effect of IFT on error profile
Feedforward controller 1
Peak error decreased 95%
0 0.5 1 1.5 2 2.5 3 3.5-1
0
1
0.5
-0.5
x 10-4
Time (s)
Err
or
(m)
The effect of IFT on error profile
First trialAfter 10 cycles
Inverse model structure
For reducing error due to trajectory
37/42
Force ripple
0 1 2 3-1
-0.5
0
0.5
1x 10
-4
Time (s)
Err
or
(m)
Effect of FF tuning on error profile
First trialAfter 10 cycles
0.4 0.6 0.8 1 1.2 1.4
-3
-2.5
-2
-1.5
-1
-0.5
0
0.5
x 10-6
Time (s)
Err
or
(m)
Force Ripple
Force Ripple is a periodic disturbance that arises in linear permanent magnet motors due to imperfections
38/42
N
kkkripple ykbykayuyF
100 )cos()sin()()(
Feedforward controller 2
Feedforward signals
N
kkkfr trkbtrkatvtF
100 ))(cos(ˆ))(sin(ˆ)()(
Force ripple compensator
For reducing error due to force ripple disturbance
39/420 0.5 1 1.5
-3
-2
-1
0
1
2
3x 10
-6
Time (s)
Err
or
(m)
The effect of tuning on error profile
First TrialAfter 10 Cyclestune tune
Comparison of ILC and IFT
0 0.5 1 1.5 2 2.5 3 3.5
-2
0
2
x 10-6 Time plot of error
Time (s)
Po
siti
on
Err
or
(m)
IFT
0 0.5 1 1.5 2 2.5 3 3.5
-2
0
2
x 10-6 Time plot of error
Time (s)
Po
siti
on
Err
or
(m)
ILC
Time plot of error
IFT:• Applicable for new
trajectories• Performance can be
improved by increasing controller complexity
ILC:• Most effective• Simpler computation• No assumptions of
model structures
40/42
Iterative methods for high precision position control
• ILC design for systems with vibration• ILC feedforward computation for scan
trajectories• Iterative feedforward controller tuning
41/42
Conclusion
42/22
Thank youProfessor Tomizuka
MSC Lab
Precision motion control group
Repetitive Processes
Silicon wafer 300mm diameter
Die
Changing every year 43/22
Repetitive Processes
Silicon wafer 300mm diameter
Die
• Translates to: • high tracking precision (error
<1nm)• high repeatability• high scanning speeds
International Technology Roadmap for Semiconductors
Changing every year 44/22
Modelling
bsms
ksP
2)(
45/22
m
Fx
b
Trajectory Design
46/22
Construction of a scan trajectory
0 500 1000 1500 2000 25000
0.02
0.04
0.06
0.08
0.1
sample index
Pos
ition
(m
)
0 500 1000 1500 2000 25000
0.05
0.1
0.15
0.2
Vel
ocity
(m
/s)
0 500 1000 1500 2000 2500-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Accele
ration (
m/s
/s)
Po
siti
on
Vel
oci
ty
Acc
eler
ati
on
Scanning at constant velocity
Constant acceleration
scantacct acct
• Specify • scan length, • velocity limit,• acceleration limit
• Time-optimal trajectory is unique
• It is polynomial spline• The continuous-time
trajectory is determined analytically then sampled
Thesis contributions
• Applying ILC for high precision control of systems with vibrations
• Making ILC tuning results applicable to multiple trajectories
• Compensating for force ripple disturbance through IFT.
Experiment
• One complication: force ripple• Force ripple is NOT LTI so it cannot be scaled and time-shifted.• Nor is force ripple disturbance always the same : it depends on the
reference trajectory
0 500 1000 1500 2000-1
-0.5
0
0.5
1x 10
-6
0 500 1000 1500 2000-1
-0.5
0
0.5
1x 10
-6
)2
sin()2
cos()(1
kyP
BkyP
AuyF k
N
kkrip
DOB Design
PC
10P
Q
dr
ILCu
Solution:
Use a disturbance observer
DOB compensates the force ripple
And ILC feedforward signal compensates error due to the trajectory
0 500 1000 1500 2000 2500
-2
0
2
x 10-5
Err
or
(m)
no DOBDOB
1000 1200 1400 1600 1800
-3
-2
-1
0
1x 10
-6
Err
or
(m)
Gradient estimate
22
1
])[(])[()( nuneJN
n
)(][
][)(][
][)(1
nunu
nene
J N
n
][
1
)(
)(][
][)()(1
1][
2
11
nrPC
CP
ne
nrqCqP
ne
][11
1)(1nr
PC
PC
PC
C
C
Cost function:
The relation of error to the controller is known, so
Cost function gradient:
C Pe[n]r[n]
-
51/22
Assume SISO
Controller Tuning Algorithm
k
JRkk
11
22
1
])[(])[()( nuneJN
n
Minimize a cost function:
Using a gradient-based iterative search
k = iteration #
= scalar to control step size
R = positive definite matrix
ρ= controller parameters to be tuned
e = tracking error
u = control effort
52/22
Gradient estimate][
11
1)(1][nr
PC
PC
PC
C
C
ne
Although are known,
)(,
1 C
C PC
PC
PC 1,
1
1are unknown/uncertain because involves plant
Gradient can be obtained by passing reference through system twice
C Pe[n]r[n]
- C P
C
1
)(C
][ne
][1
nrPC
PC
][11
1nr
PC
PC
PC
53/22
-
Experiment Results
0 0.5 1 1.5-3
-2
-1
0
1
2
3x 10
-6
Time (s)
Err
or
(m)
The effect of tuning on error profile
First TrialAfter 10 Cycles
2 4 6 8 100
1
2
3
4
5
6x 10
-10
Iteration number
Co
st fu
nct
ion
(su
m o
f sq
ua
red
err
or) Minimization of sum of squared error
N
kkkfr trkbtrkatvtF
100 ))(cos(ˆ))(sin(ˆ)()(
tune
2 4 6 8 10-1.5
-1
-0.5
0
0.5
1
Iteration number
Convergence of parameters ak, b
k over iterations
a1b1a2b2a3b3a4b4
tune
54/42
Experiment Results
0 0.5 1 1.5-3
-2
-1
0
1
2
3x 10
-6
Time (s)
Err
or
(m)
The effect of tuning on error profile
First TrialAfter 10 Cycles
N
kkkfr trkbtrkatvtF
100 ))(cos(ˆ))(sin(ˆ)()(
tune tune
55/42
Tuning Results
0 0.2 0.4 0.60
0.1
0.2
0.3
0.4
0.5
0.6
1
2
Evolution of 1 and
2
Expected value
2 4 6 8 100
0.5
1
1.5
2x 10
-6
Iteration number
Co
st fu
nct
ion
(su
m o
f sq
ua
red
err
or)
Minimization of squared error Norm of error Evolution of ρ1, ρ2
56/42
Semiconductor manufacturingMoore’s law
Transistor dimension vs. yearCourtesy of Intel
Courtesy of ASML
Photolithography
57/42
Semiconductor manufacturingAdvances in Photolithography
Resolution
Wavelength Numerical aperture
Photolithography
58/42
Semiconductor manufacturing
Wafer stage motion control• Ultra-high positioning precision• High velocities• Synchronization
Advances in Photolithography
Resolution
Wavelength Numerical aperture 22 nm Half-pitch
0.55 nm Inter-atom spacing in silicon
Advanced control schemes
59/42