You are on page 1of 32

Control Engineering III Lecture Notes by A. M.

Muhia

2 DISCRETE SYSTEMS

2.1 Sampled Data Systems

A sampled data system operates on discrete-time rather than continuous-time signals. A digital
computer is used as the controller in such a system. A D/A converter is usually connected to the
output of the computer to drive the plant.

Figure 5: Digital control system

The Sampling Process

A sampler is basically a switch that closes every T seconds as shown in Figure 6

Figure 6: Sampler

When a continuous signal r(t) is sampled at regular intervals T, the resulting discrete signal is as
shown in Figure 7 (b) where q is the amount of time that the switch is closed.
In control applications, the switch closure time q is much smaller than the sampling time T and
can be neglected.
The ideal sampling process can be considered as the multiplication of a pulse train with a continuous
signal

r∗ (t) = p(t)r(t)

where p(t) is the delta pulse train


thus
X
p(t) = δ(t − nT )

45
Control Engineering III Lecture Notes by A. M. Muhia

Figure 7: Sampled signal

Figure 8: Pulse train

X
r∗ (t) = r(t) δ(t − nT )

It is possible to reconstruct r(t) from r∗ (t) by use of a hold device, the most common of which is
the zero order hold.
This circuit remembers the last information until a new sample is obtained i.e. zero order hold
takes the value r(nT ) and holds it constant for nT ≤ t ≤ (n + 1)T and the value of r(t) is used
during the sampling period.
It can be seen that the zero order hold converts a series of impulses into a series of pulses of width
T. Hence a unit impulse at time t is converted into a pulse of width T, which may be created by a
positive unit step at time t, followed by a negative unit step at time t-T i.e. delayed by T.
The transfer function of a zero order hold is

1 1 −T s
L{r(t)} = − e
s s

46
Control Engineering III Lecture Notes by A. M. Muhia

Figure 9: Discrete to continuous signal conversion

1 − e−T s
=
s

2.2 Difference Equations

Difference equations arise in problems where the independent variable, usually time, is assumed to
have a discrete set of possible values. The equation is of the form

y(k+n)+an−1 y(k+n−1)+· · ·+a1 y(k+1)+a0 y(k) = bn u(k+n)+bn−1 u(k+n−1)+· · ·+b1 u(k+1)+b0 u(k)

We assume that the coefficients ai , bi , i = 0, 1, 2, ..., are constant. The difference equation is then
referred to as linear time invariant, or LTI. If the forcing function u(k) is equal to zero, the equation
is said to be homogeneous.
Difference equations can be solved using classical methods analogous to those available for differen-
tial equations. Alternatively, z-transforms provide a convenient approach for solving LTI equations,
as discussed in the next section.

2.2.1 The Z-Transform

Z-transform is the principal analytical tool for SISO discrete time systems, and is analogous to the
Laplace transform for continuous time systems. The symbol Z can be associated with discrete time
shifting in a difference equation in the same way in a differential equation
Given that

X
r∗ (t) = r(kT )δ(t − kT )
k=−∞

Taking the Laplace transform of this equation which is the ideal sampled signal gives

47
Control Engineering III Lecture Notes by A. M. Muhia


X
R∗ (s) = L{r∗ (t)} = r(kT )e−kT s
k=0

Defining z as z = esT

X
R∗ (z) = r(kT )z −k
k=0

R(z) = Z{r(t)}

Notice that R(z) consists of an infinite series in the complex variable z and

R(z) = r(0) + r(T )z −1 + r(2T )z −2 + · · ·

i.e. r(kT ) are the coefficients of this power series at different sampling instants
Example
Unit step

 0 k<0
r(kT ) =
 1 k≥0


X
R(z) = r(kT )z −k
k=0


X
= (1)z −k
k=0

= 1 + z −1 + z −2 + z −3 + · · ·

z
=
z−1
Unit Ramp

 0 k<0
r(kT ) =
 kT k≥0


X
R(z) = r(kT )z −k
k=0


X
= (kT )z −k
k=0

48
Control Engineering III Lecture Notes by A. M. Muhia

= T z −1 + 2T z −2 + 3T z −3 + · · ·

Tz
= 2
(z − 1)

Exponential function

 0 k<0
r(kT ) =
 e−akT k≥0


X
R(z) = r(kT )z −k
k=0


X
= (e−akT )z −k
k=0

= 1 + e−aT z −1 + e−2aT z −2 + e−3aT z −3 + · · ·

z
=
z − e−aT
Sine function

 0 n<0
