Top Banner
ME 233 – Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016
56

ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Jun 06, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

ME 233 – Advanced Control IILecture 16

Disturbance Observers

Tony Kelman

UC Berkeley

March 29, 2016

Page 2: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Outline

Motivation

Disturbance observer

Derivation of closed-loop dynamics

Choosing Q(z)

Adding a disturbance observer to an existing feedback controller

Page 3: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Outline

Motivation

Disturbance observer

Derivation of closed-loop dynamics

Choosing Q(z)

Adding a disturbance observer to an existing feedback controller

Page 4: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

Consider the following plant structure

G(z)U(z)

D(z)

Y (z)

The signals are:

U(z) : control inputD(z) : disturbanceY (z) : output

The goal is to cancel the effect of D(z) on Y (z)

Page 5: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

Consider the following plant structure

G(z)U(z)

D(z)

Y (z)

The signals are:

U(z) : control inputD(z) : disturbanceY (z) : output

The goal is to cancel the effect of D(z) on Y (z)

Page 6: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

I Let the plant be given by the transfer function Gn(z), whichis minimum phase (i.e. its poles and zeros are strictly insidethe unit disk in the complex plane)

I Use an inverse plant to reconstruct U(z) +D(z):

G¡1n (z)

Gn(z)U(z)

D(z)

Y (z)

U(z) +D(z)

I Subtract U(z) to reconstruct D(z):

G¡1n (z)

Gn(z)U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

Page 7: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

I Let the plant be given by the transfer function Gn(z), whichis minimum phase (i.e. its poles and zeros are strictly insidethe unit disk in the complex plane)

I Use an inverse plant to reconstruct U(z) +D(z):

G¡1n (z)

Gn(z)U(z)

D(z)

Y (z)

U(z) +D(z)

I Subtract U(z) to reconstruct D(z):

G¡1n (z)

Gn(z)U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

Page 8: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

I Let the plant be given by the transfer function Gn(z), whichis minimum phase (i.e. its poles and zeros are strictly insidethe unit disk in the complex plane)

I Use an inverse plant to reconstruct U(z) +D(z):

G¡1n (z)

Gn(z)U(z)

D(z)

Y (z)

U(z) +D(z)

I Subtract U(z) to reconstruct D(z):

G¡1n (z)

Gn(z)U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

Page 9: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

I Ideally, we would subtract the reconstructed value of D(z)from U(z)

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

I This would yield the closed-loop dynamics Y (z) = Gn(z)U(z)

This controller structure would reconstruct D(z) then subtract itfrom U(z) so that the effect of the disturbance is exactly canceled

⇒ This would be useful as an inner loop of a larger controlscheme, BUT...

Page 10: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

I Ideally, we would subtract the reconstructed value of D(z)from U(z)

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

I This would yield the closed-loop dynamics Y (z) = Gn(z)U(z)

This controller structure would reconstruct D(z) then subtract itfrom U(z) so that the effect of the disturbance is exactly canceled

⇒ This would be useful as an inner loop of a larger controlscheme, BUT...

Page 11: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

I Ideally, we would subtract the reconstructed value of D(z)from U(z)

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

I This would yield the closed-loop dynamics Y (z) = Gn(z)U(z)

This controller structure would reconstruct D(z) then subtract itfrom U(z) so that the effect of the disturbance is exactly canceled

⇒ This would be useful as an inner loop of a larger controlscheme, BUT...

Page 12: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation

I Ideally, we would subtract the reconstructed value of D(z)from U(z)

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

I This would yield the closed-loop dynamics Y (z) = Gn(z)U(z)

This controller structure would reconstruct D(z) then subtract itfrom U(z) so that the effect of the disturbance is exactly canceled

⇒ This would be useful as an inner loop of a larger controlscheme, BUT...

Page 13: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation—Problems

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

The control structure has some problems that should be resolvedin order for it to be useful:

I Since G−1n (z) is typically not proper, it is not realizable

⇒ We cannot reconstruct D(z)

I The system being controlled might not be exactly as given bythe model Gn(z)

I Sensor noise will corrupt the reconstructed value of D(z)

I The block diagram above is not well-posed and, in particular,U(z) is not a realizable function of Y (z).

Page 14: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation—Problems

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

The control structure has some problems that should be resolvedin order for it to be useful:

I Since G−1n (z) is typically not proper, it is not realizable

⇒ We cannot reconstruct D(z)

I The system being controlled might not be exactly as given bythe model Gn(z)

