Fall 2001 6.3110-1 Topic #10 16.31 Feedback Control State-Space Systems What are the basic properties of a state-space model, and how do we analyze these? e Time Domain Interpretations System Modes Copyright 2001 by Jonathan How
Fall 2001 16.31 10–1 Topic #10 16.31 Feedback Control State-Space Systems • What are the basic properties of a state-space model, and how do we analyze these? • Time Domain Interpretations • System Modes Copyright 2001 by Jonathan How
Fall 2001 6.3110-1 ● Forced solution Consider a scalar case . I+bu, a (0) gi ()=eta()+/ ea(-Tbu(r)dr where did this come from? Ciaa]=d(e-atar(t))=e-atbu(t de-at.(r)d (1)-x(0)=0 u(TaT forced solution- Matrix case A r+ Bu where r is an n-vector and u is a m-vector Just follow the same steps as above to get (t)=e4x(0)+ Bu()d and if y= Ca+ Du, then y(t)=Ce x(0)+Ceae-T Bu(r)dr+ Du(t) Ceatc(0)is the initial response CeA()B is the impulse response of the system
Fall 2001 16.31 10–1 • Forced Solution – Consider a scalar case: x˙ = ax + bu, x(0) given ⇒ x(t) = eatx(0) + t 0 ea(t−τ) bu(τ )dτ where did this come from? 1. ˙x − ax = bu 2. e−at [ ˙x − ax] = d dt(e−atx(t)) = e−atbu(t) 3. t 0 d dτ e−aτx(τ )dτ = e−atx(t) − x(0) = t 0 e−aτ bu(τ )dτ • Forced Solution – Matrix case: x˙ = Ax + Bu where x is an n-vector and u is a m-vector • Just follow the same steps as above to get x(t) = eAtx(0) + t 0 eA(t−τ) Bu(τ )dτ and if y = Cx + Du, then y(t) = CeAtx(0) + t 0 CeA(t−τ) Bu(τ )dτ + Du(t) – CeAtx(0) is the initial response – CeA(t) B is the impulse response of the system.
Fall 2001 16.3110-2 Have seen the key role of eat in the solution for (t) Determines the system time response But would like to get more insight Consider what happens if the matrix A is diagonalizable, i. e. there exists a T such that 入1 TAT=A which is diagonal m= The where Follows since eAt=I+ At+ 2 (At) and that a=TAT-1. so we can I+At+(4)2+ I+TAT-t+e(TAT- t)+ Ten This is a simpler way to get the matrix exponential, but how find T and A? Eigenvalues and Eigenvectors
Fall 2001 16.31 10–2 • Have seen the key role of eAt in the solution for x(t) – Determines the system time response – But would like to get more insight! • Consider what happens if the matrix A is diagonalizable, i.e. there exists a T such that T −1 AT = Λ which is diagonal Λ = λ1 ... λn Then eAt = T eΛt T −1 where eΛt = eλ1t ... eλnt • Follows since eAt = I + At + 1 2!(At)2 + ... and that A = TΛT −1, so we can show that eAt = I + At + 1 2!(At) 2 + ... = I + TΛT −1 t + 1 2!(TΛT −1 t) 2 + ... = T eΛt T −1 • This is a simpler way to get the matrix exponential, but how find T and λ? – Eigenvalues and Eigenvectors
Fall 2001 16.3110-3 Eigenvalues and eigenvectors Recall that the eigenvalues of A are the same as the roots of the characteristic equation (page A is an eigenvalue of A if det(AI-A)=0 which is true iff there exists a nonzero v(eigenvector) for which Au=入 Repeat the process to find all of the eigenvectors. Assuming that the n eigenvectors are linearly independent A AT=TA TTAT=A . One word of caution: Not all matrices are diagonalizable 01 det(sI-A)= only one eigenvalue s=0 (repeated twice). The eigenvectors solve 「01 0 00 eigenvectors are 71 of the form0/,n≠0→ would only be one Need the Jordan Normal Form to handle this case(section 3.7.3)
Fall 2001 16.31 10–3 Eigenvalues and Eigenvectors • Recall that the eigenvalues of A are the same as the roots of the characteristic equation (page 9–1) • λ is an eigenvalue of A if det(λI − A)=0 which is true iff there exists a nonzero v (eigenvector) for which (λI − A)v = 0 ⇒ Av = λv • Repeat the process to find all of the eigenvectors. Assuming that the n eigenvectors are linearly independent Avi = λivi i = 1,...,n A v1 ··· vn = v1 ··· vn λ1 ... λn AT = TΛ ⇒ T −1 AT = Λ • One word of caution: Not all matrices are diagonalizable A = 0 1 0 0 det(sI − A) = s2 only one eigenvalue s = 0 (repeated twice). The eigenvectors solve 0 1 0 0 r1 r2 = 0 eigenvectors are of the form r1 0 , r1 = 0 → would only be one. • Need the Jordan Normal Form to handle this case (section 3.7.3)
Fall 2001 6.3110-4 Mechanics ● Consider A s+1-1 det(sI-A)=(s+1)(s-5)+8=s2-4s+3=0 so the eigenvalues are s1=l and S2= 3 Eigenvectors(sI-Au=0 (s1I-A)1= 8s-5 U21 2-1 U11 02011-021=0,→21=2011 Ul is then arbitrary (0), so set v1=1 4-1 (s21-A 4 Confirm that Av;= XiI
Fall 2001 16.31 10–4 Mechanics • Consider A = −1 1 −8 5 (sI − A) = s + 1 −1 8 s − 5 det(sI − A)=(s + 1)(s − 5) + 8 = s2 − 4s +3=0 so the eigenvalues are s1 = 1 and s2 = 3 • Eigenvectors (sI − A)v = 0 (s1I − A)v1 = s + 1 −1 8 s − 5 s=1 v11 v21 = 0 2 −1 8 −4 v11 v21 =0 2v11 − v21 = 0, ⇒ v21 = 2v11 v11 is then arbitrary (= 0), so set v11 = 1 v1 = 1 2 (s2I − A)v2 = 4 −1 8 −2 v12 v22 =0 4v12 − v22 = 0, ⇒ v22 = 4v12 v2 = 1 4 • Confirm that Avi = λivi
Fall 2001 6.3110-5 Dynamic Interpretation ● Since a=TAT-,then T where we have written a which is a column of rows Multiply this expression out and we get that i=1 Assume A diagonalizable, then i=A. a(0)given, has solution A TeAtr-l(o ∑eu{nzO State solution is a linear combination of the system modes v;eai eAit-Determines the nature of the time response Ui- Determines extent to which each state contributes to that mode Bi -Determines extent to which the initial condition excites the mode
Fall 2001 16.31 10–5 Dynamic Interpretation • Since A = TΛT −1, then eAt = T eΛt T −1 = | | v1 ··· vn | | eλ1t ... eλnt − wT 1 − . . . − wT n − where we have written T −1 = − wT 1 − . . . − wT n − which is a column of rows. • Multiply this expression out and we get that eAt = n i=1 eλit viwT i • Assume A diagonalizable, then ˙x = Ax, x(0) given, has solution x(t) = eAtx(0) = T eΛt T −1 x(0) = n i=1 eλit vi{wT i x(0)} = n i=1 eλit viβi • State solution is a linear combination of the system modes vieλi eλit – Determines the nature of the time response vi – Determines extent to which each state contributes to that mode βi – Determines extent to which the initial condition excites the mode
Fall 2001 6.31106 Note that the vi give the relative sizing of the response of each part of the state vector to the response 2()=/1 mode 1 0 0.5 t) mode 2 0.5 Clearly eit gives the time modulation Ai real - growing/decaying exponential response A i complex -growingdecaying exponential damped sinusoidal Bottom line: The locations of the eigenvalues determine the pole locations for the system, thus They determine the stability and/ or performance transient behavior of the system It is their locations that we will want to modify when we start the control work
Fall 2001 16.31 10–6 • Note that the vi give the relative sizing of the response of each part of the state vector to the response. v1(t) = 1 0 e−t mode 1 v2(t) = 0.5 0.5 e−3t mode 2 • Clearly eλit gives the time modulation – λi real – growing/decaying exponential response – λi complex – growing/decaying exponential damped sinusoidal • Bottom line: The locations of the eigenvalues determine the pole locations for the system, thus: – They determine the stability and/or performance & transient behavior of the system. – It is their locations that we will want to modify when we start the control work
Fall 2001 163110-7 Zeros in State Space models Roots of the transfer function numerator are called the system zeros Need to develop a similar way of defining/computing them using a state space model Zero: is a generalized frequency so for which the system can have a non-zero input u(t)=uoe5ot but exactly zero output y(t)=0Vt Note that there is a specific initial condition associated with this response 0, so the state response is of the form a(t)=coe5o →y(t)≡0 Given i= Az+ Bu, substitute the above to get tosoesot atoe sot Buoesot =[soI-A-BI Also have that y= C +Du=0 which gives 0 C D So we must solve for the so that solves: or I-A-B This is a generalized eigenvalue problem that can be solved in MATLAB using eig.m or tzero.m MaTLAB is a trademark of the mathworks Inc
Fall 2001 16.31 10–7 Zeros in State Space Models • Roots of the transfer function numerator are called the system zeros. – Need to develop a similar way of defining/computing them using a state space model. • Zero: is a generalized frequency s0 for which the system can have a non-zero input u(t) = u0es0t , but exactly zero output y(t) ≡ 0 ∀t – Note that there is a specific initial condition associated with this response x0, so the state response is of the form x(t) = x0es0t u(t) = u0es0t ⇒ x(t) = x0es0t ⇒ y(t) ≡ 0 • Given ˙x = Ax + Bu, substitute the above to get: x0s0es0t = Ax0es0t + Bu0es0t ⇒ s0I − A −B x0 u0 = 0 • Also have that y = Cx + Du = 0 which gives: Cx0es0t + Du0es0t = 0 → C D x0 u0 = 0 • So we must solve for the s0 that solves: or s0I − A −B C D x0 u0 = 0 – This is a generalized eigenvalue problem that can be solved in MATLABr using eig.m or tzero.m 2 2MATLABr is a trademark of the Mathworks Inc
Fall 2001 16.3110-8 Is a zero at the frequency so if there exists a non-trivial solution of 1-A B 0 Compare with equation on page 9-1 Key point: Zeros have both a direction ao and a frequency so Just as we would associate a direction(eigenvector ) with each pole(fre- quency入) Example: G(s) 2+7s+ C=[12]D=0 +712-1 I-A-B det - det 1s00 120 =(s0+7)(0)+1(2)+1(s0)=s0+2=0 so there is clearly a zero at so =-2, as we expected. For the directions solve s0+712-1 512-1 01 1 1-20 gives o1 02 and wo=2 Co2 so that with ao2=1 2 an
Fall 2001 16.31 10–8 • Is a zero at the frequency s0 if there exists a non-trivial solution of det s0I − A − B C D = 0 – Compare with equation on page 9–1 • Key Point: Zeros have both a direction x0 u0 and a frequency s0 – Just as we would associate a direction (eigenvector) with each pole (frequency λi) • Example: G(s) = s+2 s2+7s+12 A = −7 −12 1 0 B = 1 0 C = 1 2 D = 0 det s0I − A −B C D = det s0 + 7 12 −1 −1 s0 0 1 20 = (s0 + 7)(0) + 1(2) + 1(s0) = s0 +2=0 so there is clearly a zero at s0 = −2, as we expected. For the directions, solve: s0 + 7 12 −1 −1 s0 0 1 20 s0=−2 x01 x02 u0 = 5 12 −1 −1 −2 0 120 x01 x02 u0 = 0? gives x01 = −2x02 and u0 = 2x02 so that with x02 = 1 x0 = −2 1 and u = 2e−2t
Fall 2001 16.3110-9 Further observations: apply the specified control input in the frequency domain so that 1(s)=G(s)U(s) where u=2e-2t, so that U(s)=2 +2 2 s2+7s+12s+2s2+7s+12 Say that s=-2 is a blocking zero or a transmission zero The response Y(s) is clearly non-zero, but it does not contain a component at the input frequency s=-2. That input has been "blocked Note that the output response left in Yi(s) is of a very special form-it corresponds to the(negative of the) response you would see from the system with u(t)=0 and To=[-2 Y2 s)=C(sI-A s+712 2 1 s 12 -2 1s+7」1」s2+7s+12 s2+7s+12 So then the total output is Y(s)=Y(s)+Y2(s)showing that Y(s)=0- y(t)=0
Fall 2001 16.31 10–9 • Further observations: apply the specified control input in the frequency domain, so that Y1(s) = G(s)U(s) where u = 2e−2t , so that U(s) = 2 s+2 Y1(s) = s + 2 s2 + 7s + 12 · 2 s + 2 = 2 s2 + 7s + 12 Say that s = −2 is a blocking zero or a transmission zero. • The response Y (s) is clearly non-zero, but it does not contain a component at the input frequency s = −2. That input has been “blocked”. • Note that the output response left in Y1(s) is of a very special form – it corresponds to the (negative of the) response you would see from the system with u(t) = 0 and x0 = −2 1 T Y2(s) = C(sI − A) −1 x0 = 1 −2 s + 7 12 −1 s −1 −2 1 = 1 −2 s −12 1 s + 7 −2 1 1 s2 + 7s + 12 = −2 s2 + 7s + 12 • So then the total output is Y (s) = Y1(s) + Y2(s) showing that Y (s)=0 → y(t) = 0, as expected