r(kT ) =
 sin nωT n≥0

ejnωT − e−jnωT
r(kT ) =
2j

ejnωT e−jnωT
= −
2j 2j

z
R(e−anT ) =
z − e−aT
 
1 z z
R(z) = −
2j z − ejωT z − e−jωT

z sinωT
=
z 2 − 2z cosωT + 1
Cosine function

49
Control Engineering III Lecture Notes by A. M. Muhia


 0 n<0
r(kT ) =
 cos nωT n≥0

ejnωT + e−jnωT
r(kT ) =
2
ejnωT e−jnωT
= +
2 2

z
R(e−anT ) = R (z) =
z − e−aT
 
1 z z
R(z) = +
2 z − ejωT z − e−jωT
 
z (z − cos ωT )
=
(z − ejωT ) (z − e−jωT )

z (z − cos ωT )
=
z 2 − 2z cosωT + 1
Discrete impulse function

1 n=0
δ (n) =
0 n 6= 0


X
R (z) = r (nT ) z −n
n=0


X
= (1) z −n
n=0

=1

Delayed discrete impulse function



1 n=k>0
δ (n − k) =
0 n 6= k


X
R (z) = r (nT ) z −n
n=0


X
= (1) z −n
n=0

50
Control Engineering III Lecture Notes by A. M. Muhia

= z −n

Example
Determine the Z transform given that

1
G(s) =
s2 + 5s + 6
Method 1: Using Inverse Laplace Transform

1 1 1
G(s) = = −
s2 + 5s + 6 s+2 s+3

L−1 {G(s)} = e−2t − e−3t



X
G(z) = (e−2nT − e−3nT )z −k
k=0

z z
= −
z − e−2T z − e−3T
Method 2: Using Z transform table
from z transform table

1 z
=
s+a z − e−aT
z z
G (z) = −
z − e−2T z − e−3T

example 2

1
X (s) =
s (s + 1)
solution
A B As + A + Bs
X (s) = + =
s s+1 s (s + 1)
A=1 B = −1

1 1
X (s) = −
s s+1

x (t) = 1 − e−t

51
Control Engineering III Lecture Notes by A. M. Muhia

X (kT ) = 1 − e−kT


X
1 − e−kT z −k
 
X (z) =
k=0


X ∞
X
= (1) z −k − e−kT z −k
k=0 k=0

1 1
= −
1 − z −1 1 − e−T z −1

z z

z − 1 z − e−T

z 1 − e−T
 
=
(z − 1) (z − e−T )

Properties of Z-transform

1. Linearity
This equation follows directly from the linearity of the Laplace transform.

Z {αf1 (k) + βf2 (k)} = αF1 (z) + βF2 (z)

Example
Find the z-transform of the causal sequence

f (k) = 2 × 1(k) + 4δ(k)

Solution
Using Linearity, the Z-transform of the sequence is

F (z) = 2Z{1(k)} + 4Z{δ(k)}

2z 6z − 4
= +4=
z−1 z−1
2. Time Delay
This equation follows from the time delay property of the Laplace transform

Z {f (k − n)} = z −n F (z)

52
Control Engineering III Lecture Notes by A. M. Muhia

Example

 4, k=2
f (k) =
 0, otherwise

Solution
The given sequence is a sampled step at k = 2 rather than k = 0 (i.e., it is delayed by two
sampling periods). Using the delay property, we have

F (z) = Z {4 × 1(k − 2)} = 4z −2 Z {1(k)}

4z 4
= z −2 =
z−1 z(z − 1)

3. Time advance

Z {f (k + 1)} = zF (z) − zf (0)

Z {f (k + n)} = z n F (z) − z n f (0) − · · · − zf (n − 1)

4. Multiplication with exponential

Z a−k f (k) = F (az)




Example
Find the z-transform of the exponential sequence

f (k) = e−αkT

Solution
f (k) can be written as
f (k) = e(αT )−k × 1

The z-transform of a sampled step is

z
F (z) =
z−1

Applying the multiplication by exponential property we obtain


n o zeαT
Z e−αT ) f (k) =
zeαT − 1
z
=
z − e−αT

53
Control Engineering III Lecture Notes by A. M. Muhia

2.2.2 Inverse Z Transform

The inverse Z transform of X (z) yields the corresponding time sequence x (t)
The notation for the inverse Z transform is z −1

1. Direct division method


We obtain the inverse Z-transform by expanding X (z) into an infinite power series in z −1


X
X (z) = x (kT ) z −k
k=0

