Are you sure?
This action might not be possible to undo. Are you sure you want to continue?
CHAPTER
24
Dynamic Response of DiscreteTime Systems
In earlier chapters we have seen that the Laplace transform provides a convenient way of analyzing the dynamic behavior of continuoustime systems. The Laplace transform is also applicable to discretetime systems but is somewhat awkward to use. Thus we consider a related transform for discretetime systems, the ztransform. The ztransform has the same utility as the Laplace transform in that its use leads to a compact mathematical description of a dynamic system and permits the use of algebraic operations for system analysis. By using ztransforms, transfer functions for discretetime processes can be defined. This procedure facilitates subsequent analysis of sampleddata control systems, namely systems where a sampled signal appears. In this chapter we introduce ztransforms and pulse transfer functions and show how they can be used to calculate transient responses.
24.1 THE zTRANSFORM
Consider the operation of an ideal, periodic sampler as shown in Fig. 24.1. The sampler converts a continuous signal f(t) into a discrete signal f*(t) at equally spaced intervals of time. Mathematically it is convenient to consider impulse sampling, where f* (t) is the sampled signal formed by a sequence of impulses or Dirac delta functions:
f*(t)
= ~
n~O
f(n6.t)
8(t  ntlt)
(241)
Recall that the unit impulse 8(t) was defined in Chapter 3 as the limit of a rectangular pulse with infinitesimal width. The area under the pulse has a value of unity. Thus, it follows that if we integrate the sampled signal over a very small time period including the nth sampling instant,
fnc!.t+ nc!.t
f*(t)
dt
= f(n6.t)
(242)
In practice, impulse sampling is not attainable because the sampler remains closed for a small but finite amount of time. However, the time of closure is usually small (i.e., microseconds) compared to the sampling period and, consequently, impulse sampling provides a suitable idealization. 559
560
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
0123456789
Time, n
f*(t)
o
234
5
Time, n
6
7
8
9
Figure 24.1 Sampled data impulse representation of continuous signal f(t).
Next, consider the Laplace transform of Eq. 241, pes). The value off(n!::..t) is considered to be a constant in each term of the summation and thus is invariant when transformed. Since ~ [oCt)] = 1, it follows from the Real Translation Theorem (3104) that the Laplace transform of a delayed unit impulse is .s: [oCt  nM] enMs. Thus the Laplace transform of (241) is given by
F*(s)
= ~
I/~O
f(nM)enMS z ~ eSt;.!,
(243)
By introducing the change of variable, of both f*(t) and f(t), as
F(z) ~ Z[f*(t)] f(n!::..t)
we define
F(z),
the ztransform
~
I/~O
f(n!::..t)zn
(244)
To simplify the notation, denote
F(z)
by fll' Then (244) can be written as
=
Z[f*(t)]
= ~
f,zn
(245)
1/=0
In summary, a ztransform can be derived by taking the Laplace transform of a sampled signal and then making the change of variable, z = eSM. Thus, the ztransform is a special case of the Laplace transform that is especially convenient for sampleddata systems. Although (245) is an infinite series, F(z) can be written in closed form if the Laplace transform of f(t) is a rational function [1]. Next we derive the ztransforms of several simple functions. Step Function. To calculate the ztransform of a unit step input S(t), set = 1 for all n 2: O. Note that fo = 1, which implies the sampled value is taken
fn
at f(O+).
It follows from (245) that
F(z)
=
1
+
Zl
+
Zl
+ ...
(246)
24.1 The zTransform
561
For Izi > 1 this infinite series converges, yielding
F(
z)
= ~ z 
1
(247)
Note that Izl > 1 corresponds to es.ll > 1 (or s > 0). This condition on s is the same as that used to derive the Laplace transform table in Chapter 3.
Exponential Function.
F(z)
For the exponential function
~ f(nM)z1I
f(t)
= Ce at,
(248)
110
= ~
11=0
Ceall.l1z1I
Since Eq. 248 is a power series in ea.l1z1 that converges for lea.l1z11< 1 (which implies that s >  a), then
C
F(
z) =
1
(249)
Properties of the ztransform.
Some important properties of the ztransform are summarized below. Further information is available in Refs. 1 and 2. 1. Linearity. The ztransform is a linear transformation, which implies that
(2410)
where al and az are constants. This important property can be derived from the definition of the ztransform given in Eq. 241. 2. Real Translation Theorem. The ztransform of a function delayed in time by an integer multiple of the sampling period is given by
Z[f(t i~t)]
=
ri
F(z) t
(2411)
where is a positive integer, provided thatf(t) = 0 for for positive values of t. The theorem can be easily proved. From (244),
Z[f(t i~t)]
i
< O. F(z)
is defined only
= ~
II~O
f(n~t

iilt)Z1I
(2412)
Now substitute
j
= n 
i
i~t)] ~
j=
Z[f(t
i
f(j~t)Zji
(2413)
Since f(jM)
= 0 forj < 0, we can write
Z[f(t i~t)]
=
=
Zi ~
j=O
f(jM)rj
(2414)
(2415)
ziF(z)
If the time delay is not an integer multiple of the sampling period, then the modified ztransform described below must be employed. 3. Complex Translation Theorem. This theorem helps deal with ztransforms of functions containing exponential terms, which often arise with linear, continuoustime models.
(2416)
562
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
To demonstrate
the validity of (2416), use (244) as the starting
Z[eal{(t)]
point: (2417)
= 2:
n~O
eantltf(nb..t)zn
= 2:
n~O
f(nM)(zea::'t)n
(2418) (2419)
We will illustrate
the use of this theorem later in Example 24.2. The initial value of a function from its ztransform:
4.
Initial Value Theorem.
can be obtained
/1>0
hm
f( nM)
=
z>oo
lim F( z)
(2420)
This result follows directly from Eq. 244, with the condition that Izi > 1. 5. Final Value Theorem. The final or largetime value of a function can be found from its ztransform, providing that a finite final value does exist: lim f(nb..t)
n'?X
=
hm (1  zl)F(z)
z)1
(2421)
Note that (2421) is analogous to the final value theorem for Laplace transforms with stable poles (ct. Eq. 394). To prove this theorem, substitute the definition of F(z) into the right side of (2421): (1  ZI)
2:
n~O
f(nb..t)zn
f(O)]
(2422)
Z1
=
{f(0)
+
[J(M)
+
[J(2b..t)
 f(b..t)]Z2
+ ... }
(2423)
Taking the limit as z 7 1, all of the terms in the infinite series except the last one cancel, yielding lim f(nb..t)
/1>00
= hm (1 z>
1
zI)F(z)
(2424)
6. Modified zTransform. The modified ztransform is a special version of the ztransform that was developed to analyze continuous systems containing fractional time delays, namely those that are not an integer multiple of the sampling period. Suppose that a time delay e is expressed as
e
=
(N
+
CT)b..t
(2425)
where 0 < CT < 1 and N is a positive integer. The sampled values of the delayed function are clearly not the same as those of the function with CT = O. Using the real translation theorem, the ztransform of the delayed function f(t  e) is
Z[J(t 
e)]
= 2:
f(nb..t

Nb..t 
CTM)zn
(2426)
n~O
Defining m
= 1 
CT
and k

= n  N  1 yields
Z[J(t
e)]
=
k~ N1
2:
f(kb..t
+
mb..t)zhVl
(2427)
24.1 The zTransform
563
ZNl
Since f(nt:.t) = 0 for n < 0, the lower limit can be changed to zero. In addition can be factored out:
=
rN1
2: f(k!::.t + mt:.t)zk
k~O
(2428)
Thus, it is convenient to define the modified ztransform by F(z, m) ~
ZN:I
2: f(k!::.t + mt:.t)zk
k~O
(2429)"
where m is the modified ztransform variable. The modified ztransforms of some common functions have been tabulated by Ogata [1]. The theorems developed above (initial value, complex translation, etc.) can be extended to modified ztransforms. Unlike the ztransform, the modified ztransform contains information about the values of the function between samples (0 < IT < 1). However, this information is available only if we know the continuous functionf(t). Applications of the modified ztransform have been discussed by Smith [3] and Deshpande and Ash [4]. Having introduced the properties of the ztransform, we now illustrate how they can be used to calculate ztransforms through a series of examples.
EXAMPLE
24.1
Derive the ztransform F(z) for the function, f(t) = t.
Solution
Since f(nt:.t)
= nt:.t, F(z) is given by the formula,
F(z) =
2: f(nt:.t)zn n~O
=
2: n!::.tzn = t:.t 2: nrn n~O n~O
(2430)
To obtain a closedform expression for the summation, let 5(z) 
2: nzn =
n=O
rl
+ 2z2 +
3r3
+ 4z4 +
(2431)
Multiplying by z I gives
z15(z)
=
Z2
+ 2z3 + 3z4 + 4z5 +
(2432)
Subtract (2432) from (2431):
1 1  ZI  1
Note that the left side is (1  zI)5(z). Solving for 5(z) gives
(2434) (2433)
1
5(z)
= ~rl)2
Hence, the ztransform of f(t) F(z)
= tis = !::.t5(z)
(2435)
564
DYNAMIC RESPONSE OF DISCRETETIME SYSTEMS
EXAMPLE
24.2
Derive the ztransform of cos bt. Then, using the complex find the ztransform of f(t) = eal cos bt.
Solution
translation
theorem,
Applying
the definition
of the ztransform,
F(z)
= Z(cos
bt)
= ~
n=
0
(cos nM.t)zn series, use Euler's relation
(2436) for the
To derive a compact cosine function:
formula
for the power
cas nb!::.t where j
=
!
(e jnb::'1 + e  jnbM)
(2437)
= v=1.
This leads to
F(z)
= 
2 n~O 1('"
~
ejnbMzn
+ ~
n~O
'"
ejnb:o.lzn
)
(2438)
We can then employ a previous Fz
result given in (248) and (249):
()
=
2 1  e]bMrl 1( 1
.
+
1
.
e 1) ]bMZl
 (e + ejb:o.l)z1 =:21 ( 1  2 (ejbM jb:o.l + e  jMI) Using Euler's relation
r+
r2
1 Z2 )
once more to return to trigonometric
F
functions (2439)
(z)
=
1  Z 1 cos b!::.t 1  2z1 cas b!::.t +
Note that for b = 2mr/!::.t, F(z) = 1/(1  ZI), which is the same expression as the ztransform of the unit step function. In other words, the sampled cosine has the identical appearance of the sampled unit step function Un = 1 for all n), an example of aliasing (see Fig. 22.5). Hence, the two ztransforms are identical in this special case. To obtain the ztransform of the composite function of f(t) = eat cas bt, apply the complex translation theorem:
Z(eat
cos bt)
=
F(zea':'t)
(2440)
Equation 2440 implies that we substitute This step gives Z(eal cos bt)
zea':'t
every place z appears cas b!::.t
in (2439).
1  zlea::'1 1  2z1ea::'1
cas b!::.t
+
z2e2a:o.{
(2441)
EXAMPLE
24.3
Find the modified ztransform of eal using Eq. 2429. Show that the case m = 0 (a = 1) corresponds to a pure time delay of one sampling period, that is, 8 = !::.t.
24.1 The zTransform
565
Solution
Using
(k
+
(2429) as the definition of the modified ztransform m) Ilt and N = 0 for the value of t in e at yields
F(z,
and substituting
m)
=
rl L ea(k+m)j.{zk
k~O
(2442)
eamj.{Z1
k~O
L eakj.{zk
index gives
(2443)
Using (248) and (249) with k as the summation
e am::H F(z, m)
ZI
(2444)
= 1
e aM z
When m = 0 (CT = 1), the numerator of (2444) becomes z I. This term indicates a one unit time delay (N = 0 and CT = lor N = 1 and CT = 0). Therefore it is consistent with Property 2 (the Real Translation Theorem) stated in Eq. 2411.
As these examples illustrate, we can readily construct tables of ztransforms and F(s). Table 24.1 provides a representative list corresponding to functionsf(t) of ztransforms; more extensive tables can be found in Ogata [1] and Deshpande and Ash [4].
EXAMPLE 24.4 Given the transform,
1
F(s) s(s
+
a)
(a
> 0)
system, determine the final
which might represent the step response of a firstorder steadystate value, lim f(nllt).
J1~X
Solution
From Table 24.1,
F(z)
= ~ ( 1= ZI 1 1
Then from the Final Value Theorem,
n~X
limf(nllt)
=
n~X
limf(nllt)
z~ = a lim1
! !
a lim z~1
[(1 
ZI)
(
1  1z _]
1
e :aj.{ z
I)]
[1 
Z z 
e _la~t] = a
!
This result agrees with the continuoustime limit of f(t) as t ~ x obtained from the final value theorem for Laplace transforms. Note that if a ::5 O,f(t) and f(nllt) are unbounded, and application of the Final Value Theorem would provide misleading results. Why?
566
DYNAMIC RESPONSE OF DISCRETETIME SYSTEMS
Table 24.1
zTransforms (At = Sampling Period)
Laplace Transform F(s)
Time Function f(t)
Set),
ztransform
F(z)
unit step
1 s
1 1
r1
I:::.tr1
(1  r1f
(n sn
I)!
lim 1 nI __
a~O ( )
aan1 an1
(
1
eaMz1 1
)
1
s +
a
1
1b) b ~ a
eacl1z1
1
b _ a (eal
Set)

1
ebl)
(s
eal
+
a)(s
+
C
e~aMrl

1
e~b~lrl)
ab 1
(
+  a
b b
1
s(s +
a)(s
2. Ll  1_ + 1__ rl ab
+
b) _
b (a  b) (1  eaMzl) a]
a a_ __  b
ebl)
(s
1 + a)2 1
1
b
!1t e aMzI
(1  eacl1r1f
r1eacll
1 b eal sin
eal cas bt
sin bl:::.t
bt
(s + a)2 + b2
11
2r1eacll
cas b!1t
+ +
e2acllr2
(s
S(t),
s + a + a)2 +
1b2 2rleacll
rlea~1
cas b!1t e2aMr2
cas b!1t
unit impulse
 kAt)
F(s)ekMS
1
F(z)rk
f(t
24.2
INVERSION
OF zTRANSFORMS
Once a ztransform has been obtained (by whatever means), we need to be able to obtain the values of its corresponding timedomain function at the sampling instants. This is analogous to inverting Laplace transforms back to the time domain. The inversion of a ztransform F(z) to its corresponding time domain functionf(t) is not unique because the inverse ztransform does not yield a continuous time function. Instead the values of the function are obtained only at the sampling instants. We know that a variety of continuous signals can be reconstructed from f*(t); that is, aliasing prevents the unique identification of the continuous function of time. On the other hand, the transformation from F(z) to f*(t) (or, equivalently, from F(z) to f(nllt)) is unique. Consequently, we define the inverse ztransform operator, denoted by Z1, as follows: f*(t)
= {f(nllt)}
= Zl[F(z)]
values f*(t), F(z) represented
(2445) at the If F(z)
The inverse ztransform consists of the sampled nth sampling instant as f(n/1t). To illustrate the inversion process, consider
= rl/(l  P1r1).
24.2
Inversion of zTransforms
567
above is expanded as an infinite series, 1

~ PIZ
=
rl(l
+ PIZI +
PIZZz
+ ...
+
PI"r"
+ ... )
(2446)
Comparing this expression to (241), note that the inverse ztransform gives an expression for the value of the function at the nth sampling instant (2447) In most cases the ztransform to be inverted consists of a ratio of polynomials in z I. To invert such expressions, three methods are available:
(a) Partial fraction expansion (b) Long division (c) Contour integration
(a)
Partial Fraction Expansion
This method is analogous to the procedure for expanding a complicated Laplace transform F(s) into simpler functions prior to taking the inverse Laplace transform. Note that the ztransform table contains expressions that are functions of ZI rather than z. Consequently, each term in the partial fraction expansion should be in this same form. Suppose that F(z) has the following form:
F(z)
=
VI(z) Vz(z)
(2448)
where VI (z) = kthorder polynomial in ZI (excluding a possible timedelay term ZN, which can be factored) Vz(z)  mthorder polynomial in ZI (the denominator is normalized so that the coefficient of ZO is unity). Assume that the denominator, Vz(z), can be factored into m distinct real roots (i.e., poles of F(z)), denoted by PI> pz, ... , Pm' Thus,
F(z)
=
(1 
PIZI)(l
VI(z)  pzZI)
...
(1 
(2449) PmzI)
Then choose a partial fraction expansion of the form:
F(z) __
1  PIZ1
r_l _ _
+ __ 1 
r_z _ _ pZZl
+ ...
+ __ 1 
r_m Pmz
(2450)
Each numerator coefficient r; can be calculated in a manner similar to that used for Laplace transforms (e.g., Heaviside's rule with z = lip;). Taking the inverse ztransform of (2450) term by term gives
f(n!::.t)
= ZI( 1 
rl PIZ _)1
+ Zl( 1 
rz pzz _)I
+ ...
Since the inverse transform of
f(nt:..t)
rl/(l  PIZl)
(2451)
rl(PI)",
is
then
rm(PnY
=
rl(Pl)"
+
rz(pz)"
+ ...
+
(2452)
568
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
If there were only a single term simple case, we can examine how of the sign and magnitude of PI' different values of PI along with case of a firstorder ztransform.
in the ztransform, then f(n6.t) = rIPI". For this the sampled representation will vary as a function Figure 24.2 shows the discretetime responses for possible continuoustime interpretations for the
In the special case when all roots are bounded by 0 :S Pi :S 1 and 6.t is known, then we can express the inverse ztransform for (2446) as
f(n6.t)
=
rleq,,,:>t
+
r2eq2,,:>r
+ ... +
rmeqm,,:>r
(2453)
Relating
(2453) to (2452), note that 111
ql
= 
6.tlnpl,
q2
= 
6.tlnp2,···,
qm
= 
6.tlnpm
If any Pi < 0, Eq. 2452 should be used in place of (2453). If the denominator of F(z) cannot be factored into real roots (i.e., complex roots appear), then the partial fraction expansion must contain a secondorder polynomial in the denominator for each pair of complex roots. When inverting such a term, the appropriate quadratic form for damped sines and cosines in Table 24.1 should be used. One other unusual case can arise in using the partial fraction expansion cedure. If the order of the numerator is greater than that of the denominator k > n in Eq. 2448), then Eq. 2450 is not strictly applicable. In this case, preferable to use other methods for generating the discretetime sequence, as the long division method discussed below.
EXAMPLE 24.5
pro(i.e., it is such
Using
F(z)
a
partial
= 0.5zI/[(1
F(z) F
fraction  zI)(l
expansion, find the inverse ztransform  0.5zI)] for a sampling period 6.t = 1.
of
Solution
Expanding
into the sum of two fractions
yields
(z)
= (1 _ zI)(l
0.5z1
 0.5z1)
= 1  ZI + 1  0.5z1
rl
r2
(2454)
Imaginary zplane
bmrr
/;b1ill
(1) Real
trrnm,
Figure 24.2
Timedomain
responses for different locations of the root of F(z).
24.2
Inversion of zTransforms
569
F(z)
Using Heaviside's rule (see Section 3.3) for finding rl and rz, multiply (1  ZI) and set z = 1: rl Next multiply F(z) by (1  0.5z1)
rz
by
=  = 1 0.5
and set z
0.5
= 0.5, that is,
Z1
= 2:
=   2 = 1
0.5(2)
1
1
(2455)
Substituting
into (2454) gives
F( z)
= 1
1
0.5z1
Equation
2453 with b.t
= 1 leads to 1 ql =  b.t In (1) = 0
1
qz
=  M
In (0.5)
= 0.693
so that
f(nb.t)
= 1
eO.693nM
(2456)
When Eq. 2452 is used to check this result (M = 1, rl = 1, PI pz = 0.5), the same expression results since eO.693n = (0.5)".
1,rz
1,
(b)
Long Division
Long division provides a second method for obtaining an inverse ztransform. In most cases it is considerably easier to use this method to obtain the inverse ztransform than to use partial fraction expansion. However, the result (an infinite series) may not be as useful as an analytical expression. Inversion via long division is an operation unique to discretetime systems; no analogous method exists for continuoustime systems. From the definition of the ztransform as
F(z)
=
11=0
L f(nb.t)zII
of F(z)
f(2M)zZ
(2457) are the values of f(t) at the (2458)
the coefficients in the power series expansion sampling instants:
F(z)
= f(O) +
f(M)z1
+
+ ...
Let F( z) be a rational function
represented
b1z1
by (2459) gives (2460)
Fz ()
=+ bzzz + ... + bkzk bo + ao + alz1 + azzz + ... + amzm
into the numerator by long division
1
Dividing the denominator
F(z)
=
Co
+
C1Z1
+ czzz + ...
'The order of division is based on dividing
ao
into the numerator and its remainders; see Example 24.6.
570
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
{cn}
Referring back to (2458), we can perform long division and equate the sequences and Un} to obtain
0
bo ao fj fo
ao
ao
ao
(2461)
(2462) (2463)
=
Cj _ C2
=
bj _ bO~j _ bjaj bo _ bOa2
+
bOaj2
Some important properties of sampleddata systems can be obtained from long division of their ztransforms. For example, for a firstorder ztransform,
F(z)
=
bo
1 
(2464)

ajZ
the equivalent sampled signal in the time domain can be found by long division, resulting in the infinite series (cf. (2446)):
F(z)
=
boO
+
ajzj
+
aj2z2
+ ...
+
aI"rn
+ ... )
(2465)
Therefore, the sampled data response of this system is given by the sequence {bo, boa), bOaj2,. .. }. This agrees with (2461) through (2463), taking into account the negative sign before aj in (2464). Note that if lajl > 1, the magnitude of the signal grows steadily over time (see Fig. 24.2), but if lajl < 1, the signal will be attenuated over time. This coefficient in a firstorder ztransform indicates if a system producing the signal is stable or unstable.
EXAMPLE 24.6
Repeat Example 24.5 using long division to generate the first five terms.
Solution
Dividing the denominator into the numerator,
O.5rl
+
O.75z1
+
O.875z3
+ O.9375r< +
O.9687rS
+ ...
1  1.5z1 + O.5z2 IO.5z1 O.5rl  O.75z1 + O.25r3
O.75z2 O.75z2

O.25z3 1.125z3 O.875z3 O.875r3
+ O.375r<

O.375z< 1.3125r< + 0.4375rS O.9375r<  0.4375r5 O.9375r<  1.4062zS
O.9687zS

0.4688z6 O.4688r6
+
Note that f(O) is zero in this expression. Long division does yield the same time sequence as does partial fraction expansion, with considerably less effort. However, the result is in the form of an infinite series.
24.3 The Pulse Transfer Function
571
(c) Contour Integration A final method for inverting ztransforms utilizes a contour integral:
f(nflt)
=
f. Jr F(z)znl (
'IT)
dz
(2466)
where the contour must be appropriately specified. Although the integral can be evaluated using the residue theorem [1, p. 83], this method is seldom used in practice. 24.3 THE PULSE TRANSFER FUNCTION
In analogy with continuous systems, the analysis and design of sampleddata control systems is facilitated by the use of transfer functions based on ztransforms. The pulse transfer function represents a dynamic relationship and is defined as the ratio of the output and input ztransforms, assuming both output and input are initially at steady state, analogous to continuoustime systems. In addition, both the input and output signals are sampled at the same rate and synchronously. Consider the sampleddata system in Fig. 24.3b where X(z) and Y(z) are ztransforms of the sampled input and output signals, x(nM) and y(nflt), respectively. The response of a continuous linear process (Fig. 24.3a) is given by the convolution integral [1, p. 180],
r
yet)
= L get 
(2467)
T)X*(T) dT
where get) is the impulse response of the process (see Chapter 3), T is the dummy variable of integration, and X*(T) is a series of impulses that can be expressed as
X*(T)
=
k~O
L x(kflt)
x
OCT 
kflt)
(2468)
Substituting (2468) into (2467) gives
t
yet)
=
10
get 
T)
t:o x(kflt)
oCt)
OCT 
kflt)
(2469)
dT
As shown by Ogata [1], an impulse arbitrary function h( T), J: h(T)
xes)
x(t) (a) Continuous input
has the important property that, for an
OCT 
kflt)
yes)
dT
=
for 0 :S T :S t
h(kflt)
(2470)
y(t)
Y*(s) y*(t)
Figure 24.3
(b)
Sampled input and output
Transfer function with (a) continuous input and (b) sampled input.
572
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
Thus, Eq. 2469 reduces to
yet)
= ~
k~O
get  kM)x(kl:1t)
(2471)
In particular, for t
=
nl:1t y(nM)
= ~ g(nl:1t  kl:1t)x(kl:1t)
k=O
. (2472)
The ztransform of the output signal is defined by
Y(z)
= ~ y(nl:1t)z1l
Il~O
(2473)
Substitution of y(nl:1t) from (2472) gives
Y(z)
= ~ ~ g(nM
Il~Ok~O
 kl:1t)x(kl:1t)r"
