OUTPUT-FEEDBACK CONTROL

Similar documents
STATE-SPACE DYNAMIC SYSTEMS (DISCRETE-TIME)

Control Systems Design

Linear State Feedback Controller Design

LINEAR QUADRATIC GAUSSIAN

Control Systems. State Estimation.

Module 08 Observability and State Estimator Design of Dynamical LTI Systems

5. Observer-based Controller Design

Fall 線性系統 Linear Systems. Chapter 08 State Feedback & State Estimators (SISO) Feng-Li Lian. NTU-EE Sep07 Jan08

Control System Design

Topic # Feedback Control. State-Space Systems Closed-loop control using estimators and regulators. Dynamics output feedback

10/8/2015. Control Design. Pole-placement by state-space methods. Process to be controlled. State controller

Lecture 12. Upcoming labs: Final Exam on 12/21/2015 (Monday)10:30-12:30

Topic # Feedback Control Systems

Pole placement control: state space and polynomial approaches Lecture 2

D(s) G(s) A control system design definition

Course Outline. Higher Order Poles: Example. Higher Order Poles. Amme 3500 : System Dynamics & Control. State Space Design. 1 G(s) = s(s + 2)(s +10)

EEE582 Homework Problems

CONTROL DESIGN FOR SET POINT TRACKING

Module 03 Linear Systems Theory: Necessary Background

MODERN CONTROL DESIGN

CBE507 LECTURE III Controller Design Using State-space Methods. Professor Dae Ryook Yang

Topic # Feedback Control Systems

Topic # Feedback Control

Controls Problems for Qualifying Exam - Spring 2014

State Regulator. Advanced Control. design of controllers using pole placement and LQ design rules

OBSERVABILITY AND CONTROLLABILITY

ECEEN 5448 Fall 2011 Homework #4 Solutions

Observability. It was the property in Lyapunov stability which allowed us to resolve that

1. Find the solution of the following uncontrolled linear system. 2 α 1 1

State Observers and the Kalman filter

Digital Control: Part 2. ENGI 7825: Control Systems II Andrew Vardy

Inverted Pendulum: State-Space Methods for Controller Design

Topic # Feedback Control Systems

EECS C128/ ME C134 Final Wed. Dec. 14, am. Closed book. One page, 2 sides of formula sheets. No calculators.

State Feedback and State Estimators Linear System Theory and Design, Chapter 8.

Intermediate Process Control CHE576 Lecture Notes # 2

Dr Ian R. Manchester Dr Ian R. Manchester AMME 3500 : Review

Module 07 Controllability and Controller Design of Dynamical LTI Systems

Integral action in state feedback control

Chapter 3. State Feedback - Pole Placement. Motivation

Intro. Computer Control Systems: F9

SAMPLE SOLUTION TO EXAM in MAS501 Control Systems 2 Autumn 2015

Control Systems. Design of State Feedback Control.

Design Methods for Control Systems

6 OUTPUT FEEDBACK DESIGN

EL 625 Lecture 10. Pole Placement and Observer Design. ẋ = Ax (1)

LMIs for Observability and Observer Design

SYSTEMTEORI - ÖVNING 5: FEEDBACK, POLE ASSIGNMENT AND OBSERVER

6.302 Feedback Systems Recitation 16: Compensation Prof. Joel L. Dawson

EE3CL4: Introduction to Linear Control Systems

MS-E2133 Systems Analysis Laboratory II Assignment 2 Control of thermal power plant

ECE 388 Automatic Control

State Feedback and State Estimators Linear System Theory and Design, Chapter 8.

Lecture 9. Introduction to Kalman Filtering. Linear Quadratic Gaussian Control (LQG) G. Hovland 2004

Full State Feedback for State Space Approach

Control Systems Design, SC4026. SC4026 Fall 2010, dr. A. Abate, DCSC, TU Delft

EECS C128/ ME C134 Final Wed. Dec. 15, am. Closed book. Two pages of formula sheets. No calculators.

Solution of Linear State-space Systems

Problem 2 (Gaussian Elimination, Fundamental Spaces, Least Squares, Minimum Norm) Consider the following linear algebraic system of equations:

Pole Placement (Bass Gura)

Separation Principle & Full-Order Observer Design

CONTROL OF DIGITAL SYSTEMS

Often, in this class, we will analyze a closed-loop feedback control system, and end up with an equation of the form

1 (30 pts) Dominant Pole

ME 132, Fall 2017, UC Berkeley, A. Packard 334 # 6 # 7 # 13 # 15 # 14

Chapter 9 Observers, Model-based Controllers 9. Introduction In here we deal with the general case where only a subset of the states, or linear combin

Observability and state estimation

Chap 4. State-Space Solutions and

Linear System Theory. Wonhee Kim Lecture 1. March 7, 2018

Lecture 19 Observability and state estimation

Synthesis via State Space Methods

Learn2Control Laboratory

TRACKING AND DISTURBANCE REJECTION

A FEEDBACK STRUCTURE WITH HIGHER ORDER DERIVATIVES IN REGULATOR. Ryszard Gessing

Topic # Feedback Control Systems

Identification Methods for Structural Systems

Topic # Feedback Control Systems

DESIGN OF LINEAR STATE FEEDBACK CONTROL LAWS

EEE 184: Introduction to feedback systems

Basic Procedures for Common Problems

ẋ n = f n (x 1,...,x n,u 1,...,u m ) (5) y 1 = g 1 (x 1,...,x n,u 1,...,u m ) (6) y p = g p (x 1,...,x n,u 1,...,u m ) (7)

6.241 Dynamic Systems and Control

Lec 6: State Feedback, Controllability, Integral Action

CHAPTER 6 FAST OUTPUT SAMPLING CONTROL TECHNIQUE

Analysis and Design of Control Systems in the Time Domain

1 Steady State Error (30 pts)

to have roots with negative real parts, the necessary and sufficient conditions are that:

Linear Control Systems

Advanced Control Theory

Chapter 2. Classical Control System Design. Dutch Institute of Systems and Control

Problem Set 4 Solution 1

Internal Model Principle

LQR, Kalman Filter, and LQG. Postgraduate Course, M.Sc. Electrical Engineering Department College of Engineering University of Salahaddin

Robust Control 5 Nominal Controller Design Continued

ECE317 : Feedback and Control

Module 09 From s-domain to time-domain From ODEs, TFs to State-Space Modern Control

MEM 355 Performance Enhancement of Dynamical Systems

Modern Optimal Control

Control Systems I. Lecture 7: Feedback and the Root Locus method. Readings: Jacopo Tani. Institute for Dynamic Systems and Control D-MAVT ETH Zürich

Control Systems I. Lecture 2: Modeling. Suggested Readings: Åström & Murray Ch. 2-3, Guzzella Ch Emilio Frazzoli

Transcription:

ECE4520/5520: Multivariable Control Systems I. 1 OUTPUT-FEEDBACK CONTROL.1: Open-loop and closed-loop estimators Open-loop estimators State feedback is impractical since we don t know the state! But, what if we can estimate the state? IDEA: Since we know system dynamics, simulate system in real-time. If x.t/ is the true state, Ox.t/ is called the state estimate. We want Ox.t/ D x.t/,oratleast Ox.t/! x.t/. Howdowebuildthis? To start, use our knowledge of the plant Px.t/ D Ax.t/ C Bu.t/: Let our state estimate be POx.t/ D A Ox.t/ C Bu.t/: w.t/ u.t/ A; B x.t/ C y.t/ A; B Ox.t/ C Oy.t/ This is called an open-loop estimator. Some troubling issues: We need our model to be very accurate!

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 2 What do we use for Ox.0/? What does disturbance do? Let s analyze our open-loop estimator by examining the state-estimate error Qx.t/ D x.t/ Ox.t/: We want Qx.t/ D 0. Forourestimator, PQx.t/ DPx.t/ P Ox.t/ D Ax.t/ C Bu.t/ A Ox.t/ Bu.t/ D A Qx.t/: So, Qx.t/ D e At Qx.0/: Hence, Ox.t/! x.t/ if A is stable! (This is not too impressive though since Ox.t/! x.t/ because both Ox.t/ and x.t/ go to zero). We need to improve our estimator: Speed up convergence. Reduce sensitivity to model uncertainties. Counteract disturbances. Have convergence even when A is unstable. Key Point: Use feedback of measured output.

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 3 Closed-loop estimator w.t/ u.t/ A; B x.t/ C y.t/ Ox.t/ A; B C Oy.t/ L Qy.t/ D y.t/ Oy.t/ This is called a closed-loop estimator (assuming Oy D C Ox). Note: If L D 0 we have an open-loop estimator. POx.t/ D A Ox.t/ C Bu.t/ C L.y.t/ Oy.t//: Let s look at the error. PQx.t/ DPx.t/ P Ox.t/ D Ax.t/ C Bu.t/ A Ox.t/ Bu.t/ L.y.t/ C Ox.t// D A Qx.t/ L.Cx.t/ C Ox.t// D.A LC / Qx.t/I Qx.t/ D e.a LC /t Qx.0/; or, Ox.t/! x.t/ if A LC is stable, for any value of Ox.0/ and any u.t/, whether or not A is stable. In fact, we can look at the dynamics of the state estimate error to quantitatively evaluate how Ox.t/! x.t/. PQx.t/ D.A LC / Qx.t/ has dynamics related to the roots of the characteristic equation

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 4 ob.s/ D det.si A C LC / D 0: So, for our estimator, we specify the convergence rate of Ox.t/! x.t/ by choosing desired pole locations: Choose L such that ob;des.s/ D det.si A C LC / : This is called the observer gain problem. In Simulink, the following diagram implements a closed-loop estimator. The output is xhat. K u 1 K B L 1 s xhat K C yhat y 2 K A Note: All (square) gain blocks are MATRIX GAIN blocks from the Math Library. K D Integration dynamics It can be helpful to add integration dynamics to the observer to ensure that steady-state errors go to zero. Instead of comparing Oy.t/ to y.t/,wecomparetheintegralof Oy.t/ to the integral of y.t/. To do so, we define a new state that integrates the output x i.t/ D Z t 0 y./d or Px i.t/ D y.t/ D Cx.t/C Du.t/:

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 5 Then, we can combine the true system dynamics with the integration dynamics " # " # " # " # Px i.t/ 0 C x i.t/ D D C u.t/ Px.t/ 0 A x.t/ B ƒ ƒ ƒ ƒ Px a.t/ A a x a.t/ B a " # h i x i.t/ y.t/ D I 0 : ƒ x.t/ C a ƒ x a.t/ The estimator then is designed such that POx a.t/ D A a Ox a.t/ C B a u.t/ C L a.x i.t/ Ox i.t// The estimation error has dynamics D A a Ox a.t/ C B a u.t/ C L a C a.x a.t/ Ox a.t//: PQx.t/ D.A a x a.t/ C B a u.t//.a a Ox a.t/ C B a u.t/ C L a C a Qx a.t// D.A a L a C a / Qx a.t/: Therefore, we need to design an La matrix such that.a a L a C a / has nice properties. As a check, is the augmented system even observable? Notice that the new observability matrix is 2 3 2 3 C a I 0 " # O a D C a A a 4 C a A 2 a 5 D 0 C 4 0 CA 5 D I 0 : 0 O : : : So, if the original system is observable, the integrator-augmented system is also observable.