= x (0) + x (T ) z −1 + x (2T ) z −2 + · · ·

The values of the coefficient of z −1 can then be obtained by inspection


Example
Determine the values of x (k) for x (z) given by

z
x (z) =
z 2 − 3z + 2

Solution
z −1 + 3z −2 + 7z −3 + 15z −4
X (z) = z 2 − 3z + 2 z
z − 3 + 2z −1
3 − 2z −1
3 − 9z −1 + 6z −2
7z −1 − 6z −2
−1
7z − 21z −2 + 14z −3
15z −2 − 14z −3
15z −2 − 45z −3 + 30z −4
31z −3 − 30z −4

X (z) = z −1 + 3z −2 + 7z −3 + 15z −4 + · · ·

x (0) = 0 x (1) = 3 x (2) = 7 x (3) = 15

Example 2
A sampled data system has the transfer function

1
G (s) =
s+1

54
Control Engineering III Lecture Notes by A. M. Muhia

If the sampling time is one second and the system is subject to one unit step input function
, determine the discrete time response
Solution
X (z) = G (z) Xi (z)
z z
= −T
z−e z−1
z z
=
z − 0.368 z − 1

z2
=
z 2 − 1.368z + 0.368

1 + 1.368z −1 + 1.503z −2
2
z − 1.368z + 0.368 z2
z 2 − 1.368z + 0.368
1.368z − 0.368
1.368z − 1.871 + 0.503z −1
1.503 − 0.503z −1
1.503z −2 − 2.056z −1 + 0.553z −2

= 1 + 1.368z −1 + 1.503z −2 + · · ·

x (0) = 1 x (1) = 1.368 x (2) = 1.503

2. Partial fraction expansion method


The function X (z) may be expanded into partial fractions in the same manner used in Laplace
transform
Example
Obtain the inverse Z transform of X (z) given that

z
X (z) =
z 2 − 3z + 2

and sampling time T = 1


Solution

z z
X (z) = =
z 2 − 3z + 2 (z − 1) (z − 2)

X (z) 1 A B
= 2 = +
z z − 3z + 2 z−1 z−2

55
Control Engineering III Lecture Notes by A. M. Muhia

−1 1
= +
z−8 z−2

−z z
X (z) = +
z−1 z−2
 
−z z
z −1 [X (z)] = z −1 +
z−1 z−2
from z transform tables  
z
z −1 =1
z−1
 
−1 z
z = e0.69
z−2

x (k) = e0.69 − 1

= 2k − 1

Example 2
Given that
1 − e−aT z

X (z) =
(z − 1) (z − eaT )
where a is a constant and T the sampling time , determine the inverse z transform
Solution

1 − e−aT

X (z)
=
z (z − 1) (z − eaT )

A B
= +
(z − 1) (z − eaT )

1 1
= −
(z − 1) (z − eaT )

z z
X (z) = −
(z − 1) (z − eaT )
   
−1 −1 z −1 z
z [X (z)] = z −z
(z − 1) (z − eaT )

= 1 − eakT

56
Control Engineering III Lecture Notes by A. M. Muhia

x (kT ) = 1 − eakT k = 0, 1, 2, ....

2.2.3 Solution of Difference Equations

By a process analogous to Laplace transform solution of differential equations, one can easily solve
linear difference equations. The equations are first transformed to the z-domain (i.e., both the
right- and left-hand sides of the equation are z-transformed). Then the variable of interest is solved
for and inverse z-transformed. To transform the difference equation, we typically use the time delay
or the time advance property. Inverse z-transformation is performed using the methods of discussed
before.
Example
Solve the linear difference equation

3 1
x(k + 2) − x(k + 1) + x(k) = 1(k)
2 2
5
with initial conditions x(0) = 1 and x(1) =
2
Solution
Obtaining the z-transform of the difference equation

3 1 z
z 2 X(z) − Z 2 x(0) − Zx(1) − (zX(z) − zx(0)) + X(z) =
2 2 z−1

Substituting the initial conditions and rearranging we obtain


 
3 1 z 5 3
z2 − z − X(z) = + z2 + z − z
2 2 z−1 2 2

z3
=
z−1
z3
X(z) =  
3 1
z2 − z− (z − 1)
2 2
z3
=
(z − 1)2 (z − 0.5)
In partial fraction form
2 1
X(z) = 2
+
(z − 1) z − 0.5
Finally obtaining the inverse z-transform of X(z) we obtain

x(k) = 2k + (0.5)k

57
Control Engineering III Lecture Notes by A. M. Muhia