(2474)
Let i
=n 
k: Y(z)
= ~
i~
k k~O
~ g(il:1t)Z(i+k)X(kl:1t)
(2475)
Since g(il:1t) is zero for i summations separated:
< 0, the
lower limit on i can be changed to zero and the
(2476) or
Y(z)
=
G(z)X(z)
x
(2477)
where G(z) is defined as
G(z) ~ ~ g(il:1t)Zi
i~O
(2478)
We will refer to G(z) as the pulse transfer function of the system. It relates the discretetime input and output signals in the same manner as a transfer function in the sdomain relates continuous signals (see Fig. 24.4). Other derivations of (2477) are available [1]. Note that G(z) can be calculated directly after get), the impulse response function, has been determined (d. Eq. 2478).
EXAMPLE 24.7
Find
G(s)
the
pulse
transfer
function
for
a firstorder
continuous
process,
=
K/(TS
+ 1).
~ ~~)
Figure 24.4
Pulse transfer function.
24.4
Relating Pulse Transfer Functions to Difference
Equations
573
Solution
The continuous time impulse response
get)
get)
is found from
K
et/,
= ,\:,I[G(S)] = T
_ (2479)
The ztransform is (2480} This result can also be obtained from Table 24.1.
EXAMPLE 24.8
A secondorder discrete process has the pulse transfer function
G(z)
=
O.3225z1
+
O.5712z2
(2481)
Determine its discretetime response when forced by a sampled unit step input.
Solution
For a unit step input,
X(z)
= 1 + Zl + 1
Z2
+
Z3
+ ...
1  Zl
Here we use the closedform expression to minimize the number of terms. Equation 2477 is used to develop the expression for the step response Y( z). We could apply the partial fraction expansion method to find y(ntlt), but this would be relatively timeconsuming due to the need to factor the denominator and use the Heaviside expansion. Therefore, long division is employed to determine the response. Substitution gives
Y(z)
_ G(z)X (_ z)
1
O.3225r1 r. r.""",,,
__
1
+
,
O.5712z2 r. """,,'H
_,
,
1
_1
(_48 2) ?
Applying the long division procedure yields
Y(z)
=
O.3225z1

