Control Systems
System responseL. Lanari
prelim
inary
versio
n
Monday, November 3, 2014
Lanari: CS - System response 2
Outline
What we are going to see:
• how to compute in the s-domain the forced response (zero-state response) using the transfer function
• how to inverse transform the resulting responses so to obtain the time response
• analyze the relationship between eigenvalues and poles in deeper details
Monday, November 3, 2014
Lanari: CS - System response 3
Zero State Response (forced response)
see table of common Laplace transforms
(rational functions)
(rational function).(rational function) = rational function
YZS(s) = W (s)U(s)
yZS(t)
YZS(s)
Basic idea: write the function, we want to find the inverse Laplace transform of, as a linear combination of “easy to transform” terms and then use the linearity property of the inverse transformation
Partial fraction expansion (Heaviside)for rational functions
For rational functions: represent a complicated fraction as the sum of simpler fractions for which we know the inverse Laplace transform (partial fraction expansion or decomposition)
Monday, November 3, 2014
Lanari: CS - System response 4
Partial fraction expansion
Let
be a strictly proper rational function with coprime N(s) and D(s) and with distinct roots of D(s)
F (s) =N(s)
D(s)
D(s) = an
n�
i=1
(s− pi) ⇒ F (s) =N(s)
an�n
i=1(s− pi)
F (s) =n�
i=1
Ris− pi
Ri = [(s− pi)F (s)]���s=pi
i.e.
then F(s) can be expanded as
with the residues Ri computed as
(distinct roots case)
Monday, November 3, 2014
Lanari: CS - System response 5
Partial fraction expansionexample: given the transfer function W(s) of a system S, find its impulse response w(t)
W (s) =s+ 2
s(s+ 1)(s+ 10)
Monday, November 3, 2014
Lanari: CS - System response 6
Partial fraction expansion
Let
be a strictly proper rational function with coprime N(s) and D(s). Let D(s) have m roots each with multiplicity ni that is
F (s) =N(s)
D(s)
m�
i=1
ni = n
then F(s) can be expanded as
with the residues Rij computed as
(general case)
F (s) =m�
i=1
ni�
j=1
Rij(s− pi)j
Rij =
�1
(ni − j)!dni−j
dsni−j{(s− pi)niF (s)}
�
s=pi
Monday, November 3, 2014
Lanari: CS - System response 7
Partial fraction expansionexample: find the zero-state output response (or output forced response) of the system characterized by the transfer function W(s) to the input u(t) = t (remember the function u(t) is assumed to be zero for t < 0)
W (s) =s− 1
(s+ 1)(s+ 10)
U(s) = L[u(t)] = 1s2
⇒ Y (s) = W (s)U(s) = s− 1(s+ 1)(s+ 10)
1
s2
Y (s) =R11s
+R12s2
+R2s+ 1
+R3
s+ 10
y(t) = L−1(Y (s)) =�R11 +R12t+R2e
−t +R3e−10t� δ−1(t)
R11 =
�1
(2− 1)!d2−1
ds2−1�s2Y (s)
��
s=0
=
�d
ds
�s− 1
(s+ 1)(s+ 10)
��
s=0
=21
100
R12 =
�1
(2− 2)!d2−2
ds2−2�s2Y (s)
��
s=0
=
�s− 1
(s+ 1)(s+ 10)
�
s=0
= − 110
R2 = [(s+ 1)Y (s)]s=−1 =
�s− 1
s2(s+ 10)
�
s=−1= −2
9
R3 = [(s+ 10)Y (s)]s=−10 =
�s− 1
s2(s+ 1)
�
s=−10=
11
900
Monday, November 3, 2014
Lanari: CS - System response 8
Partial fraction expansion
F (s) =N(s)
D(s)=
N(s)
skD�(s)
F (s) =R11s
+R12s2
+ · · ·+ R1ksk
+�� Rij
(s− pi)j
R1k =
�1
(k − k)!dk−k
dsk−k�skF (s)
�� ���s=0
=�skF (s)
� ���s=0
=N(0)
D�(0)
special case: F(s) has k poles in s = 0
then
with
(this result will be useful for the steady-state response to an order k input )
leadingcoefficient
(generic rational function)
tk
k!
Monday, November 3, 2014
Lanari: CS - System response 9
Partial fraction expansion
p = α+ jβ
p∗ = α− jβ
R
(s− p)k +R∗
(s− p∗)k =As+B
((s− α)2 + β2)k
for complex poles R = a+ jb
R∗
residue�
Monday, November 3, 2014
Lanari: CS - System response 10
Partial fraction expansion
R
s− p +R∗
s− p∗ =R(s− p∗) +R∗(s− p)
(s− α)2 + β2 =s(R+R∗)− (Rp∗ +R∗p)
(s− α)2 + β2
=s(R+R∗)− α(R+R∗)− jβ(R∗ −R)
(s− α)2 + β2
R+R∗ = 2a, R∗ −R = −2jb
R
s− p +R∗
s− p∗ =2as− 2(aα+ bβ)(s− α)2 + β2 =
As+B
(s− α)2 + β2
A = 2a B = −2(aα+ bβ)
for k = 1
with As+B = A(s− α) + β(Aα+B)/β
R
s− p +R∗
s− p∗ =A(s− α)
(s− α)2 + β2 +β(Aα+B)/β
(s− α)2 + β2
eαt [A cosβt+ (Aα+B)/β sinβt]in t
Monday, November 3, 2014
Lanari: CS - System response 11
Partial fraction expansion
H(s) =1
(s2 + 1)(s− 2)2 H(s) =R11
s− 2 +R12
(s− 2)2 +R2
s− j +R3
s+ j
H(s) =R11
s− 2 +R12
(s− 2)2 +As+B
s2 + 1, with A =
4
25, B = − 6
50
h(t) =�R11e
2t +R12te2t +A cos t+B sin t
�δ−1(t)
R11 =
�d
ds
�1
(s2 + 1)
��
s=2
= − 425
R12 =
�1
(s2 + 1)
�
s=2
=1
5
R2 = [(s− j)H(s)]s=j =�
1
(s+ j)(s− 2)2
�
s=j
=1
8 + 6j=
2
25− j 3
50
R3 = [(s+ j)H(s)]s=−j =
�1
(s− j)(s− 2)2
�
s=−j=
1
8 + 6j=
2
25+ j
3
50= R∗2
Monday, November 3, 2014
Lanari: CS - System response 12
W (s) =N(s)
D(s)
Poles & eigenvalues
W (s) =1
det(sI −A)N�(s)
from def?
if det(sI −A) and N �(s) coprime {poles} = {eigenvalues}
characteristicpolynomial
if det(sI −A) and N �(s) not coprime {poles} subset of {eigenvalues}
Input/Outputrepresentation
Input/State/Outputrepresentation
vs
here visible
Transferfunction
Statespace
�
we need to understand when & why this happens(so to understand when we can consider the transfer function equivalent to a state space representation)
Monday, November 3, 2014
Lanari: CS - System response 13
we have a “hidden mode” associated to the eigenvalue ¸j(see structural properties)
Poles & eigenvalues (distinct eigenvalues of A case)
n = state space dimension = dimension of A = number of eigenvaluesnp = number of poles in W(s)
W (s) =N(s)
D(s)=
N(s)�npi=1(s− pi)
=
np�
i=1
Ris− pi
if the eigenvalue ¸j does not appear as a poleand/or
vTj B = 0
Cuj = 0
W (s) = L[w(t)] = L[CeAtB] = L[C
n�
j=1
eλjtujvTj
B] =n�
j=1
Cuj vTj B
s− λj
done the same analysis in t for n = 2
NB distinct eigenvalues is different from diagonalizable
Monday, November 3, 2014
Lanari: CS - System response 14
Poles & eigenvalues (distinct eigenvalues of A case)
eAtB = H(t)
CeAt = Ψ(t)
vTj B = 0
Cuj = 0
implies the corresponding mode will not appear in the state impulsive response
the corresponding mode (or eigenvalue) is said to be uncontrollable
implies the corresponding mode will not appear in the output transition matrix
the corresponding mode (or eigenvalue) is said to be unobservable
If for an eigenvalue ¸j we have that
Monday, November 3, 2014
Lanari: CS - System response 15
Poles & eigenvalues (distinct eigenvalues of A case)
Theorem
Every pole is an eigenvalue.
An eigenvalue ¸i becomes a pole if and only if it is both controllable and observable
or equivalently the following two PBH rank tests are both verified
vTi B �= 0 Cui �= 0
rank�A− λiI B
�= n rank
�A− λiI
C
�= n
Popov-Belevitch-Hautuscontrollability test
Popov-Belevitch-Hautusobservability test
and
(the PBH test could be tested for a generic ¸ but matrix A - ¸I loses rank only for ¸=¸i )
Monday, November 3, 2014
Lanari: CS - System response 16
Poles & eigenvalues (distinct eigenvalues of A case)
Where does the PBH test comes from?
Observability (sketch):
rank
�A− λiI
C
�< n
means that the rectangular (n+1) x n matrix has not full column rank and therefore it has a non-zero nullspace, that is there exists a n vector ui such that
�A− λiI
C
�ui = 0
(A− λiI)ui = 0 Aui = λiui
Cui = 0 Cui = 0
� �
that is there exists an eigenvector which belongs to the nullspace of C (or the corresponding mode is unobservable)
Monday, November 3, 2014
Lanari: CS - System response 17
example
A =
�−1 10 1
�B =
�10
�C =
�0 1
�
(sI −A)−1 =� 1
s+11
(s+1)(s−1)0 1s−1
�= M1
1
s+ 1+M2
1
s− 1
M1 =�(s+ 1)(sI −A)−1
�s=−1 =
�1 −1/20 0
�
M2 =�(s− 1)(sI −A)−1
�s=1
=
�0 1/20 1
�
fractional decompositionworks also for rational matrices
with
eAt = M1e−t +M2e
ta different way to compute the matrix exponential
both natural modes appear (as it should be) in the state transition matrix
Monday, November 3, 2014
Lanari: CS - System response 18
(sI −A)−1B =�
1s+10
�
C(sI −A)−1 =�0 1s−1
�
u1 / (A− λ1I)u1 = 0�0 10 2
�u1 = 0 u1 =
�10
�
u2 / (A− λ2I)u2 = 0�−2 10 0
�u2 = 0 u2 =
�12
�vT1 =
�1 −1/2
�
vT2 =�0 1/2
�
Cu1 = 0 Cu2 �= 0vT1 B �= 0 vT2 B = 0
mode corresponding to ¸2 does not appear
mode corresponding to ¸1 does not appear
equivalently
eAtB
w(t) = CeAtB = 0
CeAt
forced response will always be zero independently from the input applied
(look at the 2 first order ODE)
example
W (s) = 0
no poles
Monday, November 3, 2014
Lanari: CS - System response 19
example
equivalently with the PBH rank test
rank
�0 1 10 2 0
�= 2 = n
rank
�−2 1 10 0 0
�= 1 < n
rank
0 10 2
0 1
= 1 < n rank
−2 10 0
0 1
= 2 = n
controllability test
observability test
mode corresponding to ¸2 is uncontrollable
mode corresponding to ¸1 is controllable
mode corresponding to ¸1is unobservable
mode corresponding to ¸2is observable
Monday, November 3, 2014
Lanari: CS - System response 20
Poles & eigenvalues (general case)
Theorem
Every pole is an eigenvalue.
An eigenvalue ¸i becomes a pole with the multiplicity ma (algebraic multiplicity) if and only if
both PBH rank tests are verified
rank�A− λiI B
�= n rank
�A− λiI
C
�= n
NB - If one of the two conditions is not verified then the eigenvalue ¸i will appear as a pole with multiplicity strictly less than the algebraic multiplicity, possibly even 0 (in this case we will have a hidden eigenvalue). In particular the eigenvalue will appear at most as a pole with multiplicity equal to its index (dimension of the largest Jordan block).
controllability observability
Monday, November 3, 2014
Lanari: CS - System response 21
example
A0 =
λ1 1 00 λ1 10 0 λ1
(sI −A0)−1 =1
(s− λ1)3
(s− λ1)2 (s− λ1) 1
0 (s− λ1)2 (s− λ1)0 0 (s− λ1)2
B =
∀∀�= 0
C =��= 0 ∀ ∀
�
B1 =
001
C1 =�1 0 0
�F1(s) =
1
(s− λ1)3
B2 =
100
C2 = C1 =�1 0 0
�F2(s) =
(s− λ1)2
(s− λ1)3=
1
s− λ1
B3 = B2 =
100
C3 =�0 0 1
�F3(s) = 0
PBH rank testverified for
easily seen from A0 − λ1I =
0 1 00 0 10 0 0
Monday, November 3, 2014
Lanari: CS - System response 22
A4 =
λ1 1 00 λ1 00 0 λ1
A4 − λ1I =
0 1 00 0 00 0 0
(sI−A4)−1 =1
(s− λ1)3
(s− λ1)2 (s− λ1) 0
0 (s− λ1)2 00 0 (s− λ1)2
= 1(s− λ1)2
(s− λ1) 1 0
0 (s− λ1) 00 0 (s− λ1)
B4 =
010
C4 =�1 0 0
�F4(s) =
1
(s− λ1)2
B5 =
100
C5 = C1 =�1 0 0
�
B6 = B1 =
001
C6 = C1 =�1 0 0
�F6(s) = 0
F5(s) =s− λ1
(s− λ1)2=
1
s− λ1
example
since
the PBH rank test will never be satisfied independently from B and C. At most the eigenvalue will appear as a pole with multiplicity = index of ¸1 = 2
Monday, November 3, 2014
Lanari: CS - System response 23
example
A7 =
λ1 0 00 λ1 00 0 λ1
(sI −A7)−1 =1
s− λ1
1 0 00 1 00 0 1
etc ...
the PBH rank test will never be satisfied independently from B and C. At most the eigenvalue will appear as a pole with multiplicity = index of ¸1 = 1
Monday, November 3, 2014