Iterative Methods for Precision Motion Control with Application to a Wafer Scanner System Hoday...

Post on 30-Mar-2015

219 views 4 download

Tags:

Transcript of Iterative Methods for Precision Motion Control with Application to a Wafer Scanner System Hoday...

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