O.0665z2
+ O.2568z3 + O.5136z4 + ...
(2483)
+ +
O.6918z5 O.8820z7
+ +
O.8082z6 O.9277z8
We note in (2483) that y(ntlt) is steadily increasing and may be approaching a steady state value. Using the Final Value Theorem. we can calculate the value of y(ntlt), as n ,> x. Returning to (2482), multiply by (1  Zl) and set z = 1. The ultimate (steadystate) value for the response is thus 1. Since at steady state both input and output values are 1, the gain of the pulse transfer function is also 1. This can be verified by evaluating G(Z)IZ~I'
24.4
RELATING PULSE TRANSFER TO DIFFERENCE EQUATIONS
FUNCTIONS
A pulse transfer function, representing a dynamic relation between an input and an output, has a unique correspondence with a difference equation. To demonstrate
574
DYNAMIC RESPONSE OF DISCRETETIME SYSTEMS
this, consider
aOYIl
a general
difference
amY,,m
equation
given by
+
alYn~1
+ ... +
=
boxn
+
b1x"_1
+ ... +
bkXIl~k
(2484)
where {aJ and {bJ are sets of constant coefficients and k and m are positive integers. Before taking the ztransform of (2484), we recall the real translation theorem in
Eq.2411:
Z(YIlJ
=
Z[y(n~t

i~t)]
=
riy(z)
(2485)
Taking the ztransform
aoY(z)
of both sides of Eq. 2484 gives
+
alz~1y(z)
+ ... +
boX(z)
amzmy(z)
+ b1rl
X(z)
+ ... +
bkZ~k X(z)
(2486)
Collecting
terms, we solve for Y(z):
Y ()z
=
X + b1z1 + ... + + ...
bo ao alz1
+ bkzk + amzm
()z
(2487) given by (2488)
The pulse transfer
function G(z) 
of the discretetime
Y(z) X(z)
process is therefore
ao
bo
+ b1rl + ... + bkzk + alz~1 + ... + amzm
For most processes bo is zero, indicating that the input does affect the output. However, for proportional controllers and modeled simply by steadystate gains, all coefficients except Also, the leading coefficient in the denominator can be set both numerator and denominator by ao. Physical Realizability
not instantaneously processes which are ao and bo are zero. to unity by dividing
In Chapter 4 we addressed the notion of physical realizability for continuoustime transfer functions. An analogous condition can be stated for a pulse transfer function, namely a discretetime model cannot have an output signal that depends upon fut~re inputs. Otherwise the model is not physically realizable. Consider the ratio of polynomials given in Eq. 2488. The transfer function will be physically realizable as long as ao # 0, assuming that G(z) has been reduced so that common factors in numerator and denominator have been cancelled. To show this property, examine Eq. 2884. If ao = 0, the difference equation is
This equation requires a future input x" impossible (unrealizable). Another way to division. When the denominator in (2488) with positive powers of z should occur for
EXAMPLE 24.9
to influence YIl1, which is physically test physical realizability is to use long is divided into the numerator, no terms a physically realizable system.
Check the transfer
function
Y(z)
1 + 2z1 +
5z1
3Z~2
X(z) for physical realizability.
+
2z2
(2490)
24.4
Relating Pulse Transfer Functions to Difference
Equations
575
Solution
Note that the leading coefficient in the denominator is a power of ZI, violating physical realizability (ao = 0 in (2488)). The corresponding difference equation is
5Ynl
+ +
2Yn2
= =
x"
+
2X"1
+ +
3X"_2
(2491)
An equivalent difference equation is
5y" 2Ynl Xn+l
+
2x"
3X"1
(2492)
This equation requires knowledge of the future input XI1+1 to generate the current output value Ytl" A similar conclusion can be deduced using long division, which yields positive powers of z. This exercise is left for the reader.
The ZeroOrder Hold
Most sampleddata or computer control systems require a device to convert a digital output signal from the controller to an analog signal, which can then be utilized by a final control element such as a valve to manipulate the process. In many cases the final control element requires a continuous signal as input rather than a digital input to set its position (although in the specific case of a stepping motor, a continuous signal is generated from the digital input). The device usually employed for this purpose in process control is the digitaltoanalog converter (DAC) which functions as a zeroorder hold (ZO H), although there are other types of holds available (see Chapter 22). The zeroorder hold converts the digital signal from the controller into a continuous staircase function. This device ordinarily must
appear in conjunction with a continuous process for digital control to be carried out.
The process transfer function, when converted to a pulse transfer function, must incorporate the zeroorder hold. The digital controller output signal may be thought of as an idealized sequence of impulses through the ZOH and then through the process. We know from Laplace transform theory that if H(s) is the ZOH transfer function and G(s) is the process transfer function (including the final control element), then the overall transfer function is H(s)G(s). Although Table 24.1 gives the corresponding discretetime form for a first or secondorder transfer function (see Example 24.7 for the firstorder case), this table is based on an input that can be represented as a series of impulses. Thus, it cannot be used directly for the type of input that is characteristic of a ZOH (DAC) output, which is a staircase function. However, by taking the hold device into account, we can derive pulse transfer functions that are appropriate for process control calculations. First we derive the appropriate expression for H(s). Figure 24.5 shows the response of the hold device to an impulse input of unit strength. The hold yields a constant output value over the sampling period I:::.t, which is the same as the strength of the impulse. The impulse response of the ZOH over the interval
hW
:Cl
o
!:J.t
Figure 24.5
Time
Response of a zeroorder hold element to an impulse of unit magnitude.
576
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
t = 0 to t = 6.t can be written and S(t6.t): h(t)
as the difference
of two unit step functions,
Set)
=
Set)

S(tM)
(2493)
From Eq. 322, the Laplace transform
of h(t) is (2494 )
1 e s6.1 1  e s6.t H(s) =   s s =  s
For processes with a piecewise constant input, the difference equation model must be based on the product H(s)G(s) rather than G(s) alone. Then Table 24.1 can be used to convert H(s)G(s) to a ztransform.
EXAMPLE
24.10
For a firstorder
transfer
function with gain equal to one, G(s)
=
TS
1 + 1
Show by transform techniques that a zeroorder hold placed ahead of this process will yield the same difference equation model for the combined system (ZOH plus firstorder process) as was derived in Eq. 2319 for piecewise constant inputs to a firstorder process.
Solution
First form the product
H(s)G(s):
1  e s6.1
H(s)G(s) To convert this expression expansIOn: H(s)G ( s) to its equivalent
s
TS
1 + 1
(2495) we use a partial fraction
ztransform,
=~1
s+l/T 1
 e s6.t C  s+l/T ~ 1)
