Download as pdf or txt
Download as pdf or txt
You are on page 1of 23

Digital Control Systems

(EP-5511)

Lecture-9
State Space Analysis …

Belaynesh Belachew (Capt.)


Defence Engineering College

1
Solving Discrete Time State Space
Equations
Solution of the LTI Discrete-time state equation: In
general, discrete-time equations are easier to solve than
differential equations because the former can be solved
easier to solve than differential equations.
Because discrete-time equations can be solved easily by
means of a recursion procedure.
The recursion procedure is quite simple and convenient for
digital computations.
x(k + 1) = Gx(k)+ Hu(k)
y(k) = Cx(k)+Du(k)
The solution for any positive integer k may be obtained directly
by recursion, as follows:
2
Continued
x(1) = Gx(0)+ Hu(0)
x(2) = Gx(1)+ Hu(1)= G2x(0)+ GHu(0)+Hu(1)
x(3) = Gx(2)+ Hu(2)= G3x(0)+ G2Hu(0)+GHu(1)+Hu(2)

By repeating this procedure, we obtain:
k 1
x(k )  G k x(0)   G k  j 1Hu ( j ), k  1, 2,3,...
j 0
clearly, x(k) consists of two parts, one representing the
contribution of the initial state x(0) and the other the
contribution of the input u(j).
The output is: k 1

3
y (k )  CG k x(0)  C  G k  j 1Hu ( j )  Du (k )
j 0
Continued
State Transition Matrix: Notice that it is possible to
write the solution of the homogeneous state equation:
x(k + 1) = Gx(k)
as x(k) = Ψ(k)x(0)
Where Ψ(k) is a unique n x n matrix satisfying the
condition;
Ψ(k+1) = GΨ(k), Ψ(0)=I
Clearly Ψ(k) can be:
Ψ(k)= Gk
Therefore the unique matrix Ψ(k) is called state
transition matrix and also called fundamental matrix.
4
Continued
k 1
x(k )   (k ) x(0)   (k  j  1) Hu ( j )
j 0
k 1
  (k ) x(0)    ( j ) Hu (k  j  1)
j 0

The output equation can be:


k 1
y (k )  C  (k ) x(0)  C   (k  j  1) Hu ( j )  Du (k )
j 0
k 1
 C  (k ) x(0)  C   ( j ) Hu (k  j  1)  Du (k )
j 0

5
Continued
z-Transform approach to the solution of discrete-time
state equation: Consider the discrete-time system:
x(k + 1) = Gx(k)+ Hu(k)
Taking the z-transform
zX(z)-zx(0)= GX(z)+ HU(z) (zI - G)X(z) = zx(0)+ HU(z)
X(z) = (zI - G)-1zx(0)+ (zI - G)-1HU(z)
X(z) = (zI - G)-1zx(0)+ (zI - G)-1HU(z)
x(k) = Z-1[ (zI - G)-1z]x(0)+ Z-1[(zI - G)-1HU(z)]
Thus Gk = Z-1[ (zI - G)-1z]
and k 1 k  j 1
G
j 0
Hu ( j )   ( zI  G) 1 HU ( z ) 
1

6
Continued
Example 1: Obtain the state transition matrix of the
following discrete-time system:
x(k + 1) = Gx(k) + Hu(k)
y(k) = Cx(k)
Where

G 0 1  , H  1 , C  1 0
 
 0.16 1 1
Then obtain the state x(k) and the output y(k) when the
input u(k) = 1 for k=0,1,2,... Assume that the initial
state is given by

x(0)   x1 (0)    1 
 x2 (0)   1 7
Continued
Solution:
Ψ(k)= Gk = Z-1[ (zI - G)-1z]
Therefore, (zI - G)-1.
The pulse transfer function is
1
 z 1  1  z  1 1
 zI  G   
1
   0.16 z 
 0.16 z  1 ( z  0.2)( z  0.8)  
 4/3 1/ 3 5/3 5 / 3 
 z  0.2  z  0.8 z  0.2  z  0.8 
 
 0.8 / 3  0.8 / 3 1/ 3  4 / 3 
 z  0.2 z  0.8 z  0.2 z  0.8 
The state transition Ψ(k) matrix is
Ψ(k)= Gk = Z-1[ (zI - G)-1z]
8
Continued
 4 z 1 z 5 z 5 z 
  
