Pole Assignment Self-Tuning Regulator

Presentation on theme: "Lecture 14&15: Pole Assignment Self-Tuning Control"— Presentation transcript:

1 Lecture 14&15: Pole Assignment Self-Tuning Control
Dr Martin BrownRoom: E1kTelephone:EE-M /7: EF L14&15

2 Outline 14 & 15 Pole assignment self-turning control
Introduction to self-tuning/adaptive controlExample of first order pole assignmentGeneral pole assignment problemSelf-tuning pole assignmentServo, noise free trackingDisturbance rejectionReduced variance regulationLocal convergencesVariations and problemsEE-M /7: EF L14&15

3 Background Reading Core Text
Chapter 7, Self-Tuning Systems, Wellstead and ZarropThe 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 givenNB, there are many other ways that adaptive system identification techniques can be used for control, this is only one example.EE-M /7: EF L14&15

4 Adaptive Modelling and Control (i)
Self-tuning controlIdentify the system (on-line) using measured input-output dataHave a desired control specification (pole placement)Calculate controller to achieve specification for current modelSynthesisruleModelr(t)u(t)y(t)ControllerSystemEE-M /7: EF L14&15

5 Basic Pole AssignmentThe design of a feedback controller generally involves:Modifying the system’s dynamic responseReducing the output sensitivity to disturbancesReducing the overall system sensitivity to parametric variationsIn general, the discrete-time polynomials associated with the controller so thatPlant output tracks the reference signal sufficiently fastSteady state error is zeroRobust to disturbances and parametric uncertaintyThis will be illustrated with the following first order exampleEE-M /7: EF L14&15

6 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/(as+1)where a is the time constant, f is the system gain and the parameters are related bya = exp(-ts/a)b = (1-a)fwhere ts is the sample time.A control objective is to use a feedback controller to alter the system’s response speed (a->b) while ensuring the same steady state responseEE-M /7: EF L14&15

7 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=t1g = (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-M /7: EF L14&15

8 Self-Tuning Algorithm Sequence
At each discrete time sample interval t, the following sequence is takenData captureThe system output y(t), reference signal r(t) and any other variables of importance are measured.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 estimatorController synthesisThe updated parameters from (2) are used in a pole assignment identity to synthesize the parameters of the desired controllerControl calculationThe 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-M /7: EF L14&15

9 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 formFu(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-M /7: EF L14&15

10 General Pole Assignment
Closed loop poles are then assigned to their desired locations, specified by T:FA+z-1BG = TCFor this to be solvedF = 1 + f1z-1 +…+ fnfz-nfG = g0 + g1z-1 +…+ gngz-ngH = h0 + h1z-1 +…+ hnhz-nhThe degrees should satisfynf = nbng = na-1provided A and B have no common zeros. In addition,nt ≤ na + nb – ncEE-M /7: EF L14&15

11 Pole Assignment Properties
This gives the overall response asy(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=1Yielding the closed loop equationy(t) = [T/B]|z=1 [B/T] r(t-1) + F/T e(t)EE-M /7: EF L14&15

12 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:The desired closed loop pole set TForm of the controller servo system/regulator/…Controller is incremental or non-incrementalOther important bits include the sample rate, system orders and time delayEE-M /7: EF L14&15

13 Servo Self-Tuner Control Problem
Suppose 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.Read in system output y(t)Use RLS (tracking?) to update the parameter estimates in the modelAy(t) = Bu(t-1)Synthesize the controller polynomials F, G and H, using the estimates of A and B, usingFA+z-1BG = TH = [T/B]|z=1Calculate the control action usingFu(t) = -Gy(t) + Hr(t)Go to 1 at the next time sample t+1^^^^^^^^^^^^^^^EE-M /7: EF L14&15

14 Example: Calculating the Controller Polynomials
Consider the problem na=3, nb=2, nt=1 with a single pole at t1Multiplying out and equating the coefficients for z-i (i=1,…,5)In matrix format, this is simply Aq=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.EE-M /7: EF L14&15

15 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 learningEE-M /7: EF L14&15

16 Example: Servo Self-Tuner
Consider 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-1The 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.525and the speed of initial adaptation was slowed down by choosingP(0) = 5I(random initial values)EE-M /7: EF L14&15

17 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 equationy(t) =F/T e(t)which assumes that C is unity.EE-M /7: EF L14&15

18 Algorithm: Regulation against Noise
At each sample time tSample the new system output y(t)Update the polynomial estimates A and B, using the RLS modelA(X-1y(t)) = B(X-1u(t-1)) + e(t)where X is a chosen inverse stable polynomial in z-1Synthesize the controller polynomials F, G usingFA + z-1BG = TXApply the control usingFu(t) = -Gy(t)Wait for the sample interval to elapse and then return to (1)NB the model (2) can be cast in the formAy(t) = Bu(t-1) + X-1e(t)which is equivalent to assuming C=X.^^^^^^^^^^^^^^EE-M /7: EF L14&15

19 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 producedCorrect 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 propertyThe 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-M /7: EF L14&15

20 Example: Regulation against Noise
Consider 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 valuesf1=-0.05 , g0=-1.85, g1=0.175The estimated residual h(t) tends to 0X = 1P(0) = 5Il = 0.998EE-M /7: EF L14&15

21 Local Parametric Convergence
Consider 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 isu(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 conditionsSo we have only one equation in two unknowns (singular) but this is enough for establishing the self-tuning property^^^^^^^EE-M /7: EF L14&15

22 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.Three term, discrete time PID controllers can be designed using a similar approachIncremental control which calculate Du(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-M /7: EF L14&15

23 ConclusionsPole assignment allows the closed loop pole set of a system to be arbitrarily specified by the userThe 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 estimatedWhile there are some quite well known limitations with this approach, it does illustrate how on-line parameter estimation can be combined with dynamic control designEE-M /7: EF L14&15

24 Exercises 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 towhere T=1+t1z-1 specifies the desired closed loop pole set2. 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.EE-M /7: EF L14&15

This paper describes a new multivariable self-tuning controller that specifically handles di fferent time delays between each of the input-output pairs (multiple delays), and deals with unknown or varying time delay (variable dead time compensation) without requiring an explicit estimate of each delay. The new algorithm can control unstable and/or nonminimum phase processes; it eliminates both set-point and load offsets without having to maintain integral action continuously; it decouples the loops, both dynamically and at steady state. The effective decoupling algorithm not only minimizes significant interactions among the control loops, it permits the use of a very simple design criterion, namely the approximate assignment of the primary closed-loop poles to prespecified locations.

The controller is demonstrated using a simulated paper machine head box having an unusually large amount of (off-diagonal) interaction and a highly interacting unstable and nonminimum phase system.

0 thoughts on “Pole Assignment Self-Tuning Regulator

Leave a Reply

Your email address will not be published. Required fields are marked *