Professional Documents
Culture Documents
Department of Control Science & Engineering School of Electronic & Information Engineering Tongji University
Outline
1
4.1 Introduction 4.2 State feedback 4.3 Pole placement using state feedback 4.4 Design of state observers 4.5 Feedback from estimated states 4.6 Simulations with MATLAB
Outline
1
4.1 Introduction 4.2 State feedback 4.3 Pole placement using state feedback 4.4 Design of state observers 4.5 Feedback from estimated states 4.6 Simulations with MATLAB
4.1 Introduction
Introduction
What is the fundamental idea of control theory?
Feedback!!! Classical control: Cascade compensator, output feedback controller, ... State space control: State feedback State feedback State feedback + state observer = output feedback
Spring 2012
4 / 42
Outline
1
4.1 Introduction 4.2 State feedback 4.3 Pole placement using state feedback 4.4 Design of state observers 4.5 Feedback from estimated states 4.6 Simulations with MATLAB
b
+
A k The system with the state feedback is x (t) = (A bk)x(t) + bu(t) y(t) = cx(t) What can we observe from the above model?
Spring 2012
7 / 42
We can conclude that the closed-loop system is controllable via state feedback if and only in the open-loop system is controllable. In other words, the state feedback does NOT change the controllability of the system. How to understand this feature of the state feedback? Lets go back to the denition of state controllability. + u y Denote the open-loop and c r b
+
A k
controllable cl controllable
Suppose for there exists an input u1 (t): x(t0 ) x(t1 ). Then, for cl , we have r1 (t) = u1 (t) + kx(t): x(t0 ) x(t1 ). cl controllable controllable If is not controllable, that is u(t) cannot control x(t), then r(t) cannot control it.
r1 (t)
Suppose the state feedback gain is k = k1 k2 . Then the closed-loop system matrix is 1 1 0 1 1 k1 k2 = A bk = k1 1 k2 1 0 1 and the observability matrix is changed into 1 1 Qocl = rank 1 k1 k2 It is clear that rank Qocl depends on the value of k1 and k2 . 1, k k = 1; 2 1 rank Qocl = 2, otherwise.
Prof J Wang (Tongji Uni) Chap 4. State feedback control
Yes, the state feedback can change the observability of the system!
Spring 2012 11 / 42
Spring 2012
12 / 42
Outline
1
4.1 Introduction 4.2 State feedback 4.3 Pole placement using state feedback 4.4 Design of state observers 4.5 Feedback from estimated states 4.6 Simulations with MATLAB
k1
c + B +
c C c A 12 A
y1 +
y
y2 +
k2
+
nc C
nc A can be partition as [k1 , k2 ]. It is clear that the state feedback cannot aect the uncontrollable modal. The state controllability is the necessary condition for the pole placement by state feedback.
If the system is completely controllable, we can transform it into the following controllable canonical form (Ac , bc , cc ), where Ac =
1 P c APc 0 1 . .. . , . . 0 1 a0 a1 an1 0 0 1
bc =
1 P c b
. = .. , cc = cPc
The characteristic equation of the open-loop system is det(sI A) = sn + an1 sn1 + + a1 s + a0 = 0 = kPc = k 1 k 2 k n . Then we have Let k = Ac b c k =
Prof J Wang (Tongji Uni)
0 1 . .. . .. 0 1 1 a1 k 2 an1 k n a0 k
Chap 4. State feedback control
0 1 . .. . . . 0 1 a0 a1 an1
. 1 .. [ k 0 1
2 k n k
Spring 2012
16 / 42
The characteristic equation of the closed-loop system is n )sn1 + + (a1 + k 2 )s + (a0 + k 1) = 0 ) = sn + (an1 + k det(sI Ac + bc K Provided that the expected poles of the closed-loop system are
= 1 , 2 , , n
Therefore, we have = kPc = a a0 a a1 a an1 k 0 n1 1 The state feedback gain k for the original system is
1 1 k = kP c = a0 a0 a1 a1 an1 an1 Pc
It is clear that the eigenvalues of the completely-controllable open-loop system can be arbitrarily placed to expected positions by using the state feedback. In other words, controllability of an open-loop system is a sucient condition for arbitrarily pole placement. Conclusion The state controllability is a necessary and sucient condition for pole placement.
Prof J Wang (Tongji Uni) Chap 4. State feedback control Spring 2012 18 / 42
Check whether the open-loop system is completely controllable. Determine the characteristic polynomial (s) for matrix A and the expected characteristic polynomial (s) (s) = det(sI A) = sn + an1 sn1 + + a1 s + a0
n1 n + + a (s) = (s 1 s + a0 1 )(s 2 ) (s n ) = s + an1 s
3 4
Spring 2012
19 / 42
Example Consider an open-loop system dened by 1 1 x 1 0 x 1 + u = 2 2 1 2 x2 x x1 y= 0 1 x2 Try to nd the state feedback gain matrix k such that the closed-loop system poles are located at s = 1 j Solutions (1) Verify the controllability condition. As rank(Qc ) = rank[b Ab] = rank controllable.
1 1 2 3
= s2 + 3s + 2
(s) = (s + 1 + j)(s + 1 j) = s2 + 2s + 2
1 (3) Determine the transformation matrix P c . 1 pc1 = [ 0 1 ] Q c = [0 1] 1 P c = pc1 pc1 A 1 1 2 3 1
= [2 1]
2 1 3 2
= [ 3 2 ]
Spring 2012
21 / 42
gain k into the desired characteristic polynomial may be simpler. For example, if n = 3, then write the state feedback gain as k = [k1 k2 k3 ]
Suppose the expected eigenvalues are 1 , 2 and 3 .
Hence, we have
det(sI A + bK) = (s 1 )(s 2 )(s 3 )
By equating the coecients of the powers of s on both sides, we can determine the values of k1 , k2 and k3 .
Prof J Wang (Tongji Uni) Chap 4. State feedback control Spring 2012 22 / 42
such that the closed-loop system x (t) = (A bk)x(t) + bu(t) y(t) = cx(t)
places its poles in 1 , 2 , , n .
Prof J Wang (Tongji Uni) Chap 4. State feedback control Spring 2012 23 / 42
, c = [ 0 1 ].
Try to nd the state feedback gain k by the Ackermanns formula such that the closed-loop system poles are 1 j. Solutions
1 (1) Q c = 1 1 2 3 1
=
2
3 1 2 1
. +2
10 01 1 0 1 2
+2
1 0 1 2
1 0 1 2
1 (4) k = [ 0 1 ] Q c (A) = [ 0 1 ]
3 1 2 1
= [ 3 2 ].
Spring 2012
24 / 42
Outline
1
4.1 Introduction 4.2 State feedback 4.3 Pole placement using state feedback 4.4 Design of state observers 4.5 Feedback from estimated states 4.6 Simulations with MATLAB
A state observer estimates the state variables of a system based on the measurements of the systems output and control variables.
Why use?
In pole placement design, we assumed that ALL state variables are available for feedback. In practice, not all state variables are measurable. Sometimes, even if some states are measurable by sensors, it may be too expensive to implement in engineering. Full-order observer: Observe all the state variables of the system, regardless of whether some state variables are measurable or not. Minimum-order observer: Observe only the minimum number of the state variables.
Chap 4. State feedback control Spring 2012 26 / 42
What types?
x
+
c
+
A f
+
c x A
What can we observe from the observer equation e (t) = (A fc)e(t) If the eigenvalues of (A fc) can be assigned arbitrarily, the behavior of the error e(t) can be controlled. The design of a full-order state observer is to determine the feedback gain f such that (A fc) has the expected eigenvalues. Matrices (A fc) and (A fc)T = (AT cT fT ) have the same eigenvalues. The design of a full-order state observer is to determine the feedback gain fT such that (AT cT fT ) has the expected eigenvalues. The design of a full-order state observer is to equivalent to the state-feedback pole placement problem for the system d (AT , cT , bT ), which is the dual system of (A, b, c).
Transform the system (A, b, c) into its dual system d (AT , cT , bT ). Design a state feedback gain k so that the closed-loop system d (AT cT k, cT , bT ) has the expected poles. Obtain the gain f for state observer, i.e. f = kT .
Spring 2012
29 / 42
B=
0 1
c = [2 0]
Assuming that the desired eigenvalues of the observer are s1,2 = 8, design a full-order state observer. Solutions (1) Verify the observability condition. As rank(Qo ) = rank observable. (2) Transform the full-order observer design problem for (A, b, c) into ,c (A ,b the pole placement problem for ), where = A
Prof J Wang (Tongji Uni)
c cA
= rank
20 02
0 2 1 1
= B
2 0
c = [0 1]
Spring 2012 30 / 42
= [ 0 0.5 ]
= [ 7.5 23.5 ]
(6) The full-order state observer is given by (t) = (A fc)x x (t) + bu(t) + fy(t) (t) = x
15 1 49 1 0 1 7.5 23.5
x (t) +
u(t) +
y(t)
Outline
1
4.1 Introduction 4.2 State feedback 4.3 Pole placement using state feedback 4.4 Design of state observers 4.5 Feedback from estimated states 4.6 Simulations with MATLAB
c
+
+ u
A b c
+
y
+
A k b
c x A
Spring 2012
33 / 42
Consider a completely controllable and observable system x (t) = Ax(t) + bu(t) y(t) = cx(t) r + u
x
+
c
+
A f
+
A k
Spring 2012
34 / 42
r + u
x
+
c
+
A f
+
c x A
k The state equation of the state observer can be written as (t) = (A fc)x x (t) + bu(t) + fy(t) = (A fc)x (t) + b r(t) kx (t) + fcx(t) = Ax (t) + fc x(t) x (t) bkx (t) + br(t) = Ax (t) + fce(t) bkx (t) + br(t) (dene e(t) = x(t) x (t)) e (t) = (A fc)e(t)
We have the following dierential equations x (t) = Ax(t) bkx (t) + br(t) e (t) = (A fc)e(t) Therefore, we can build up the state-space model for the whole system consisting of the state observer and state feedback control: b x(t) A bk bk x (t) + r(t) = 0 e(t) 0 A fc e (t) x(t) y(t) = c 0 e(t)
Spring 2012
36 / 42
or
The characteristic equation of the whole system is A bk bk sI A + bk bk = =0 (s) = sI 0 A fc 0 sI A + fc (s) = (sI A + bk) (sI A + fc) = 0 Remarks The closed-loop poles of the whole system consists of two parts
(sI A + bk) is associated with feedback pole placement. (sI A + fc) is associated with state observer.
The feedback controller and the state observer can be designed separately and combined together to construct the feedback controller with a state observer The Separation Principle.
Prof J Wang (Tongji Uni) Chap 4. State feedback control Spring 2012 37 / 42
We now discuss the transfer function of the whole system. From the state space model, we have 1 sI A + bk bk b Y(s) = c 0 R(s) 0 sI A + fc 0 = c(sI A + bk)1 b
Remarks This transfer function is exactly the same as the closed-loop feedback control system directly from the state. The observer is completely canceled and does not appear in the transfer function from r to y. The closed-loop control system with state observer is not completely observable.
Prof J Wang (Tongji Uni) Chap 4. State feedback control Spring 2012 38 / 42
Outline
1
4.1 Introduction 4.2 State feedback 4.3 Pole placement using state feedback 4.4 Design of state observers 4.5 Feedback from estimated states 4.6 Simulations with MATLAB
Spring 2012
40 / 42
A numerical example
MATLAB Programs 1
Example
Consider the system (A, B), where A=
0 1 0 0 0 1 1 5 6
B=
0 0 1
>> A = [0 1 0;0 0 1;-1 -5 -6]; >> B = [0;0;1]; >> J = [-2+j*4 -2-j*4 -10]; >> K = acker(A,B,J) K = 199 55 8 MATLAB Programs 2 >> A = [0 1 0;0 0 1;-1 -5 -6]; >> B = [0;0;1]; >> J = [-2+j*4 -2-j*4 -10]; >> K = place(A,B,J) K = 199.0000 55.0000 8.0000
Determine the state-feedback gain K such that the closed-loop poles are s1,2 = 2 j4, s3 = 10.
Solutions
MATLAB programs that generate the matrix K are shown right by using the commands acker and place.
Prof J Wang (Tongji Uni)
Spring 2012
41 / 42
Department of Control Science & Engineering School of Electronic & Information Engineering Tongji University
Go to next chapter!