1 3 z  0.2 3 z  0.8 3 z  0.2 3 z  0.8 
 (k )    
  0.8 z  0.8 z 
1 z

4 z 
 3 z  0.2 3 z  0.8 3 z  0.2 3 z  0.8 
 4 1 5 5 k 
 3 (0.2)  3 (0.8) (0.2)  (0.8) 
k k k

3 3
 (k )   
  0.8 (0.2)k  0.8 (0.8) k  1 (0.2) k  4 (0.8) k 
 3 3 3 3 
Then, x(k) will be:
X ( z )  ( zI  G )1  zx(0)  HU  z  
Since
z
U ( z) 
9
z 1
Continued  z   z
2

 z   z  1  z  1 
zx(0)  HU  z        2 
 z   z    z  2 z 
 z  1  z  1 
 ( z 2  2) z 
Hence  ( z  0.2)( z  0.8)( z  1) 
x(k )  1  X ( z )  1  
 ( z 2  1.84 z ) z 
 
 ( z  0.2)( z  0.8)( z  1) 
 17 22 25 
 6 z 9
z
18
z
   
  
x(k )  1  X ( z )  1 
z 0.2 z 0.8 z 1 
 3.4 17.6 7 
 6 z 9
z
18
z
   
10  z  0.2 z  0.8 z  1
Continued

 17 22 25 
  6 (0.2)  9 (0.8)  18 
k k

x(k )   
 3.4 (0.2)k  17.6 (0.8) k  7 
 6 9 18 
Finally, the output y(k)
 17 22 25 
  6 (0.2)  9 (0.8)  18 
k k

y (k )  Cx(k )  1 0  
 3.4 (0.2)k  17.6 (0.8) k  7 
 6 9 18 
17 22 25
  (0.2)  (0.8) 
k k
11 6 9 18
Continued
Method for computing (zI - G)-1: the solution of the
state equation given by the z transform method
requires the computation of (zI - G)-1
Computing (zI - G)-1 is, except in simple cases, generally
a time consuming task.
There are both analytical and computational methods
available for computing (zI - G)-1.
We can present one method here, and is based on the
expansion of the adjoint of (zI - G)-1.
Its inverse can be: adj ( zI  G )
( zI  G )1 
| zI  G |
The determinant can be
12 | zI  G | z n  a1 z n 1  a2 z n 2  ...  an
Continued
The adjoint may be given by:
adj ( zI  G )  Iz n 1  H1 z n 2  H 2 z n 3  ...  H n 1
Where

Note that a1, a2,…, an are the coefficients appearing in


the determinant and can be given by use of trace:

The trace of n x n matrix is sum of its diagonal elements


13
Continued
Example 2: determine (zI - G)-1 , where
 0.1 0.1 0 
G  0.3 0.1 0.2
k
 0 0 0.3 Also, obtain G
Solution: 1 adj ( zI  G)
( zI  G) 
| zI  G |
First compute a1, a2 and a3  0.1 0.1 0 
a1  trG  tr 0.3 0.1 0.2  0.3
 0 0 0.3
 0.1 0.1 0  0.3 0 0  0.4 0.1 0 
H1  G  a1I  0.3 0.1 0.2   0 0.3 0    0.3 0.2 0.2
 0 0 0.3   0 0 0.3  0 0 0 
14
Continued
  0.1 0.1 0  0.4 0.1 0 
1  
a2   trGH1   tr  0.3 0.1 0.2  0.3 0.2 0.2 
1
2 2  
 0 0  0.3 
 0 0 0 

a2  0.04
 0.03 0.03 0.02
H 2  GH1  a2 I  0.09 0.03 0.02 
 0 0 0.04

0.012 0 0 
1 
0   0.012
1
a3   trGH 2   tr  0 0.012
3 3
 0 0 0.012

15 H 3  GH 2  0.012 I  0
Continued

adj ( zI  G)  Iz 2  H1 z  H 2

1 0 0  0.4 0.1 0   0.03 0.03 0.02


 0 1 0 z 2   0.3 0.2 0.2 z  0.09 0.03 0.02 
0 0 1   0 0 0   0 0 0.04
 z 2  0.4 z  0.03 0.1z  0.03 0.02 
 
  0.3z  0.09 z 2  0.2 z  0.03 0.2 z  0.02
 0 0 z 2
 0.04 
 

| zI  G | z 3  a1 z 2  a2 z  a3  z 3  0.3z 2  0.04 z  0.012