2.3 Pulse Transfer Function

Pulse transfer function relates the Z transform of the output at the sampling instants to that of
the sampled input

X0 (z)
G (z) =
U (z)
The ratio of the output X0 (z) and input U (z) is called the pulse transfer function of the discrete
time system

Blocks in cascade

There are synchronized samplers either side of the blocks G1 (s) and G2 (s) . The pulse transfer
function is therefore

Y
(z) = G1 (z) G2 (z)
U
There is no sampler between G1 (s) and G2 (s) and so they can be combined to give G1 G2 (s)

The output is given by


Y (z) = z [G1 G2 (s)] U (z)

PTF
Y (z)
= z [G1 G2 (s)]
U (z)

58
Control Engineering III Lecture Notes by A. M. Muhia

= G1 G2 (z)

Example
Consider the systems shown where

1 1
G1 (s) = G2 (s) =
s+a s+b

Obtain the pulse transfer function for each of the two systems
(a) We assume that the two samplers are synchronized and have the same sampling period
The PTF is given by
Y (z)
= G1 (z) G2 (z)
U (z)
   
1 1
=z z
s+a s+b

z z
= .
z − e−aT z − e−bT

z2
=
(z − e−aT ) (z − e−bT )
(b)
Y (z)
= G1 G2 (z)
U (z)
 
1 1
=z .
s+a s+b

1
=
(s + a) (s + b)
A B 1
+ =
s+a s+b (s + a) (s + b)

B (s + a) + A (s + b) = 1

1 −1
s = −a A= =
−a + b a−b

1 1
s = −b B= =
−b + a a−b
  
1 −1 1
⇒z +
a−b s+a s+b

59
Control Engineering III Lecture Notes by A. M. Muhia

 
1 −z z
= +
a − b z − e−aT z − e−bT
" #
−z z − e−bT + z z − e−aT

1
=
a−b (z − eaT ) (z − e−bT )
"  #
1 z e−bt − e−at
=
a − b (z − eaT ) (z − e−bT )

Pulse transfer function of closed-loop systems

The existence or non-existence of an output sampler in the loop makes a difference in the behaviour
of the system

1. with no output sampler

The closed loop pulse transfer function is given by

C (z) G (z)
=
R (z) 1 + GH (z)

where
GH (z) = z {GH (s)}

2. with output sampler

60
Control Engineering III Lecture Notes by A. M. Muhia

The closed loop pulse transfer is given by

C (z) G (z)
=
R (z) 1 + G (z) H (z)

Example
The figure below shows a digital control system. When the controller gain k is unity and the
sampling time is 0.5 seconds, determine

1. the open loop pulse transfer function

2. the closed loop pulse transfer function

3. the difference equation for the discrete time response

Solution
(a)
1 − e−T s
  
1
G (s) = k
s s (s + 2)
but k = 1  
−T s
 1
= 1−e
s2 (s + 2)
partial fraction expansion
1 A B C
= + 2+
s2 (s + 2) s s s+2

A = −0.25 B = 0.5 C = 0.25

 
−0.25 0.5 0.25 
1 − e−T s

G (s) = + 2 +
s s s+2
 
 −1 2 1
= 0.25 1 − e−T s

+ 2+
s s s+2

" #
−z 2T z z
G (z) = 0.25 1 − z −1
 
+ +
z − 1 (z − 1)2 z − e−2T

61
Control Engineering III Lecture Notes by A. M. Muhia

but T = 0.5  " #


z−1 −z 2T z z
G (z) = 0.25 + 2 +
z z − 1 (z − 1) z − 0.368

0.092z + 0.066
=
z2 − 1.368z + 0.368
(b) closed loop pulse transfer function

C G (z)
(z) =
R 1 + G (z)

0.092z + 0.066
=
z2 − 1.368z + 0.368 + 0.092z + 0.066

0.092z + 0.066
=
z2 − 1.276z + 0.0434

C (z) 0.092z −1 + 0.066z −2


=
R (z) 1 − 1.276z −1 + 0.434z −2

C (z) 1 − 1.276z −1 + 0.434z −2 = R (z) 0.092z −1 + 0.066z −2


   

C (kT ) − 1.276C (k − 1) T + 0.434C (k − 2) T = 0.092r (k − 1) T + 0.066r (k − 2) T

C (kT ) = 0.092r (k − 1) T + 0.066r (k − 2) T + 1.276C (k − 1) T − 0.434C (k − 2) T

2.4 Stability Analysis

2.4.1 Stability in the z-plane