(2496)
HG(z) is defined as the ztransform of the combined ZOH plus process. Z is used as a shorthand way to denote the ztransform of the timedomain function given by the inverse Laplace transform, HG(z)
= Z [H(s)G(s)]
 Z
= Z{cS:'1[H(s)G(s)]}
~ C)
 Z s + 1/T
(_1 ) r1
e + Z [S6.tC ~  su_1 liT
)]
(2497)
Table 24.1 is then used to convert ztransform. Since Z [eS6.tp(s)] =
each term in Eq. 2497 into its equivalent Z [pes)], Eq. 2497 becomes
HG(z)
= C _1 Z1  1 _ e ~6.tI'Z1)
 z 1( 1 _1Z1  1 _ e6.II'z1 1)
(2498)
24.4
Relating Pulse Transfer Functions to Difference
Equations
577
or
HG(z)
= (1  z I ) [ (1 _ zl(l  _eM/T) zI)(l eLlt/TzI)
ZI (1 
]
= 1Defining al ~ eM/T,
Y(z)
eLltIT) eM/Tz1
(2499) as (24100)
(2499) can be written
HG(z)
X(z)
In difference
=
= (1 
1
al)zl alzI
equation
form, (24100) becomes
y" alY,,1
= (1  al)
X,,_I
(24101)
or
y"
=
aIY,,_1
+ (1  al)
X,,_I
(24102)
the same result as given in Eq. 2319.
H(s)G(s).
comments should be made about the procedure for transforming First recognize that the combined transfer function H(s)G(s) could have been converted to a series of impulse terms as in Example 24.7 by using the timedomain impulse response followed by transformation to the zdomain. The approach taken in Example 24.10, however, is more direct, because Table 24.1 provides the relation between sand z, thus bypassing the need to convert from the sdomain to the tdomain (and then to the zdomain). We can also generalize the results in (2497) to (2499) as
Several
HG(z)
=
Z(H(s)G(s))
= (1 
ZI)Z(G;S))
(24103)
In the second term, the operator Z indicates that the ztransform equivalent of G(s)/s can be determined using Table 24.1. Therefore, the calculation of HG(z) first requires partial fraction expansion of G(s)/ s, followed by transformation to its ztransform. Finally multiplication by (1  ZI) yields HG(z). Equation 24103 can also be employed to illustrate an important property of the zeroorder hold; in general, for dynamic systems,
HG(z)
¥
H(z)G(z)
(24104 )
First calculate
the ztransform
of H(s):
H(z)
=
Z
e
ses;!.t)
= (1 
ZI)Z
G)
(24105)
H(z)
1  ZI = 1  ~ = 1 ZI
the gain of H(s)
(24106) is unity. Using (24107)
This result is consistent with the fact that H(z) = 1, Eq. 24104 becomes
HG(z)
¥
G(z)
578
DYNAMIC RESPONSE OF DISCRETETIME SYSTEMS
Substituting (24103) for
HG(z),
the above expression is
(1 
rl)Z [G;S)]
lim
clt~O
¥
Z[G(s)]
(24108)
The inequality in 24108 is valid, in general, except for the case G(s)  K. One other interesting characteristic of the zeroorder hold is that
HG(z)
=
G(s)
(24109)
This result seems intuitively correct in view of Fig. 22.2b. For example, if we substitute z = esclt in Eq. 2499 and apply L'Hospital's rule for M 7 0, the ztransforrn reduces to the original firstorder transfer function G(s) = 1/(TS + 1). In contrast, the limit of G(z) as /1t 7 0 does not equal G(s) because of the discontinuous nature of the pulse transfer function G(z) [1]; for example, see Eq. 2480.
EXAMPLE
24.11
Derive the difference equation that corresponds to an integrating element, G(s) = Y(s)IX(s) = lis, using the ZOH and Eq. 24103.
Solution
First determine
G(s)/s,
which is
lIs2.
The ztransform is
/1t
rl
ZI)2
Z(1/s2)
= (1 _
HG(z):
(24110)
Multiply (24110) by (1  ZI), yielding
HG(z)
= 1M rl _ Z
(24111)
The corresponding difference equation is
Yn YnI /1t XnI
(24112)
HG(z)
The infinite series version of (24112) can be obtained by long division of in (24111) and conversion to discretetime form:
n
Yll
/1t ~ XkI k=1
(24113)
Equations 24112 and 24113 describe the two equivalent forms of the integrating element in discrete time.
HigherOrder Systems
As discussed in Chapters 6 and 7, many processes can be approximated by a secondorder transfer function with time delay 8:
G(s)
=
yes) Xes)
=
(TIS
+
Kees
1)(T2S
+ 1)
(24114)
Assume that 8 is an integer multiple of the sampling period (8 = N/1t), and x(t) is a piecewise constant input (i.e., G(s) is placed in series with a ZOH). The
24.5
Effect of Pole and Zero Locations
579
following difference
equation
results: (24115)
The relations between (a), az, b), bz) and (K, T), TZ) have been previously derived in Eqs. 2321 through 2325, based on the analytical solution of the differential equation. The pulse transfer function for (24115) is G(z)
= Y(z)
X(z)
= (b1r1
l+alz.
+ _~zzZ)z=~
+azz
_
l+alz
(b1
+ bz_~I)rN=~
+azz
(24116)
Note that (24116) is a general expression for a secondorder discretetime model with a time delay of N sampling periods (the apparent time delay is one sampling period longer (i.e., N + 1) in (24116) because the output cannot respond instantly). Neuman and Baradello [6] have derived difference equations incorporating the zeroorder hold for a variety of linear process models. Table 24.2 gives pulse transfer functions for a number of transfer functions with the zeroorder hold. Note that the transfer functions are given in polezero form (rather than using time constants). Only overdamped and integrating systems are considered. 24.5 EFFECT OF POLE AND ZERO LOCATIONS
For both continuoustime and discretetime systems, the nature of the dynamic response is influenced by the location of the poles and zeros of the transfer function (see Section 6.1). In fact, a pole Pi of a continuous system maps into a pole in discrete time as ePiM (recall the transformation z = eSM). A process with two time constants (T), TZ) has two negative continuoustime poles (lIT), l/Tz); therefore, after conversion to discretetime, two positive poles in the zplane (e MITl, eM/TZ) occur. This result is consistent with the expressions for al and az in a secondorder difference equation (see Eqs. 2322 and 2323). It is possible to categorize discretetime responses for first and secondorder continuoustime processes with no zeros into eight different patterns [1], as shown in Fig. 24.6ah. All responses exhibit an apparent oneunit time delay as noted above. For firstorder systems, recall that in Fig. 24.2 we identified several possible responses depending on the pole location. The appropriate firstorder difference equation is
Yll PIYIll XIll
(24117)
Table
(xo
24.3 gives the response for the case of a unit impulse input at n = 0 Yo = 0). The analytical solution is Yll = (Pl)ll· It is clear that a negative pole near the unit circle has a pronounced effect on the response. The alternation in sign of Y is referred to as ringing of the output signal (see Chapter 26 for a discussion of ringing in control systems). Negative poles nearer the origin, although they produce a change in sign, are heavily damped and their results are not so noticeable. Positive poles do not cause the output to change in sign. In Fig. 24.6 case c corresponds to a secondorder overdamped system with two positive poles on the real axis. It has similar properties to case b. Cases d and e are noteworthy, because the two complex poles in continuous time map into a single pole in discrete time. In case e, the pole is located at s = ±w)2j in continuous time, indicating an undamped oscillation. Since Ws is the sampling frequency, and Ws = 2'IT/6.t, the discretetime pole (eSM) is given by e±"ITJ. Via Euler's identity, the value of the single pole in discrete time is established as e±"ITj = COS'IT ± j sin 'IT = 1. It is important to remember that a firstorder discretetime system
= 1 and
<.n CO
o
Table 24.2 Pulse Transfer Functions with ZeroOrder Hold
G(s) HG(z)
o <
Transfer Function
K
=
Z[H(s)G(s)]
al
z » s::
o
JJ
(J)
~
1
+
air I
alzI
bl
= =
I
Kt.!
K
m
0 o Z
(J)
K
.I
blrl
r
al
bl
= exp( rt.!)
+
K
1
+
= r [I  exp( rt.!)]
m
bIZI
+
b1z2
(.I
+
r)(s
+ 1')
+
(l\Z1
+
(l2Z2
=  {exp( rt.!) + exp( pt.!)} a, = exp[  (r + I' )t.!] bl = [Klrp(r  p)][(r  1') rexp(pt.!) + pexp(rt.!)] + p)t.!] + I' exp(pM)rexp(rt.!)} b, =IKlrp(r  p)I{(r  1') exp[(r
al al
" o
o
en
()
JJ m i m
::J s::
K
.1(.1
blzI
r)
+
b,Z2
+
+
(1\z}
+
(12Z2
= {I + exp(rt.!)} a, = exp(  rM)
m
(J)
hi h, K(s
(.I
= =
(Klr')[l (Klr')!l 
 rt.t 
exp(rM)] rM exp( rt.!)]
< (J) i
(J)
exp( rt.!)
m
s::
+
'I)
h]z [ + h2z2
+
r)(s
+ 1')
+
([IZ!
+
(l2Z2
= {exp( I'M) + exp( rM)) a, = exp[ (r + p)M)1
al
bl
= {exp(pt.!)
I' r
K
 exp(rM)
+ ('1/1')[1  exp(pt.!)1
 1')1 exp( rt.!)
 (qlr)!1

exp(rM)J)
 1')] exp( pt.I)}
b, = K{(qlrp) K
(.I
exp[ (r
+ p)t.!1 + [(I'  q)/p(r
+ [('I  r)/r(r
h1z'
1')(.1
+
r)(.\'
+
+
v)
I
+
(ltZ!
+ [,222 + h3zJ + (l2Z'2 + (lJzJ
= {exp( rt.t) + exp( I'M) + exp( vt.!)} + p)t.I] + exp[(p + V)t.I) + exp[(r '" v)t.11 a, = exp[(r + I' + v)t.11 bl = [KI(rpv»](  '1[ exp(  rt.l) + exp(  pt.!) + exp(  Vt.I)] + {[pv(q  r)l/l(p  r)(v  r)IHI + exp(pt.l) + exp(ut.I)1 + {[rv(q  p)I/[(r  p)(v  p)IHI + exp(rt.l) + exp( vt.I)1 + {[rp(ll  v)]I[(r  v)(p  v)[H + exp( rt.l) + exp( pt.!)]) b, = [KI(rpvJl(q exp[ (r + p)t.I] + expl(p + v)t.tl + exp[ (r + v)t.!J) + {[pv(q  r)JI[(p  r)(v  r)IH exp( pt.l) + exp( wt.l) + expl(p + v)t.!J}
al
a, = exp[(r
I
+
+
b,
{[ru(q {[rp(q

p)]/[(r v)J/[(r 'I

p )(u vHp (I' 
P 
p)]}{ v)]}{
cxp(  rl>t) cxp( rl>t) cxp[ (p cxp[(r cxp[(r
+ cxp(  vl>t) + cxp[ (r + + cxp( pl>t) + cxp[(r +
v)l>t]} p)l>t]})
=
[KI(rpu)](
cxp[
+
r)(u
+
v)l>t]
+ + +
K(s
(s
{[pv(q {[rv(q {[rp(q
r)]/[(p p)]/[(r u)]/[(r
r)]} p)]} v)]}
pHu v)(p
+ v)l>tJ + u)MJ + p)l>t»
+
rHs
+ 'I) + pHs +
v)
1
b,2' + b,Z2 + b,z' + a,z' + a,r' + a3z'
a,
a, =  {cxp(  I'M) + cxp(  pl>t) + cxp(  vl>t)} = cxp[(r + p)l>t] + cxp[(p + u)l>tJ + cxpl(r + v)l>tJ + p + v)M)] a3 = cxp[(r b, = [KI(rpv)](q[ cxp(rl>t) + cxp(pl>t) + cxp(uM)] + {[pv(q  rW[(p  r)(v  r)]}[l + cxp( pl>t) + cxp( vM)] + {[ru(q  p)]/[(r  p)(u  p)IHl + cxp( rl>t) + cxp( vl>t)] + {[rp(q  u)]/[(r  v)(p  v)]}[l + cxp( rl>t) + cxp( pl>t)j) + p)l>t] + cxp[(p + v)l>t) + cxp[(r + v)l>t]) b, = [KI(rpv)]{q(cxpl(r + {[pu(q  1')]/[(1'  r)(v  r)]}{ cxp( I'M) + cxp( vl>t) + cxp[ (I' + v)l>t]) + {[rv(q  1')]/[(1'  p)(v  p)J}{cxp«rl>t) + cxp(vl>t) + cxp[(r + v)l>t]) + {[rp(q  v)]/[(r  v)(p  v)]H cxp( rl>t) + cxp( pl>t) + cxp[ (r + p)M]}) b, = [KI(rpv)I(qcxp[(r + I' + v)M] + {[pu(q  r)]/[(p  r)(u  r)]} cxp[ (I' + v)l>t] + {[rv(q  1')]/[1'  p)(v  p)]} cxp[(r + v)l>t] + {[rp(q  v)]/[(r  v)(p  v)]} cxp[ (I' + p)l>tj)
a, "2
11,
'"
"'" :".
CD
JJ §I S' 0
(Q
c
CD
en
I
03 ::J (f)
K(s
.1'(.1'
+
r)(,,'
'I)
+
+
1')
I + a\zI
b,r'
+ b,r2 + b,z'
+U2Z2
+
uJzJ
b,
b2
= {I + cxp(rl>t) + cxp(pl>t)} = cxp( rl>t) + cxp( pl>t) + cxp[(r + p)l>tl = cxp[ (r + p)l>t] = (Klrp){ql>t  (I  'III'  '1/1')11 + cxp( rl>t) + cxp( pl>t)J + ([1'('1  1')1/[1'(1'  1')1)[2 + cxp( rl>t)] + ([1'('1  1')1/[1'(1'  1')])[2 + cxp(pM)]) = ( Kilp )(ql>t[ cxp(  rl>t) + cxp(  pl>t)]  (I  'III'  qlr){cxp( rl>t) + cxp( pl>t) + cxpl(r + p)l>t]} + {[p(q  1')1/[1'(1'  p)IH 1 + 2 cxp( pl>t)1
+
{[r(q 1')]/11'(1' 1)1'1' 
~
C
::J
"
"(f)
0' ::J
o
CD
o
:::;; (i) ::J
CD
()
..0
r)IHI +
2 cxp(rl>t)j)
m
1>,
=
(Klrp({[(ql>t
+
'1(1'
+
p)l/(rp)}cxp[(r
+
p)l>t]
c
+ +
~
0'
::J (f)
{[r(q {[p(q
1')[/11'(1' 1')1/[1'(1'
r)]}cxp(rl>t) p)]}
cxp( pl>t»
U1
CO
....•.
582
DYNAMIC RESPONSE OF DISCRETETIME SYSTEMS
b, c, W lm, $ W W' $w' ill,' =f+ =t :f' rr
splane y(l) Firstorder systems (sdomain)
ws/2
(a)
~, ~, ~, ~, ~,
$
zplane
y*(1)
(b)
Secondorder systems (sdomain) (c)
(d)
(e)
(f)
(g)
(h)
Figure 24.6
Effect of pole locations on impulse response.
+ {[ru(q  p)]/[(r + {[rp(q  u)]/[(r
b,
 p)(u
 p)J}{cxp(rt.l) u)]}{ cxp( rt.l) + u)t.l] r)J} cxp[(p
=
[KI(rpv)](
qcxp[(r 
u)(p +p r)(v 
+ cxp(uM) + cxp( pM) + v)M] + u)t.l] + p)M))
+ exp[(r + cxp[ (r
+ +
u)M]} p)M]})
+ {[pv(q  r)]/[(p + {[rv(q  p)]/[(r + {[rp(q  v)]I[(r
K(s (s
 p)(v  p)J} cxp[ (r  vHp  v)]} cxp[(r
+
rHs
+ 'I) + p)(s +
b121
+ b,Z2 + b,z'
+
(12Z2
a1
v)
1
+
(11Z]
+
(1:1Z3
a, a,
b1
b2
b,
= {cxp( rt.l) + cxp( pt.l) + cxp( vt.l)) = cxp[(r + p)M] + cxp[(p + u)t.l] + cxp[ (r + U)t.l] = cxp[(r + I' + V)t.l)] = [KI(rpu)](  q[ cxp(  rM) + cxp(  pt.l) + cxp(  Ut.l)] + {[pu(q  r)]/[(p  r)(u  r)]}[! + cxp( pt.l) + cxp( vt.l)J + {[rv(q  p)I/[(r  p)(v  p)]}[1 + cxp( rt.l) + cxp( Vt.l)] + {[rp(q  v)]/[(r  vHp  v)]}[! + cxp( rt.l) + cxp( pt.l)]) = [KI(rpv)J{ q( cxp[ (r + p)t.l] + cxp[(p + u)M) + cxp[ (r + v)MJ) + {[pu(q  r)]I[(p  r)(u  r)]H cxp( pt.l) + cxp( ut.l) + cxp[ (p + U)t.lJ) + {[ru(q  p)J/[(r  p)(u  p)]}{ cxp« rt.l) + cxp( Vt.l) + cxp[(r + U)t.lJ} + {[rp(q  v)]I[(r  u)(P  v)]H cxp( rt.l) + cxp( pt./) + cxp[ (r + p)M]}) = [KI(rpv)I('I cxp[ (r + I' + U)t.l] + {[pU(11  r)]/[(p  r)(u  r)]} cxp[ (I' + u)t.ll + {[rv(q  p)l/[r  p)(v  p)]} cxp[ (r + v)t.lj + {[rp(q  u)]/[(r  u)(p  v)]} cxpl(r + p)t.lj)
I\)
:".
"'
:IJ
<1>
S' to u c:
en
<1>
![
i
OJ
::J
(J)
K(s s(s
+
rHs
'I)
b121 1')
1
+
b222
+(/2Z2
+ b,z'
+
U3ZJ
+
+
+
(1!Z1
= {I + cxp( rt./) + cxp( pt.l)} "2 = cxp(  rt.l) + cxp(  pt.l) + cxp[ (r + I' )t.l] ", = cxp[(r + p)t.l] bl = (Klrp){qt./  (I  'III'  qlr)[ I + cxp( rt.l) + cxp( + (lr(q  1')1/11'(1'  r)J)12 + cxp( rt./)] + (11'('1  r)l/[r(r  1')1)[2 + cxp( pt.l)]} b2 = ( Klrp )(qt.ll cxp(  rt./) + cxp(  pt.l) I  (1  'III'  qlr){cxp( rM) + cxp( pt./) + cxp[(r + {[p(q  r)l/lr(r  p)]}11 + 2cxp(pt./)]
a1
~
T1 c:
::J
>1
pM)1
o'
::J
(J)
o
=0
<1>
o
+
p)t./]}
ro ::J
<1>
()
.D c:
+ {Ir(q  1')1/11'(1'  r)]}[ I + 2 cxp( rt./)J)  I)rp + q(r + p)l/(rp)} cxp[ (r b, = (Klrp({[(qt./ + {[r(q  1')]/11'(1'  r)J} cxp( rt./) + {[p(q  r)]I[r(r  p)]} cxp( pt./))
m
+
p)t./]
~
o'
::J
(J)
01
CO
•...•.
582
DYNAMIC RESPONSE OF DISCRETETIME SYSTEMS
~
b, lllilL W' $ $W' =t+ :f' iT
splane y(t) Firstorder systems (sdomain)
ws/2
(a)
~, ~, ~, ~, ~,
c,
zplane
y*(t)
(b)
Secondorder systems (sdomain)
(c)
(d)
(e)
(f)
(g)
(h)
Figure 24.6
Effect of pole locations on impulse response.
24.6
Conversion
Between Laplace and zTransforms
583
Table 24.3
Firstorder Difference Output as a Function of Pole Location (unit impulse input)
Xn 0.9 0.90.027 0 +0.81 0 PI0.0081 1 0.729 0.8= 0.8 1 0.512 PI 0 0+ = 1 0.0024 1 0 0.328 0.5900.410 0.3 +0.09 0.6560.64 0.3 + Yn
can oscillate. tem.
Such behavior
is not possible with a firstorder
continuoustime
sys
Oscillation can also occur for secondorder discretetime systems, if the poles have imaginary (complex conjugate) values (see cases fh in Fig. 24.6). When a positive or negative zero occurs in the discretetime model, the degree of oscillation as well as its frequency can be affected. Unfortunately it is not possible to categorize this case easily, so we refer the reader to some examples presented by Franklin and Powell [5, pp. 3235]. The mapping of zeros from continuous time to discrete time is unpredictable, mainly due to sampling effects. Consider the secondorder difference equation resulting from a secondorder continuoustime transfer function with no zero. In Eq. 24116, the poles are found from factoring the denominator polynomial into two roots. The zero of the discretetime transfer function is  bz/ b1, which is fairly complicated when expressed in terms of TJ and TZ (see Eqs. 2324 and 2325). Therefore, there is no apparent simple relation between continuous and discretetime zeros. In addition, the sampling period can have a profound influence on the sampled response [7]. For example, an inverse response in continuous time (see Fig. 6.3) may not be observed at the sampling instants if the sampling rate is too slow.
24.6
CONVERSION
BETWEEN
LAPLACE
AND zTRANSFORMS
We have previously seen that Table 24.1 can be used to convert Laplace transforms to ztransforms and vice versa. However, implicit in this approach is the requirement that partial fraction expansion be performed to obtain the correct conversion. An alternative approach that avoids partial fraction expansion yields an approximate result merely by performing a variable substitution. No zeroorder hold is explicitly considered in this approach. As discussed earlier, the transform variable z was defined by z = eS::'t or Z1 = es!lt. To obtain an approximate relation expressing s in terms of a ratio of polynomials in z, we can use the Pade approximation for e s!lt
_ 2 e stlt = stit
2 + stit
(24118)
Equating
to
r
J
gives
z 1
:::=

2 
stit
2
+ stit
(24119)
584 or
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
(24120) The approximation suggests that a Laplace transform can be converted to a ztransform by substituting (24120) for s. Such an approach is known as Tustin's method [1]. A less accurate expression for s can be derived using the power series
es':'t
= 1ZI =
s6.t
+  2
s26.t2
 ...
(24121)
Retaining only the first two terms, we have
es':'t
==
1
s6.t
or
s=
(24122)
which is equivalent to the backward difference formula we have used in Chapter 23. When the algebra involved in the substitution is not too complicated, (24120) should be used instead of (24122) to improve accuracy. Ogata [1] has listed more accurate formulas for algebraic substitution into a transfer function G(s). Approximate substitution is a procedure that should always be used with care. Exact conversion, especially of the process model (up to third order), is recommended. A bilinear transformation similar to (24120) in form is sometimes used for stability analysis; its use will be discussed in Chapter 25.
EXAMPLE 24.12
Find an expression for the pulse transfer function of an ideal PID controller,
Ge(s)
TIS = Ke( 1 + ~ +
TDS)
(24123)
using the approximation in (24122). Compare your result with the velocity form of the PID algorithm given in Eq. 818.
Solution
Substituting (24122) into (24123) gives
Ke(ao
+ alrl
+ a2z2)
1  ZI
(24124)
(24125) If
e" is P(z)/E(z)
the error signal and and
p"
is the output from the controller, then
Gc(z)
=
(24126)
Summary
585
into a (24127)
Using the real translation discretetime form gives:
theorem
and converting
the controller
equation
Substituting for aQ, settings Kn Tf, and
Pn  PnI
al>
TD
and gives
az
and collecting
terms with respect
to the controller
=
Kc [ (en 
enI)
+
:en II IlT
+
A(en ~t TD

2en_1
+
enz) ]
(24128) .
Note that this equation is identical difference approximation. SUMMARY
to Eq. 818 which was derived
using a finite
In this chapter we have introduced the ztransform and its properties, in much the same fashion as was done for Laplace transforms and continuoustime linear systems in Chapters 3 and 4. Operational use of the ztransform with linear process models has been emphasized here, since ztransforms are a convenient medium to analyze Conversions for Linear Systems Method (sectionuse (C)~ followedtransfer function, or (E) Conversion Laplace transform; (1) Linear regression (§24.1) table (§23.3) thenTranslation partial (§24.1, theorem (§24.2) Use equation) Convert to hold by integration 24104 Eq. Zeroorder(§24.4) fraction §24.2) of Conversion Finite series(§24.3)substitutionthen Eq. approximation or constantsolution Table ~24.2 (§24.6) input, for long solution (3) 2321 difference rkanalytical continuous use difference in~ Contour (§23.2) (§7.1) regression 2466 Analytical ~ Table by in Nonlinear (§23.1) Approximate (C) Eq. expansionintegration, 24.1 (§23.1) (2) (2) time (§24.2)equation piecewise Power division Table 24.4 Discrete/Continuous
586
DYNAMIC
RESPONSE
OF DISCRETETIME
SYSTEMS
digital feedback control systems (Chapters 25 and 26). In Chapters 2224 we have presented a rather diverse set of techniques for converting continuous models to discrete models and vice versa. Hence, a suitable epilog to this chapter would be to provide a summary of the possible avenues for interconversion. Table 24.4 gives a list of different approaches, the steps involved, and the pertinent sections or equations where the specifics are demonstrated.
REFERENCES
1. Ogata, K., Discrete Time Control Systems, PrenticeHall, Englewood Cliffs, NJ, 1987. 2. Corripio, A. B., Module 3.3 in AIChemI Modular Instruction, Series A, Vol. 3, AIChE, New York (1983). 3. Smith. C. L., Digital Computer Process Control, InText, Scranton, PA, 1972. 4. Deshpande. P. B., and R. H. Ash, Elements of Computer Process COllfrol, Instrum. Soc. of America, Research Triangle Park, NC, 1981. 5. Franklin, G. E, and J. D. Powell, Digital Control of Dynamic Systems, AddisonWesley, Reading. MA. 1980. 6. Neuman, C. P., and C. S. Baradello. Digital Transfer Functions for Microcomputer Control. IEEE Trans. Systems, Man, Cybernetics SMC9 (12), 856 (1979). 7. Astrom, K. J., and B. Wittenmark, ComputerControlled Systems, PrenticeHall. Englewood Cliffs, NJ. 1984.
EXERCISES
24.1. What is the ztransform
period has the following F(z) of the triangular values: pulse in the figure if the sampling
(a)
I1t = 5 s (b) I1t = 10s
2
f
1
00
Time (s)
40
I
24.2. A temperature
sensor has the transfer
T~,(S )
function,
T' (s)
1 lOs +
1
where T;/1 is the measured temperature and T' is the temperature (both in deviation variables). The temperature measurement is sampled every five seconds and sent to a digital controller. Suppose that the actual temperature changes in the following manner,
T(t)
=
370 of
{ 350 of 350 of
for 0 :s:; t < 4 s for 4 :s:; t < 12 s for t 2: 12 s
(a) What is the ztransform of this signal, T(z)? T", (z). (b) Derive an expression for the ztransform of the measured temperature (c) The digital controller sounds an alarm if the sampled value of T", exceeds 360 oF. Does the alarm sound? (d) What is the maximum value of the measured temperature
T",(t)?
Exercises
587
24.3. Suppose that
F(z)
1  0.2rl = (1 + 0.6r1)(1  0.3rl)(1

(a) Calculate the corresponding timedomain response (t). (b) As a check, use the final value theorem to determine the steadystate value of
r
rl)
r(t).
24.4. Determine the inverse transform of
z(z
+

1)
Z
(z  1) (Z2 by the following methods: (a) Partial fraction expansion. (b) Long division.
+
1)
24.S. Calculate the ztransform of the rectangular pulse shown in the drawing. Assume that the sampling period is t:.t = 2 min. The pulse is f = 3 for 2 s:: t < 6.
6.4 2 3 6
Time (min)
f
oLL
0
18
24.6. The pulse transfer function of a process is given by
Y(z) X(z) 5(z
Z2 Z
+ 0.6) + 0.41
(a) Calculate the response Y(nLlt) to a unit step change in x using the partial fraction method. (b) Check your answer in part (a) by using long division. (c) What is the steadystate value of y? 24.7. The desired temperature trajectory T(t) for a batch reactor is shown in the drawing. (a) Derive an expression for the Laplace transform of the temperature trajectory,
T(s).
(b) Determine the corresponding ztransform T( z) for sampling periods of and 8 min.
t:.t
=4
T(OC)
80r 25~
o
/
20
Time (min)
J
40
24.8. The dynamic behavior of a temperature sensor and transmitter can be described by the firstorder transfer function,
T;"(s) _
e2s
T' (s)  8s
+ 1
588
DYNAMIC RESPONSE OF DISCRETETIME SYSTEMS
where
the time constant and time delay are in seconds T = actual temperature T m = measured temperature changes as follows (t in seconds): T = 85°C 70 °C { 70 °C for a :S t < 10 for t ~ a for t < 10
If the actual temperature
(a) What is the maximum value of the measured temperature Tm? (b) If samples of the measured temperature are automatically logged in a digital computer every two minutes beginning at t = 0, what is the maximum value of the logged temperature?
24.9. The transfer function for a process model and a zeroorder
H (s) Derive an expression
hold can be written
as
Gpes) = (1 
ses~t)
(lOs + 1)(5s 3.8e2s function
+
1)
!:::,.t
for the pulse transfer
of H(s) G p(s) when
= 2.
24.10. The pulse transfer function of a process is given by
Y(z)
X(z)
2.7r1(z
Z2 
0.5z
+ 3) + 0.06
(a) Calculate method.
the response
y(n!:::"t) to a unit step change in x using the partial fraction
(b) Check your answer in part (a) by using long division. (c) What is the steadystate value of y?
24.11. A gas chromatograph
control
G(s)
is used to provide composition measurements loop. The openloop transfer function is given by
in a feedback
=
GcHGpGm
(Gu
= 1)
and is
G(s)
=
E(s) B(s)
= 2(1 + 8s
~)C  5 eSM)(
125 + 1)e2S 10
the the
(a) Suppose that a sampling period of At = 1 min is selected. Calculate HG(z), pulse transfer function of G(s) with ZOH. (b) If a unit step change in the controller error signal e(t) is made, calculate sampled openloop response b(n!:::"t) using HG(z).
24.12. Determine
the pulse transfer function with zeroorder hold for the secondorder process Gp(s) = K/[(5s + 1)(3s + 1)] using partial fraction expansion in the sdomain. Check your results with those in Section 23.3. Note that At is unspecified here.
FindHG(z)ifG(s) = (1 9s)/[(3s + 1)(15s + 1)] for At = 4 (use partial fraction expansion). What is the corresponding difference equation? Do you detect inverse response in the output Y n for a step change in the input at this sampling period?
24.13.
24.14. Verify the ztransform
J(t)
in Table
24.1 for J(t)
=
t2.
What
is the ztransform
for
= 1
e at?
Yn
24.15. Find the response
Let Xo = 1, the results.
for the difference
Yn Ynl
equation
+
0.21 Yn2 = Xn2 to check
Xn
= a for
n ~
1. Use long division as well as direct integration
Exercises
589
given by
24.16. Use long division to calculate the first eight coefficients of the ztransform
F(z)
0.8r1 = (1 _ 0.8r1)Z
(TIS
24.17. Derive the pulse transfer function for an analog leadlag device cascaded with a zeroorder hold. The leadlag device has the transfer function the steadystate gain of the pulse transfer function.
+
1)1(TZS
+
1). Check
24.18. Determine
the sampled
function f(n6.t)
corresponding
to the ztransform
F( z ) = 1 _ 1.5r1 + 0.5z2 0.5r1
Use partial fraction expansion (6.t = 1) and compare the results with the long division method for the first six sampled values (n = 0, 1, ... ,5).
24.19. For
G(s) = 1/[(s + 1)(s + 2)], obtain G(z) for IJ.t = 1. Determine the response to a unit step change in the input. Repeat using Tustin's method (approximate ztransform) and compare the step responses for the first five samples.
24.20. To determine
the effects of pole and zero locations, calculate and sketch the unit step responses of the pulse transfer functions shown below for the first six sampling instants, n = 0 to n = 5. What conclusions can you make concerning the effect of pole and zero locations?
(a) _ 0.7r1 (b) 11= r1 + (c)
1 1
1
(d) (1 + 0.7z1)(1  0.3r1)
1  0.5r1
(e) (1 + 0.7r1)(1  0.3r1)
 0.3r1)
the corresponding hold. pulse transfer
( ) (1 +
function
f
1  0.2rl
0.6r1)(1
HGp(z)
24.21. For the transfer functions shown below, determine
for the system and a zeroorder
1
(a)
Gp(s)
= (s +
= (s +
1)3 6(1 2)(s
(b) Gp(s)
s) +
3)
For sampling periods of 6.t = 1 and IJ.t = 2, determine whether any poles or zeros of HG p(z) lie outside the unit circle for either process. Discuss the significance of these results.
This action might not be possible to undo. Are you sure you want to continue?