28
1 Delft University of Technology Delft University of Technology Time domain models Course: Wb2301 Lecture 4 Erwin de Vlugt Feb 27 2007

SIPE - Lecture 4. Time domain models

Embed Size (px)

Citation preview

Page 1: SIPE - Lecture 4. Time domain models

1

Delft University of TechnologyDelft University of Technology

Time domain modelsCourse: Wb2301

Lecture 4

Erwin de Vlugt

Feb 27 2007

Page 2: SIPE - Lecture 4. Time domain models

Feb 27 2007 2

Delft University of Technology

Contents

• Time domain identification• Model structures• Model parameterization

Page 3: SIPE - Lecture 4. Time domain models

Feb 27 2007 3

Delft University of Technology

Lecture Targets

• Understand structural differences of discretemodels

• Determine model structures from physics• Estimate optimal order and parameters• Perform open and closed loop identification

using discrete models

Page 4: SIPE - Lecture 4. Time domain models

Feb 27 2007 4

Delft University of Technology

Time domain identification

1. Digital acquisition: signals are represented bydiscrete numbers (sampling)

2. Systems are described by polynomials in thez-domain• Advantage: appropriate for nonlinear

identification• Disadvantage: a priori knowledge required

3. Parameterization and validation in the samedomain

Page 5: SIPE - Lecture 4. Time domain models

Feb 27 2007 5

Delft University of Technology

Time domain identification

• PurposeCapture system properties by a limited number ofparameters (n < N)

• ApproachDiscriminate signal and noise

Page 6: SIPE - Lecture 4. Time domain models

Feb 27 2007 6

Delft University of Technology

Auto-regressive (AR) filter

y(k) =1

a1q−1 + a2q−2 + . . . + anq−nu(k)

Describes many physical processes due to feed-

back structure

Page 7: SIPE - Lecture 4. Time domain models

Feb 27 2007 7

Delft University of Technology

Moving Average (MA) filter

y(k) =(

b0 + b1q−1 + b2q

−2 + . . . + bnq−n)

u(k)

Finite time integration structure

Page 8: SIPE - Lecture 4. Time domain models

Feb 27 2007 8

Delft University of Technology

General Model

y(k) = G(q−1)u(k)+H(q−1)e(k)

• white noise e(k)

• goal: estimate G(q−1) from y(k), u(k)

Page 9: SIPE - Lecture 4. Time domain models

Feb 27 2007 9

Delft University of Technology

System Identification

• Experimental system data• Choice of model structure• Optimization criterion• Validation

Page 10: SIPE - Lecture 4. Time domain models

Feb 27 2007 10

Delft University of Technology

Finding the best model

System:

y(k) = G0(q−1)u(k) + H0(q

−1)e(k)

Assume a model (G,H, ǫ) can be found such that:

y(k) = G(q−1)u(k) + H(q−1)ǫ(k)

Then the model error becomes:

ǫ(k) = H−1(q−1)[

y(k) − G(q−1)u(k)]

Page 11: SIPE - Lecture 4. Time domain models

Feb 27 2007 11

Delft University of Technology

Obtaining the model

System: G0(q−1), H0(q

−1)

Model: G(q−1), H(q−1)

ǫ(k) = H−1(q−1)[

y(k) − G(q−1)u(k)]

Optimal fit :

If G(q−1) ≈ G0(q−1)

and H(q−1) ≈ H0(q−1)

then ǫ(k) ≈ e(k)

Page 12: SIPE - Lecture 4. Time domain models

Feb 27 2007 12

Delft University of Technology

Least squares (LS) Criterion

V (θ)N = minN∑

k=1

ǫ(k, θ)2

V cost functionθ model parameter vectorǫ model errorN number of data points

For the optimal solution: ǫ → e

Page 13: SIPE - Lecture 4. Time domain models

Feb 27 2007 13

Delft University of Technology

ARX structure

y(k) =B(q−1)

A(q−1)u(k) +

1

A(q−1)e(k)

e(k) = A(q−1)y(k) − B(q−1)u(k)

An ARX model is linear in its parameters.

Page 14: SIPE - Lecture 4. Time domain models

Feb 27 2007 14

Delft University of Technology

ARMAX structure

y(k) =B(q−1)

A(q−1)u(k) +

C(q−1)

A(q−1)e(k)

e(k) =A(q−1)

C(q−1)y(k) −

B(q−1)

C(q−1)u(k)

An ARMAX model is nonlinear in its parameters.

Page 15: SIPE - Lecture 4. Time domain models

Feb 27 2007 15

Delft University of Technology

Output Error (OE) structure

y(k) =B(q−1)

F (q−1)u(k) + e(k)

e(k) = y(k) −B(q−1)

F (q−1)u(k)

An OE model is nonlinear in its parameters.

Page 16: SIPE - Lecture 4. Time domain models

Feb 27 2007 16

Delft University of Technology

Finite Impulse Response (FIR) structure

y(k) = B(q−1)u(k) + e(k)

e(k) = y(k) − B(q−1)u(k)

An FIR model is linear in its parameters.

Page 17: SIPE - Lecture 4. Time domain models

Feb 27 2007 17