Just as the transient analysis of continuous systems may be undertaken in the s-plane , stability
and transient analysis on discrete systems may be conducted in the z-plane
It is possible to map from the s-plane to z-plane using the relationship

z = esT

s = σ ± jω

⇒ z = e(σ±jω)T

62
Control Engineering III Lecture Notes by A. M. Muhia

= eσT ejωT

= eσT ej(ωT +2πk)

This means that there are infinitely many values of s for each value of z
For stability in s-plane σ must be on the left half of the s-plane ie σis negative. Thus

|z| = eσT < 1



If T = ωS where ωs is the sampling frequency

j 2πω
z = |z| e ωS

It can be seen that the left hand side (stable) of the s-plane corresponds to a region within a circle
of unity radius in the z plane

The necessary and sufficient condition for the stability of a DTs is that all the poles of its z transform
function lie inside the unit circle of the z plane
Example
Consider the closed loop system whose open loop transfer function is given by

1 − e−sT 1
G (s) =
s s (s + 2)

63
Control Engineering III Lecture Notes by A. M. Muhia

Determine the stability of the system where k = 1 , T = 0.5

1 − e−sT 1
G (s) =
s s (s + 2)

0.092z + 0.066
G (z) =
z 2 − 1.368z + 0.368

C (z) G (z)
=
R (z) 1 + G (z)

0.092z + 0.157
=
z 2 − 1.276z + 0.527

C.E = 1 + G (z) = z 2 − 1.276z + 0.527 = 0

z = 0.63 ± j0.34

= 0.72

|z| < 1 stable

2.4.2 Routh Hurwitz Criterion

It is possible to use Routh Hurwitz criterion to determine whether a polynomial ϕ (z) has roots
outside the unit circle.
We use the transformation
ω = u + jv

z+1
=
z−1

ω+1
z=
ω−1

64
Control Engineering III Lecture Notes by A. M. Muhia

The characteristic polynomial ϕ (z) is transformed into a polynomial of ω and the Routh Hurwitz
criterion applied to determine the stability of the system

Example
Determine the stability of the system above using Routh Hurwitz criterion

Solution
The characteristic equation of the system is

z 2 − 1.276z + 0.527 = 0

ω+1
Substituting for z = in the characteristic equation
ω−1
 2  
ω+1 ω+1
− 1.276 + 0.527 = 0
ω−1 ω−1

ω 2 + 3.769ω + 1 = 0

Writing the Routh array

ω2 1 1

ω1 3.769 0

ω0 1

The are no sign changes on the first column of the array and therefore the system is stable

2.4.3 Jury’s Stability test

Let the characteristic equation of a discrete system be

ϕ (z) = an z n + an−1 z n−1 + · · · + a1 z + a0 = 0

where an > 0
The Jury’s array is formed as

65
Control Engineering III Lecture Notes by A. M. Muhia

z0 z1 z2 ··· z n−k ··· z n−1 zn


a0 a1 a2 ··· an−k ··· an−1 an
an an−1 an−2 ··· ak ··· a1 a0
b0 b1 b2 ··· bn−k bn−1
bn−1 bn−2 bn−3 ··· bk−1 b0
c0 c1 c2 ··· cn−k
cn−2 cn−3 cn−4 ··· ck−2
.. .. .. ..
. . . .
The elements of each of the even numbered rows are the elements of the preceding row in reverse
order
The elements of the odd numbered row are defined as

a0 an−k
bk =
an ak

b0 bn−1−k
ck =
bn−1 bk

c0 cn−2−k
dk =
cn−2 ck

The necessary and sufficient conditions for the polynomial ϕ (z) to have no roots outside or on the
unit circle with an > 0 are as follows

ϕ (1) > 0

n
(−1) ϕ (−1) > 0

|a0 | < an

|b0 | > |bn−1 |

|c0 | > |cn−2 |

|d0 | > |dn−3 |

..
.

66
Control Engineering III Lecture Notes by A. M. Muhia

|m0 | > |m2 |

NB
For a second order system , the array contains only one row. For each additional order, two
additional rows are added to the array
For an nth order system , there are a total of n + 1 constraints
Jury’s test may be applied as follows

n
1. Check the three conditions ϕ (1) > 0 , (−1) ϕ (−1) > 0 and |a0 | < an which requires no
calculation. Stop if any of this conditions are not satisfied

2. Construct the array, checking the other condition as each row is calculated. Stop if any
condition is not satisfied

Example
Suppose the characteristic equation of a closed loop discrete time system is given by

