ee-m110 2006/7: ef l14&15 1/24, v2.2 lecture 14&15: pole assignment self- tuning control dr...

24
EE-M110 2006/7: EF L14&15 1/24, v2.2 Lecture 14&15: Pole Assignment Self-Tuning Control Dr Martin Brown Room: E1k Email: [email protected] Telephone: 0161 306 4672 http://www.eee.manchester.ac.uk/intranet/pg/ coursematerial/

Post on 19-Dec-2015

225 views

Category:

Documents


0 download

TRANSCRIPT

EE-M110 2006/7: EF L14&15 1/24, v2.2

Lecture 14&15: Pole Assignment Self-Tuning Control

Dr Martin Brown

Room: E1k

Email: [email protected]

Telephone: 0161 306 4672http://www.eee.manchester.ac.uk/intranet/pg/coursematerial/

EE-M110 2006/7: EF L14&15 2/24, v2.2

Outline 14 & 15

Pole assignment self-turning control

1. Introduction to self-tuning/adaptive control

2. Example of first order pole assignment

3. General pole assignment problem

4. Self-tuning pole assignment– Servo, noise free tracking

– Disturbance rejection

– Reduced variance regulation

5. Local convergences

6. Variations and problems

EE-M110 2006/7: EF L14&15 3/24, v2.2

Background Reading

Core Text• Chapter 7, Self-Tuning Systems, Wellstead and Zarrop

The aim of these two lectures is to show how the (on-line) system identification procedures developed so far on the course can be combined with pole assignment ideas to design a range of different dynamic regulators.

Discussion about noise and convergence and what is being assumed as well as limitations of the procedures will be given

NB, there are many other ways that adaptive system identification techniques can be used for control, this is only one example.

EE-M110 2006/7: EF L14&15 4/24, v2.2

Self-tuning control

1. Identify the system (on-line) using measured input-output data

2. Have a desired control specification (pole placement)3. Calculate controller to achieve specification for current model

Adaptive Modelling and Control (i)

Controller System

ModelSynthesis

rule

r(t) u(t) y(t)

EE-M110 2006/7: EF L14&15 5/24, v2.2

Basic Pole Assignment

The design of a feedback controller generally involves:1. Modifying the system’s dynamic response2. Reducing the output sensitivity to disturbances3. Reducing the overall system sensitivity to parametric

variations

In general, the discrete-time polynomials associated with the controller so that

• Plant output tracks the reference signal sufficiently fast• Steady state error is zero• Robust to disturbances and parametric uncertainty

This will be illustrated with the following first order example

EE-M110 2006/7: EF L14&15 6/24, v2.2

First Order Pole Assignment Example (i)

The true, unknown discrete-time first order system is given by:(1-az-1)y(t) = bz-1u(t)

which arises from the continuous time transfer functionH(s) = f/(s+1)

where is the time constant, f is the system gain and the parameters are related bya = exp(-s/)b = (1-a)f

where s is the sample time.

A control objective is to use a feedback controller to alter the system’s response speed (->) while ensuring the same steady state response

EE-M110 2006/7: EF L14&15 7/24, v2.2

First Order Pole Assignment Example (ii)

We can use a feedback controller structure:u(t) = -gy(t) + hr(t)

and combining with the discrete-time model:y(t) = bhz-1/(1-(a-bg)z-1) r(t)

and the closed loop response speed is determined by (a-bg) instead of a, or the closed loop pole has been assigned to z = a-bg.

If we require a pole at z=t1

g = (a-t1)/bZero steady state error, y(t) = r(t), requires the closed loop transfer

function has unity gain at zero frequency (z=1)