I Sensor noise will corrupt the reconstructed value of D(z)

I The block diagram above is not well-posed and, in particular,U(z) is not a realizable function of Y (z).

Page 15: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation—Problems

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

The control structure has some problems that should be resolvedin order for it to be useful:

I Since G−1n (z) is typically not proper, it is not realizable

⇒ We cannot reconstruct D(z)

I The system being controlled might not be exactly as given bythe model Gn(z)

I Sensor noise will corrupt the reconstructed value of D(z)

I The block diagram above is not well-posed and, in particular,U(z) is not a realizable function of Y (z).

Page 16: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation—Problems

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

The control structure has some problems that should be resolvedin order for it to be useful:

I Since G−1n (z) is typically not proper, it is not realizable

⇒ We cannot reconstruct D(z)

I The system being controlled might not be exactly as given bythe model Gn(z)

I Sensor noise will corrupt the reconstructed value of D(z)

I The block diagram above is not well-posed and, in particular,U(z) is not a realizable function of Y (z).

Page 17: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Motivation—Problems

G¡1n (z)

Gn(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

U(z) +D(z)

The control structure has some problems that should be resolvedin order for it to be useful:

I Since G−1n (z) is typically not proper, it is not realizable

⇒ We cannot reconstruct D(z)

I The system being controlled might not be exactly as given bythe model Gn(z)

I Sensor noise will corrupt the reconstructed value of D(z)

I The block diagram above is not well-posed and, in particular,U(z) is not a realizable function of Y (z).

Page 18: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Outline

Motivation

Disturbance observer

Derivation of closed-loop dynamics

Choosing Q(z)

Adding a disturbance observer to an existing feedback controller

Page 19: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Disturbance ObserverThe following control structure is referred to as a disturbanceobserver:

The signals are:

U(z) : control input V (z) : measurement noise

D(z) : disturbance D(z) : estimate of D(z)Y (z) : measured output P (z) : performance output

Page 20: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Disturbance Observer

I The one difference in the control architecture (compared tothe motivation) is the presence of Q(z)

I Q(z) is used to make the dynamics from U(z) and Y (z) toD(z) realizable

Page 21: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Disturbance Observer—Comparison to Motivation

The structure in the Motivation section corresponds to

I G(z) = Gn(z) (the plant is exactly as modeled)

I V (z) = 0 (there is no sensor noise)

I Q(z) = 1 (it is possible to realize G−1n (z) )

Page 22: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Disturbance Observer—Comparison to Motivation

The structure in the Motivation section corresponds to

I G(z) = Gn(z) (the plant is exactly as modeled)

I V (z) = 0 (there is no sensor noise)

I Q(z) = 1 (it is possible to realize G−1n (z) )

Page 23: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Disturbance Observer—Comparison to Motivation

The structure in the Motivation section corresponds to

I G(z) = Gn(z) (the plant is exactly as modeled)

I V (z) = 0 (there is no sensor noise)

I Q(z) = 1 (it is possible to realize G−1n (z) )

Page 24: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Outline

Motivation

Disturbance observer

Derivation of closed-loop dynamics

Choosing Q(z)

Adding a disturbance observer to an existing feedback controller

Page 25: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

We will omit the dependency on z to shorten notation

Plant dynamics: Y = G(U +D) + V

Now find the disturbance estimate D in terms of U , D, and V :

D = Q(G−1n Y − U)

⇒ D = Q[G−1n G(U +D) +G−1

n V − U ]

⇒ D = Q(G−1n G− 1)U +QG−1

n GD +QG−1n V

Page 26: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

We will omit the dependency on z to shorten notation

Plant dynamics: Y = G(U +D) + V

Now find the disturbance estimate D in terms of U , D, and V :

D = Q(G−1n Y − U)

⇒ D = Q[G−1n G(U +D) +G−1

n V − U ]

⇒ D = Q(G−1n G− 1)U +QG−1

n GD +QG−1n V

Page 27: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

We will omit the dependency on z to shorten notation

Plant dynamics: Y = G(U +D) + V

Now find the disturbance estimate D in terms of U , D, and V :

D = Q(G−1n Y − U)

⇒ D = Q[G−1n G(U +D) +G−1

n V − U ]

⇒ D = Q(G−1n G− 1)U +QG−1

n GD +QG−1n V

Page 28: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

We will omit the dependency on z to shorten notation

Plant dynamics: Y = G(U +D) + V

Now find the disturbance estimate D in terms of U , D, and V :

D = Q(G−1n Y − U)

⇒ D = Q[G−1n G(U +D) +G−1

n V − U ]

⇒ D = Q(G−1n G− 1)U +QG−1

n GD +QG−1n V

Page 29: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

Solve for U in terms of D, U , and V :

U = U − D⇒ U = U −Q(G−1

n G− 1)U −QG−1n GD −QG−1

n V

⇒ [1 +Q(G−1n G− 1)]U = U −QG−1

n GD −QG−1n V

Now that we have U in terms of D, U , and V , we can solve for Pin terms of D, U , and V

Page 30: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

Solve for U in terms of D, U , and V :

U = U − D⇒ U = U −Q(G−1

n G− 1)U −QG−1n GD −QG−1

n V

⇒ [1 +Q(G−1n G− 1)]U = U −QG−1

n GD −QG−1n V

Now that we have U in terms of D, U , and V , we can solve for Pin terms of D, U , and V

Page 31: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

Solve for P in terms of D, U , and V :

P = GD +GU

⇒ P = GD +G

1 +Q(G−1n G− 1)

[U −QG−1n GD −QG−1

n V ]

P =G(1−Q)

1 +Q(G−1n G− 1)

D +G

1 +Q(G−1n G− 1)

U

− GQG−1n

1 +Q(G−1n G− 1)

V

Page 32: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

Solve for P in terms of D, U , and V :

P = GD +GU

⇒ P = GD +G

1 +Q(G−1n G− 1)

[U −QG−1n GD −QG−1

n V ]

P =G(1−Q)

1 +Q(G−1n G− 1)

D +G

1 +Q(G−1n G− 1)

U

− GQG−1n

1 +Q(G−1n G− 1)

V

Page 33: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

P =G(1−Q)

1 +Q(G−1n G− 1)

D +G

1 +Q(G−1n G− 1)

U

− GQG−1n

1 +Q(G−1n G− 1)

V

Let G(z) = Gn(z)(1 + ∆(z)) where ∆(z) is stable

P =Gn(1 + ∆)(1−Q)

1 +Q∆D +

Gn(1 + ∆)

1 +Q∆U − Q(1 + ∆)

1 +Q∆V

In forming this relationship, we used that GnG−1n = 1, which in

turn demonstrates why we require Gn to be minimum phase

Page 34: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

P =G(1−Q)

1 +Q(G−1n G− 1)

D +G

1 +Q(G−1n G− 1)

U

− GQG−1n

1 +Q(G−1n G− 1)

V

Let G(z) = Gn(z)(1 + ∆(z)) where ∆(z) is stable

P =Gn(1 + ∆)(1−Q)

1 +Q∆D +

Gn(1 + ∆)

1 +Q∆U − Q(1 + ∆)

1 +Q∆V

In forming this relationship, we used that GnG−1n = 1, which in

turn demonstrates why we require Gn to be minimum phase

Page 35: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Derivation of closed-loop dynamics

P =G(1−Q)

1 +Q(G−1n G− 1)

D +G

1 +Q(G−1n G− 1)

U

− GQG−1n

1 +Q(G−1n G− 1)

V

Let G(z) = Gn(z)(1 + ∆(z)) where ∆(z) is stable

P =Gn(1 + ∆)(1−Q)

1 +Q∆D +

Gn(1 + ∆)

1 +Q∆U − Q(1 + ∆)

1 +Q∆V

In forming this relationship, we used that GnG−1n = 1, which in

turn demonstrates why we require Gn to be minimum phase

Page 36: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Outline

Motivation

Disturbance observer

Derivation of closed-loop dynamics

Choosing Q(z)

Adding a disturbance observer to an existing feedback controller

Page 37: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Choosing Q(z)

Closed-loop dynamics:

P =Gn(1 + ∆)(1−Q)

1 +Q∆D +

Gn(1 + ∆)

1 +Q∆U − Q(1 + ∆)

1 +Q∆V

Concerns when choosing Q(z):

1. Robust disturbance rejection: Choose Q(ejω) ≈ 1 atfrequencies for which disturbance rejection is important

2. Sensor noise insensitivity: Choose |Q(ejω)| to be small atfrequencies for which sensor noise is large

3. Robustness: Choose |Q(ejω)| to be small at frequencies forwhich |∆(ejω)| is large

Page 38: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Choosing Q(z)

Closed-loop dynamics:

P =Gn(1 + ∆)(1−Q)

1 +Q∆D +

Gn(1 + ∆)

1 +Q∆U − Q(1 + ∆)

1 +Q∆V

Concerns when choosing Q(z):

1. Robust disturbance rejection: Choose Q(ejω) ≈ 1 atfrequencies for which disturbance rejection is important

2. Sensor noise insensitivity: Choose |Q(ejω)| to be small atfrequencies for which sensor noise is large

3. Robustness: Choose |Q(ejω)| to be small at frequencies forwhich |∆(ejω)| is large

Page 39: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Choosing Q(z)

Closed-loop dynamics:

P =Gn(1 + ∆)(1−Q)

1 +Q∆D +

Gn(1 + ∆)

1 +Q∆U − Q(1 + ∆)

1 +Q∆V

Concerns when choosing Q(z):

1. Robust disturbance rejection: Choose Q(ejω) ≈ 1 atfrequencies for which disturbance rejection is important

2. Sensor noise insensitivity: Choose |Q(ejω)| to be small atfrequencies for which sensor noise is large

3. Robustness: Choose |Q(ejω)| to be small at frequencies forwhich |∆(ejω)| is large

Page 40: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Choosing Q(z)

Concerns when choosing Q(z):

4. Realizability: Choose Q(z) so thatD(z) = Q(z)[G−1

n (z)Y (z)− U(z)] is realizable

⇒ Choose Q(z) realizable so thatQ(z)

Gn(z)is also realizable

This is a constraint on the relative degree of Q(z)

Page 41: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Choosing Q(z)

Concerns when choosing Q(z):

4. Realizability: Choose Q(z) so thatD(z) = Q(z)[G−1

n (z)Y (z)− U(z)] is realizable

⇒ Choose Q(z) realizable so thatQ(z)

Gn(z)is also realizable

This is a constraint on the relative degree of Q(z)

Page 42: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Choosing Q(z)

Concerns when choosing Q(z):

4. Realizability: Choose Q(z) so thatD(z) = Q(z)[G−1

n (z)Y (z)− U(z)] is realizable

⇒ Choose Q(z) realizable so thatQ(z)

Gn(z)is also realizable

This is a constraint on the relative degree of Q(z)

Page 43: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Outline

Motivation

Disturbance observer

Derivation of closed-loop dynamics

Choosing Q(z)

Adding a disturbance observer to an existing feedback controller

Page 44: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Adding a disturbance observer to an existing controllerSuppose we have designed a controller C(z) for the interconnection

G(z)U(z)

D(z)

Y (z)

P (z) V (z)

C(z)

¡

and we would like to add a disturbance observer:

G¡1n (z)

G(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

P (z) V (z)

Q(z)

+¡C(z)

¡

How does this affect the stability of the closed-loop system?

Page 45: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Adding a disturbance observer to an existing controllerSuppose we have designed a controller C(z) for the interconnection

G(z)U(z)

D(z)

Y (z)

P (z) V (z)

C(z)

¡

and we would like to add a disturbance observer:

G¡1n (z)

G(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

P (z) V (z)

Q(z)

+¡C(z)

¡

How does this affect the stability of the closed-loop system?

Page 46: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Adding a disturbance observer to an existing controller

G¡1n (z)

G(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

P (z) V (z)

Q(z)

+¡C(z)

¡

Since we are only interested in stability, we set the exogenousinputs to zero. Also, we let G(z) = Gn(z)(1 + ∆(z)).

G¡1n (z)

¹U(z) U(z)

D(z)

Gn(z)

Q(z)

+¡C(z)

¡

¢(z) ~U(z)

To use the small-gain theorem, we must simplify this to a feedbackinterconnection of ∆(z) and another system.

Page 47: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Adding a disturbance observer to an existing controller

G¡1n (z)

G(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

P (z) V (z)

Q(z)

+¡C(z)

¡

Since we are only interested in stability, we set the exogenousinputs to zero. Also, we let G(z) = Gn(z)(1 + ∆(z)).

G¡1n (z)

¹U(z) U(z)

D(z)

Gn(z)

Q(z)

+¡C(z)

¡

¢(z) ~U(z)

To use the small-gain theorem, we must simplify this to a feedbackinterconnection of ∆(z) and another system.

Page 48: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Adding a disturbance observer to an existing controller

G¡1n (z)

G(z)¹U(z) U(z)

D(z)

D(z)

Y (z)

P (z) V (z)

Q(z)

+¡C(z)

¡

Since we are only interested in stability, we set the exogenousinputs to zero. Also, we let G(z) = Gn(z)(1 + ∆(z)).

G¡1n (z)

¹U(z) U(z)

D(z)

Gn(z)

Q(z)

+¡C(z)

¡

¢(z) ~U(z)

To use the small-gain theorem, we must simplify this to a feedbackinterconnection of ∆(z) and another system.

Page 49: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Simplifying the closed-loop representation

Removing ∆(z) from the interconnection, we have

G¡1n (z)

¹U(z) U(z)

D(z)

Gn(z)

Q(z)

+¡C(z)

¡

~U(z)

Omitting dependency on z, we have

D = Q

[Gn

Gn(U + U)− U

]⇒ D = QU

U = −CGn(U + U)− D ⇒ U = −CGn(U + U)−QU⇒ (1 + CGn)U = −(CGn +Q)U

Page 50: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Simplifying the closed-loop representation

Removing ∆(z) from the interconnection, we have

G¡1n (z)

¹U(z) U(z)

D(z)

Gn(z)

Q(z)

+¡C(z)

¡

~U(z)

Omitting dependency on z, we have

D = Q

[Gn

Gn(U + U)− U

]⇒ D = QU

U = −CGn(U + U)− D ⇒ U = −CGn(U + U)−QU⇒ (1 + CGn)U = −(CGn +Q)U

Page 51: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Closed-loop stabilityWe now have the simplified closed-loop system representation

¢(z)

¡Q+CGn

1 +CGn

U(z) ~U(z)

Using the small-gain theorem, we can therefore guaranteeclosed-loop stability if:

1. Gn(z) is minimum phase

2. The following feedback interconnection is stable

Gn(z)C(z)

¡

(i.e. the nominal closed-loop system without the disturbanceobserver is stable)

Page 52: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Closed-loop stabilityWe now have the simplified closed-loop system representation

¢(z)

¡Q+CGn

1 +CGn

U(z) ~U(z)

Using the small-gain theorem, we can therefore guaranteeclosed-loop stability if:

1. Gn(z) is minimum phase

2. The following feedback interconnection is stable

Gn(z)C(z)

¡

(i.e. the nominal closed-loop system without the disturbanceobserver is stable)

Page 53: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Closed-loop stabilityWe now have the simplified closed-loop system representation

¢(z)

¡Q+CGn

1 +CGn

U(z) ~U(z)

Using the small-gain theorem, we can therefore guaranteeclosed-loop stability if:

1. Gn(z) is minimum phase

2. The following feedback interconnection is stable

Gn(z)C(z)

¡

(i.e. the nominal closed-loop system without the disturbanceobserver is stable)

Page 54: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Closed-loop stabilityWe now have the simplified closed-loop system representation

¢(z)

¡Q+CGn

1 +CGn

U(z) ~U(z)

Using the small-gain theorem, we can therefore guaranteeclosed-loop stability if:

1. Gn(z) is minimum phase

2. The following feedback interconnection is stable

Gn(z)C(z)

¡

(i.e. the nominal closed-loop system without the disturbanceobserver is stable)

Page 55: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Closed-loop stability

We now have the simplified closed-loop system representation

¢(z)

¡Q+CGn

1 +CGn

U(z) ~U(z)

Using the small-gain theorem, we can therefore guaranteeclosed-loop stability if:

3.

∣∣∣∣Q(ejω) + C(ejω)Gn(ejω)

1 + C(ejω)Gn(ejω)

∣∣∣∣ < 1

|∆(ejω)|, ∀ω ∈ [0, π]

In order to meet this condition, it must be true thatQ(ejω) 6≈ 1 whenever ω ∈ [0, π] is such that |∆(ejω)| ≥ 1.

Page 56: ME 233 Advanced Control II Lecture 16 Disturbance Observers · ME 233 { Advanced Control II Lecture 16 Disturbance Observers Tony Kelman UC Berkeley March 29, 2016

Closed-loop stability

We now have the simplified closed-loop system representation

¢(z)

¡Q+CGn

1 +CGn

U(z) ~U(z)

Using the small-gain theorem, we can therefore guaranteeclosed-loop stability if:

3.

∣∣∣∣Q(ejω) + C(ejω)Gn(ejω)

1 + C(ejω)Gn(ejω)

∣∣∣∣ < 1

|∆(ejω)|, ∀ω ∈ [0, π]

In order to meet this condition, it must be true thatQ(ejω) 6≈ 1 whenever ω ∈ [0, π] is such that |∆(ejω)| ≥ 1.