##### Document Text Contents

Page 277

integ.fig

7.3. Other Popular Controllers 261

×

Im(z)

Re(z)

Figure 7.17: Pole–zero location of the integral mode

Taking the Z-transform of both sides, we obtain

Y (z) = z−1Y (z) +

Ts

2

[

U(z) + z−1U(z)

]

Simplifying this, we obtain

Y (z) =

Ts

2

1 + z−1

1− z−1U(z) (7.38)

If we denote the transfer function of the integrator by Gi, we see that it is given by

Gi(z) =

Ts

2

z + 1

z − 1 . (7.39)

This is known as the trapezoidal approximation or Tustin approximation or bilinear

approximation. The transfer function Gi is low pass as it has a pole at ω = 0 and a

zero at ω = π, see Fig. 7.17. Thus we see that integration, a smoothing operation, is

low pass. We explain the role of the integral mode with an example.

Example 7.4 Evaluate the effect of an integrating controller

Gi(z) =

z + 1

z − 1

when used with a nonoscillating plant given by

G(z) =

z

z − a

where a > 0. The closed loop transfer function becomes

T (z) =

z

z−a

z+1

z−1

1 + z

z−a

z+1

z−1

=

z(z + 1)

2z2 − az + a

The poles are at (a ±

√

a2 − 8a)/4. For all a < 8, the closed loop system is

oscillatory. When a PI controller of the following form is used

Gc(z) = K

(

1 +

1

τi

z + 1

z − 1

)

Page 278

262 7. Structures and Specifications

the overall transfer function becomes

T (z) =

K

(

1 + 1

τi

z+1

z−1

)

z

z−a

1 +K

(

1 + 1

τi

z+1

z−1

)

z

z−a

The steady state output for a step input is given by limn→∞ y(n), which is equal

to limz→1 T (z) = 1, see Eq. 4.21 on page 83. This shows that there is no steady

state offset.

Because the reciprocal of integration is differentiation, we obtain the transfer

function of discrete time differentiation Gd as the reciprocal of Gi, given in Eq. 7.39.

We obtain

Gd(z) =

1

Gi(z)

=

2

Ts

z − 1

z + 1

(7.40)

This form, however, has a problem: Gd(z) has a pole at z = −1 and hence it produces,

in partial fraction expansion, a term of the form

z

z + 1

↔ (−1)n (7.41)

which results in a wildly oscillating control effort, see Sec. 5.1.1. Because of this,

we consider other ways of calculating the area given in Fig. 7.16. For example, we

approximate the area under the curve with the following backward difference formula:

y(k) = y(k − 1) + Tsu(k) (7.42)

Taking the Z-transform and simplifying it, we obtain

Y (z) = Ts

z

z − 1U(z)

We arrive at the following transfer functions of the integrator and differentiator as

Gi(z) = Ts

z

z − 1

Gd(z) =

1

Ts

z − 1

z

(7.43)

It is also possible to use the forward difference approximation for integration

y(k) = y(k − 1) + Tsu(k − 1) (7.44)

This results in the following transfer functions of the integrator and differentiator as

Gi(z) =

Ts

z − 1

Gd(z) =

z − 1

Ts

(7.45)

It is easy to check that all the definitions of the differentiator given above are high

pass.

Page 554

Index of Matlab Code 543

ma.m, 227

ma pacf.m, 230

mat exp.m, 30

max ex.m, 226

miller.m, 433

motor.m, 371

motor pd.m, 378

mv.m, 429, 430

mv mac1.m, 429

mv nm.m, 431, 431, 432

mv visc.m, 432

myc2d.m, 331, 367, 367, 370, 371, 373,

374, 377, 378, 399, 400

nmp.m, 150

nyquist ex1.m, 296

oe est.m, 233

pacf ex.m, 228

pacf.m, 228, 229, 230, 235

pacf mat.m, 229, 229

pd.m, 378, 378

pend.m, 499, 516

pend model.m, 12, 30, 499

pend ss c.mdl, 499

pid neg.m, 377

plotacf.m, 226, 227, 228, 230, 235

pm 10.m, 429

poladd.m, 376, 397, 400, 428, 430, 432,

458, 481, 524

polmul.m, 369, 370, 372, 377, 430–433,

456–459, 481–483, 524

polsplit2.m, 368, 369, 370

polsplit3.m, 372, 372, 431

pp basic.m, 367, 369, 369, 524

pp im.m, 370, 371, 375, 380, 397

pp im2.m, 372, 376

pp pid, 297

pp pid.m, 375, 377, 377

putin.m, 482, 524

pz.m, 106

recursion ex1.m, 429

recursion.m, 428, 429

respol.m, 106, 106, 107, 108

respol1.m, 106

respol2.m, 107

respol3.m, 107

respol5.m, 108

respol6.m, 108

rlocus ex1.m, 296

selstruc, 217

sigurd his.m, 374

sigurd.m, 373

smith disc.mdl, 386, 397

smith.m, 397

spec ex.m, 481

spec.m, 481, 481

specfac.m, 481, 482, 483

stb disc.mdl, 352, 369, 371, 397, 525

stb disc sat.mdl, 358, 376

sumsq.m, 431

tfvar.m, 430, 431

type 2DOF.m, 375

type test.m, 297

unique ma.m, 228

unstb.m, 369

vande imc.m, 400

vande imc1.m, 399

visc imc1.m, 399

xdync.m, 298, 300, 332, 340, 369, 370,

372, 377, 409, 429–433,

456–460, 483, 524

ZOH1.m, 30

zpowk.m, 369, 369, 370–374, 376, 377,

397, 399, 400, 430, 431, 433,