Delft University of Technology

Box-Jenkins (BJ) structure

y(k) =B(q−1)

F (q−1)u(k) +

C(q−1)

D(q−1)e(k)

e(k) =D(q−1)

C(q−1)y(k) −

D(q−1)B(q−1)

C(q−1)F (q−1)u(k)

An BJ model is nonlinear in its parameters.

Page 18: SIPE - Lecture 4. Time domain models

Feb 27 2007 18

Delft University of Technology

Optimizing the criterion (ARX)

ǫ(k) = A(q−1)y(k) − B(q−1)u(k)

with na, nb are the model orders according to:

na : A(q−1) = 1 + a1q−1 + . . . + anaq−na

nb : B(q−1) = b1 + b2q−1 . . . + bnbq−nb+1

Structured regression format:

ǫ(k) = y(k) + [A(q−1) − 1]y(k) − B(q−1)u(k)

= y(k) − φ(q−1)θ

where θ = [b1 b2 ... bn a1 a2 ... an]T

φ = [U − Y ]

Page 19: SIPE - Lecture 4. Time domain models

Feb 27 2007 19

Delft University of Technology

Optimizing the criterion (ARX)

V (θ)N = min

N∑

k=1

ǫ(k, θ)T ǫ(k, θ) = ǫ(k)T ǫ(k)

δV (θ)

δθ= [y(k) − φθ]T φ = 0

θ = y(k)Tφ[φTφ]−1

Page 20: SIPE - Lecture 4. Time domain models

Feb 27 2007 20

Delft University of Technology

Choice of model structure

Use system knowledge• Existence of feedback loops

• Noise sources

Page 21: SIPE - Lecture 4. Time domain models

Feb 27 2007 21

Delft University of Technology

Closed loop systemGoal: estimate y(k)

u(k)

Take:

H1(q−1) =

N1

D1

H2(q−1) =

N2

D2

y =H1H2

1 + H1H2u +

1

1 + H1H2e

=N1N2

D1D2 + N1N2u +

D1D2

D1D2 + N1N2e

=B

Au +

C

Ae

This system has an ARMAX structure.

Page 22: SIPE - Lecture 4. Time domain models

Feb 27 2007 22

Delft University of Technology

Analysis

Frequency response:

q−n = e−ns∆t with s = j2πf (f = [0...fs

2])

Impulse response:

u(k) = m with m = 1 for k = 0

m = 0 for k > 0

Page 23: SIPE - Lecture 4. Time domain models

Feb 27 2007 23

Delft University of Technology

Example

10−5

10−3

10−1

Gai

n [N

/m]

Human Arm Admittance

Hxx

10−5

10−3

10−1

Gai

n [N

/m]

Hxy

−180

0

180

360

Pha

se [d

eg.]

−180

0

180

360

Pha

se [d

eg.]

10−5

10−3

10−1

Gai

n [N

/m]

Hyx

10−5

10−3

10−1

Gai

n [N

/m]

Hyy

100

−180

0

180

360

Pha

se [d

eg.]

Frequency [Hz]10

0−180

0

180

360

Pha

se [d

eg.]

Frequency [Hz]

2DOF arm admittance:

spectral (grey) ARX

Page 24: SIPE - Lecture 4. Time domain models

Feb 27 2007 24

Delft University of Technology

Closed loop algorithms

H2 q-1 y k

e k

H1 q-1 u kr k

Goal: estimate H2

1. Two stage method

2. Coprime factorization method

Page 25: SIPE - Lecture 4. Time domain models

Feb 27 2007 25

Delft University of Technology

Two stage

System transferfunctions:

u(k) =H1

1 + H1H2r(k) +

H1

1 + H1H2e(k)

y(k) =H1H2

1 + H1H2r(k) +

1

1 + H1H2e(k)

Two stage:

1. Open loop from r(k) to u(k)

2. Simulate a ’noise free’ input u∗(k)

3. Open loop estimate from u∗(k) to y(k) gives the estimated systemH2

Drawback: only for stable systems because of the simulation step

Page 26: SIPE - Lecture 4. Time domain models

Feb 27 2007 26

Delft University of Technology

Coprime factorization

System transferfunctions:

u(k) =H1

1 + H1H2r(k) +

H1

1 + H1H2e(k)

y(k) =H1H2

1 + H1H2r(k) +

1

1 + H1H2e(k)

Coprime factorization:

1. Open loop from r(k) to u(k) gives H1

1+H1H2

2. Open loop from r(k) to y(k) gives H1H2

1+H1H2

3. then, y(k)r(k)

r(k)u(k) gives H2

Drawback: high order because poles and zeros do not cancel out

Page 27: SIPE - Lecture 4. Time domain models

Feb 27 2007 27

Delft University of Technology

Summary

• Time domain models use only a fewparameters (w.r.t. FRFs)

• Model structure required and must beselected a priori

• Optimum order must be selected• Parameterization by minimizing an error

criterion• Direct simulation/validation

Page 28: SIPE - Lecture 4. Time domain models

Feb 27 2007 28

Delft University of Technology

Next week

Discrete vs continuous systems• Effects of sampling• Prerequisites for identification