ϕ (z) = z 3 − 1.8z 2 + 1.05z − 0.20 = 0

solution
n=3

ϕ (1) = 1 − 1.8 + 1.05 − 0.20 = 0.05

ϕ (1) = 0.05 > 0

3
(−1) ϕ (−1) = (−1) (−1 − 1.8 − 1.05 − 0.20) = 4.05

3
(−1) ϕ (−1) > 0

|a0 | = 0.2

a3 = 1

|a0 | < a3

conditions (i) , (ii) and (iii) are met

67
Control Engineering III Lecture Notes by A. M. Muhia

Jury’s array
z0 z1 z2 z3
−0.2 1.05 −1.8 1
1 −1.8 1.05 −0.2
−0.96 1.59 −0.69
−0.2 1
b0 =
1 −0.2

|b0 | = 0.96

a0 a2 −0.2 −1.8
b1 = = = 1.59
a3 a1 1 1.05

a0 a1 −0.2 1.05
b2 = =
a3 a2 1 1.8

|b2 | = 0.69

|b0 | > |b2 |

All the conditions are satisfied; the system is stable


The characteristic equation can be factorized as

2
ϕ (z) = (z − 0.5) (z − 0.8)

z2 = z1 = 0.5 z3 = 0.8

z1 < 1 z2 < 1 z3 < 1

All poles lie inside the unit circle hence the system is stable
Example 2
Consider the system described with characteristic equation

z 2 − 1.276z + 0.0434 = 0

a2 = 1 a1 = −1.276 a0 = 0.043

condition

68
Control Engineering III Lecture Notes by A. M. Muhia

ϕ (1) = 1 − 1.276 + 0.0434 = −0.3194

ϕ (1) < 0

condition not met hence system unstable!!! STOP here!!!

2.5 State Space Representation

State space method is based on the description of system equations in terms of n first-order differ-
ence equations, which may be combined into a first-order vector matrix difference equation. The
use of the vector-matrix notation greatly simplifies the mathematical representation of the systems
of equations
For invariant time(linear or nonlinear) discrete-time systems, the state equation may be written as

x(k + 1) = Gx(k) + Hu(k)

y(k) = Cx(k) + Du(k)

For linear time-varying discrete-time systems, the state equation and output equation may be
simplified as
x(k + 1) = G(k)x(k) + H(k)u(k)

y(k) = C(k)x(k) + D(k)u(k)

Many techniques are available for obtaining state-space representation of discrete-time systems.
Consider the discrete-time system described by

y(k) + a1 y(k − 1) + a2 y(k − 2) + · · · + an y(k − n) = b0 u(k) + b1 u(k − 1) + · · · + bn u(k − n)

Whereu(k) is the input and y(k) is the output of the system at the kth sampling instant. The
equation can be written in the form of the pulse transfer function as

Y (z) b0 + b1 z −1 + · · · + bn z −n
=
U (z) 1 + a1 z −1 + · · · + an z −n

Y (z) b0 z n + b1 z −1 + · · · + bn
= n
U (z) z + a1 z n−1 + · · · + an
There are many ways to realize the state-space representation for the discrete time system

69
Control Engineering III Lecture Notes by A. M. Muhia

2.5.1 Controllable canonical form

The controllable canonical form of the state space representation is given by


     
x1 (k + 1) 0 1 0 ··· ··· 0 x1 (k) 0
 x2 (k + 1)   0 0 1 ··· ··· 0   x2 (k)  0
      
.. .. .. .. ..   ..   .. 
      
  
 .  
= . . . .   .  .
 +   u(k)

. .. .. ..

..  .  . (89)
.. ..   .. 
   


 
  . . . . 


  
xn−1 (k + 1)  0 0 0 ··· ··· 1  xn−1 (k) 0
      

xn (k + 1) −an −an−1 −an−2 ··· ··· −a1 xn (k) 1

and

 
x1 (k)
 x2 (k) 
 
..
 
h i
 .


y = bn − an b0 bn−1 − an−1 b0 ··· ··· b1 − a1 b0 

..
 + b0 u(k)
 (90)

 . 

xn−1 (k)
 

xn (k)

2.5.2 Observable canonical form

The observable canonical form of the state space representation is given by

      
x1 (k + 1)0 0 ··· ··· 0 −an x1 (k) bn − an b0
 x2 (k + 1)  1 0 ··· ··· 0 −an−1   x2 (k)  bn−1 − an−1 b0 
      
..   .. .. ..   .. ..
      
   
 .  .