16
 ( z  0.2)( z  0.2)( z  0.3)
Continued
adj ( zI  G)
1
Then ( zI  G)  | zI  G |
 z  0.1 0.1 0.02 
 ( z  0.2)( z  0.2) ( z  0.2)( z  0.2) ( z  0.2)( z  0.2)( z  0.3) 
 
 0.3 z  0.1 0.2( z  0.1) 

( z  0.2)( z  0.2) ( z  0.2)( z  0.2) ( z  0.2)( z  0.2)( z  0.3) 
 
 1 
 0 0 
 z  0.3 
G k  Z 1[( zI  G )1 z ]
 0.25 z 0.75 z 0.25 z 0.25 z 0.5 z 0.1z 0.4 z 
 z  0.2  z  0.2  z  0.2  z  0.2 z  0.2  z  0.2  z  0.3 
 
 Z 1   
0.75 z 0.75 z 0.75 z 0.25 z 1.5 z 0.1 z 1.6 z
    
 z  0.2 z  0.2 z  0.2 z  0.2 z  0.2 z  0.2 z  0.3 
 
 z 
0 0
17
 z  0.3 
Continued

 0.25(0.2)k  0.75(0.2)k 0.25(0.2) k  0.25(0.2) k



G   0.25(0.2)k  0.75(0.2)k
k
0.75(0.2) k  0.25(0.2) k
 0 0

0.5(0.2)k  0.1(0.2)k  0.4(0.3)k 
k
1.5(0.2)  0.1(0.2)  1.6(0.3) 
k k

(0.3)k 

Reading Assignment: Solution of the Linear time-


varying Discrete-time state equation
18
Pulse Transfer Function Matrix
A SISO discrete-time system may be modeled by a pulse
transfer function.
Extension of the pulse-transfer-function concept to a
MIMO discrete-time system gives us the pulse-
transfer-function matrix.
Pulse Transfer Function Matrix: The state-space
representation of an nth order linear time-invariant
discrete-time system with r inputs and m outputs can
be given by:
x(k + 1) = Gx(k)+ Hu(k)
y(k) = Cx(k)+Du(k)
where x(k) is an n-vector, u(k) is an r-vector, y(k) is an m-
vector, G is an n x n matrix, H is an n x r matrix, is an m
19
x n matrix, and D is an m x r.
Continued
Taking the z-transform
zX(z)-zx(0)= GX(z)+ HU(z)
Y(z)= CX(z)+ DU(z)
For x(0)=0
X(z) =(zI - G)-1HU(z) , and
Y(z)=[C(zI - G)-1H+ D]U(z)= F(z)U(z)
Where F(z)=C(zI - G)-1H+ D, called the pulse transfer
function matrix.
Can be given as
C adj ( zI  G ) H
F ( z)  D
| zI  G |
Characteristic equation of the DTS is
20 | zI  G | z n  a1 z n 1  a2 z n 2  ...  an  0
Continued
Similarity Transformation: defining a new state vector
x̂  k  by: x(k )  Pxˆ  k 
Then
xˆ (k  1)  Gx ˆ ˆ (k )  Hu
ˆ (k )
ˆ ˆ (k )  Du
y (k )  Cx ˆ (k )
Defining
P 1GP  Gˆ , P 1H  Hˆ , CP  Cˆ , D  Dˆ
The pulse transfer function matrix also transformed to
Fˆ  z   Cˆ ( zI  Gˆ )1 Hˆ  Dˆ
Notice that the pulse transfer function matrices F(z) and
F̂  z  are the same,
Fˆ  z   Cˆ ( zI  Gˆ )1 Hˆ  Dˆ  CP( zI  P 1GP)1 P 1H  D
21
Continued
Fˆ  z   Cˆ ( zI  Gˆ )1 Hˆ  Dˆ  CP( zI  P 1GP)1 P 1H  D
 CP( zP  GP)1 H  D  C ( zPP 1  GPP 1 )1 H  D
 C ( zI  G )1 H  D  F ( z )
Thus, the pulse transfer function matrix is invariant
under similarity transformation.
That is, it does not depend on the particular state vector
x(k) chosen for the system representation.
The characteristic equation |zI - G|=0 is also invariant
under similarity transformation, since
| zI  G || P 1 || zI  G || P || zI  P 1GP || zI  Gˆ |
Thus, the eigenvalue of G are invariant under similarity
transformation. 22
23

You might also like