ECE4520/5520, OUTPUT-FEEDBACK CONTROL.2: The observer gain design problem We would like a method for computing the observer gain vector L given a set of desired closed-loop observer gains ob;des.s/. Bass Gura inspired method We want a specific characteristic equation for A LC. Suppose fc;ag is observable. Put fa; B; C; Dg in observer canonical form. That is, find T such that 2 a 1 1 0 T 1 AT D A o D a 2 ::: : 4 : 1 a n 0 0 3 5 and CT D C o D h 1 0 0 i where det.si A/ D s n C a 1 s n 1 CCa n. Apply feedback Lo to the observer realization to end up with A o L o C o. h Note, Lo D l 1 i T l n,so 2 3 l 1 0 0 L o C o D l 2 4 : 5 : l n 0 0 Useful because characteristic equation obvious.

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 2 3.a 1 C l 1 / 1 0 A o L o C o D.a 2 C l 2 / ::: : 4 : 1 5 ;.a n C l n / 0 0 still in observer form! After feedback with Lo the characteristic equation is det.si A o C L o C o / D s n C.a 1 C l 1 /s n 1 CC.a n C l n /: If we set l1 D 1 a 1 ;:::;l n D n a n then we get the desired characteristic polynomial. Now, we transform back to the original realization det.si A o C L o C o / D det.si TA o T 1 C TL o C o T 1 / D det.si A C TL o C/: So, if we use feedback L D TL o h D T. 1 a 1 /. n a n / i T we will have the desired characteristic polynomial. One remaining question: What is T?WeknowT D O 1 O o and 2 3 1 1 0 0 O o D a 1 1 : 4 : ::: 0 5 a n 1 a 1 1

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 8 So, 2 L D O 1 4 3 1 0 0 a 1 1 : : ::: 0 5 a n 1 a 1 1 This is the Bass Gura formula for L. 3. 1 a 1 /. 2 a 2 / 4 : 5 :. n a n / 1 2 Duality! This is another example of duality. Notice that if you substitute A A T ;B C T ;L K T in the Bass Gura controller design procedure, you will get exactly this equation. Why? Notice that we wish to design certain pole locations: eig.a LC / D eig.a T C T L T / which has the same form as the controller design problem eig.a BK/ if we make the above substitutions. The Ackermann-inspired method The observer-gain problem is dual to the controller-gain problem. Replace a controller-design procedure s inputs A A T ;B C T ; K L T : Design the controller. Then, L will be the observer gains. h i Recall, K D 0 1 C.A; B/ 1 d.a/. By duality, L D hh 0 1 i i T C.A; B/ 1 d.a/ A A T : B C T

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 9 D T d.at / h C T A T C T A n 1T C T i T 2 4 0 : 0 1 3 5 D d.a/ 2 4 C CA : CA n 1 3 5 1 2 4 0 : 0 1 3 5 D d.a/o.c; A/ 1 2 4 0: 0 1 3 5 : In MATLAB, L=acker(A,C,poles) ; L=place(A,C,poles) ;

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 10.3: Discrete-time prediction estimator In discrete-time, we can do the same thing. The picture looks like wœk uœk A; B xœk C yœk A; B Ox p Œk C OyŒk L p QyŒk D yœk OyŒk The update equation for the closed-loop (prediction) estimator is Ox p Œk C 1 D A Ox p Œk C BuŒk C L p yœk C Oxp Œk : The prediction estimation error can likewise be written as QxŒk C 1 D A L p C QxŒk ; which has dynamics related to the roots of the characteristic equation ob. / D det I A C L p C D 0: We specify the convergence rate of Oxp Œk! xœk by choosing desired pole locations: Choose L p such that ob;des. / D det I A C L p C : EXAMPLE: Let G.s/ D 1 and measure yœk. Let s2 " # yœk xœk D ; PyŒk then " # 1 T h A D ; C D 1 0 0 1 i :

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 11 We desire QxŒk to decay with poles p D 0:8 0:2j,or ob;des. / D 2 1: C 0:8: " 1 C l 1 T det. I A C L p C/ D det l 2 1 # D 2 C.l 1 2/ C l 2 T l 1 C 1: So, or The estimator is or " Oy p Œk C 1 OPy p Œk C 1 l 1 2 D 1: l 2 T l 1 C 1 D 0:8 L p D " 0:4 0:08=T Ox p Œk C 1 D A Ox p Œk C BuŒk C L p yœk C Oxp Œk # D 2 D A L p C Ox p Œk C BuŒk C L p yœk ; 4 0: T 0:08 1 T 3 " 5 Oy p Œk OPy p Œk # # 2 : C4 T 2 2 T 3 5 uœk C 2 4 0:4 0:08 T 3 5 yœk : In general, we can arbitrarily select the prediction estimator poles iff fc;ag is observable. The observer-gain problem is dual to the controller-gain problem. Replace a controller-design procedure s inputs A A T ;B C T ; K L T p : Design the controller. Then, L p will be the observer gains.

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 12.4: Compensator design: Separation principle Now that we have a structure to estimate the state x.t/,let sfeed back Ox.t/ to control the plant. That is, u.t/ D r.t/ K Ox.t/; where K was designed assuming that u.t/ D r.t/ Kx.t/.Isthis going to work? How risky is it to interconnect two well-behaved, stable systems? (Assume r.t/ D 0 for now). w.t/ u.t/ Px.t/ D Ax.t/ C Bu.t/ y.t/ D Cx.t/C Du.t/ y.t/ K Ox.t/ POx.t/ D A Ox.t/ C Bu.t/ C L.y.t/ Oy.t// D.s/ What is inside the dotted line is equivalent to our classical design compensator: w.t/ u.t/ G.s/ y.t/ where G.s/ is described by D.s/ and D.s/ is described by Px.t/ D Ax.t/ C Bu.t/ y.t/ D Cx.t/C Du.t/;

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 13 so that we have POx.t/ D A Ox.t/ C Bu.t/ C L.y.t/ Oy.t// u.t/ D K Ox.t/; Px.t/ D Ax.t/ BK Ox.t/ POx.t/ D.A BK/ Ox.t/ C L.Cx.t/C Du.t/ C Ox.t/ Du.t// D.A BK LC / Ox.t/ C LCx.t/: Our combined closed-loop-system state equations are or, in terms of Qx.t/, or, " # " Px.t/ A D POx.t/ LC PQx.t/ DPx.t/ P Ox.t/ BK A BK LC #" # x.t/ ; Ox.t/ D Ax.t/ BK Ox.t/ LCx.t/.A BK LC / Ox.t/ D.A LC / Qx.t/ Px.t/ D Ax.t/ BK.x.t/ Qx.t//; " # Px.t/ D PQx.t/ " A BK BK 0 A LC Note, we have simply changed coordinates: #" # x.t/ : Qx.t/ " # " # " # x.t/ I 0 x.t/ D : Ox.t/ I I Qx.t/ ƒ T

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 14 With this change of coordinates, we may easily find the closed-loop poles of the combined state-feedback/estimator system: The eigenvalues of a block-upper-triangular 2 2 matrix are the collection of the eigenvalues of the two diagonal blocks. Therefore, the 2n poles are the n eigenvalues of A BK combined with the n eigenvalues of A LC. But, wedesigned the n eigenvalues of A BK to give good (stable) state-feedback performance, and we designed the n eigenvalues of A LC to give good (stable) estimator performance. Therefore, the closed-loop system is also stable. This is such an astounding conclusion that it has been given a special name: The Separation Principle. It implies that we can design a compensator in two steps: 1. Design state-feedback assuming the state x.t/ is available. 2. Design the estimator to estimate the state as Ox.t/: and, that u.t/ D KOx.t/ works!

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 15.5: The compensator: Continuous- and discrete-time The continuous-time compensator What is D.s/? Weknowtheclosed-looppoles,whicharetherootsof 1 C D.s/G.s/ D 0, andweknowtheplant sopen-looppoles.whatare the dynamics of D.s/ itself? Start with a state-space representation of D.s/ POx.t/ D.A BK LC / Ox.t/ C Ly.t / LDu.t/ u.t/ D K Ox.t/ so that D.s/ D U.s/ Y.s/ D K.sI A C BK C LC LDK/ 1 L: The poles of D.s/ are the roots of det.si A C BK C LC LDK/ D 0. These are neither the controller poles nor the estimator poles. D.s/ may be unstable even if the plant is stable and the closed-loop system is stable. The discrete-time compensator The results in discrete-time are essentially the same. D. / D U. / Y. / D K I A C BK C L p C L p DK 1 Lp : The poles of D. / are the roots of det I A C BK C L p C L p DK D 0: The compensator has the block-diagram:

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 1 yœk L p 1 Ox p Œk K uœk A BK L p C CL p DK Note that the control signal uœk only contains information about yœk 1 ; yœk 2, :::,notaboutyœk. So, our compensator is not taking advantage of the most current measurement. (More on this later). for loop: u=-k*xhatp; % now, wait until sample time... A2D(y); D2A(u); % u depends on past y, not current. xhatp=(a-b*k-lp*c+lp*d*k)*xhatp+lp*y; end loop. EXAMPLE: G.s/ D 1 s2i T D 1:4 seconds. Design a compensator such that response is dominated by the poles p D 0:8 0:25j. System description " # 1 1:4 A D ; B D 0 1 " 1 1:4 # ; C D h 1 0 i ; D D Œ0 ; Control design: Find h K such that i det. I A C BK/ D 2 1: C 0:: This leads to K D 0:05 0:25 :

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 1 Estimator design: Choose poles to be faster than control roots. Let s radially project p D 0:8 0:25j toward the origin, or pe D 0:8 p. Find Lp such that det I A C L p C D 2 " # 1:28 C 0:45. Thisleads 0:2 to L p D. 0:12 So, our compensator is " # " # 0:23 1:1 0:2 Ox p Œk C 1 D Ox p Œk C yœk 0:19 0:5 0:12 h i uœk D 0:05 0:25 Ox p Œk ; or, 0:8 D. / D 0:8 0:44 0:423j 0:8 D 0:8 2 0:88 C 0:34 : Let s see the root locus of D. /G. /. (Note,sinceD. / has a negative sign, must use 0 ı locus). Imag Axis 1 0.8 0. 0.4 0.2 0 0.2 0.4 0. 0.8 1 1 0.5 0 0.5 1 Real Axis

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 18 Using the state representation of the plant and our compensator, we can simulate the closed-loop system to find xœk, Ox p Œk, QxŒk, anduœk. EXAMPLE: In MATLAB, Q=[A B*K; L*C A B*K L*C]; % get resp. of u, x, xhat to init. condition [u,x]=dinitial(q,zeros([4,1]),[0 0 -K],0,x0); % get the estimate error. xtilde=x(:,1:2)-x(:,3:4); x and Oxp System and Estimator State Dynamics 1.5 Oy 1 y OPy 0.5 Py 0 0.5 Qx 1 0.8 0. 0.4 0.2 0 0.2 Qy QPy Error Dynamics 1 0 5 10 15 20 25 30 Time 0.4 0 5 10 15 20 25 30 Time

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 19.: Current estimator/ compensator Using the prediction estimator to build our compensator, we found that the control effort uœk did not utilize the most current measurement yœk,onlypastvaluesofy: yœk 1, yœk 2 : : : IMPLICATION: Cannot implement D. / D a (either lead or lag) to b control a system since G. / D U. / Y. / D 1 C b a b : That is, uœk D f.yœk ;:::/.Todevelopthecurrent estimate Oxc Œk, consider tuning-up our prediction estimate Ox p Œk at time k with yœk : Ox c Œk ; Ox p Œx Ox c Œk 2 Ox p Œk 1 Ox c Œk 1 Ox c Œk Ox p Œk Ox p Œk C 1 Ox c Œk C 1 Tune up estimate from yœk C 1 Predict from value of Ox c Œk and uœk IMPLEMENTATION: k 2 k 1 k k C 1 Ox p Œk W Estimate just before measurement at k Ox c Œk W Estimate just after measurement at k: Time update : Predict new state from old estimate, system dynamics Ox p Œk D A Ox c Œk 1 C BuŒk 1 : Measurement update : Measure output, use it to update the estimate Ox c Œk DOx p Œk C L c yœk C Oxp Œk :

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 20 L c is called the current estimator gain. Questions: How are Oxc Œk and Ox p Œk and how are L c and L p related? What is the Oxc Œk recursion relation? Ox c Œk C 1 DOx p Œk C 1 C L c yœk C 1 C Oxp Œk C 1 ƒ error D.I L c C/ Ox p Œk C 1 C L c yœk C 1 D.I L c C/.AOx c Œk C BuŒk / C L c yœk C 1 D.A L c CA/ Ox c Œk C.B L c CB/ uœk C L c yœk C 1 : So, Ox c Œk D f.ox c Œk 1 ; uœk 1 ; yœk /: What about the estimate error? QxŒk C 1 D xœk C 1 Ox c Œk C 1 D xœk C 1 Ox p Œk C 1 C L c CxŒk C 1 L c C Ox p Œk C 1 D.I L c C/ xœk C 1 Ox p Œk C 1 D.I L c C/.AxŒk C BuŒk A Ox c Œk BuŒk / D.A L c C A ƒ newš / QxŒk : So, the current estimator error has dynamics related to the roots of det. I A C L c CA/ D 0: What about the Oxp recursion relation? Ox p Œk C 1 D A Ox c Œk C BuŒk

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 21 D A Ox p Œk C L c yœk C Oxp Œk C BuŒk D A Ox p Œk C BuŒk C AL c yœk C Oxp Œk : Compare this equation with the prediction estimate recursive equation. You will notice that is the same except that L p D AL c : So, Oxp in the current-estimator equations is the same quantity Ox p in the prediction-estimator equations. This implies that if we define Qx D x Oxp (not x Ox c ), then QxŒk C 1 D A L p C QxŒk D.A AL c C/ QxŒk : So, in summary Qx D x Ox p QxŒk C 1 D.A L c CA/ QxŒk Qx D x Ox c QxŒk C 1 D.A AL c C/ QxŒk : These estimate errors have the same poles. They represent the dynamics of the block diagrams: uœk B 1 A Ox p Œk C yœk Prediction Estimator L p uœk B 1 Ox p Œk C yœk A Ox c Œk Current Estimator L c

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 22 Design of L c 1. Relate coefficients of det. I A C L c CA/ D ob;des. /: 2. Ackermann s formula for L c 2 L p D ob;des. /O 1 fc;ag 4 0 0 : 1 3 5 replace C CA to find L c 2 L c D ob;des.a/o 1 fca; Ag 4 0 0: 1 3 2 3 1 CA 5 D ob;des.a/ CA 2 4 : 5 CA n ƒ ŒOA 1 2 4 0 0: 1 3 5 : In MATLAB, Lc=acker(A,(C*A),poles) ; Lc=place(A,(C*A),poles) ; 3. Find L p and then L c D A 1 L p.

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 23.: Compensator design using the current estimator Plant equations Estimator equations Control Therefore, we have xœk C 1 D AxŒk C BuŒk yœk D CxŒk : Ox p Œk C 1 D A Ox c Œk C BuŒk xœk C 1 D AxŒk BK Ox c Œk Ox c Œk DOx p Œk C L c yœk C Oxp Œk : uœk D K Ox c Œk : Ox c Œk C 1 D.I L c C/AOx c Œk C.I L c C/BuŒk C L c yœk C 1 D.I L c C/.A BK/ Ox c Œk C L c yœk C 1 : With yœk C 1 D CAxŒk C CBuŒk, then Ox c Œk C 1 D.A BK L c CA/ Ox c Œk C L c CAxŒk : Our 2n-order, closed-loop system is " xœk C 1 Ox c Œk C 1 # D " A L c CA #" # BK xœk : A BK L c CA Ox c Œk Compare this to the prediction estimator feedback case: L c L p CA C

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 24 In terms of QxŒk C 1 D xœk C 1 Oxc Œk C 1 " # " #" # xœk C 1 A BK BK xœk D : QxŒk C 1 0 A L c CA QxŒk As in the prediction estimator case, the closed-loop poles of our compensated system are the eigenvalues of or poles D eig " A BK cl. / D des. / ob;des. / BK 0 A L c CA D det. I A C BK/ det. I A C L c CA/: # Therefore also works! uœk D K Ox c Œk What is D. / for the current estimator? Consider a recurrence relation given earlier Ox c Œk C 1 D.I L c C/.A BK/ Ox c Œk C L c yœk C 1 uœk D K Ox c Œk : Taking the -transform. Oxc Œ0 D 0/ so O X c. / D.I L c C/.A BK/ O X c. / C L c Y. / U. / D K O X c. /

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 25 or D. / D U. / Y. / D K. I.I L cc/.a BK// 1 L c D. / D K. I A C BK C L c CA L c CBK/ 1 L c : Extra term in./ 1 and there is always a zero at D 0! So we always end up with a compensator zero at the origin. The current compensator poles satisfy Block diagram: det. I A C BK C L c CA L c CBK/ D 0: yœk L 1 c I K uœk.i L c C/.A BK/ We cannot implement the I block. To see a more useful block diagram, let s write the compensator recurrence relations in standard form, i.e., let s find x cc Œk C 1 D Ax cc Œk C ByŒk uœk D Cx cc Œk C DyŒk : Start with the control equation uœk D KOx c Œk D K Ox p Œk C L c yœk C Oxp Œk D K.I L c C/ Ox p Œk KL c yœk :

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 2 Recursion for Oxp Œk? Ox p Œk C 1 D A Ox p Œk C BuŒk C AL c yœk C Oxp Œk Therefore D.A AL c C/ Ox p Œk BK Ox c Œk C AL c yœk D.A AL c C BK C BKL c C/ Ox p Œk C.AL c BKL c /yœk : OxpŒk C 1 D N A Ox p Œk C NByŒk uœk D NC Ox p Œk C NDyŒk where AN D.A BK/.I L c C/ NC D K.I L c C/ NB D.A BK/L c ND D KL c Our modified transfer function for D. / is or D. / D ND C NC. I N A/ 1 NB D. / D KL c K.I L c C/. I.A BK/.I L c C// 1.A BK/L c: which you can verify is equivalent to the previous expression. New block diagram KL c yœk.a BK/L c K.I L c C/ 1 uœk.a BK/.I L c C/

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 2 Because of delay, everything inside the dotted box can be computed before we sample yœk. Note the feedthrough term KLc.So,thecompensatorresponds quickly to plant variations. That is, uœk D f.yœk ;yœk 1 ; : : :/: IMPLEMENTATION METHOD 1: (not good) xhatp=xhatpnew A2D(y) xhatc=xhatp+lc*(y-c*xhatp) u=-k*xhatc D2A(u) xhatpnew=a*xhatc+b*u IMPLEMENTATION METHOD 2: (good) xhatp=xhatpnew upartial=-k*(i-lc*c)*xhatp A2D(y) u=upartial-k*lc*y D2A(u) xhatpnew=a*xhatp+b*u+a*lc*(y-c*xhatp) EXAMPLE: G.s/ D 1 s2i T D 1:4 seconds. System description " # " 1 1:4 1 A D ; B D 0 1 1:4 # ; C D Pick closed-loop poles as we did for prediction estimator h 1 0 i ; des. / D 2 1: C 0: and ob;des. / D 2 1:28 C 0:45:

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 28 Control design K D h Estimator design 0:05 0:25 i. L c D A 1 L p D A 1 " 0:2 0:12 # D " 0:55 0:12 Our compensator is described by " # " # 0:29 1:1 0: Ox p Œk C 1 D Ox p Œk C yœk 0:11 0:5 0:04 h i uœk D 0:00 0:25 Ox p Œk 0:0yŒk # : or The root locus. 0:85/ D. / D 0:0 0:4 0:31j. 0:85/ D 0:0 2 0:94 C 0:31 : Imag Axis Compare to prediction estimator. EXAMPLE: In MATLAB, 1 0.8 0. 0.4 0.2 0 0.2 0.4 0. 0.8 1 1 0.5 0 0.5 1 Real Axis

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 29 Q=[A B*K; Lc*C*A A B*K Lc*C*A]; % get resp. of u, x, xhat to init. condition [u,x]=dinitial(q,zeros([4,1]),[0 0 -K],0,x0); % get the estimate error. xtilde=x(:,1:2)-x(:,3:4); x and Oxp System and Estimator State Dynamics 1.5 Oy 1 y OPy 0.5 Py 0 Qx 1 0.8 0. 0.4 0.2 Qy QPy Error Dynamics 0.5 0 1 0 5 10 15 20 25 30 Time Compare to prior result: 0.2 0 5 10 15 20 25 30 Time x and Oxp System and Estimator State Dynamics 1.5 Oy 1 y OPy 0.5 Py 0 0.5 Qx 1 0.8 0. 0.4 0.2 0 0.2 Qy QPy Error Dynamics 1 0 5 10 15 20 25 30 Time 0.4 0 5 10 15 20 25 30 Time

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 30.8: Discrete-time reduced-order estimator Why construct the entire state vector when you are directly measuring astate?ifthereislittlenoiseinyoursensor,yougetagreatestimate by just letting Ox 1 D y If there is noise in the measurement.c D Œ1 0 : : : 0 /: yœk D CxŒk C v; v D noise; then the estimate Oy p or Oy c can be a smoothed version of y! Consider partitioning the plant state into x a W measured state x b W to be estimated: So y D Cx D x a : (Note: This may require a transformation). Our partitioned system " # xa Œk C 1 D x b Œk C 1 yœk D " #" # " # Aaa A ab xa Œk Ba Œk C uœk A ba A bb x b Œk B b Œk h i " # x a Œk I 0 x b Œk In order to design an estimator for xb,weneedtocreateasuitable state-space model of the dynamics of x b such as

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 31 x b Œk C 1 D A xb x b Œk C B xb m 1 Œk m 2 Œk D C xb x b Œk C D xb m 1 Œk where m 1 Œk and m 2 Œk are some measurable inputs. Note that m 1 Œk and m 2 Œk will be combinations of yœk D x a Œk and uœk. Once we have this state-space form, we can create a standard prediction or current estimator. We start the derivation by finding an output equation for xb.consider the dynamics of the measured state: x a Œk C 1 D A aa x a Œk C A ab x b Œk C B a uœk where x b Œk is the only unknown. Let m 2 Œk D x a Œk C 1 A aa x a Œk B a uœk : Then m 2 Œk D A abx b Œk ; where m 2 Œk is known/measurable and thus C xb isequaltoa ab. This is our reduced-order estimator output relation. We now look for a state equation for xb.considerthedynamicsofthe estimated state: x b Œk C 1 D A ba x a Œk C A bb x b Œk C B b uœk : Let B xb m 1 Œk D A ba x a Œk C B b uœk so that the reduced-order recurrence relation is x b Œk C 1 D A bb x b Œk C B xb m 1 Œk :

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 32 This might be accomplished via (single-input system) B xb m 1 Œk D i ha " # x a Œk ba B b uœk although the details of how this is done do not matter in the end. So, for the purpose of designing our estimator, the state-space equations are: x b Œk C 1 D A bb x b Œk C B xb m 1 Œk m 2 Œk D A ab x b Œk : In terms of our standard estimator design procedures, A A bb I BuŒk B xb m 1 Œk I C A ab I y m 2 Œk : For example, we can design a prediction reduced-order estimator. Once we know L r,wehavetheestimatorequation Ox b Œk C 1 D A bb Ox b Œk C B xb m 1 Œk C L r.m 2 Œk A ab Ox b Œk / : In terms of our known (measured) quantities, Ox b Œk C 1 D A bb Ox b Œk C A ba x a Œk C B b uœk C L r.x a Œk C 1 A aa x a Œk B a uœk A ab Ox b Œk / : Note that when we look at the compensator, we will be able to make the x a Œk C 1 disappear. In order to design Lr we must find the equation that the error dynamics satisfy. Qx b Œk C 1 D x b Œk C 1 Ox b Œk C 1

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 33 D A bb x b Œk C B xb m 1 Œk.A bb Ox b Œk C B xb m 1 Œk C L r.a ab x b Œk A ab Ox b Œk // D.A bb L r A ab / Qx b Œk : So we pick estimate error dynamics related to roots of r;des. / D det. I A bb C L r A ab / D 0: You might guess that arbitrary reduced-order estimator poles can be selected if fa ab ;A bb g forms an observable pair. Design of L r Relate coefficients of det. I A bb C L r A ab / D r;des. /: Ackermann s formula with A A bb ; C A ab ; 2 3 L r D r;des.a bb / 4 A ab A ab A bb : A ab A n 1 bb 5 1 2 4 0 : 0 1 3 5 : In MATLAB, Lr=acker(Abb,Aab,poles) ; Lr=place(Abb,Aab,poles) ;

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 34.9: Discrete-time reduced-order prediction compensator We now determine (1) the closed-loop system dynamics using the reduced-order compensator, and (2) the reduced-order discrete-time compensator D. /. We first combine the control law, the plant dynamics, and the estimator dynamics to find the closed-loop system dynamics. Control law: Plant: Estimator: using uœk D K a x a Œk K b Ox b Œk h i D K a K b OxŒk : xœk C 1 D AxŒk C BuŒk yœk D CxŒk D x a Œk : Ox b Œk C 1 D A bb Ox b Œk C A ba x a Œk C B b uœk C L r.x a Œk C 1 A aa x a Œk B a uœk A ab Ox b Œk / uœk D K a CxŒk K b Ox b Œk L r x a Œk C 1 D L r CxŒk C 1 D L r C.AxŒk C BuŒk / D L r CAxŒk L r B a K a CxŒk L r B a K b Ox b Œk :

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 35 " # xœk C 1 D Ox b Œk C 1 " A BK a C BK b #" # xœk L r CA C A ba C B b K a C L r A aa C A bb B b K b L r A ab Ox b Œk We can also investigate the closed-loop dynamics in terms of the estimator error state xœk C 1 D AxŒk BK a x a Œk BK b.x b Œk Qx b Œk / Qx b Œk C 1 D.A bb L r A ab / Qx b Œk ; or " xœk C 1 Qx b Œk C 1 # D " A BK BKb #" # xœk 0 A bb L r A ab Qx b Œk So, we see that the separation principle holds when using the reduced-order estimator. We now proceed to find the compensator. We combine the estimator state equation and controller output equation. and Ox b Œk C 1 D.A bb B b K b C L r B a K b L r A ab / Ox b Œk C.A ba C L r B a K a L r A aa B b K a /yœk CL r yœk C 1 Ox b Œk C 1 D N A Ox b Œk C NByŒk C L r yœk C 1 ; so taking the -transform uœk D K b Ox b Œk K a yœk ;

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 3 D. / D U. / Y. / D K a K b I N A 1 N B C L r : EXAMPLE: G.s/ D 1 s2i T D 1:4 seconds. System description " # " 1 1:4 1 A D ; B D 0 1 1:4 # ; C D Measure yœk D x1 Œk directly; estimate vœk D x 2 Œk. h 1 0 i ; Pick control poles the same as before: des. / D 2 1: C 0:: Choose dead-beat estimation of vœk : r;des. / D : h i Control design: K D 0:05 0:25. Reduced-order estimator r. / D det. I A bb C L r A ab / D 1 C L r T where A D " A aa A ba A ab A bb # D " 1 1:4 0 1 # so L r D 1 T D 0:14 implies r. / D det. 1 C 0:14 1:4/ D : Reduced-order estimator: implies A as above; B a D T 2 OvŒk C 1 DOvŒk C TuŒk C 1 T D yœk C 1 yœk 1:4 2 D 0:98I B b D T D 1:4: yœk C 1 yœk T 2 C 0:uŒk : 2 uœk T OvŒk

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 3 Imag Axis Control: uœk D 1 20 yœk 1 4 OvŒk ; so OvŒk C 1 D T 8 OvŒk C 1 1 T yœk C 1 T C T yœk 40 uœk D 1 4 Taking the transfer function: or In our case, T D 1:4; OvŒk 1 20 yœk : D. / D U. / Y. / D 1 20 1 4 1 T 1 T T 40 C T 8 D. / D 1 1 C 5 20 T C T 8 1 Root locus and transient response 0.8 0. 0.4 0.2 0 0.2 0.4 0. 0.8 0:81 D. / D 0:229 C 0:15 x and Oxp 5 T 1C 5 T : ; System and Estimator State Dynamics 1 y and Oy OPy 0.5 0 0.5 Py 1 1 0.5 0 0.5 1 Real Axis 1 0 5 10 15 20 25 30 35 Time

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 38.10: Continuous-time reduced-order estimator Here, we set xa to be the measured portion of the state and x b to be the unmeasured portion of the state. Then, " # " # x a.t/ x a.t/ x.t/ D ; and Ox.t/ D : x b.t/ Ox b.t/ The state equations that the system must satisfy are " #" # " # A aa A ab x a.t/ B a Px.t/ D C u.t/ A ba A bb x b.t/ B b h i " # x a.t/ y.t/ D I 0 : x b.t/ We need to manipulate this form into a state-space system description of the unmeasurable x b.t/ so that we can use standard tools to design an estimator Ox b.t/: First, we notice that the measured state xa.t/ has dynamics where x b.t/ is the only unknown. Let Px a.t/ D A aa x a.t/ C A ab x b.t/ C B a u.t/ m 2.t/ DPx a.t/ A aax a.t/ B a u.t/; so that we can create an output equation of the x b dynamics m 2.t/ D A ab x b.t/ where m 2.t/ is the measured/computed output value and x b is the estimated value.

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 39 Now, we proceed to find the state equation of the xb dynamics. Note Px b.t/ D A bb x b.t/ C ŒA ba x a.t/ C B b u.t/ ; where the items in the square brackets form a measured input signal. We design an estimator state equation as OPx b.t/ D A bb Ox b.t/ C A ba x a.t/ C B b u.t/ C L r.m 2.t/ A ab Ox b.t// D A bb Ox b.t/ C A ba x a.t/ C B b u.t/ C L r. Px a.t/ A aa x a.t/ B a u.t/ A ab Ox b.t//: We cannot implement this directly due to the offending Pxa.t/ term in the measurement update. To make this problem disappear, define w.t/ DOxb.t/ L r x a.t/ Pw.t/ D OPx b.t/ L r Px a.t/ D A bb Ox b.t/ C A ba x a.t/ C B b u.t/ L r A aa x a.t/ L r B a u.t/ L r A ab Ox b.t/: D ŒA bb L r A ab ŒOx b.t/ L r x a.t/ C ŒA bb L r A ab L r x a.t/ C A ba x a.t/ L r A aa x a.t/ C ŒB b L r B a u.t/ D ŒA bb L r A ab w.t/c Œ.A bb L r A ab /L r C A ba L r A aa x a.t/ C ŒB b L r B a u.t/

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 40 Pw.t/ D Aw.t/ N C NB 1 x a.t/ C NB 2 u.t/ Ox b.t/ D w.t/ C L r x a.t/: Therefore, the final state-space equations describing the dynamics of the estimator are: Pw.t/ D ŒA bb L r A ab w.t/c Œ.A bb L r A ab /L r C A ba L r A aa x a.t/ C ŒB b L r B a u.t/ Ox b.t/ D w.t/ C L r x a.t/: The poles of the estimator are det.si.a bb L r A ab // D 0 and we can design L r using, for example Lr=acker(Abb,Aab,poles) ;

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 41.11: Estimator pole placement As was the case for finding the control law, the design of an estimator (for single-output plants) simply consists of 1. Selecting desired estimator error dynamics. 2. Solving for the corresponding estimator gain. In other words, we find Lp, L c,orl r by first selecting the roots of ob;des. / or r;des. /: So, what estimator poles do we choose? If possible, pick estimator poles that do not influence transient response of control-law poles. We know cl D des ob;des: Since des was chosen to meet transient specifications, try to pick ob;des such that estimator dynamics die out before control-law dynamics. Dominated by controllaw dynamics Transient errors die out here. With no disturbance, the only job requirement for the estimator is to correct for the uncertainty of xœ0! This will be (near) immediate if we pick poles well inside unit circle. Pick estimator poles as fast as possible?

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 42 In control law design we were concerned with Fast response Slower response Large intermediate states versus Smaller intermediate states Large control effort Smaller control effort In estimator design, large intermediate states and large feedback signals (control effort) do not carry the same penalty since they are just computer signals! That is, Lp yœk is not limited by actuator hardware! Question: Why not pick very fast estimator poles? Answer: Sensor noise and uncertainty. Control law design: Transient response versus actuator effort. Estimator design: Sensor-noise rejection versus process-noise rejection. Consider the design of Lp :Theplantis xœk C 1 D AxŒk C BuŒk C B w wœk yœk D CxŒk C vœk : wœk W Process noise, plant disturbances, plant uncertainties vœk W Sensor noise, biases. Estimator: Oxp Œk C 1 D A Ox p Œk C BuŒk C L p yœk C Oxp Œk : Only knowledge of v, w through yœk.

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 43 Estimator error dynamics: If vœk D 0 then QxŒk C 1 D AxŒk C BuŒk C B w wœk A Ox p Œk BuŒk L p CxŒk C vœk C Oxp Œk D A L p C QxŒk C B w wœk L p vœk : Large L p produces fast poles of A L p C.FastcorrectionofwŒk effects. That is, we believe our sensor more than our model. We rely heavily on feedback to keep QxŒk small. High bandwidth to quickly compensate for disturbances. If wœk D 0 then Small L p produces slow poles of A L p C.Lessamplificationof sensor noise. We believe our model more than our sensor. Rely on model to keep QxŒk small:::open-loop estimation! Low bandwidth for good noise rejection (smoothing). Therefore, we pick the estimator poles, or design the estimator gain by examining the tradeoff: If A L p C fast: Small transient response effects. Fast correction of model, disturbances. Low noise rejection. If A L p C slow:

ECE4520/5520, OUTPUT-FEEDBACK CONTROL 44 Significant transient response effect. Slow correction of modeling errors, disturbances. High noise rejection. In general 1. Place poles two to six times faster than controller poles and in well-damped locations. This will limit the estimator influence on output response. 2. If the sensor noise is too big, the estimator poles can be placed as much as two times slower than controller poles. Notes about (2): Controller may need to be redesigned since the estimator will strongly influence transient behavior. These slow estimator dynamics will not be excited by our reference command if our signal is properly included! MIMO observer design The MIMO observer design problem is the dual of the MIMO controller design problem. Therefore, if fa T ;C T g is controllable, the controller design procedures return L D K T. Where to from here? We now know how to place closed-loop poles anywhere we want. Where do we want them? Is there an optimal set of locations? We next preview LQR design, which attempts to answer this question.