= . .   .  
+ . 
 u(k)

.  . ..

..  . . (91)
..   .. .. ..
    

   . . 

  
 


xn−1 (k + 1) 0 0 ··· ··· 0 −a2  xn−1 (k)  b2 − a2 b0 
      

xn (k + 1) 0 0 ··· ··· 1 −a1 xn (k) b1 − a1 b0

and

 
x1 (k)
 x2 (k) 
 
..
 
h i
 .


y= 0 0 ··· ··· 0 1  .
 + b0 u(k) (92)
..
 
 
 
xn−1 (k)
 

xn (k)

70
Control Engineering III Lecture Notes by A. M. Muhia

2.5.3 Diagonal canonical form

If the poles of the pulse transfer function are all distinct, the diagonal canonical form of the state
space representation of the system is given by

      
x1 (k + 1) −p1 0 ··· ··· 0 0 x1 (k)
1
 x2 (k + 1)   0 −p1 ··· ··· 0   x2 (k)  1
      
..   .. .. .. ..   ..   .. 
      

 .   .
= . . .   .  .
 +   u(k)

.   . .. ..

..  .  . (93)
..   .. .   .. 
 

   . . . 
  .   
xn−1 (k + 1)  0 0 0 ··· −pn−1 0  xn−1 (k) 1
      

xn (k + 1) 0 0 −an−2 ··· ··· −pn xn (k) 1

and

 
x1 (k)
 x2 (k) 
 
..
 
h i
 .


y = c1 c2 ··· ··· cn−1 cn 

.
 + b0 u(k) (94)
..

 
 
xn−1 (k)
 

xn (k)

2.5.4 Jordan canonical form

If the denominator polynomial of the pulse transfer function involves multiple roots then the state
space representation can be written in Jordan canonical form as

 

x1 (k + 1) −p1
 1 0 0 0    
 x1 u(k) 0
−p1

  0 1 0
 x2 (k + 1)  
    
  x2 u(k)  0
   ..    
 x3 (k + 1)   0 0 −p1 0 .   x u(k)  1
 3
=  +   u(k) (95)
     
 x4 (k + 1)   0
 .. 
  x4 u(k)  1
−p4 .

 ..  
  .


  
  
 .   .. ··· 0
   
 
xn (k + 1) xn u(k) 1
0 ··· ··· ··· ··· −pn

and
 
x1 u(k)
 
 x2 u(k) 
h i . 

y = c1 ··· ··· . 
c2  .  + b0 u(k)
cn  (96)

 . 
 .. 
 
xn u(k)

71
Control Engineering III Lecture Notes by A. M. Muhia

The characteristic equation of a given system remains invariant under different forms of state vari-
able representation. This can be true for the pulse transfer function also. The choice of the states
is not unique

Example
Consider the following system
Y (z) z+1
= 2
U (z) z + 1.3z + 0.4
Obtain the state-space representation of the systems in controllable, observable, diagonal canonical
form

Solution

Controllable canonical form


" # " #" # " #
x1 (k + 1) 0 1 x1 (k) 0
= + u(k)
x2 (k + 1) −0.4 −1.3 x2 (k) 1
" #
h i x1 (k)
y(k) = 1 1
x2 (k)
Observable canonical form
" # " #" # " #
x1 (k + 1) 0 −0.4 x1 (k) 1
= + u(k)
x2 (k + 1) 1 −1.3 x2 (k) 1
" #
h i x1 (k)
y(k) = 0 1
x2 (k)
Diagonal canonical form
The given pulse transfer function can be expanded in partial fraction form as

Y (z) 5/3 −2/3


= +
U (z) z + 0.5 z + 0.8

The diagonal canonical form of the state space representation becomes


" # " #" # " #
x1 (k + 1) −0.5 0 x1 (k) 1
= + u(k)
x2 (k + 1) 0 −0.8 x2 (k) 1

" #
h i x1 (k)
y(k) = 5/3 −2/3
x2 (k)

72
Control Engineering III Lecture Notes by A. M. Muhia

2.6 Solution of Linear Time-Invariant Discrete-Time State Equation

Consider the following state equation and output equation

x(k + 1) = Gx(k) + Hu(k)

y(k) = Cx(k) + Du(k)

The solution of the equation for any positive integer k may be obtained directly by recursion as

x(1) = Gx(0) + Hu(0)

x(2) = Gx(1) + Hu(1) = G2 x(0) + GHu(0) + Hu(1)

x(3) = Gx(2) + Hu(2) = G3 x(0) + G2 Hu(0) + GHu(1) + Hu(2)