h = (1-t1)/b(latter property could be obtained with integral action …)`

EE-M110 2006/7: EF L14&15 8/24, v2.2

Self-Tuning Algorithm Sequence

At each discrete time sample interval t, the following sequence is taken1. Data capture

The system output y(t), reference signal r(t) and any other variables of importance are measured.

2. Estimator updateThe data acquired in (1) is used together with past data and the

previous control signal to update the parameter estimates in a model of the system using an appropriate recursive estimator

3. Controller synthesisThe updated parameters from (2) are used in a pole assignment

identity to synthesize the parameters of the desired controller4. Control calculation

The controller parameters synthesized in (3) are used in a controller to calculate and input the next control signal u(t).

There may be a significant computational burden which may affect when the control action is applied in the (or next) time interval.

EE-M110 2006/7: EF L14&15 9/24, v2.2

General Pole Assignment Problem

In general, the control objective for a system is to require the output y(t) to follow a reference signal r(t) in some pre-determined way (servo following) and to reject random disturbances which may corrupt the output (disturbance rejection).

Consider a system defined by:

Ay(t) = Bu(t-1) + Ce(t)

where the controller is of the form

Fu(t) = Hr(t) – Gy(t)

gives the closed loop response

(FA + z-1BG)y(t) = z-1BHr(t) + CFe(t)

which must be designed by choice of F, G and H.

EE-M110 2006/7: EF L14&15 10/24, v2.2

General Pole Assignment

Closed loop poles are then assigned to their desired locations, specified by T:FA+z-1BG = TC

For this to be solved

F = 1 + f1z-1 +…+ fnfz-nf

G = g0 + g1z-1 +…+ gngz-ng

H = h0 + h1z-1 +…+ hnhz-nh

The degrees should satisfynf = nbng = na-1

provided A and B have no common zeros. In addition, nt ≤ na + nb – nc

EE-M110 2006/7: EF L14&15 11/24, v2.2

Pole Assignment Properties

This gives the overall response as

y(t) = HB/TC r(t-1) + F/T e(t)

The noise polynomial C has been cancelled in the feedback term (NB this requires that C is inverse stable)

The precompensator H is designed to achieve both low frequency gain matching and the cancellation of C. The simplest choice is:

H = C [T/B]|z=1

Yielding the closed loop equation

y(t) = [T/B]|z=1 [B/T] r(t-1) + F/T e(t)

EE-M110 2006/7: EF L14&15 12/24, v2.2

Self-Tuning Pole Assignment Algorithms

A pole assignment self-tuner is a recursive estimator combined with a pole assignment synthesis rule to continuously update the controller coefficients. Performance requirements include:

1. The desired closed loop pole set T

2. Form of the controller servo system/regulator/…

3. Controller is incremental or non-incremental

Other important bits include the sample rate, system orders and time delay

EE-M110 2006/7: EF L14&15 13/24, v2.2

Servo Self-Tuner Control ProblemSuppose the noise-free system is given by

Ay(t) = Bu(t-1)

Required that the output y(t) should follow a reference signal r(t) with zero steady-state error with system closed loop dynamics governed by the pole set T.

1. Read in system output y(t)

2. Use RLS (tracking?) to update the parameter estimates in the model

Ay(t) = Bu(t-1)

3. Synthesize the controller polynomials F, G and H, using the estimates of A and B, usingFA+z-1BG = TH = [T/B]|z=1

4. Calculate the control action using

Fu(t) = -Gy(t) + Hr(t)

5. Go to 1 at the next time sample t+1

^^

^ ^^ ^ ^

^^^^

^

^^^

EE-M110 2006/7: EF L14&15 14/24, v2.2

Example: Calculating the Controller Polynomials

Consider the problem na=3, nb=2, nt=1 with a single pole at t1

Multiplying out and equating the coefficients for z-i (i=1,…,5)

In matrix format, this is simply A=b. With suitable assumptions, such as A and B are co-prime and are of the correct degrees, the matrix A is invertible and the controller’s coefficients can be directly calculated.

1 2 1 2 31 2 1 2 3

1 1 2 1 2 10 1 2 0 1 2 1

(1 )(1 )

( )( ) 1

f z f z a z a z a z

z b b z b z g g z g z t z

0 1 1 1

1 1 0 2 2

2 1 2 1 0 0 3

3 2 2 1 1

3 2 2

1 0 0 0

1 0

0 0

0 0 0 0

b f t a

a b b f a

a a b b b g a

a a b b g

a b g

EE-M110 2006/7: EF L14&15 15/24, v2.2

Certainty Equivalence Principle

The controller design assumes that at every time instant, the estimates of A and B are correct. This is known as the certainty equivalence principle.

This is not always (never?) the case, and will be especially untrue when the algorithm starts around t=0.

At the start, the coefficients may be zero or some simple initial value (first order approximation to a more complex model), but the var/cov matrix should be high to allow fast adaptation (more sensitive to noise)

This will give poor transient performance during early learning

EE-M110 2006/7: EF L14&15 16/24, v2.2

Example: Servo Self-TunerConsider the following system:

(1+0.5z-1+0.7z-2)y(t) = (z-1+0.2z-2)u(t)

the desired closed loop pole was:

T = 1-0.6z-1

The plots on the right hand side show the evolution of the system, its parameter estimates and controller parameter estimates when the reference signal is a square wave.

The correct value for the controller’s parameter are:

f1=0.15 , g0=-1.25, g1=-0.525

and the speed of initial adaptation was slowed down by choosing

P(0) = 5I

(random initial values)

EE-M110 2006/7: EF L14&15 17/24, v2.2

Self-Tuner Regulation against Noise

The previous algorithm assumed that there was no noise in the system model/controller design problem.

Now consider a system given by:

Ay(t) = Bu(t-1) + Ce(t)

where e(t) is the disturbance/offset or noise term. The aim is to regulate against random noise with a zero set point.

The self-tuning pole assignment regulator leads to the closed loop equation

y(t) =F/T e(t)

which assumes that C is unity.

EE-M110 2006/7: EF L14&15 18/24, v2.2

Algorithm: Regulation against NoiseAt each sample time t

1. Sample the new system output y(t)

2. Update the polynomial estimates A and B, using the RLS model

A(X-1y(t)) = B(X-1u(t-1)) + e(t)

where X is a chosen inverse stable polynomial in z-1

3. Synthesize the controller polynomials F, G using

FA + z-1BG = TX

4. Apply the control using

Fu(t) = -Gy(t)

5. Wait for the sample interval to elapse and then return to (1)

NB the model (2) can be cast in the form

Ay(t) = Bu(t-1) + X-1e(t)

which is equivalent to assuming C=X.

^

^^

^^

^ ^

^ ^^^

^

^^

EE-M110 2006/7: EF L14&15 19/24, v2.2

Coloured Noise and RLS System Identification

Note that if we employ the basic RLS algorithm to identify the system parameters contained in the polynomials A and B, the estimates will be biased because the noise is coloured (not iid, normal).

However, when the biased estimates are used in the controller synthesis equation to calculate F & G, the correct controller polynomials are produced

Correct in this context means that the values which would have been obtained if the correct A, B & C had been inserted in the pole assignment calculation.

The convergence to a correct configuration from an incorrect assumption on the noise dynamics is termed a self-tuning property

The polynomial X filters the data y(t) and u(t) and is useful in removing unwanted components of the signal (sensor noise), although it is often set to unity.

EE-M110 2006/7: EF L14&15 20/24, v2.2

Example: Regulation against NoiseConsider the following system:

(1+0.5z-1+0.7z-2)y(t) = (z-1+0.2z-2)u(t) + (1-0.8z-1)e(t)

where e(t)~N(0,1) white noise.

The requirement is to self-tune a pole assignment regulator such that the closed loop pole is a single pole at z=0.6.

The plots on the right hand side show the convergence for the system and controller estimates.

Note that the system parameters are clearly biased, while the controller parameters converge to the correct values

f1=-0.05 , g0=-1.85, g1=0.175

The estimated residual (t) tends to 0

X = 1

P(0) = 5I

= 0.998

EE-M110 2006/7: EF L14&15 21/24, v2.2

Local Parametric ConvergenceConsider the system

(1+az-1)y(t) = bz-1u(t) + (1+cz-1)e(t)

and the model with estimated RLS parameters

(1+az-1)y(t) = bz-1u(t) + e(t)

where the self-tuning regulator is

u(t) = -gy(t) = -(a/b)y(t)

which places the model poles at the origin. To estimate the overall parametric convergence, we need to investigate local convergence points (a*, b*) and the corresponding persistent excitation conditions

So we have only one equation in two unknowns (singular) but this is enough for establishing the self-tuning property

22

2

ˆˆ

ˆ1

)1()1()1(

)1()1()1()(

gg

g

tututy

tutytyEE Txx

^^ ^^

^ ^ ^

EE-M110 2006/7: EF L14&15 22/24, v2.2

Modifications to Basic Self-Tuning Algorithm

The two, simple self-tuning algorithms discussed in these lectures have many modifications to deal with more complex cases and to make them numerically robust.

1. Three term, discrete time PID controllers can be designed using a similar approach

2. Incremental control which calculate u(t) can be used to create a bumpless transfer between controllers automatic steady state reference setpoint tracking occurs (can cause destabilization and integral reset is sometimes necessary)

EE-M110 2006/7: EF L14&15 23/24, v2.2

Conclusions

Pole assignment allows the closed loop pole set of a system to be arbitrarily specified by the user

The pole assignment identity can usually performed using simple matrix inversion (but more reliably using other algorithms)

Some of the self-tuning algorithms display a special self-tuning property and have the advantage that the C polynomial does not need to be estimated

While there are some quite well known limitations with this approach, it does illustrate how on-line parameter estimation can be combined with dynamic control design

EE-M110 2006/7: EF L14&15 24/24, v2.2

Exercises1. For the following system and control rule

Ay(t) = Bu(t-1)

Fu(t) = Hr(t) – Gy(t)

where na=3 and nb=2, show that the coefficients of F, G are given as the solution to

where T=1+t1z-1 specifies the desired closed loop pole set

2. Implement the servo self-tuning control system described on slide 16. You’ll need to set up an RLS algorithm to identify the parameters of the system and to calculate the controller parameters at each time step.

0 1 1 1

1 1 0 2 2

2 1 2 1 0 0 3

3 2 2 1 1

3 2 2

1 0 0 0

1 0

0 0

0 0 0 0

b f t a

a b b f a

a a b b b g a

a a b b g

a b g