460, 483

integ.fig

7.3. Other Popular Controllers 261

×

Im(z)

Re(z)

Figure 7.17: Pole–zero location of the integral mode

Taking the Z-transform of both sides, we obtain

Y (z) = z−1Y (z) +

Ts

2

[

U(z) + z−1U(z)

]

Simplifying this, we obtain

Y (z) =

Ts

2

1 + z−1

1− z−1U(z) (7.38)

If we denote the transfer function of the integrator by Gi, we see that it is given by

Gi(z) =

Ts

2

z + 1

z − 1 . (7.39)

This is known as the trapezoidal approximation or Tustin approximation or bilinear

approximation. The transfer function Gi is low pass as it has a pole at ω = 0 and a

zero at ω = π, see Fig. 7.17. Thus we see that integration, a smoothing operation, is

low pass. We explain the role of the integral mode with an example.

Example 7.4 Evaluate the effect of an integrating controller

Gi(z) =

z + 1

z − 1

when used with a nonoscillating plant given by

G(z) =

z

z − a

where a > 0. The closed loop transfer function becomes

T (z) =

z

z−a

z+1

z−1

1 + z

z−a

z+1

z−1

=

z(z + 1)

2z2 − az + a

The poles are at (a ±

√

a2 − 8a)/4. For all a < 8, the closed loop system is

oscillatory. When a PI controller of the following form is used

Gc(z) = K

(

1 +

1

τi

z + 1

z − 1

)

Page 278

262 7. Structures and Specifications

the overall transfer function becomes

T (z) =

K

(

1 + 1

τi

z+1

z−1

)

z

z−a

1 +K

(

1 + 1

τi

z+1

z−1

)

z

z−a

The steady state output for a step input is given by limn→∞ y(n), which is equal

to limz→1 T (z) = 1, see Eq. 4.21 on page 83. This shows that there is no steady

state offset.

Because the reciprocal of integration is differentiation, we obtain the transfer

function of discrete time differentiation Gd as the reciprocal of Gi, given in Eq. 7.39.

We obtain

Gd(z) =

1

Gi(z)

=

2

Ts

z − 1

z + 1

(7.40)

This form, however, has a problem: Gd(z) has a pole at z = −1 and hence it produces,

in partial fraction expansion, a term of the form

z

z + 1

↔ (−1)n (7.41)

which results in a wildly oscillating control effort, see Sec. 5.1.1. Because of this,

we consider other ways of calculating the area given in Fig. 7.16. For example, we

approximate the area under the curve with the following backward difference formula:

y(k) = y(k − 1) + Tsu(k) (7.42)

Taking the Z-transform and simplifying it, we obtain

Y (z) = Ts

z

z − 1U(z)

We arrive at the following transfer functions of the integrator and differentiator as

Gi(z) = Ts

z

z − 1

Gd(z) =

1

Ts

z − 1

z

(7.43)

It is also possible to use the forward difference approximation for integration

y(k) = y(k − 1) + Tsu(k − 1) (7.44)

This results in the following transfer functions of the integrator and differentiator as

Gi(z) =

Ts

z − 1

Gd(z) =

z − 1

Ts

(7.45)

It is easy to check that all the definitions of the differentiator given above are high

pass.

Page 554

Index of Matlab Code 543

ma.m, 227

ma pacf.m, 230

mat exp.m, 30

max ex.m, 226

miller.m, 433

motor.m, 371

motor pd.m, 378

mv.m, 429, 430

mv mac1.m, 429

mv nm.m, 431, 431, 432

mv visc.m, 432

myc2d.m, 331, 367, 367, 370, 371, 373,

374, 377, 378, 399, 400

nmp.m, 150

nyquist ex1.m, 296

oe est.m, 233

pacf ex.m, 228

pacf.m, 228, 229, 230, 235

pacf mat.m, 229, 229

pd.m, 378, 378

pend.m, 499, 516

pend model.m, 12, 30, 499

pend ss c.mdl, 499

pid neg.m, 377

plotacf.m, 226, 227, 228, 230, 235

pm 10.m, 429

poladd.m, 376, 397, 400, 428, 430, 432,

458, 481, 524

polmul.m, 369, 370, 372, 377, 430–433,

456–459, 481–483, 524

polsplit2.m, 368, 369, 370

polsplit3.m, 372, 372, 431

pp basic.m, 367, 369, 369, 524

pp im.m, 370, 371, 375, 380, 397

pp im2.m, 372, 376

pp pid, 297

pp pid.m, 375, 377, 377

putin.m, 482, 524

pz.m, 106

recursion ex1.m, 429

recursion.m, 428, 429

respol.m, 106, 106, 107, 108

respol1.m, 106

respol2.m, 107

respol3.m, 107

respol5.m, 108

respol6.m, 108

rlocus ex1.m, 296

selstruc, 217

sigurd his.m, 374

sigurd.m, 373

smith disc.mdl, 386, 397

smith.m, 397

spec ex.m, 481

spec.m, 481, 481

specfac.m, 481, 482, 483

stb disc.mdl, 352, 369, 371, 397, 525

stb disc sat.mdl, 358, 376

sumsq.m, 431

tfvar.m, 430, 431

type 2DOF.m, 375

type test.m, 297

unique ma.m, 228

unstb.m, 369

vande imc.m, 400

vande imc1.m, 399

visc imc1.m, 399

xdync.m, 298, 300, 332, 340, 369, 370,

372, 377, 409, 429–433,

456–460, 483, 524

ZOH1.m, 30

zpowk.m, 369, 369, 370–374, 376, 377,

397, 399, 400, 430, 431, 433,

460, 483