Topic并16 16.31 Feedback Control State-Space Systems Open-loop Estimators Closed-loop Estimators Observer Theory (no noise)-Luenberger IEEE TAC Vol 16, No. 6, pp. 596-602, December 1971 Estimation Theory(with noise)-Kalman Copyright [2001 by JOnathan dHow. O
Topic #16 16.31 Feedback Control State-Space Systems • Open-loop Estimators • Closed-loop Estimators • Observer Theory (no noise) — Luenberger IEEE TAC Vol 16, No. 6, pp. 596—602, December 1971. • Estimation Theory (with noise) — Kalman Copyright 2001 by Jonathan How. 1
Fall 2001 16.3116-1 Estimators/observers . Problem: So far we have assumed that we have full access to the state a(t)when we designed our controllers Most often all of this information is not available Usually can only feedback information that is developed from the sensors measurements Could try“ output feedback” K KI ame as the proportional feedback we looked atat the beginning of the root locus work This type of control is very difficult to design in general Alternative approach: Develop a replica of the dynamic sys- tem that provides an estimate of the system states based on the measured output of the system ● New plan 1. Develop estimate of a(t) that will be called a(t) 2. Then switch from u=-Ka()to u=-kit ●1 wo key questions How do we find i(t)? Will this new plan work?
Fall 2001 16.31 16—1 Estimators/Observers • Problem: So far we have assumed that we have full access to the state x(t) when we designed our controllers. — Most often all of this information is not available. • Usually can only feedback information that is developed from the sensors measurements. — Could try “output feedback” u = Kx ⇒ u = Ky ˆ — Same as the proportional feedback we looked at at the beginning of the root locus work. — This type of control is very difficult to design in general. • Alternative approach: Develop a replica of the dynamic system that provides an “estimate” of the system states based on the measured output of the system. • New plan: 1. Develop estimate of x(t) that will be called ˆx(t). 2. Then switch from u = −Kx(t) to u = −Kxˆ(t). • Two key questions: — How do we find ˆx(t)? — Will this new plan work?
Fall 2001 6.3116-2 Estimation schemes . assume that the system model is of the form Ac+ Bu, a(0) unknown Where 1. A.B. and C are known 2. u(t) is known 3. Measurable outputs are y(t) from C+I e Goal: Develop a dynamic system whose state for all time t20. Two primary approaches Open-loop Closed-loop Open-loop Estimator Given that we know the plant matrices and the inputs, we can just perform a simulation that runs in parallel with the system (t)=A+B(t) Then i(t=a(t)v t provided that i(0=a(o Major Problem: We do not know a(0)
Fall 2001 16.31 16—2 Estimation Schemes • Assume that the system model is of the form: x˙ = Ax + Bu , x(0) unknown y = Cx where 1. A, B, and C are known. 2. u(t) is known 3. Measurable outputs are y(t) from C 6= I • Goal: Develop a dynamic system whose state xˆ(t) = x(t) for all time t ≥ 0. Two primary approaches: — Open-loop. — Closed-loop. Open-loop Estimator • Given that we know the plant matrices and the inputs, we can just perform a simulation that runs in parallel with the system ˙ xˆ(t) = Axˆ + Bu(t) • Then ˆx(t) ≡ x(t) ∀ t provided that ˆx(0) = x(0) • Major Problem: We do not know x(0)
Fall 2001 16.3116-3 X() SYSTEM A B.c y() u(七 DBSERVER A,8.C 文( Analysis of this case i(t)= Ac+Bu( i(t)=A.c+Bu(t) Define the estimation error (t)=a(t-i(t) Now want c(t)=0Vt. But is this realistic?) Subtract to get dt x-)=Ax-)→(t)=A which has the solution (t) At Gives the estimation error in terms of the initial error
Fall 2001 16.31 16—3 • Analysis of this case: x˙(t) = Ax + Bu(t) ˙ xˆ(t) = Axˆ + Bu(t) • Define the estimation error x˜(t) = x(t) − xˆ(t). Now want ˜x(t)=0 ∀ t. (But is this realistic?) • Subtract to get: d dt(x − xˆ) = A(x − xˆ) ⇒ x˜˙(t) = Ax˜ which has the solution x˜(t) = eAtx˜(0) — Gives the estimation error in terms of the initial error
Fall 2001 16.3116-4 Does this guarantee that a=0v t? Or even that→0ast→∞?( which is a more realistic goal - Response is fine if (0)=0. But what if (0)+0? ● If a stable,then→0ast→oo, but the dynamics of the estima- tion error are completely determined by the open-loop dynamics of the system(eigenvalues of A) Could be very slow no obvious way to modify the estimation error dynamics Open-loop estimation does not seem to be a very good idea Closed-loop Estimator An obvious way to fix this problem is to use the additional informa- tion available How well does the estimated output match the measured output? Compare:y= C with y=Ci Then form y=y-y≡Cx
Fall 2001 16.31 16—4 • Does this guarantee that ˜x = 0 ∀ t? Or even that ˜x → 0 as t → ∞? (which is a more realistic goal). — Response is fine if x˜(0) = 0. But what if x˜(0) 6= 0? • If A stable, then ˜x → 0 as t → ∞, but the dynamics of the estimation error are completely determined by the open-loop dynamics of the system (eigenvalues of A). — Could be very slow. — No obvious way to modify the estimation error dynamics. • Open-loop estimation does not seem to be a very good idea. Closed-loop Estimator • An obvious way to fix this problem is to use the additional information available: — How well does the estimated output match the measured output? Compare: y = Cx with ˆy = Cxˆ — Then form ˜y = y − yˆ ≡ Cx˜
Fall 2001 6.3116-5 X() SYSTEM A,BC OBSERVER A16 y() Approach: Feedback y to improve our estimate of the state. Basic form of the estimator is (t)=Ai(t)+ Bu(t)+Lio 0(t)=Cx(t) where l is the user selectable gain matric analysi [Ac+ Bu-[A c+ Bu+L(y-y) A(a-a)-L(Cr-Cr)=Ai- LCa=(a-lc)a So the closed-loop estimation error dynamics are now =(A- LC)i with solution a(t) (A-LC)t c(O Bottom line: Can select the gain L to attempt to improve the convergence of the estimation error(and or speed it up But now must worry about observability of the system model
Fall 2001 16.31 16—5 • Approach: Feedback ˜y to improve our estimate of the state. Basic form of the estimator is: ˙ xˆ(t) = Axˆ(t) + Bu(t) + Ly˜(t) yˆ(t) = Cxˆ(t) where L is the user selectable gain matrix. • Analysis: x˜˙ = x˙ − ˙ xˆ = [Ax + Bu] − [Axˆ + Bu + L(y − yˆ)] = A(x − xˆ) − L(Cx − Cxˆ) = Ax˜ − LCx˜ = (A − LC)˜x • So the closed-loop estimation error dynamics are now ˙ x˜ = (A − LC)˜x with solution ˜x(t) = e(A−LC)t x˜(0) • Bottom line: Can select the gain L to attempt to improve the convergence of the estimation error (and/or speed it up). — But now must worry about observability of the system model
Fall 2001 16.3116-6 Note the similarity Regulator Problem: pick K for A- BK o Choose K ERIXn(SiSo) such that the closed-loop poles det(s-A+BK)=重(s are in the desired locations Estimator Problem: pick L for A-LC o Choose E RxI(SiSO)such that the closed-loop poles dt(s-A+LC)=重(s) are in the desired locations o These problems are obviously very similar-in fact they are called dual problems
Fall 2001 16.31 16—6 • Note the similarity: — Regulator Problem: pick K for A − BK 3 Choose K ∈ R1×n (SISO) such that the closed-loop poles det(sI − A + BK) = Φc(s) are in the desired locations. — Estimator Problem: pick L for A − LC 3 Choose L ∈ Rn×1 (SISO) such that the closed-loop poles det(sI − A + LC) = Φo(s) are in the desired locations. • These problems are obviously very similar — in fact they are called dual problems
Fall 2001 16.3116-7 Estimation gain selection For regulation, were concerned with controllability of(A, B For a controllable system we can place the eigenvalues of A- Bk arbitrarily For estimation, were concerned with observability of pair(A, C) For a observable system we can place the eigenvalues of A-LC arbitrarily Test using the observability matrix CA rank M会 rank CA CAT e The procedure for selecting L is very similar to that used for the regulator design process . Write the system model in observer canonical form -a110 bl 01 + b 3 00 b3 y 1001x
Fall 2001 16.31 16—7 Estimation Gain Selection • For regulation, were concerned with controllability of (A, B) For a controllable system we can place the eigenvalues of A − BK arbitrarily. • For estimation, were concerned with observability of pair (A, C). For a observable system we can place the eigenvalues of A − LC arbitrarily. • Test using the observability matrix: rank Mo , rank C CA CA2 . . . CAn−1 = n • The procedure for selecting L is very similar to that used for the regulator design process. • Write the system model in observer canonical form x˙ 1 x˙ 2 x˙ 3 = −a1 1 0 −a2 0 1 −a3 0 0 x1 x2 x3 + b1 b2 b3 u y = £ 1 0 0 ¤ x1 x2 x3
Fall 2001 16.3116-8 Now very simple to form 10 l1 A-LC a201 l2|100 -a300 l3 Z110 l201 l300 The closed-loop poles of the estimator are at the roots of det(I-A+LC)=s32+(a1+4)2+(a2+l2)s+(a3+l3)=0 So we have the freedom to place the closed-loop poles as desired Task greatly simplified by the selection of the state-space model used for the design/analysis
Fall 2001 16.31 16—8 • Now very simple to form A − LC = −a1 1 0 −a2 0 1 −a3 0 0 − l1 l2 l3 £ 1 0 0 ¤ = −a1 − l1 1 0 −a2 − l2 0 1 −a3 − l3 0 0 — The closed-loop poles of the estimator are at the roots of det(sI − A + LC) = s3 + (a1 + l1)s2 + (a2 + l2)s + (a3 + l3)=0 • So we have the freedom to place the closed-loop poles as desired. — Task greatly simplified by the selection of the state-space model used for the design/analysis
Fall 2001 16.3116-9 Another approach Note that the poles of(A-LC) and(A-LC)are identical Also we have that(A-LC)=A So designing l for this transposed system looks like a standard regulator problem(A- BK)where B→Cr F→L So we can use Ke= acker(A',C,P), L=K e Note that the estimator equivalent of Ackermann's formula is that L=重(s)M 0:01
Fall 2001 16.31 16—9 • Another approach: — Note that the poles of (A − LC) and (A − LC) T are identical. — Also we have that (A − LC) T = AT − CTLT — So designing LT for this transposed system looks like a standard regulator problem (A − BK) where A ⇒ AT B ⇒ CT K ⇒ LT So we can use Ke = acker(AT , CT , P) , L ≡ KT e • Note that the estimator equivalent of Ackermann’s formula is that L = Φe(s)M−1 o 0 . . . 0 1