# Cambridge University Engineering Dept PDF document - DocSlides

2014-12-13 138K 138 0 0

##### Description

Third year Module 3F2 Systems and Control LECTURE NOTES 4 CONTROLLABILITY AND STATE FEEDBACK 1 Controllability 11 Controllability Gramian Controllability matrix 1 12 Minimum Energy Input ID: 23252

DownloadNote - The PPT/PDF document "Cambridge University Engineering Dept" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

### Presentations text content in Cambridge University Engineering Dept

Page 1
Cambridge University Engineering Dept. Third year Module 3F2: Systems and Control LECTURE NOTES 4: CONTROLLABILITY AND STATE FEEDBACK 1 Controllability 1.1 Controllability Gramian, Controllability matrix . . . . . . . . . . . . . . . . . . . 1 1.2 Minimum Energy Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Example: Pendulum Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.4 Reachable States and Minimal Realizations . . . . . . . . . . . . . . . . . . . . . 11 2 State Feedback 13 2.1 Steady-State Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2 State Feedback Design Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3 Observers with State Feedback 19 K. Glover Revised by J.M. Maciejowski Jan 2002 February 2008 1 Controllability 1.1 Controllability Gramian, Controllability matrix A system: Ax Bu is said to be controllable if for all initial conditions (0) = , terminal conditions , and 0 there exists an input such that ) = That is, given and 0, we wish to ﬁnd < t < t , such that ) = At Bu dt Note that this equation can be solved for all and if and only if it can be solved for all with = 0 . So we will now just consider the zero initial condition resp onse.
Page 2
Deﬁne the controllability Gramian def A BB d Now assume that ) has an inverse and let ) = ) = when ) = BB dt as desired Hence if det = 0 then we can reach any ) from (0) = 0 (and hence there exists to go from any (0) to any )). (Recall from section 3.1 of Lecture Notes 3: ) = Ce A d Observability Gramian If ) is a singular matrix there exists = 0 such that ) = 0 = 0 At = 0 for all and hence ) = Bu dt = 0 for all and the system is not controllable. Hence: System is controllable if and only if det = 0. In section 3.1 of Lecture Notes 3 we showed Null space of ) = Null space of Similarly we can show: Null space of ) = Null space of where the controllability matrix is given by def B AB A Hence The system is controllable if and only if rank
Page 3
Example: E4 Exam question 3, 1997
Page 4
Note that if the system is controllable this just implies tha t the state can pass through any value; it does not imply that there is an input to keep the stat e at this value (which depends on the equilibrium conditions): Controllability from both inputs: Ax Bu Controllable? rank[ B, AB, A B, A ] = 4 ? = 4) Controllability from alone: Ax , ( = [ , b ]) Controllable? rank[ , Ab , A , A ] = 4 ? Achievable steady-state (equilibrium) behaviour: With both inputs: Ax Bu , = 0 at equilibrium, so: 0 = Ax Bu possible for some With input only: 0 = Ax possible for some
Page 5
1.2 Minimum Energy Input Theorem 1.1 The input, ) = ) = , takes the state from (0) = 0 to ) = and in addition is the input with minimum energy that achieve s this. Proof: Let ) = ) + ) then ) = Bu dt and hence ) = implies, Bu dt = 0 Energy in ) for 0 < t < t is deﬁned as: dt dt ) + ) + ) + dt Now dt Bu dt = 0 = dt and dt BB dt W Hence dt dt Since both terms are 0 the minimum energy is achieved when ) = 0 and hence ) = ) when min dt Note that if ) is nearly singular then a very large energy input is require d to reach certain states.
Page 6
Example 0 1 0 0 u, At ) = dt 12 /t /t /t /t Minimum energy to go from to is hence 12 /t achieved when ) = 12 /t /t
Page 7
1.3 Example: Pendulum Control In the pendulum laboratory experiment we have the following linearized equations: dt L 0 1 0 0 0 0 0 0 0 1 0 0 {z {z where is the position of the carriage, is the angle of the pendulum, is proportional to the force on the carriage, is the length of the pendulum, is the natural frequency of the pendulum with the carriage ﬁxed and is the natural frequency of the pendulum with the carriage free to move. It is not too diﬃcult to verify that, def At sin( )) 1 + (cos( 1) sin( cos( It becomes rather tedious to then calculate, def dt and even more challenging to calculate !! However given values for the parameters this can be solved nu merically or even using symbolic algebra packages (although you are likely to get several pag es of output!). A sample numerical calculation is given in Figs. 1 and 3 for = 0 75 s and = 0 5 s, and ﬁnal state is at rest 0.4 m along the carriage. For an ‘animation’ s ee Figs. 2 and 4. A Taylor series expansion of can be obtained using symbolic algebra and gives the minimum energy to reach is approximately 100800 for small — showing that the required input increases dramatically as becomes small.
Page 8
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 −1 −0.8 −0.6 −0.4 −0.2 0.2 0.4 0.6 0.8 time x x dot L theta L theta dot u/10 Figure 1: Pendulum trajectories −0.1 0.1 0.2 0.3 0.4 0.5 −0.2 −0.1 0.1 Figure 2: Animation of pendulum (time between frames is 0.01 seconds)
Page 9
0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 −6 −4 −2 time x x dot L theta L theta dot u/10 Figure 3: Pendulum trajectories −0.1 0.1 0.2 0.3 0.4 0.5 −0.25 −0.2 −0.15 −0.1 −0.05 0.05 0.1 0.15 Figure 4: Animation of pendulum
Page 10
10 The MATLAB code to draw these ﬁgures is: % This file inherited from Keith Glover for use with 3F2 cours e. % Modified by JMM, 26.02.2008. % This file calculates the minimum ‘energy’ input to move the pendulum from % zero state to state x1 at time t1. % Instructions for use: Set t1 and x1, e.g. t1=0.8 .7 .6 .55, x1 =[.4;0;0;0] % then run this file to calculate the min energy trajectory. % Then run ’crane_ol.mdl’ to simulate the linear model with t his open loop u. % For demo purposes the animation at the end is best. % Can also animate pre-stored results using ’animations3F2 ’. load pend % loads the state space matrices % calculate the optimal input u. del=t1/1000; t_u=0:del:t1; exp_del=expm(a*del); % Matrix exponential. exp_at=eye(4); Wc=b*b’*del; for t_i=t_u, % Controllability Gramian calculation (appro x.) exp_at=exp_at*exp_del; Wc=Wc+exp_at*b*b’*exp_at’*del; end x=Wc\x1; u=zeros(length(t_u),1); for i=length(t_u):-1:1, u(i)=b’*x; x=exp_del’*x; end return % This signal is then input to the simulation in crane_ol.mdl % Then paste following 3 lines into Matlab window to plot resu lts: plot(t_sim,x(:,1),’b-’,t_sim,x(:,2),’g:’,t_sim,x(:, 3),’r-.’,t_sim,x(:,4),’c--’,t_u,u/10,’m--’); grid legend(’x ’,’x dot’,’L theta’,’L theta dot’,’u/10’,3 ); xlabel(’time’);grid on; title(’Pendulum control traject ories’) % Now paste following 10 lines into Matlab window to animate t he results: L=0.125; plot([-.1;.5],[0;0]), axis([-.1 .5 -.2 .05]); ax is equal; hold on for i=1:length(t_sim), plot([x(i,1); x(i,1)-L*sin(x(i,3)/L)],[0;-L*cos(x(i, 3)/L)],’c’,’EraseMode’,’none’) drawnow; tic; while toc<.15, end end hold off
Page 11
11 1.4 Reachable States and Minimal Realizations We have seen in the previous section that if ) is nearly singular then some directions in the state space are very diﬃcult to reach, and if ) is singular then some states cannot be reached and that ) is necessarily perpendicular to the null space of ). It can in fact be shown (details are omitted) that the states that can be reached at time from (0) = 0 are precisely of the form: Reachable states = Range space of = Range space of B AB A (since null spaces of and ) are the same, and using Fact 2.2 from Lecture Notes 3.) Deﬁnition 1.2 A set of state equations given by A, B, C, D is called a minimal realization of its transfer function, ) = sI , if there does not exist a state space realization of with a lower state dimension. In section 3.2 of Lecture Notes 3 we saw that if a system was not observable then there was a change of state coordinates that gave an observable realisa tion of the transfer function with states where = rank( ). If this system with states is not controllable its state dimension could be furt her reduced in a similar manner and we are left with a state-space realisatio n of the transfer function that is both controllable and observable. It turns out that (proof omitted) Theorem 1.3 A realization is minimal if and only if it is both controllabl e and observable.
Page 12
12 In single-input/single-output systems this means that if a system is either not controllable or not observable then there are pole/zero cancellations in th e transfer function. Example: 0 1 , B , C = [1 1] , D = 0 Observability: CA rank( ) = 1 NOT observable Qx = 0? 1 1 so is not observable. Controllability: = [ B, AB ] = rank( ) = 2 controllable Example continued Transfer function: ) = sI = [1 1] + 3 + 1 + 1)( + 2) + 2 pole-zero cancellation
Page 13
13 2 State Feedback The response of a system is largely determined by the locatio n of its closed loop poles. Can state feedback assign the closed loop poles? System: Ax Bu with state feedback: Kx Mr giving closed loop: = ( BK BMr Theorem 2.1 The closed loop poles will be the eigenvalues of BK which can be placed arbitrarily by choice of if and only if A, B is controllable. (The derivation of this is entirely analogous to the result i n section 4.2 of Lecture Notes 3, that the eigenvalues of ( LC ) can be arbitrarily assigned by choice of if ( A, C ) is observable). Where to place the poles? stable fast enough but not too fast since this might saturate actuators give poor stability margins.
Page 14
14 2.1 Steady-State Gain Servo-system. Suppose we want Two approaches to obtain the correct DC gain: (a) Choice of = ( BK BMr Cx In steady-state: = 0 BK BMr Choose such that BK BM and after a step change with speed given by eigenvalues of ( BK ). [Such an usually exists if dim( dim( ) but not otherwise]. This requires exact knowledge of the system matrices. The steady-state error being zero is not robust to small changes in the system. Also need to know an equilibri um condition. (b) Integral Action Integral action can be incorporated by augmenting the state by the integral of the error, i.e. Cx which gives with state feedback: Choose , K to assign the closed-loop poles (possible if augmented syst em controllable) and then after a step change. Robust to small changes in A, B, C, K Does not require knowledge of the equilibrium condition
Page 15
15 2.2 State Feedback Design Example Plant ) = +2 +1 Design Spec Response in to a step command on to have zero oﬀset and small overshoot. Integral Action Controller To attain zero oﬀset need to insert an integrator in the open l oop. Assume only the output is used for feedback. Open loop transfer function = +1)( +2) , with closed loop poles roots of + 3 + 2 = 0 −3 −2.5 −2 −1.5 −1 −0.5 0.5 1.5 −2 −1.5 −1 −0.5 0.5 1.5 Real Axis Imag Axis
Page 16
16 A passable design would be = 0 528 which gives closed-loop poles at 283. The closed loop response will be: 10 15 0.5 1.5 2.5 input output State Feedback Design First formulate the state space equations 2 1 PLANT We will again need to add an integrator to ensure a zero oﬀset. The state feedback formulation will now be
Page 17
17 The extra state variable has been added to integrate the output error - this gives an augmented set of state equations dt 2 1 0 1 0 1 0 0 and the proposed feedback scheme is given by , so the closed loop state equations become = ( Bk 2 1 0 1 0 0 The closed loop characteristic equation becomes det[ λI Bk )] = det + 2 1 0 + 1 + 1 0 = ( + 2)( + 1 + + (3 + + (2 + + 2 Suppose we desired all the closed loop poles to be at 5, then the required characteristic equation would be: + 5) + 15 + 75 + 125 Equating coeﬃcients now gives 3 + = 15 = 12 2 + + 2 = 75 = 49 , k 125
Page 18
18 The transfer function from to can now be computed as:- sI Bk )] = [1 0 0] + 2 1 0 49 + 13 125 1 0 125 + 5) Also the transfer function from to can be computed as:- = [49 12 125] + 2 1 0 49 + 13 125 1 0 125( + 1)( + 2) + 5) The step responses are thus:- 10 input output integral action control Very similar to using a 3-term controller which could also gi ve arbitrarily fast response.
Page 19
19 3 Observers with State Feedback SYSTEM Ax Bu Cx OBSERVER Bu ) = ( LC ) Bu Ly CONTROLLER Mr Error: = ( LC ) + Mr = ( BK BKe BMr BK BK LC BM = [ 0] NB: Eigenvalues of X Y Eigenvalues of }∪{ Eigenvalues of So closed-loop poles are at the eigenvalues of ( BK ) and those of ( LC ). is not aﬀected by so that Separation of estimation and control. Can this always be done? If ( A, B ) is controllable and ( A, C ) is observable, then no problems we can place all eigenvalues anywhere we want. If all uncontrollable and unobservable modes (states) are s table, may still be OK. If any uncontrollable or unobservable modes are unstable, t hen NOT OK, since they will remain in the closed-loop system.
Page 20
20 Block diagram: OBSERVER PLANT OBSERVER−BASED CONTROLLER If 0 then this structure is the same as for a dynamic precompensa tor. For 6 0 the structures are diﬀerent.