..
.

By repeating this procedure, we obtain

k−1
X
k
x(k) = G x(0) + Gk−j−1 Hu(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 given by

k−1
X
k
y(k) = CG x(0) + C Gk−j−1 Hu(j) + Du(k)
j=0

Consider the discrete-time system

x(k + 1) = Gx(k) + Hu(k)

Taking the z transform of both sides of the equation

zX(z) − zX(0) = GX(z) + HU (z)

(zI − G)X(z) = zX(0) + HU (z)

Premultiplying both sides of the equation by (zI − G)−1 , we obtain

X(z) = (zI − G)−1 zX(0) + (zI − G)−1 HU (z)

Taking the inverse z Transform of both sides

x(k) = Z −1 (zI − G)−1 z x(0) + Z −1 (zI − G)−1 HU (z)


   

73
Control Engineering III Lecture Notes by A. M. Muhia

Comparing this equation with the previous solution ofx(k)

Gk = Z −1 (zI − G)−1 z
 

and
k−1
X
Gk−j−1 Hu(j) = Z −1 (zI − G)−1 HU (z)
 
j=0

The unique matrix Ψ(k) = Gk is called the state transition matrix or the fundamental matrix. It
contains all the information about the free motions of the system.

Ψ(k) = Gk = Z −1 (zI − G)−1 z


 

Example
Obtain the state transition matrix of the following discrete-time system

x(k + 1) = Gx(k) + Hu(k)

y(k) = Cx(k)

where " # " #


0 1 1 h i
G= , H= , C= 0 1
−0.16 −1 1

Also 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
" # " #
x1 (0) 1
x(0) = =
x2 (0) −1

Solution
The state transition matrix Ψ(k) is given by

Ψ(k) = Gk = Z −1 (zI − G)−1 z


 

We first obtain (zI − G)−1 as


" #−1
−1 z −1
(zI − G) = z
0.16 z + 1

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

74
Control Engineering III Lecture Notes by A. M. Muhia

The state transition matrix is obtained as

4 z 1 z 5 z 5 z
 
− −
Ψ(k) = Z −1  0.8
 3 z + 0.2 3 z + 0.8 3 z + 0.2 3 z + 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 
(0.2)k − (0.8)k (0.2)k − (0.8)k
3
=  0.8 3 3 3
0.8 1 4

k
− (0.2) + (0.8)k − (0.2) + (0.8)k
k
3 3 3 3
The Z transform of x(k) is given by

Z [x(k)] = X(z) = (zI − G)−1 zx(0) + (zI − G)−1 HU (z)

= (zI − G)−1 [zx(0) + HU (z)]

Since
z
U (z) =
z−1
We obtain  
" #  z  z2
z
+ z− 1 = z−1
 
zx(0) + HU (z) = z  −z 2 + z

−z 
z−1
z−1
Hence
(z 2 + 2)z
 
 (z + 0.2)(z + 0.8)(z − 1) 
(zI − G)−1 [zx(0) + HU (z)] =  
 (−z 2 + 1.84z)z 
(z + 0.2)(z + 0.8)(z − 1)
 17 22 25 
− z z
 6 + 9 + 18 
z + 0.2 z + 0.8 z − 1 
 
= 3.4 17.6 7


 z z z 
6 + 9 + 18
z + 0.2 z + 0.8 z−1
Thus the state vector x(k) is given by

17
 22 25 
− (−0.2)k + (−0.8)k +
x(k) = Z −1 [X(z)] =  3.46 9
17.6
18 
7
k k
(−0.2) − (−0.8) +
6 9 18

Finally the output y(k) is given by


 
17 22 25
y(k) = Cx(k) = − (−0.2)k + (−0.8)k +
6 9 18

75
Control Engineering III Lecture Notes by A. M. Muhia

2.7 Pulse-Transfer Function Matrix

The state space representation of an nth order linear time-invariant discrete-time system is given
by
x(k + 1) = Gx(k) + Hu(k)

y(k) = Cx(k) + Du(k)

Taking the Z transform of both equations

zX(z) − zx(0) = GX(z) + HU (z)

Y (z) = CX(z) + DU (z)

Assuming zero initial condition


X(z) = (zI − G)−1 HU (z)

Y (z) = C(zI − G)−1 H + D U (z)


 

Y (z)
F (z) = = C(zI − G)−1 H + D
U (z)
F (z) is called the pulse transfer function matrix. It characterizes the input-output dynamics of the
given discrete-time system

76

You might also like