Document 13355250

advertisement
Topic #6
16.30/31 Feedback Control Systems
State-Space Systems
• What are state-space models?
• Why should we use them?
• How are they related to the transfer functions
used in classical control design and how do we
develop a state-space model?
• What are the basic properties of a state-space model, and
how do we analyze these?
Fall 2010
16.30/31 6–2
TF’s to State-Space Models
• The goal is to develop a state-space model given a transfer function
for a system G(s).
• There are many, many ways to do this.
• But there are three primary cases to consider:
1. Simple numerator (strictly proper)
y
1
=G(s) = 3
u
s + a 1 s2 + a 2 s + a 3
2. Numerator order less than denominator order (strictly proper)
y
b1s2 + b2s + b3
N (s)
= G(s) = 3
=
u
s + a1s2 + a2s + a3 D(s)
3. Numerator equal to denominator order (proper)
y
b0s3 + b1s2 + b2s + b3
=G(s) = 3
u
s + a 1 s2 + a 2 s + a 3
• These 3 cover all cases of interest
September 21, 2010
Fall 2010
16.30/31 6–3
• Consider case 1 (specific example of third order, but the extension
to nth follows easily)
y
1
=G(s) = 3
u
s + a 1 s2 + a 2 s + a 3
can be rewritten as the differential equation
...
y + a1ÿ + a2ẏ + a3y = u
choose the output y and its derivatives as the state vector
⎡ ⎤
ÿ
x = ⎣ ẏ ⎦
y
then the state equations are
⎡ ... ⎤ ⎡
⎤⎡ ⎤ ⎡ ⎤
y
ÿ
−a1 −a2 −a3
1
ẋ = ⎣ ÿ ⎦ = ⎣ 1
0
0 ⎦ ⎣ ẏ ⎦ + ⎣ 0 ⎦ u
ẏ
0
1
0
y
0
⎡
y =
�
⎤
ÿ
0 0 1 ⎣ ẏ ⎦ + [0]u
y
�
• This is typically called the controller form for reasons that will become
obvious later on.
• There are four classic (called canonical) forms – observer, con­
troller, controllability, and observability. They are all useful in
their own way.
September 21, 2010
Fall 2010
16.30/31 6–4
• Consider case 2
y
b1 s2 + b 2 s + b 3
N (s)
= G(s) = 3
=
u
s + a1s2 + a2s + a3 D(s)
• Let
y y v
= ·
u v u
where y/v = N (s) and v/u = 1/D(s)
• Then representation of v/u = 1/D(s) is the same as case 1
...
v + a1v̈ + a2v̇ + a3v = u
use the state vector
⎡
⎤
v̈
x = ⎣ v̇ ⎦
v
to get
ẋ = A2x + B2u
where
⎡
⎤
⎡ ⎤
−a1 −a2 −a3
1
A2 = ⎣ 1
0
0 ⎦ and B2 = ⎣ 0 ⎦
0
1
0
0
• Then consider y/v = N (s), which implies that
y = b1v̈ + b2v̇ + b3v
⎡ ⎤
�
� v̈
= b1 b2 b3 ⎣ v̇ ⎦
v
= C2x + [0]u
September 21, 2010
Fall 2010
16.30/31 6–5
• Consider case 3 with
y
b0s3 + b1s2 + b2s + b3
=G(s) = 3
u
s + a 1 s2 + a 2 s + a 3
β1s2 + β2s + β3
= 3
+D
s + a1 s 2 + a 2 s + a 3
= G1(s) + D
where
D( s3 +a1s2 +a2s +a3 )
+(
+β1s2 +β2s +β3 )
= b0s3 +b1s2 +b2s +b3
so that, given the bi, we can easily find the βi
D = b0
β1 = b1 − Da1
...
• Given the βi, can find G1(s)
• Can make state-space model for G1(s) as in case 2
• Then we just add the “feed-through” term Du to the output equation
from the model for G1(s)
• Will see that there is a lot of freedom in making a state-space model
because we are free to pick the x as we want
September 21, 2010
Fall 2010
16.30/31 6–6
Modal Form
• One particular useful canonical form is called the Modal Form
• It is a diagonal representation of the state-space model.
• Assume for now that the transfer function has distinct real poles pi
(easily extends to case with complex poles, see 7–??)
N (s)
N (s)
=
D(s) (s − p1)(s − p2) · · · (s − pn)
r1
r2
rn
=
+
+ ··· +
s − p1 s − p2
s − pn
G(s) =
• Now define collection of first order systems, each with state xi
X1
r1
=
⇒ ẋ1 = p1x1 + r1u
U (s)
s − p1
X2
r2
=
⇒ ẋ2 = p2x2 + r2u
U (s)
s − p2
...
Xn
rn
=
⇒ ẋn = pnxn + rnu
U (s)
s − pn
• Which can be written as
ẋ(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
with
⎡
A=⎣
p1
⎤
...
⎦
pn
⎡
⎤
r1
.. ⎦
B = ⎣ .
rn
⎤T
1
C = ⎣ ... ⎦
1
⎡
• Good representation to use for numerical robustness reasons.
• Avoids some of the large coefficients in the other 4 canonical forms.
September 21, 2010
Fall 2010
16.30/31 6–7
State-Space Models to TF’s
• Given the Linear Time-Invariant (LTI) state dynamics
ẋ(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
what is the corresponding transfer function?
• Start by taking the Laplace Transform of these equations
L{ẋ(t) = Ax(t) + Bu(t)}
sX(s) − x(0−) = AX(s) + BU (s)
L{y(t) = Cx(t) + Du(t)}
Y (s) = CX(s) + DU (s)
which gives
(sI − A)X(s) = BU (s) + x(0−)
⇒ X(s) = (sI − A)−1BU (s) + (sI − A)−1x(0−)
and
�
�
−1
Y (s) = C(sI − A) B + D U (s) + C(sI − A)−1x(0−)
• By definition G(s) = C(sI − A)−1B + D is called the Transfer
Function of the system.
• And C(sI − A)−1x(0−) is the initial condition response.
• It is part of the response, but not part of the transfer function.
September 21, 2010
Fall 2010
16.30/31 6–8
SS to TF
• In going from the state space model
ẋ(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
to the transfer function G(s) = C(sI − A)−1B + D need to form
inverse of matrix (sI − A)
• A symbolic inverse – not very easy.
• For simple cases, we can use the following:
�
�−1
�
�
1
a1 a2
a4 −a2
=
a3 a4
a1a4 − a2a3 −a3 a1
For larger problems, we can also use Cramer’s Rule
• Turns out that an equivalent method is to form:1
�
�
sI − A −B
det
C
D
G(s) = C(sI − A)−1B + D =
det(sI − A)
• Reason for this will become more apparent later (see 8–??) when
we talk about how to compute the “zeros” of a state-space model
(which are the roots of the numerator)
• Key point: System characteristic equation given by
φ(s) = det(sI − A) = 0
• It is the roots of φ(s) = 0 that determine the poles of the system.
Will show that these determine the time response of the system.
1 see
here
September 21, 2010
Fall 2010
16.30/31 6–9
• Example from Case 2,
⎡
−a1 −a2
A =
⎣
1
0
0
1
page 6–4
⎤
⎡ ⎤
−a3
1
�
�T
⎦
⎣
⎦
0
,
B =
0
,
C
=
b1 b2 b3
0
0
then
⎡
s + a1
⎢
1
⎢ −1
G(s) =
· det ⎢
det(sI − A)
⎣
0
b1
b3 + b 2 s + b 1 s2
=
det(sI − A)
and det(sI − A) = s3 + a1s2 + a2s + a3
• Which is obviously the same as before.
September 21, 2010
a2
s
−1
b2
a3
0
s
b3
⎤
−1
⎥
0 ⎥
⎥
0 ⎦
0
Fall 2010
16.30/31 6–10
State-Space Transformations
• State space representations are not unique because we have a lot of
freedom in choosing the state vector.
• Selection of the state is quite arbitrary, and not that important.
• In fact, given one model, we can transform it to another model that
is equivalent in terms of its input-output properties.
• To see this, define Model 1 of G(s) as
ẋ(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
• Now introduce the new state vector z related to the first state x
through the transformation x = T z
• T is an invertible (similarity) transform matrix
ż = T −1ẋ = T −1(Ax + Bu)
= T −1(AT z + Bu)
= (T −1AT )z + T −1Bu = Āz + B̄u
and
¯ + Du
¯
y = Cx + Du = CT z + Du = Cz
• So the new model is
ż = Āz + B̄u
¯ + Du
¯
y = Cz
• Are these going to give the same transfer function? They must if
these really are equivalent models.
September 21, 2010
Fall 2010
16.30/31 6–11
• Consider the two transfer functions:
G1(s) = C(sI − A)−1B + D
G2(s) = C̄(sI − Ā)−1B̄ + D̄
Does G1(s) ≡ G2(s) ?
G1(s) = C(sI − A)−1B + D
= C(T T −1)(sI − A)−1(T T −1)B + D
�
�
= (CT ) T −1(sI − A)−1T (T −1B) + D̄
�
�−1
= (C̄) T −1(sI − A)T
(B̄) + D̄
= C̄(sI − Ā)−1B̄ + D̄ = G2(s)
• So the transfer function is not changed by putting the state-space
model through a similarity transformation.
• Note that in the transfer function
b1 s2 + b 2 s + b 3
G(s) = 3
s + a 1 s2 + a 2 s + a 3
we have 6 parameters to choose
• But in the related state-space model, we have A − 3 × 3, B − 3 × 1,
C − 1 × 3 for a total of 15 parameters.
• Is there a contradiction here because we have more degrees of freedom
in the state-space model?
• No. In choosing a representation of the model, we are effectively
choosing a T , which is also 3 × 3, and thus has the remaining 9
degrees of freedom in the state-space model.
September 21, 2010
MIT OpenCourseWare
http://ocw.mit.edu
16.30 / 16.31 Feedback Control Systems
Fall 2010
For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.
Download