0% found this document useful (0 votes)
20 views

Control Systems

Uploaded by

张耕
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Control Systems

Uploaded by

张耕
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 469

Books International Lithocase: 8 by 10 cover with 0.

922 spine for 468 pages on 620ppi paper


HASSAN K.
CONTROL SYSTEMS: AN INTRODUCTION
Blue area is actual cover, make sure background bleed covers the pink as well.
KHALIL

Professor Hassan K. Khalil is Distinguished Universi-

CONTROL SYSTEMS: AN INTRODUCTION


Before exporting, mask out this background to ensure that no ink variations occur in your design.
ty Professor Emeritus of Electrical and Computer
Engineering at Michigan State University. He joined
MSU in 1978, shortly after completing a Ph.D.
degree in electrical engineering at the University of
Dimensions: Use the measuring tool for areas/margins.
Illinois, which was preceded by B.S. and M.S.
Page is 19.05 x 12.00 in. degrees, also in electrical engineering, from Cairo
University in Egypt. Professor Khalil has consulted
for General Motors and Delco Products and has
published over 120 journal papers on singular
perturbation methods and nonlinear control. He is
also the author of several highly cited books, includ-
ing High-Gain Observers in Nonlinear Feedback Con-
trol (SIAM 2017), Nonlinear Control (Pearson 2015),
and Nonlinear Systems (Macmillan 1992; Prentice
Hall 1996 & 2002), and a coauthor of Singular
Perturbation Methods in Control: Analysis and Design
(Academic Press 1986; SIAM 1999).

Professor Khalil was named IEEE Fellow in 1989 and IFAC Fellow in 2007, and has received
numerous international honors and awards, including the 1989 IEEE-CSS George S. Axelby
+
Outstanding Paper Award, the 2000 AACC Ragazzini Education Award, the 2002 IFAC ∑
Control Engineering Textbook Prize, the 2004 AACC O. Hugo Schuck Best Paper Award,
and the 2015 IEEE-CSS Bode Lecture Prize. At MSU he received the 1995 Distinguished
Faculty Award and the 2020 Withrow Teaching Excellence Award. He has served as Associ-
ate Editor of the IEEE Transactions on Automatic Control, Automatica, and Neural Networks,
and as Editor of Automatica for nonlinear systems and control. He was Program Chair of
the 1988 ACC, and General Chair of the 1994 ACC.

ISBN 978-1-60785-826-3

9 781607 858263
HASSAN K. KHALIL
CONTROL SYSTEMS:
AN INTRODUCTION

Hassan K. Khalil
Michigan State University
Copyright © 202

This book is published by Michigan Publishing under an agree ment with the author. It is
made available free of charge in electronic form to any student or instructor interested in the
subject matter.

Published in the United States of America by Michigan Publishing.


Manufactured in the United States of America.

ISBN 978-1-60785-826-3 (print)


ISBN 978-1-60785-827-0 (OA)

The Free ECE Textbook Initiative is sponsored by the ECE


Department at the University of Michigan.
iv

Preface
I wrote this book in response to the initiative established by Professor Fawwaz Ulaby of the
University of Michigan to have textbooks available to students as free PDF files or reasonably
priced printed versions. The book is based on my experience teaching control courses at
Michigan State University for 42 years. I am grateful to many people. I start with my students
and colleagues at Michigan State University who played an important role in shaping the
content of the book. Professor Vaibhav Srivastava did me a great favor by preserving my ECE
313 class notes, which I didn’t keep at the time of my retirement.
I am grateful to Professor Ulaby, not only for his initiative but also for providing help
throughout the project. I thank Professor Necmiye Ozay of the University of Michigan for
reviewing the book and providing feedback, Andrew Yagle for his language editing, and
Richard Carnes for his book compositing and design.
The book was typeset using LATEX. Computations were done using MATLAB. The figures
were generated using MATLAB, the graphics tool of LATEX, or TikZ.

H ASSAN K HALIL
v

Contents

Preface iv

1 Introduction 1

2 Transfer Function Models 9


2-1 Linear Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2-2 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2-2.1 Electric Circuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2-2.2 Mechanical Systems . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2-2.3 Electromechanical Systems . . . . . . . . . . . . . . . . . . . . . . 37
2-3 Block Diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2-4 Linearization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

3 Stability and Dynamic Response 64


3-1 BIBO Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3-2 Routh-Hurwitz Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3-3 Dynamic Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
3-4 Step Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3-4.1 First-Order Transfer Functions . . . . . . . . . . . . . . . . . . . . . 81
3-4.2 Second-Order Transfer Functions . . . . . . . . . . . . . . . . . . . 83
3-4.3 Effect of Zeros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
3-4.4 Approximation of Higher-Order Transfer Functions . . . . . . . . . . 93

4 Feedback Control Systems 107


4-1 Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4-2 The Root Locus Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
4-2.1 Rules for Constructing the Root Locus . . . . . . . . . . . . . . . . . 111
4-2.2 Refinement of the Root Locus . . . . . . . . . . . . . . . . . . . . . 122
4-3 Steady-State Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4-3.1 Unity Feedback System . . . . . . . . . . . . . . . . . . . . . . . . 127
4-3.2 Non-Unity Feedback System . . . . . . . . . . . . . . . . . . . . . . 131
4-4 Effect of Disturbance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
4-5 Plant Parameter Uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . 136
4-6 Effect of Measurement Noise . . . . . . . . . . . . . . . . . . . . . . . . . . 139
vi

4-7 Control Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140


4-8 Why Use Closed-Loop Instead of Open-Loop? . . . . . . . . . . . . . . . . 142

5 Time-Domain Design 154


5-1 Design Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
5-2 Design by Gain Adjustment . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
5-3 Design by Cascade Compensation . . . . . . . . . . . . . . . . . . . . . . . 163
5-4 Lead and PD Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
5-4.1 Lead Compensator . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
5-4.2 Proportional Derivative (PD) Controller . . . . . . . . . . . . . . . . 173
5-5 Lag and PI Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
5-5.1 Lag Compensator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
5-5.2 Proportional-Integral (PI) Controller . . . . . . . . . . . . . . . . . . 181
5-6 Lead-Lag and PID Controller . . . . . . . . . . . . . . . . . . . . . . . . . . 186
5-6.1 Lead-Lag Compensator . . . . . . . . . . . . . . . . . . . . . . . . . 187
5-6.2 Proportional-Integral-Derivative (PID) Controller . . . . . . . . . . . 190
5-7 Tuning PID Controllers and Anti-Windup Schemes . . . . . . . . . . . . . . 194

6 Frequency Response Methods 210


6-1 Polar Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
6-2 Bode Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
6-2.1 Asymptotic Bode Plots . . . . . . . . . . . . . . . . . . . . . . . . . 220
6-2.2 Underdamped Second-Order Transfer Functions . . . . . . . . . . . 228
6-2.3 Error Constants from Bode Plots . . . . . . . . . . . . . . . . . . . . 231
6-3 Time-Delay Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
6-4 Nyquist Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
6-4.1 Contour Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
6-4.2 Cauchy’s Principle of the Argument . . . . . . . . . . . . . . . . . . 235
6-4.3 Stability of Feedback Systems . . . . . . . . . . . . . . . . . . . . . 238
6-4.4 Application of the Nyquist Criterion with Gain Adjustment . . . . . . 240
6-4.5 The Case When GH(s) Has Poles on the Imaginary Axis . . . . . . . 243
6-5 Relative Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
6-5.1 Stability Margins . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
6-5.2 Stability Margins from Bode Plots . . . . . . . . . . . . . . . . . . . 251
6-6 Relations between Frequency-Domain and Time-Domain Responses . . . . . 256

7 Frequency-Domain Design 277


7-1 Design Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
7-2 Design by Gain Adjustment . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
7-2.1 Gain Adjustment to Achieve a Desired Crossover Frequency . . . . . 280
7-2.2 Gain Adjustment to Achieve a Desired Phase Margin . . . . . . . . . 281
7-2.3 Gain Adjustment to Achieve a Desired Kp , Kυ , or Ka . . . . . . . . . 282
7-2.4 Gain Adjustment to Shape the Low Frequency Gain . . . . . . . . . 284
7-3 Lead Compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
vii

7-3.1 Design of a Lead Compensator to Increase the Phase Margin at a


Desired Crossover Frequency . . . . . . . . . . . . . . . . . . . . . 290
7-3.2 Design of a Lead Compensator to Increase the Phase Margin without
Changing the Low-Frequency Gain . . . . . . . . . . . . . . . . . . 292
7-4 Lag Compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
7-4.1 Design of a Lag Compensator to Increase the Low-Frequency Gain
with Minimal Effect on the Phase Margin of the Uncompensated System297
7-5 PI Compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
7-5.1 Design of a PI Controller to Increase the Type of the Feedback System
and Achieve a Desired Phase Margin . . . . . . . . . . . . . . . . . 299
7-6 Lead-Lag Compensation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
7-7 Advantages of the Frequency-Domain Approach . . . . . . . . . . . . . . . 306

8 State-Space Methods 317


8-1 State-Space Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
8-1.1 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
8-1.2 Linearization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
8-2 Solution of the State Equation . . . . . . . . . . . . . . . . . . . . . . . . . 327
8-3 Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
8-4 Controllability and Observability . . . . . . . . . . . . . . . . . . . . . . . . 333
8-4.1 Controllability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
8-4.2 Observability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
8-4.3 Duality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
8-5 Transfer Function of a State-Space Model . . . . . . . . . . . . . . . . . . . 340
8-6 State-Space Model of a Transfer Function . . . . . . . . . . . . . . . . . . . 344
8-6.1 Controllable Canonical Form . . . . . . . . . . . . . . . . . . . . . . 344
8-6.2 Observable Canonical Form . . . . . . . . . . . . . . . . . . . . . . 347
8-6.3 Parallel Realization . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
8-7 State-Space Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
8-7.1 State Feedback Control . . . . . . . . . . . . . . . . . . . . . . . . . 353
8-7.2 Observers and Output Feedback Control . . . . . . . . . . . . . . . . 358
8-7.3 Set-Point Regulation . . . . . . . . . . . . . . . . . . . . . . . . . . 361

9 Digital Control 377


9-1 Digital Control Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
9-2 Discrete-Time Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
9-3 Discrete-Time Equivalent of Digital Control System . . . . . . . . . . . . . . 387
9-4 Stability of Digital Control Systems . . . . . . . . . . . . . . . . . . . . . . 393
9-4.1 Calculation of the Closed-Loop Poles . . . . . . . . . . . . . . . . . 394
9-4.2 Root Locus Method . . . . . . . . . . . . . . . . . . . . . . . . . . 394
9-4.3 Routh-Hurwitz Criterion . . . . . . . . . . . . . . . . . . . . . . . . 397
9-4.4 Nyquist Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
9-5 Steady-State Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
9-6 Sample-Frequency Selection . . . . . . . . . . . . . . . . . . . . . . . . . . 405
9-6.1 Sampling Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
viii

9-6.2 Antialiasing Filter (Prefilter) . . . . . . . . . . . . . . . . . . . . . . 407


9-6.3 Methods for Choosing ω s . . . . . . . . . . . . . . . . . . . . . . . 408
9-7 Design by Emulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
9-8 Discrete-Time Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
9-8.1 Root Locus Design . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
9-8.2 Frequency-Domain Design . . . . . . . . . . . . . . . . . . . . . . . 419
9-9 Quantization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422

A Review of Laplace Transform 438

B Elements of Matrix Analysis 442

C Laplace and z-Transform Tables 444

D MATLAB Tutorial 446


D-1 Transfer Function Definition and Manipulation . . . . . . . . . . . . . . . . 446
D-2 Root Locus Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
D-3 Error Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
D-4 Frequency Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
D-5 State-Space Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
D-6 Digital Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449

E Symbols 451

Bibliography 453

Index 456
Chapter 1
Introduction

1
2 CHAPTER 1. INTRODUCTION

What do rockets, airplanes, automobiles, robots, autonomous vehicles, power grids, power
stations, electric motor drives, manufacturing processes, CD drives, and artificial pancreas
systems have in common?
Each of these systems uses one or more automatic control systems. In an automatic control
system, certain variables are controlled to behave in a desired way without the intervention of
a human operator. The system to be controlled is called the process or plant. It has input and
output variables. The output variables are the variables we can monitor or measure, some or
all of which are the variables that we control to behave in a desired way. Examples include:
• controlling a car to have a certain speed or to stay in a specified lane,
• maintaining the temperature of a room at a desired set point,
• having the position or velocity of an electric motor follow a certain pattern,
• maintaining the frequency of the electrical signal on the power grid at a specified
frequency, and
• having a rocket follow a desired path.
The input variables determine the behavior of the system. There are two types of inputs:
those we can manipulate and those we cannot. The inputs that we can manipulate to shape
the desired behavior of the system are called control inputs, while the inputs that affect the
system but are beyond our control are called disturbance inputs. For example, in maintaining
the temperature of a house, we can control the on and off times of the furnace to determine the
heat flow into the house, but we cannot control the heat loss due to heat transfer from inside
the house to the outside environment.
A system may have multiple inputs and multiple outputs. However, to focus on the basic
elements of control systems, this book is limited to the study of single-input–single-output
systems; that is, systems with one control input and one controlled/measured output.
Control systems are classified into
• Open-loop control systems and
• Closed-loop control systems.
In open-loop control, a mathematical model of the system is used to determine the control
input that causes the output to follow a desired response. No feedback information is used to
adjust the control input.
In closed-loop control, the output variable is measured and fed back to the controller to
be compared with the desired output and the control signal changes in a way that drives the
output towards its desired value.
The feedback concept is not alien to us. Feedback is used in our lives whether or
not we realize it. When you drive a car to stay in a specified lane, your vision provides
feedback about the orientation of the car and you, the driver, determine the action needed
to correct the car’s orientation if such correction is needed. Using the steering wheel you
apply appropriate control action. Our body utilizes feedback to regulate various variables.
Examples include thermoregulation (if body temperature changes, mechanisms are induced
3

to restore normal levels) and blood sugar regulation (insulin lowers blood glucose when levels
are high; glucagon raises blood glucose when levels are low).

Example 1-1: Cruise Control

Let us use a familiar example to introduce the components of a control system and illustrate
the difference between open-loop and closed-loop control. We expect that most readers are
familiar with cruise control in automobiles.
The starting point is to develop a mathematical model of the vehicle for which we wish
to design the control. Figure 1-1 shows the forces acting on a vehicle moving on a road that
makes an angle θ with the horizontal. There are three forces tangential to the road. T is the
thrust (in newtons) produced by the engine, which moves the vehicle forward with speed υ .
It is given by T = au, where u is the throttle angle (in degrees) (or accelerator pedal) and a is
the engine gain (newtons/degree). F is the force due to road friction, which is assumed to be
proportional to the speed υ so that F = bυ . W is a disturbance force that opposes the motion
of the vehicle, and it has two components: a force due to the road angle, mg sin θ , where m is
the vehicle’s mass and g is the acceleration due to gravity, and a force due to air drag, D; that
is, W = mg sin θ + D. By Newton’s second law of motion, the equation of motion is

mυ̇ = T − F −W = au − bυ − mg sin θ − D .

In this model, the angel u is the control input, the velocity υ is the controlled output, and
υ̇ = d υ /dt. The only parameter of the model that is known is the gain a. On the other hand, the
mass m, the friction coefficient b, and the disturbance W are uncertain. The mass m depends
on the number of passengers and their masses. The friction coefficient b depends on the road
condition, which may change from one segment of the road to another. The disturbance W
changes with the road angle and the air drag. Both b and W could be changing with time
during the motion of the vehicle.
Open-loop control is designed assuming W = 0 and using nominal values m̂ and b̂ for m
and b, respectively. This leads to the nominal model

m̂υ̇ = au − b̂υ . (1.1)

F
W
θ mg

Figure 1-1: Forces acting on an automobile.


4 CHAPTER 1. INTRODUCTION

The solution of the differential equation has a transient part during which υ (t) changes from
its initial value to its constant steady-state value υss at which υ̇ = 0. At steady state
au
0 = au − b̂υss υss = .

Focusing on the steady-state behavior, for the purpose of this example, u is designed as a
constant control that makes υss = υdes , where υdes is the desired speed:

b̂υdes
u= . (1.2)
a
When this control is applied to the actual system with the true parameters m and b and in the
presence of the disturbance W , the system is given by

mυ̇ = b̂υdes − bυ −W .

Assuming W is constant, the steady-state speed υss is given by

b̂υdes −W
υss = .
b
and the steady-state speed error is given by
!
b − b̂ 1
υdes − υss = υdes + W. (1.3)
b b

In closed-loop control, the speed υ is measured by a speedometer and the measurement


is fed back to the controller, which defines the control as

b̂υdes
u= + K(υdes − υ ) . (1.4)
a
The control has two components. The first component b̂υdes /a, which is the same as the
open-loop control, is called the feedforward control. The second component K(υdes − υ ) is
called the feedback control. This component corrects the control action depending on the
speed error. The constant K is the feedback gain. Under this control, the closed-loop system
is given by

mυ̇ = b̂υdes + aK(υdes − υ ) − bυ −W = −(b + aK)υ + (b̂ + aK)υdes −W .

When W is constant, the steady-state speed error is given by


!
b − b̂ 1
υdes − υss = υdes + W. (1.5)
b + aK b + aK

Comparison of Eqs. (1.3) and (1.5) shows that the denominator term b in Eq. (1.3) is replaced
by the denominator term (b + aK) in Eq. (1.5). If K is designed to be large, the steady-state
closed-loop error will be much smaller than the steady-state open-loop error.
5

Disturbance
due to road angle
and air drag

Control
Desired + Speed input Engine Thrust Auto body Actual
∑ Controller (actuator) (plant)
speed error Throttle speed
− angle

Measured Speedometer
speed (sensor)

Sensor noise

Figure 1-2: Closed-loop cruise control.

Closed-loop systems that are designed with large feedback gain are called high-gain
feedback systems and the system is said to have a tight feedback loop. High-gain feedback
is one of the tools used to achieve the goals of closed-loop control, but it is not without
limitations. First, the feedback gain cannot be made arbitrarily large because the control input
(the throttle angle in this example) has a limited range. Second, the feedback gain affects the
transient response of the system and the gain is limited by the design specifications on the
transient response. Third, and more importantly, increasing the feedback gain could make the
system unstable. This does not happen in this cruise control example but it could happen in
systems with more complicated dynamics. Have you been in a room with a public address
(PA) system and heard the squeal of oscillation when the volume is increased? That is an
example of instability caused by high-gain feedback.
The closed-loop cruise control system is represented by the block diagram of Fig. 1-2.
The diagram shows the four basic components of a feedback control system: plant, actuator,
sensor, and controller.
The speed of the vehicle is measured by a speedometer, which is the sensor component
of the system. It is represented by a block whose input is the actual speed and whose output
is the measured speed. Sensors are not perfect; the measured speed is not exactly equal to the
actual speed. The error is the sensor noise, also called measurement noise. The sensor noise
depends on the quality of the sensor. A high-quality sensor (typically more expensive) will
have less significant sensor noise, while a low-quality sensor (typically cheaper) will have
more significant sensor noise.
The measured speed is fed back to a summation node that calculates the speed error by
subtracting the measured speed from the desired speed. The summation node is represented
by a circle with the summation sign inside the circle. Arrows coming into the circle have
positive or negative signs that indicate whether the incoming signal is added or subtracted.
The controller is represented by a block that receives the speed error as well as the desired
speed and computes the throttle angle, which is the control input.
6 CHAPTER 1. INTRODUCTION

The control input signal is sent to the actuator, which produces the actual physical signal
that affects the plant. In our example, the actuator is the vehicle’s engine that translates the
throttle angle into the thrust force that moves the vehicle. The actuator is represented by a
block whose input is the throttle angle and whose output is the thrust.
The body of the automobile is the plant. The word “plant” is used in general to describe
the system whose output is to be controlled. The inputs to the plant are the control and the
disturbance signals. The output is the vehicle’s speed, which is regulated to the desired speed.

What are the features of a well-designed control system?


• The system must be stable. We have not defined stability yet, but you can think of it as
a requirement mandating that the output of the system should be well behaved when its
input is well behaved.
• The output must track the desired output (also called the reference or command) with
zero or small steady-state error.
• The transient response of the system must be acceptable.
• The effect of disturbance and measurement noise on the system’s response should be
made as small as possible.
• The design should be robust to model uncertainties.
• The design should meet any constraints associated with the control input.
The design of a control system uses a mathematical model of the system. Deriving the
mathematical model is crucial and challenging. It is crucial because if you start with a bad
model you cannot expect to end up with a good control design. It is challenging because a
detailed model that captures every aspect of the behavior of the system will most likely be
too complicated for analysis and design. Such complicated models are suitable for computer
simulation because there are well-developed numerical algorithms that can be used with such
models. For analysis and design we need to simplify the model. How to simplify the model
while still capturing the essential phenomena of the system is challenging. It requires deep
understanding of the physics or chemistry of the system, as well as good understanding of the
control techniques that will use the model.
Developing a mathematical model can be done from
• first principles of physics, chemistry or biology,
• identification experiments, or
• combination of both.
We shall see examples of deriving mathematical models from physical principles in Chapter 2
where we model electrical, mechanical, and electromechanical systems. Even in that case we
may need to perform experiments to estimate the parameters of the model. Identification is a
branch of system science where a model of a dynamic system is determined from experiments
7

in which inputs are applied to the system and the outputs are measured. A mathematical model
is obtained from the input–output data.1

Overview of the Book


• Chapter 2 introduces differential-equation and transfer-function models of linear
systems and provides examples of deriving transfer functions of electrical, mechanical,
and electromechanical systems. It introduces block-diagram representations of systems
with rules to simplify them. It concludes with a brief discussion of linearization.

• Chapter 3 defines the stability criterion for linear systems, together with the Routh-
Hurwitz criterion to check stability. The chapter examines the response of the system
to various inputs, with a focus on step inputs.

• Chapter 4 outlines the features that characterize the performance of the feedback control
system. It starts with stability and the root-locus method, followed by the calculation
of steady-state tracking errors. It describes the effect of disturbance, plant parameter
uncertainty, measurement noise, and control constraints on the performance of the
system. It concludes with a comparison between open-loop and closed-loop control.

• Chapter 5 presents methods to design the controller to meet time-domain design


specifications. It demonstrates how to tune PID (Proportional-Integral-Derivative)
controllers.

• Chapter 6 introduces frequency-domain methods as an alternative way to the analysis


and design of feedback control systems. Polar and Bode plots are described, leading to
the Nyquist stability criterion and stability margins that characterize the robustness of
the system. The chapter describes the relations between time-domain and frequency-
domain responses.

• Chapter 7 presents methods to design the controller to meet frequency-domain design


specifications. It concludes with a discussion on why to use the frequency-domain
approach.

• Chapter 8 describes state-space methods for the analysis and design of control systems,
using a different approach from the approach used in the previous chapters (which were
based on transfer-function models). The chapter introduces state-space models with
physical examples. It describes the stability, controllability, and observability properties
of such models. It shows how to go back and forth between state-space models and
transfer-function models. Finally, the chapter presents the design of feedback control
systems using state-space models.

• Chapter 9 deals with the implementation of controllers using digital computers. It


describes digital control systems. It reviews discrete-time systems and the z-transform.
1 To read about identification and parameter estimation, see [20] or [26]. A brief introduction can be found in
[4] and [12].
8 CHAPTER 1. INTRODUCTION

A digital control system has continuous-time and discrete-time components. The


chapter shows how to represent the whole system as a discrete-time system. This leads
to digital characterization of stability and the steady-state error. Rules for selecting the
sampling frequency are discussed, followed by the design of digital controllers.

Chapters 2 through 7 would form the core of a first course on control systems. In a
semester system, they can be covered together with either Chapter 8 or Chapter 9. It will
probably be a stretch to cover all chapters in one semester, unless some parts of Chapters 2
through 7 are skipped or covered in a previous systems course.
This book is based on class notes developed by the author while teaching control courses
at Michigan State University for many years. Chapter 2 to 7 are covered in a junior-level
course, while Chapters 8 and 9 are included in a senior-level course. Over the years several
control books were used as textbooks or references. This includes the books by Nise [28],
Dorf and Bishop [8], Franklin, Powell and Emami-Naeini [11], and Ogata [29] for Chapters
2 through 7, the books by Rugh [32] and Anstaklis and Michel [2] for Chapter 8, and the
books by Franklin, Powell and Workman [12], Philips, Nagle and Chakrabortty [31], Fadali
and Visioli [9], and Astrom and Wittenmark [4] for Chapter 9.2 Naturally, the contents of
this book overlap with the contents of these references, but it is expected that the concise and
pedagogical treatment in this book will appeal to instructors and students.

2 The version of a book used in the course might not be the more recent edition listed here.
Chapter 2
Transfer Function Models
Chapter Contents Objectives

Overview, 10 Upon learning the material presented in this chapter, you


2-1 Linear Systems, 10 should be able to:
2-2 Examples, 14
2-3 Block Diagrams, 40 1. Represent linear systems by differential equations or
2-4 Linearization, 50 transfer functions.
Chapter Summary, 52 2. Obtain a transfer function model from a differential
Problems, 54 equation model and vice versa.
3. Derive transfer functions of electric circuits formed of
resistors, inductors, capacitors, and operational
amplifiers.
4. Derive transfer functions of translation mechanical
systems formed of masses, springs, and viscous
dampers.
5. Derive transfer functions of rotational mechanical
systems formed of rotating masses, torsional springs,
viscous dampers, and gears.
6. Derive the transfer function of an armature-controlled
dc motor.
7. Represent dynamical systems by block diagrams.
8. Simplify block diagrams.
9. Linearize a nonlinear system to obtain a linear model.

9
10 CHAPTER 2. TRANSFER FUNCTION MODELS

Overview
The first step in the analysis and design of a control system is the development of a
mathematical model of the system. There are two forms of mathematical models of linear
systems: transfer functions and state-space models. In all chapters except Chapter 8, we use
transfer function models, which are the models used in classical control. State-space models
are briefly introduced in Chapter 8. A mathematical model of a system can be derived from
physical principles, or by performing experiments where certain inputs are applied to the
system and then used together with the measured outputs to fit a model to the input-output
data. The latter approach is known as system identification.1 Even when the model is derived
from physical principles, identification techniques might be used to estimate the parameters
of the system.
The focus of this chapter is on transfer function models. In Section 2-1, we present the
general form of differential equation models of linear systems and show how such models are
converted into transfer functions using the Laplace transform. Section 2-2 gives examples of
transfer functions derived from physical principles. Section 2-2.1 deals with electric circuits,
Section 2-2.2 with mechanical systems, both translational and rotational, and Section 2-2.3
with electromechanical systems. A control system is typically formed of the connection of
several components. A transfer function of the whole system can be derived from the transfer
functions of its components using block diagram representation and reduction rules, which are
discussed in Section 2-3. While our focus in this book is on linear systems, it is recognized
that mathematical models of many physical systems are nonlinear. The justification for basing
the analysis and design of control systems on linear models stems from the fact that many
nonlinear systems can be described by linear models in a restricted regime of operation.
In such cases, linear models are derived using linearization, which is briefly discussed in
Section 2-4.

2-1 Linear Systems


A large class of systems can be represented by the linear constant-coefficient differential
equation

y(n) (t) + an−1 y(n−1) (t) + · · · + a1 y(1) (t) + a0 y(t) =


bm u(m) (t) + bm−1 u(m−1) (t) + · · · + b1 u(1) (t) + b0 u(t) , (2.1)

where u(t) and y(t) are the input and output of the system, respectively, y(i) (t) denotes the ith
derivative of y(t) with respect to the time variable t; that is, y(i) (t) = d i y/dt i , n is a positive
integer, m is a nonnegative integer with m ≤ n, and a0 to an−1 and b0 to bm are constant
coefficients. Later in the chapter we shall see several examples of physical systems that can
be represented in the form Eq. (2.1). Because the coefficients a0 to an−1 and b0 to bm are
constant; that is, independent of t, the system is time-invariant. Had some of these coefficients
been dependent on t, the system would have been time-varying. We shall not consider time-
varying systems in this book. A time-invariant system has the property that changing the
1 See, for example, [26].
2-1. LINEAR SYSTEMS 11

time variable from t to τ = t + t0 , for some constant t0 , will still lead to Eq. (2.1) except
that the variables u, y, and their derivatives would be functions of τ . Therefore in studying
time-invariant systems we can, without loss of generality, take the initial time to be zero.
The solution, y(t), of Eq. (2.1) depends on the input u(τ ), for 0 ≤ τ ≤ t, and the initial
conditions y(0) to y(n−1) (0). To focus on the input-output behavior of the system, the initial
conditions are set to zero. The solution, y(t), will then represent the response of the system to
the input excitation u(t). Note that the output y at time t depends on the input u up to time t.
It does not depend on the input at future time greater than t. A system having this property is
defined to be causal. In a noncausal system, the output at time t might depend on the input at
time greater than t. The causality of Eq. (2.1) is a consequence of the fact that m ≤ n. Systems
that run in real time are causal by nature because in real time the future input will not be
known.
An efficient way to represent the system defined by Eq. (2.1) is to use the Laplace
transform to convert Eq. (2.1) into a transfer function. Taking the Laplace transform of both
sides of Eq. (2.1), assuming zero initial conditions, yields

snY (s) + an−1 sn−1Y (s) + · · · + a1 sY (s) + a0Y (s) =


bm smU (s) + bm−1 sm−1U (s) + · · · + b1 sU (s) + b0U (s) . (2.2)

Recognizing Y (s) as a common factor on the left side and U (s) as a common factor on the
right side, we arrive at

(sn + an−1 sn−1 + · · · + a1 s + a0 ) Y (s) = (bm sm + bm−1 sm−1 + · · · + b1 s + b0 ) U (s) .

Hence,
Y (s) bm sm + bm−1 sm−1 + · · · + b1 s + b0
= n .
U (s) s + an−1 sn−1 + · · · + a1 s + a0
Next, we define the polynomials

N(s) = bm sm + bm−1 sm−1 + · · · + b1 s + b0 , (2.3a)


D(s) = sn + an−1 sn−1 + · · · + a1 s + a0 , (2.3b)

and their ratio as


N(s)
G(s) = .
D(s)
Hence,
Y (s)
= G(s) . (2.4)
U (s)
G(s) is called the transfer function of the system. It is the ratio of the Laplace transform of the
output to the Laplace transform of the input when the initial conditions are zero. The transfer
function G(s) is equivalent to the differential equation Eq. (2.1). It is a rational function of
s because it is the ratio of two polynomials. The order of the transfer function is the degree
of its denominator polynomial. So if n = 1 we have a first-order transfer function; if n = 2
12 CHAPTER 2. TRANSFER FUNCTION MODELS

second-order, and so on. Because m ≤ n, G(s) is defined to be proper. If m < n, it is strictly


proper. Defining
G(∞) = lim G(s) ,
s→∞

we see that G(∞) = 0 for a strictly proper transfer function and G(∞) , 0 if the transfer
function is proper but not strictly proper. In the latter case with m = n, G(∞) = bn , and we can
write G(s) as
G(s) = G(∞) + Gsp(s) ,
where the strictly proper transfer function Gsp (s) = G(s) − G(∞).

Example 2-1: Transfer Function of a System Represented by a Differential


Equation

Find the transfer function of the system represented by the differential equation
...
y + 6ÿ + 11ẏ + 6y = 2...
u + 16ü + 22u̇ − 40u ,

where u̇ = u(1) , ü = u(2) , and so on. Determine if it is proper or strictly proper. If it is not
strictly proper, find the strictly proper part.
Solution: The transfer function can be written by inspection as

2s3 + 16s2 + 22s − 40


G(s) = .
s3 + 6s2 + 11s + 6
The third-order transfer function G(s) is proper but not strictly proper because the numerator
and denominator polynomials have the same degree. Also, G(∞) = 2. Hence,

2s3 + 16s2 + 22s − 40


G(s) − G(∞) = −2
s3 + 6s2 + 11s + 6
2s3 + 16s2 + 22s − 40 − 2(s3 + 6s2 + 11s + 6)
=
s3 + 6s2 + 11s + 6
4s2 − 52 def
= 3 2
= Gsp (s) .
s + 6s + 11s + 6
Gsp (s) is strictly proper because the degree of the numerator is smaller than the degree of the
denominator. Hence, G(s) can be expressed as

4s2 − 52
G(s) = 2 + .
s3 + 6s2 + 11s + 6

The denominator polynomial given by Eq. (2.3b), namely

sn + an−1 sn−1 + · · · + a1 s + a0 ,
2-1. LINEAR SYSTEMS 13

can be factored as

sn + an−1 sn−1 + · · · + a1 s + a0 = (s − p1 )(s − p2 ) · · · (s − pn ) . (2.5a)

Similarly, the numerator polynomial in Eq. (2.3a) can be factored as

bm sm + bm−1 sm−1 + · · · + b1 s + b0 = bm (s − z1 )(s − z2 ) · · · (s − zm ) . (2.5b)

Thus, the transfer function G(s) can be written as


(s − z1 )(s − z2 ) · · · (s − zm )
G(s) = K , (2.6)
(s − p1 )(s − p2 ) · · · (s − pn )
where K = bm . The roots of the denominator polynomial p1 to pn are the poles of G(s) and
the roots of the numerator polynomial z1 to zm are its zeros. The roots of a polynomial with
real coefficients can be complex, but complex roots will be in conjugate pairs. We shall see
later on that the poles and zeros of a transfer function shape its response to various inputs.

Example 2-2: Poles and Zeros of a Transfer Function

Find the poles and zeros of the third-order transfer function of the previous example.
Solution: By factoring the numerator and denominator polynomials of G(s) in Example 2-1,
the transfer function can be written as
(s + 4)(s + 5)(s − 1)
G(s) = 2 .
(s + 1)(s + 2)(s + 3)
The poles of G(s) are located at −1, −2, and −3, while its zeros are located at −4, −5, and 1.

Time-Delay and Padé Approximations


Signals may be delayed, for example, due to communication time. A time-delay unit is an
element whose output, y(t), is delayed from its input, u(t), by a delay time τ ; that is,

y(t) = u(t − τ ) .

Taking the Laplace transform of both sides yields

L{y(t)} = L{u(t − τ )} Y (s) = e−τ s U (s) . (2.7)

Therefore, the transfer function of the time-delay unit is e−τ s . This transfer function is not a
rational function of s; that is, it is not a ratio of two polynomials in s. Time-domain analysis
and design deal with rational functions of s. We shall see later on in Section 6-3 that frequency-
domain analysis and design can deal directly with the transfer function e−τ s . For time domain
analysis, the transfer function e−τ s is approximated by a rational function of s. Frequently
used approximations include the multiple versions of the Padé approximation:
14 CHAPTER 2. TRANSFER FUNCTION MODELS

• First-order Padé approximation:

1 − τ s/2
e−τ s ≈ . (2.8a)
1 + τ s/2

• Second-order Padé approximation:

1 − τ s/2 + (τ s)2 /12


e−τ s ≈ . (2.8b)
1 + τ s/2 + (τ s)2 /12

• Second-order lag:
1
e−τ s ≈ . (2.8c)
1 + τ s + (τ s)2/2

2-2 Examples
2-2.1 Electric Circuits
Deriving a mathematical model for an RLC (Resistor-Inductor-Capacitor) electric circuit
starts from knowing the mathematical model of each component of the circuit and then
using the laws that govern the connection of these components. Figure 2-1 shows the basic
components of the circuit.

+ i + i + i i + i

v R v L v C v + v

− − − −

Resistor Inductor Capacitor Voltage source Current source


di(t) dv (t)
v (t) = Ri (t) v (t) = L dt i(t) = C dt

Figure 2-1: Basic components of the RLC circuit.

For each component, we have the voltage across the component, v, and the current through it, i.
For the resistor, the mathematical model is given by Ohm’s law, v(t) = Ri(t), where R is the
resistance. For the inductor, v(t) = L(di(t)/dt), where L is the inductance. For the capacitor,
i(t) = C(dv(t)/dt), where C is the capacitance. It is important to distinguish between the
resistor on one hand and the inductor and capacitor on the other hand. The relationship
between v and i for the resistor is an algebraic one; that is, given the voltage v(t) at any time t
determines the current i(t), and vice versa. There is no need to know the past history of v or i.
This is different from the inductor and capacitor. Integrating the equation v(t) = L[di(t)/dt]
2-2. EXAMPLES 15

of the inductor over the period [t0 ,t1 ] yields


Z t1
L[i(t1 ) − i(t0 )] = v(τ ) d τ . (2.9)
t0

To determine the current at time t1 , it is not enough to know the voltage at t1 . We also need to
know the initial current i(t0 ) and the voltage over the period [t0 ,t1 ]. Therefore, the inductor is
said to be a dynamic component or a component with memory. Similarly, for the capacitor
Z t1
C[v(t1 ) − v(t0 )] = i(τ ) d τ , (2.10)
t0

so the capacitor also is a dynamic component or component with memory. In contrast, the
resistor is said to be a memoryless or static component. The remaining two components are the
voltage and current sources. The voltage v of the voltage source is constant and independent
of the circuit connection, which determines its current. The current i of the current source is
constant and independent of the circuit connection, which determines its voltage.
The connection of the components of an electric circuit is governed by Kirchhoff’s voltage
law and Kirchhoff’s current law. Both laws are illustrated in Fig. 2-2.

Node a
it 1
4 Circu
uit Node b ia
Circ ib
Node d
t2
ui

ic
Ci

rc

id
Ci
rc
ui
t3

Node c
v ab + v bc + v cd + v da = 0 ia + ib + ic + id = 0
v ab = v a − v b
Figure 2-2: Kirchhoff’s laws.

Kirchhoff’s voltage law states that the sum of the voltage drops around a loop is zero, while
the current law states that the sum of the currents coming into a node is zero. Both laws are
algebraic equations where the signs of terms are changed if the variables are reversed. For
example, if in the equation
vab + vbc + vcd + vda = 0
the term vda = vd − va is replaced by vad = va − vd the equation is written as
vab + vbc + vcd − vad = 0 .
16 CHAPTER 2. TRANSFER FUNCTION MODELS

Similarly, in the current law, if the direction of ib is taken to be leaving the node, the equation
is written as
ia − ib + ic + id = 0 .

Example 2-3: Parallel RLC Circuit

Find the transfer function V /I of the circuit in Fig. 2-3. Assume v(t) = 0 for t < 0.

i(t) i (t) iL(t) iC (t)


R
+
v R L C

Figure 2-3: Example 2-3.

Solution: The voltage across all components is the same. Application of Kirchhoff’s current
law results in
Z
v(t) 1 t dv(t)
i(t) = iR (t) + iL (t) + iC (t) = + v(τ ) d τ + iL (0) +C .
R L 0 dt
To cast this equation as a differential equation, differentiate both sides with respect to time:
di(t) 1 dv(t) 1 d 2 v(t)
= + v(t) +C .
dt R dt L dt 2
This equation can be put in the form of Eq. (2.1) with input i and output v by dividing by C:
d 2 v(t) 1 dv(t) 1 1 di(t)
2
+ + v(t) = .
dt CR dt CL C dt
To find the transfer function, we take the Laplace transform assuming zero initial conditions,
which gives
1 1 1
s2V (s) + sV (s) + V (s) = sI(s) ,
CR CL C
leading to
1
V (s) s
G(s) = = C . (2.11)
I(s) 1 1
s2 + s+
CR CL
2-2. EXAMPLES 17

Example 2-4: Series RLC Circuit

Find the transfer function I/V of the circuit in Fig. 2-4. Assume that no current was flowing
through the loop prior to t = 0.

+ vR(t) − + vL(t) −
i (t) R L
+
v(t) + C vC (t)

Figure 2-4: Example 2-4.

Solution: The current through all components is the same. Application of Kirchhoff’s voltage
law yields

v(t) = vR (t) + vL (t) + vC (t)


Z t
di(t) 1
= Ri(t) + L + i(τ ) d τ + vC (0) .
dt C 0

Differentiating this equation with respect to time and dividing by L, we arrive at the equation

d 2 i(t) R di(t) 1 1 dv(t)


2
+ + i(t) = ,
dt L dt CL L dt
which takes the form of Eq. (2.1) with input v and output i. The transfer function is then
1
I(s) s
G(s) = = L . (2.12)
V (s) 2 R 1
s + s+
L CL

In the previous two examples we arrived at the transfer function of the circuit by first
deriving a differential-equation model and then taking the Laplace transform. It is possible to
arrive at the transfer function directly without writing a differential equation by working in the
s-domain. For the R, L, and C components, take the Laplace transform of the v-i relationship,
assuming zero initial conditions. This gives

V (s) = R I(s), V (s) = Ls I(s), I(s) = Cs V (s) . (2.13)


18 CHAPTER 2. TRANSFER FUNCTION MODELS

Using these relationships and applying Kirchhoff’s laws in the s-domain, we can arrive at the
transfer functions G(s) given in Examples 2-3 and 2-4 without first writing the differential
equation.

Example 2-5: Deriving a Transfer Function in the s-Domain

Reconsider the circuit of Fig. 2-3 and find the transfer function V /I by working in the
s-domain.
Solution: Application of Kirchhoff’s current law in the s-domain yields

I(s) = IR (s) + IL (s) + Ic (s)


 
1 1 1 1
= V (s) + V (s) +Cs V (s) = + +Cs V (s) .
R Ls R Ls

The transfer function is given by

1
V (s) 1 s
G(s) = = = C ,
I(s) 1 1 1 1
+ +Cs s2 + s+
R Ls CR CL

which is identical to the expression for G(s) given by Eq. (2.11) in Example 2-3.

Deriving the transfer function of electric circuits is simplified by using the concept of
impedance. The impedance of an electric circuit with input voltage V (s) and input current
I(s) is defined as
V (s)
Z(s) = . (2.14)
I(s)
For the R, L, and C components,

Z(s) = R for Resistor, (2.15a)


Z(s) = sL for Inductor, (2.15b)
1
Z(s) = for Capacitor. (2.15c)
sC
A companion definition of admittance is given by

I(s) 1
Y (s) = = . (2.16)
V (s) Z(s)
2-2. EXAMPLES 19

Series connection I Parallel connection


I I +
Z1 Z2 I1 I2

V
+ V1 − + V2 − Z1 Z2
+ V −
Z = Z1 + Z2 1 1 1

Z = Z1 + Z2
Z1Z2
Z = Z1+ Z2

Figure 2-5: Series and parallel connections.

The use of impedance simplifies the calculation of transfer functions because we can replace
certain configurations by their equivalent impedances. Two common configurations are shown
in Fig. 2-5. For the series connection

V = V1 +V2 = Z1 I + Z2 I = (Z1 + Z2 )I
V
Z= = Z1 + Z2 . (2.17a)
I
For the parallel connection
 
V V 1 1 I 1 1 1
I = I1 + I2 = + = + V = = +
Z1 Z2 Z1 Z2 V Z Z1 Z2
Z1 Z2
Z= . (2.17b)
Z1 + Z2
Another common configuration is the potential divider of Fig. 2-6.

I
Z 1 (s)
+ +
Vi Z 2 (s) Vo

− −
Figure 2-6: Potential divider.
20 CHAPTER 2. TRANSFER FUNCTION MODELS

The transfer function Vo /Vi of the potential divider is calculated as follows:

Vi
Vo = Z2 I = Z2
Z1 + Z2
Vo Z2
= . (2.18)
Vi Z1 + Z2

Example 2-6: Potential Divider

Find Vo /Vi of the circuit shown in Fig. 2-7(a).

Z 1 (s)
+ R1 + + +
Vi R2 Vo Vi Z 2 (s) Vo
− − − −
(a) (b)

Figure 2-7: Example 2-6.

Solution: The circuit is redrawn in Fig. 2-7(b) as a potential divider with Z1 representing the
impedance of the parallel connection of R1 and C while Z2 represents the impedance of R2 .
Hence,

1
R1 R1
Z1 = Cs = ,
1 CR1 s + 1
R1 +
Cs
Z2 = R2 ,

and
1
s+
Vo Z2 R2 R2 (CR1 s + 1) CR1
= = = = .
Vi Z1 + Z2 R1 R1 + R2 (CR1 s + 1) R1 + R2
+ R2 s+
CR1 s + 1 CR1 R2
2-2. EXAMPLES 21

V− − Vo
V+ +

Figure 2-8: Ideal op-amp.

We now introduce the ideal op-amp (operational amplifier) as a new component in RLC
circuits. The circuit symbol of the op-amp is shown in Fig. 2-8. It has two inputs, an inverting
input with voltage V− and a non-inverting input with voltage V+ . The output voltage is Vo . In
an ideal op-amp, it is assumed that the input currents are zero and V− = V+ . The output voltage
Vo is determined solely by the connected circuit. In a practical op-amp, the input impedance
is very high and the output is given by Vo = K(V+ −V− ), with very high gain K. By idealizing
the high input impedance to infinity we have zero input currents and by idealizing the high
gain K to infinity we end up with V− = V+ . We shall deal with ideal op-amps only.

Example 2-7: Op-Amp Circuits

Find Vo /Vi of the circuits shown in Fig. 2-9.

Z 2 ( s) Z 2 (s )

V− V−
− Vo Vi Z 1(s ) − Vo
V+ V+
Vi + +

Z 1 ( s)

(a) (b)

Figure 2-9: Example 2-7.


22 CHAPTER 2. TRANSFER FUNCTION MODELS

Solution: For circuit (a), Vi (s) = V+ (s) = V− (s). The current through Z2 is the same as the
current through Z1 because the input current in the inverting input is zero.
 
Vi Vo −Vi 1 1 Vo
= + Vi =
Z1 Z2 Z1 Z2 Z2
 
Z2 Vo Z1 + Z2
+ 1 Vi = Vo = . (2.19a)
Z1 Vi Z1
For circuit (b), V− = V+ = 0. The current through Z1 is the same as the current through Z2 .
Vi −Vo Vo Z2
= =− . (2.19b)
Z1 Z2 Vi Z1

Example 2-8: Op-Amp Circuits with R-C Components

Find Vo /Vi of the circuit shown in Fig. 2-10.

C2

R2


Vo
Vi +

R1

C1

Figure 2-10: Example 2-8.

Solution: The circuit is in the form of the circuit of Fig. 2-9(a) with
1
R2
1 C1 R1 s + 1 C2 s R2
Z1 = R1 + = , Z2 = = ,
C1 s C1 s 1 C2 R2 s + 1
R2 +
C2 s
2-2. EXAMPLES 23

and
C1 R1 s + 1 R2
+
Vo Z1 + Z2 C1 s C2 R2 s + 1 (C1 R1 s + 1)(C2 R2 s + 1) +C1 R2 s
= = =
Vi Z1 C1 R1 s + 1 (C1 R1 s + 1)(C2 R2 s + 1)
C1 s
C1C2 R1 R2 s2 + (C1 R1 +C1 R2 +C2 R2 )s + 1
=
C1C2 R1 R2 s2 + (C1 R1 +C2 R2 )s + 1
 
2 1 1 1 1
s + + + s+
C1 R1 C2 R1 C2 R2 C1C2 R1 R2
=   .
2 1 1 1
s + + s+
C1 R1 C2 R2 C1C2 R1 R2

Example 2-9: A Circuit with Two Op-Amps

Find Vo /Vi of the circuit shown in Fig. 2-11.

C2 C4

C1 R2 R4
C3

Vi −
R1
V1 R3

+ Vo
+

Figure 2-11: Example 2-9.

Solution: From Vi to V1 , the circuit takes the form of Fig. 2-9(b) with
1 1
R1 R2
C1 s R1 C2 s R2
Z1 = = and Z2 = = .
1 C1 R1 s + 1 1 C2 R2 s + 1
R1 + R2 +
C1 s C2 s
Hence,
V1 Z2 R2 (C1 R1 s + 1)
=− =− .
Vi Z1 R1 (C2 R2 s + 1)
24 CHAPTER 2. TRANSFER FUNCTION MODELS

From V1 to Vo , the circuit takes the form of Fig. 2-9(b) with


1 1
R3 R4
C3 s R3 C4 s R4
Z1 = = and Z2 = = .
1 C3 R3 s + 1 1
R4 + C4 s C4 R4 s + 1
R3 +
C3 s
Hence,
Vo Z2 R4 (C3 R3 s + 1)
=− =− .
V1 Z1 R3 (C4 R4 s + 1)
Thus
  
Vo Vo V1 R2 (C1 R1 s + 1) R4 (C3 R3 s + 1)
= =
Vi V1 Vi R1 (C2 R2 s + 1) R3 (C4 R4 s + 1)
   
1 1
s+ s+
C1C3  C1 R1  
 C3 R3  .
=    (2.20)
C2C4 1 1 
s+ s+
C2 R2 C4 R4

2-2.2 Mechanical Systems


Translational Mechanical Systems
The three basic components of linear translational mechanical systems are the spring, viscous
damper, and mass, whose graphical symbols are shown in Fig. 2-12. The mathematical model
of the spring is determined by Hook’s law, which states that the displacement (or elongation)
of the spring x(t) from its unstretched position and the force f (t) applied to stretch the spring,
are related by f (t) = Kx(t), where K is the spring constant. When a force f (t) is applied as
shown in the figure, there is an equal and opposite restoring force in the spring. The viscous
damper models friction or resistance to the motion of a body, such as moving a body on a
surface with friction. There are different forms of friction, but the simplest is viscous friction
where the resisting force f (t) is proportional to the velocity of the moving body; that is,
f (t) = bẋ(t), where b is the damping constant or friction coefficient. The velocity ẋ(t) is in

x (t) x (t) x (t)

f (t) f (t) M f (t)

K b
Spring Viscous damper Mass
f (t) = Kx (t) f (t) = b ẋ (t) M ẍ (t) = f (t)

Figure 2-12: Basic components of translational mechanical systems.


2-2. EXAMPLES 25

K
M f (t)
b
M f (t)

(a) (b)

Figure 2-13: Mass-spring-damper system.

the same direction as the displacement x(t). Such a resisting force is equal and opposite to the
applied force. The motion of a mass M obeys Newton’s second law of motion, which states
that the rate of change of momentum equals the net force applied to the mass, or simply, the
net force = mass × acceleration; f (t) = M ẍ(t). The acceleration ẍ(t) has the same direction
as the displacement x(t). In calculating the net force, all forces in the direction of x are added
with a positive sign while those opposite to x are added with a negative sign.
Writing down the equation of motion for a mechanical system starts by drawing a free-
body diagram for each mass and identifying all the forces acting on it. We illustrate this
process by considering the system shown in Fig. 2-13(a), where a mass M is connected to a
fixed surface by a spring with spring constant K. A force f (t) is applied to the mass, which
moves on a surface with friction. The system is redrawn in Fig. 2-13(b) where the surface
friction is modeled by a viscous damper with damping constant b. The free-body diagram
is shown in Fig. 2-14(a). The forces acting on the mass due to the spring and damper are
opposite to the direction of motion. By Newton’s law,

M ẍ(t) = f (t) − bẋ(t) − Kx(t) . (2.21a)

The transfer function X /F can be found by taking the Laplace transform assuming zero initial
conditions. That is,
Ms2 X (s) = F(s) − bsX (s) − KX (s) , (2.21b)

x (t ) X (s )

b ẋ ( t ) b s X (s )
M f (t ) M F (s )
Kx ( t ) KX ( s )

(a) (b)

Figure 2-14: Free-body diagram of the system of Fig. 2-13.


26 CHAPTER 2. TRANSFER FUNCTION MODELS

which leads to
X 1 1/M
= 2
= 2 . (2.22)
F Ms + bs + K s + (b/M)s + K/M
Following the same logic we employed earlier with electrical circuits, we can arrive at the
transfer function of the mechanical system without writing the differential equation. To do so
we draw the free-body diagram with all variables in the s-domain, as in Fig. 2-14(b). Newton’s
second law is applied in the s-domain by taking the Laplace transform of M ẍ(t) = fnet (t),
assuming zero initial conditions, to obtain Ms2 X (s) = Fnet (s), where Fnet (s) is the net force.
Applying this procedure to the free-body diagram of Fig. 2-14(b) we arrive at

Ms2 X (s) = F(s) − bsX (s) − KX (s) . (2.23)

The motion of the mass in Fig. 2-13 is in the horizonal direction, so its weight does not
appear in Newton’s law. What about vertical motion? Do we have to include the forces due
to gravity in calculating the net force? To answer this question, consider the system shown
in Fig. 2-15(a), where the mass M is in vertical motion, connected to a fixed surface by a
spring and a damper and subject to an applied force f (t). The free-body diagram is shown in
Fig. 2-15(b). The force due to the spring, Kx(t), and the force due to the damper, bẋ(t), are
opposite to the direction of the displacement x(t), which is measured from the fixed surface,
while the force f (t) and the weight Mg are along x(t). Application of Newton’s law yields

M ẍ(t) = f (t) + Mg − bẋ(t) − Kx(t) . (2.24)

b K b ẋ (t) Kx (t)

M M

x (t)
f (t) Mg f (t)
(a) (b)

Figure 2-15: Mass-spring-damper system in vertical motion.


2-2. EXAMPLES 27

When f (t) = 0, the system is in equilibrium where x is a constant. To find the equilibrium
position, set f = ẋ = ẍ = 0 in the foregoing equation to obtain

0 = Mg − K x̄ . (2.25)

where x̄ is the equilibrium position. Subtracting Eq. (2.25) from Eq. (2.24), and setting
xδ = x − x̄, we obtain

M ẍδ (t) = f (t) − bẋδ (t) − Kxδ (t) . (2.26)

In arriving at this equation we used the fact that the derivatives of the constant x̄ are zero.
Thus, when the displacement is measured from the equilibrium position, the weight Mg does
not appear in the equation of motion. In dealing with vertical motion we will not include
forces due to gravity, with the understanding that displacements are defined from equilibrium
positions.

Example 2-10: A Mass-Spring-Damper System

Find X2 /F of the mechanical system shown in Fig. 2-16.

x1 x2
K1 K2

M1 M2 f (t )

b1 b2

Figure 2-16: Example 2-10.


28 CHAPTER 2. TRANSFER FUNCTION MODELS

X1 X2

K1 X1 K 2 (X 1 − X 2 )
M1 M2 F
b1 sX 1 b2 s ( X 1 − X 2 )

Figure 2-17: Free-body diagram of Example 2-10.

Solution: The equivalent free-body diagram of the system in Fig. 2-16 is shown in Fig. 2-17,
where all variables are expressed in the s-domain. Note that the forces due to the spring
and damper are always opposite to the direction of the displacement. For a spring connected
between two masses, the force at one end is equal and opposite to the force at the other end
and proportional to the difference between the displacements of the two masses. In Fig. 2-17
this force is written as K2 (X1 − X2 ). Because the force acting on M1 is opposing motion, the
direction of the force is opposite to the direction of X1 . Immediately the force acting on M2
is in the opposite direction. The arrowhead of the force acting on M2 is in the same direction
as X2 , yet this force is still opposing the motion because the force depends on −X2 . Had we
written the force as K2 (X2 − X1 ), the arrowheads on both ends would have been reversed.
A similar discussion applies to a damper connected between two masses. Writing Newton’s
second law for the two masses results in
M1 s2 X1 (s) = −K1 X1 (s) − b1 sX1 (s) − K2 [X1 (s) − X2 (s)] − b2 s[X1 (s) − X2 (s)] ,
M2 s2 X2 (s) = K2 [X1 (s) − X2 (s)] + b2 s[X1 (s) − X2 (s)] + F(s) .

These two equations can be written as a matrix equation.2


    
M1 s2 + (b1 + b2 )s + (K1 + K2 ) −(b2 s + K2 ) X1 (s) 0
= ,
−(b2 s + K2 ) M2 s2 + b2 s + K2 X2 (s) F(s)
which yields
    
X1 (s) 1 M2 s2 + b2 s + K2 b2 s + K2 0
= ,
X2 (s) ∆(s) b2 s + K2 M1 s2 + (b1 + b2 )s + (K1 + K2 ) F(s)
with
∆(s) = [M1 s2 + (b1 + b2 )s + (K1 + K2 )][M2 s2 + b2 s + K2 ] − (b2 s + K2 )2 .
2 The inverse of a 2 × 2 matrix is given by
 −1  
a b 1 d −b
= ,
c d ad − bc −c a
2-2. EXAMPLES 29

Hence,
X2 M1 s2 + (b1 + b2 )s + (K1 + K2 )
= .
F ∆(s)

Example 2-11: Automobile Suspension

Figure 2-18 shows an automobile suspension system. A quarter-car is modeled by the mass-
spring-damper system shown in the figure. The mass of the body (called sprung mass) is Ms ,
the mass of the wheel (called unsprung mass) is Mus , the suspension spring has spring
constant ks , the shock absorber is modeled by a damper with damping constant Cs , the tire
is modeled by a spring with spring constant kt , and the road surface displacement from a fixed
level is S. The displacements of the sprung and unsprung masses are ys and yus , respectively.
The purpose of the suspension system is to reduce the effect of the road-surface deviations on
the passengers. Studies have shown that passengers are most affected by the acceleration of
the sprung mass as = ÿs . Find the transfer function As /S, where As is the Laplace transform
of as .

ys
ys ks cs

yus
yus
kt

Figure 2-18: Automobile suspension (photo downloaded with permission from http://
www.sharetechnote.com).
30 CHAPTER 2. TRANSFER FUNCTION MODELS

Ms
Ys

C s s ( Ys − Yus ) k s ( Ys − Yus )

M us
Yus

k t ( Yus − S )

Figure 2-19: Free-body diagram of Example 2-11.

Solution: The free-body diagram of the system is shown in Fig. 2-19, in which variables are
expressed in the s-domain. Application of Newton’s second law to the two masses results in

Ms s2Ys = −ks (Ys −Yus ) −Css(Ys −Yus )


Mus s2Yus = ks (Ys −Yus ) +Cs s(Ys −Yus ) − kt (Yus − S) ,

    
Ms s2 +Cs s + ks −(Cs s + ks ) Ys 0
= ,
−(Cs s + ks ) Mus s2 +Cs s + (ks + kt ) Yus kt S

which leads to
    
Ys 1 Mus s2 +Cs s + (ks + kt ) Cs s + ks 0
= ,
Yus ∆(s) Cs s + ks Ms s2 +Cs s + ks kt S

with
∆(s) = [Ms s2 +Cs s + ks ][Mus s2 +Cs s + (ks + kt )] − (Cs s + ks )2 .

Hence,
Ys (Cs s + ks )kt As s2Ys s2 (Cs s + ks )kt
= = = .
S ∆(s) S S ∆(s)
2-2. EXAMPLES 31

T (t) θ(t) T (t) θ(t) T (t) θ(t)


J
K b
Spring Viscous damper Rotating mass
T (t) = Kθ (t) T (t) = b θ̇(t) J θ̈(t) = T (t)

Figure 2-20: Basic components of rotational mechanical systems.

Rotational Mechanical Systems

The three basic components of linear rotational mechanical systems are the torsional spring,
viscous damper, and rotational mass, whose graphical symbols are shown in Fig. 2-20. When
a torque T (t) is applied to a torsional spring it rotates with an angle θ (t) according to the
relation T (t) = K θ (t), where K is the spring constant. When the torque T (t) is applied as
shown in the figure, there is an equal and opposite restoring torque in the spring. The viscous
damper models friction or resistance to rotational motion. A viscous damper is modeled by
T (t) = bθ̇ (t), where T (t) is the applied torque, which is equal and opposite to the resisting
torque of the damper, and b is the damping constant. The motion of a rotating mass obeys
Newton’s second law for rotational motion: T (t) = J θ̈ (t), where T (t) is the net torque and
J is the moment of inertia of the mass. The angular velocity θ̇ and angular acceleration θ̈
have the same direction as θ . In calculating the net torque, all torques in the direction of θ
are added with a positive sign while those whose directions are opposite to θ are added with
a negative sign.
The first step in modeling a rotational mechanical system is to draw a free-body diagram
for each rotating mass. We illustrate this step by considering the system shown in Fig. 2-21(a),
whose free-body diagram is shown in Fig. 2-21(b) with all variables in the s-domain. The
torques due to the spring and the damper are opposite to the direction of θ because they
oppose the rotation. Newton’s law yields

Js2 θ (s) = −bs θ (s) − K θ (s) + T (s) ,

b θ(s) T (s) Kθ(s)


T (t) θ(t) K
J J

bs θ(s)
(a) (b)

Figure 2-21: Rotating mass-spring-damper system.


32 CHAPTER 2. TRANSFER FUNCTION MODELS

which yields
θ 1 1/J
= 2 = . (2.27)
T Js + bs + K b K
s2 + s +
J J

Example 2-12: Torsional Shaft

Figure 2-22(a) shows a torque applied at the left end of a shaft with torsion. The shaft is
mounted on bearings at both ends. The torsional shaft is modeled in Fig. 2-22(b) as two
rotating masses connected by a spring. The friction in the bearings is modeled by dampers.
Find the transfer function θ2 /T .

Bearing Torsion
T (t) θ1 (t) θ 2 (t)
T (t) K
J1 J2

b1 b2
(a) (b)

Figure 2-22: Example 2-12.

Solution: The free-body diagrams of the two rotating masses are shown in Fig. 2-23, where
the variables are expressed in the s-domain. Two torques are opposing the motion of J1 . The
torque due to the damper b1 is b1 sθ1 and the torque due to the spring K, which is connected
between J1 and J2 , is K(θ1 − θ2 ). Two torques are acting on J2 . The torque K(θ1 − θ2 ), due to
the spring, is equal and opposite to the torque acting on J1 , while the torque b2 sθ2 due to the
damper b2 is opposite to the direction of θ2 . The equations of motions are

J1 s2 θ1 (s) = −b1 sθ1 (s) − K[θ1 (s) − θ2 (s)] + T (s) ,

θ1 (s) T (s) b1 sθ 1 (s) θ 2 (s) b2 sθ 2 (s)

J1 J2

K [θ1 (s) − θ 2 (s)] K [θ1 (s) − θ 2 (s)]

Figure 2-23: Free-body diagrams of Example 2-12.


2-2. EXAMPLES 33

J2 s2 θ2 (s) = K[θ1 (s) − θ2 (s)] − b2 sθ2 (s) ,

which can be combined into the matrix equation


    
J1 s2 + b1 s + K −K θ1 (s) T (s)
=
−K J2 s2 + b2 s + K θ2 (s) 0

to yield the solution:


    
θ1 (s) 1 J2 s2 + b2 s + K K T (s)
= 2 ,
θ2 (s) ∆(s) K J1 s + b1 s + K 0

where
∆(s) = (J1 s2 + b1 s + K)(J2 s2 + b2 s + K) − K 2 .

The solution for θ2 /T is


θ2 K
= . (2.28)
T ∆(s)

Example 2-13: Rotating Mass-Torsional Spring-Damper System

Find the transfer function θ3 /T of the system shown in Fig. 2-24.

b3

T θ1 θ2 θ3
K1 K2
J1 J2 J3

b1 b2 b4

Figure 2-24: Example 2-13.


34 CHAPTER 2. TRANSFER FUNCTION MODELS

K1 (θ1 − θ2 ) K2 (θ2 − θ3 )
θ1 T θ2 b2 sθ 2 θ3
b1 sθ 1
J1 J2 J3
b3 s(θ2 − θ3 )
K2 (θ 2 − θ 3)
K1 (θ 1 − θ 2) b3 s(θ 2 − θ 3) b4 sθ 3

Figure 2-25: Free-body diagrams of Example 2-13.

Solution: The free-body diagrams of the three rotating masses are shown in Fig. 2-25, where
all variables are in the s-domain. Three torques are acting on J1 , the applied torque T , the
torque due to the damper b1 sθ1 and the torque due to the spring K1 (θ1 − θ2 ). The latter
two torques are opposite to the direction of θ1 . Four torques are acting on J2 . The torque
K1 (θ1 − θ2 ) due to the spring K1 is equal and opposite to its direction in the diagram of J1 .
The torques due to the damper b2 , the damper b3 and the spring K2 are all opposite to the
direction of θ2 and are given by b2 sθ2 , b3 s(θ2 − θ3 ), and K2 (θ2 − θ3 ), respectively. In the
free-body diagram of J3 , the torques due to the spring and damper connected between J2 and
J3 are equal and opposite to their directions in the diagram of J2 . The torque due to the damper
b4 is b4 sθ3 and is opposite to the direction of θ3 . The equations of motion are given by

J1 s2 θ1 = −b1 sθ1 − K1 (θ1 − θ2 ) + T ,


J2 s2 θ2 = −b2 sθ2 − b3 s(θ2 − θ3 ) + K1 (θ1 − θ2 ) − K2 (θ2 − θ3 ) ,
J3 s2 θ3 = b3 s(θ2 − θ3 ) − b4 sθ3 + K2 (θ2 − θ3 ) ,

which together form the matrix equation


 2    
J1 s + b1 s + K1 −K1 0 θ1 T
 −K1 J2 s2 + (b2 + b3 )s + K1 + K2 −(b3 s + K2 )  θ2  =  0  .
0 −(b3 s + K2 ) J3 s2 + (b3 + b4 )s + K2 θ3 0

Hence,     
θ1 ⋆ ⋆ ⋆ T
θ2  = 1  ⋆ ⋆ ⋆  0  ,
θ3 ∆(s) K1 (b3 s + K2 ) ⋆ ⋆ 0
where ∆(s) is the determinant of the 3 × 3 matrix and ⋆ denotes a value that is not needed in
calculating the transfer function. The solution for θ3 /T is

θ3 K1 (b3 s + K2 )
= . (2.29)
T ∆(s)
2-2. EXAMPLES 35

Gears
An important component of rotational mechanical systems is the gear, which translates
motion between two rotating shafts. A schematic diagram representation of the gear assembly
is shown in Fig. 2-26.

Input
driving gear
Gear 1 F
T1 θ1
θ2 T2
r1 r2

Output
driven gear N2
Gear 2 N1 F

(a) (b)

Figure 2-26: Gears.

The input gear, Gear 1, has radius r1 , N1 teeth, and rotates an angle θ1 clockwise. The output
gear, Gear 2, has radius r2 , N2 teeth, and rotates an angle θ2 counterclockwise. Gear 1 applies
torque T2 to Gear 2, which reacts with torque T1 . We assume ideal gears.3 At the point of
contact, the arc lengths at both gears must be the same:
r1 θ1 = r2 θ2 .
Since the angular speed ω = θ̇ ,
r1 ω1 = r2 ω2 .
The number of teeth on each gear is proportional to its radius. Hence
θ2 ω2 r1 N1 def
= = = = n (gear ratio) .
θ1 ω1 r2 N2
At the point of contact, the force applied from Gear 1 to Gear 2 is equal to the reaction force
from Gear 2 to Gear 1. Since Torque = Force × Radius,
T1 T2
= .
r1 r2
3 Ideal gear analysis ignores backlash and deadzone nonlinearities.
36 CHAPTER 2. TRANSFER FUNCTION MODELS

Therefore,
T2 r2 N2 1
= = = .
T1 r1 N1 n
Hence, (
n<1 speed reduction and torque increase,
n>1 speed increase and torque reduction.

Example 2-14: A Motor Connected to a Load through Gears

Figure 2-27 shows a schematic diagram of a motor connected to a load through gears. Both
the motor and the load are modeled as rotating masses with viscous damping. Find the transfer
functions θm /Tm and θL /Tm .

Tm θm
N1
Jm θL

bm JL
N2
bL

Figure 2-27: Example 2-14.

Solution: The free-body diagrams of the motor and load are shown in Fig. 2-28. Let us start
on the load side. The torque applied on the load from the motor is T2 , which causes the load to
rotate an angle θL in the same direction as T2 . This motion is opposed by the torque due to the
load damper, bL sθL . On the motor side, the torque induced by the motor Tm rotates the motor

θL
θm Tm
bm sθ m
Jm JL
bL sθ L
T2
T1

Figure 2-28: Free-body diagrams of Example 2-14.


2-2. EXAMPLES 37

shaft with angle θm in the same direction of Tm . This rotation is opposed by the torque due
to the motor damper, bm sθm , and the reaction torque of the gear T1 , where T2 /T1 = N2 /N1 .
Recall also that θL /θm = N1 /N2 . The equation of motion of the load is

JL s2 θL = T2 − bL sθL ,

and the equation of motion of the motor is

Jm s2 θm = Tm − bm sθm − T1 .

Substituting
N1
T2 = (JL s2 + bL s)θL = (JL s2 + bL s) θm
N2

from the load equation into the motor equation and using T2 /T1 = N2 /N1 yields

N1 N1
Jm s2 θm = Tm − bm sθm − (JL s2 + bL s) θm ,
N2 N2

which can be rearranged as

(Jm + n2 JL )s2 θm + (bm + n2 bL )sθm = Tm

where n = N1 /N2 . By defining the equivalent moment of inertia Je = Jm + n2 JL and the


equivalent damping constant be = bm + n2 bL , we have

Je s2 θm + be sθm = Tm

and

θm 1
= , (2.30a)
Tm s(Je s + be )
θL n
= . (2.30b)
Tm s(Je s + be )

2-2.3 Electromechanical Systems


Electromechanical systems have electrical and mechanical components, which are modeled
using the techniques discussed in the previous two subsections. We illustrate such systems by
the dc (direct current) motor.
38 CHAPTER 2. TRANSFER FUNCTION MODELS

i a (t) Ra La

+ Fixed field
+
Armature
va (t) vb (t)
circuit Tm (t) θm (t)
− Tm (t)
θm (t) Jm

bm

Electrical component Mechanical component

Figure 2-29: Armature-controlled dc motor.

Armature-Controlled dc Motor
A schematic diagram of the dc motor is shown in Fig. 2-29. The motor has two circuits,
field and armature. The magnetic flux in the field circuit is kept constant, while the motor is
controlled through the armature circuit, which has inductance La and resistance Ra . The input
voltage is va and the current in the armature circuit is ia . The torque induced by the motor is
given by Tm = Kt ia , where Kt is the torque constant. When the motor’s shaft rotates, a back
e.m.f. (electromotive force) vb = Kb ω m = Kb θ̇m is induced in the armature circuit, where Kb
is the back e.m.f. constant. The constants Kt and Kb have different units but in an MKS unit
system they are numerically equal. The motor’s shaft is modeled by moment of inertia Jm and
damping constant bm . Application of Kirchhoff’s voltage law to the armature circuit yields

Va (s) = Ra Ia (s) + La sIa (s) +Vb (s) = Ra Ia (s) + La s Ia (s) + Kb ω m (s) .

Therefore,
Va (s) − Kb ω m (s) Kt [Va (s) − Kb ω m (s)]
Ia (s) = , Tm (s) = Kt Ia (s) = .
La s + Ra La s + Ra
Application of Newton’s second law to the mechanical part yields

Tm (s) = Jm s2 θm (s) + bm s θm (s) = Jm s ω m (s) + bm ω m (s) .

Hence,
Kt [Va (s) − Kb ω m (s)]
(Jm s + bm )ω m (s) = ,
La s + Ra
[(Jm s + bm )(La s + Ra ) + KtKb ]ω m (s) = Kt Va (s) ,
which leads to
ωm Kt
= . (2.31a)
Va (Jm s + bm )(La s + Ra ) + KtKb
2-2. EXAMPLES 39

The numerical values of La and bm are typically small relative to the other parameters. A
simplified model of the motor is obtained by setting La = bm = 0.

ωm Kt 1/Kb
= = . (2.31b)
Va Jm Ra s + Kt Kb Jm Ra
s+1
Kt Kb

It is common practice to write this simplified transfer function as

ωm Km
= , (2.31c)
Va τm s + 1

where
1 Jm Ra
Km = and τm = .
Kb Kt Kb
Given the moment of inertia Jm , the motor constant Km and its time constant τm can be
calculated from the steady-state torque-speed characteristics, given by the equation

Kt
Tm = (va − Kb ω m ) , (2.32)
Ra

which is sketched in Fig. 2-30 for each of two values of the input voltage va . The intersections
of the line with the axes define the no-load speed and stall torque as
va
ω no-load = , (2.33a)
Kb
Kt va
Tstall = . (2.33b)
Ra

The back e.m.f. constant Kb is determined using Eq. (2.33a), and since Kt and Kb are
numerically equal, Eq. (2.33b) is used to determine Ra . Then, using Jm , τm is calculated.

Torque

Tstall2

Tstall1 v a2
v a1

ωno-load1 ωno-load2 Speed

Figure 2-30: Torque-speed characteristics of dc motor.


40 CHAPTER 2. TRANSFER FUNCTION MODELS

2-3 Block Diagrams


The modeling techniques described in the previous section allow us to derive the transfer
function of a component of a system. Practical systems are composed of several components
and there is need to develop a systematic way to establish the transfer function of such
systems. The block-diagram representation is one such technique.4 In block diagrams, a
transfer function Y (s) = G(s) U (s) is represented by a block with input signal U and output
signal Y , as shown in Fig. 2-31. Connecting transfer functions uses the elements of summing
junctions and pick-off point, examples of which are shown in Fig. 2-32.

U Y
G(s)

Figure 2-31: Block diagram representation of a transfer function.

U
U1 + U1 − U2 + U3

− U U
U2 +
U3
U

Summing junction Pick-off point

Figure 2-32: Summing junctions and pick-off points of block diagrams.

To illustrate the construction of a block diagram, consider the dc motor from the previous
section. It is modeled by the equations

Va − Kb ω m Tm ωm
Ia = , Tm = Kt Ia , ωm = , θm = .
La s + Ra Jm s + bm s

4 Other techniques are graphical methods such as signal flow graphs and bond graphs.
2-3. BLOCK DIAGRAMS 41

Va + 1 Ia Tm 1 ωm 1 θm

L a s + Ra Kt
J m s + bm s

Kb

Figure 2-33: Block diagram representation of the dc motor.

These equations can be represented by the block diagram in Fig. 2-33. We will come back to
this block diagram to see how to find the transfer function connecting the input to the output.
Reducing a block diagram to a single transfer function uses reduction rules for three
basic types of connections, as shown in Fig. 2-34. For the series connection, Y = G3 (s) X2 ,
X2 = G2 (s) X1 , and X1 = G1 (s) U . Hence

Y = G3 (s) X2 = G3 (s) G2 (s) X1 = G3 (s) G2 (s) G1 (s) U . (2.34)

For the parallel connection, X1 = G1 (s) U , X2 = G2 (s) U , and X3 = G3 (s) U . Hence

Y = X1 + X2 + X3 = G1 (s) U + G2 (s) U + G3 (s) U = [G1 (s) + G2 (s) + G3 (s)]U . (2.35)

For the negative feedback connection, Y = G1 (s) E, E = U − F, and F = G2 (s) Y . Hence

Y = G1 (s) E = G1 (s) (U − F) = G1 (s) [U − G2 (s) Y ] ,

[1 + G1 (s) G2 (s)]Y = G1 (s) U ,

which leads to
G1 (s)
Y= U. (2.36)
1 + G1 (s) G2 (s)

Similarly, for the positive feedback connection,

G1 (s)
Y= U. (2.37)
1 − G1 (s) G2 (s)
42 CHAPTER 2. TRANSFER FUNCTION MODELS

U X1 X2 Y U Y
G 1 (s) G 2 (s) G 3 (s) ≡ G 3 (s) G 2 (s) G 1 (s)

Series connection Equivalent transfer function

X1
G 1 (s)

U X2 + + Y U Y
G 2 (s) ∑ ≡ G 1(s) + G 2 (s) + G 3 (s)
+
Equivalent transfer function
X3
G 3 (s)

Parallel connection

U + E Y
∑ G 1 (s)
− U G 1 (s) Y
≡ 1 + G 1(s) G 2 (s)
F
G 2 (s)
Equivalent transfer function
Negative f eedback connection

U + E Y
∑ G 1 (s)
U G 1 (s) Y
+ ≡ 1 − G 1 (s) G 2 (s)
F
G 2 (s)
Equivalent transfer function
Positive f eedback connection

Figure 2-34: Block diagram reduction rules.

Example 2-15: dc Motor

Find the transfer functions ω m /Va and θm /Va from the block diagram of the dc motor in
Fig. 2-33.
2-3. BLOCK DIAGRAMS 43

Va + Kt ωm
1 θm
∑ s
(L a s + R a )( J m s + bm)

Kb

Step 1

Va Kt ωm 1 θm
(L a s + R a)( J m s + bm) + K t K b s

Step 2

Figure 2-35: Example 2-15.

Solution: The block diagram is reduced in two steps, as shown in Fig. 2-35. In the first step,
the series connection of the three transfer functions in the forward path of the loop are replaced
by their equivalent transfer function. In the second step, the feedback connection is replaced
by its equivalent transfer function:

 
Kt
(La s + Ra)(Jm s + bm ) Kt
 = .
Kb Kt (La s + Ra )(Jm s + bm ) + KtKb
1+
(La s + Ra )(Jm s + bm )

Hence,

ωm Kt
= . (2.38)
Va (La s + Ra )(Jm s + bm ) + KtKb

1
The series connection of this transfer function with s results in

θm Kt
= . (2.39)
Va s[(La s + Ra)(Jm s + bm ) + KtKb ]
44 CHAPTER 2. TRANSFER FUNCTION MODELS

To reduce more complicated block diagrams we need additional rules, which are shown
in Figs. 2-36 to 2-38.

U + ∑ Y U + Y = G(s) [U + X ]
G(s) ≡ G(s) ∑
+ +
X Case 1

G(s)

U + Y U + Y = G(s) {U + [1/G(s)] X }
G(s) ∑ ≡ ∑ G(s)
+ +
X Case 2
1
G(s)

Figure 2-36: Moving across a summing junction.

In Case 1 of Fig. 2-36,

Y = G(s) (U + X ) = G(s) U + G(s) X .

In Case 2 of the same figure,


 
1
Y = G(s) U + X = G(s) U + X .
G(s)
2-3. BLOCK DIAGRAMS 45

In Case 1 of Fig. 2-37,


1
Y2 = U = G(s) U ,
G(s)
and the same for Y3 . In Case 2 of the same figure, Yi = G(s) U in the two equivalent
representations.

Y1 Y1
G(s)

U Y2 U 1 Y2
≡ G(s)
G(s)

Case 1
Y3 1 Y3
G(s)

Y1 Y1
G(s)

U Y2 U Y2
G(s) ≡ G(s)

Case 2
Y3 Y3
G(s)

Figure 2-37: Moving across a pick-off point.


46 CHAPTER 2. TRANSFER FUNCTION MODELS

Finally, Fig. 2-38 shows equivalent ways of drawing block diagrams. In Case 1,

Y = X1 + X2 − X3 = (X1 + X2 ) − X3 .

X1 X1
Y Y
+
X2 ++∑ Y X2 +∑ + Y Y Y
≡ ∑ ≡
− − Y Y

X3 Case 1 X3 Case 2

Figure 2-38: Equivalent ways of drawing block diagrams.

Example 2-16: Block Diagram Reduction

Find the transfer functions Y /U of the block diagram in Fig. 2-39.

U + + Y
G 1 (s) ∑ G 2 (s) ∑ G 3 (s) G 6 (s)
− −

G 4 (s)

G 5 (s)

Figure 2-39: Example 2-16.


2-3. BLOCK DIAGRAMS 47

Solution: The block diagram reduction is realized in four steps in Fig. 2-40. In Step 1, a part
of the block diagram is redrawn to separate the two feedback signals from the output of G3 .
In Step 2, the feedback connection of G3 and G4 is replaced by its equivalent. In Step 3, the

+
∑ G 3 (s)

Step 1 G 4 (s)

G 5 (s)

U + G 3 (s) Y
G 1 (s) ∑ G 2 (s) G 6 (s)
1+ G 3 (s) G 4 (s)

Step 2
G 5 (s)

U + G 2 (s) G 3 (s) Y
G 1 (s) ∑ G 6 (s)
1+ G 3 (s) G 4 (s)

Step 3
G 5 (s)

U G 2(s) G 3(s) Y
G 1 (s) G 6 (s)
1+ G 3(s) G 4(s) + G 2(s) G 3(s) G 5(s)

Step 4

Figure 2-40: Block diagram reduction in Example 2-16.


48 CHAPTER 2. TRANSFER FUNCTION MODELS

series connection of the two transfer functions in the forward path of the loop is replaced by
its equivalent. In Step 4, the feedback loop is replaced by its equivalent. At this point we have
a series connection of three transfer functions. Hence,
Y G1 (s) G2 (s) G3 (s) G6 (s)
= .
U 1 + G3 (s) G4 (s) + G2 (s) G3 (s) G5 (s)

Example 2-17: Block Diagram Reduction

Find the transfer functions Y /U of the block diagram in Fig. 2-41.

U + + + + Y
∑ G 1 (s) ∑ G 2 (s) ∑ G 4 (s)
− − −

G 3 (s)

G 5 (s)

Figure 2-41: Example 2-17.

Solution: The block diagram reduction is accomplished in three steps in Fig. 2-42. In Step 1,
the forward signal from the input of G2 is moved to its output, the summation junction at the
input of G4 is split into two summation junctions, and the feedback from Y is redrawn as two
feedback signals. In Step 2, two feedback connections are replaced by their equivalents and
the parallel connection of 1/G2 and one is repalced by its equivalent. In Step 3, the series
connection of the four transfer functions in the forward path of the loop is replaced by its
equivalent. In Step 4, the feedback loop is replaced by its equivalent. Thus,

Y G1 (s)[1 + G2 (s)]G4 (s)


= .
U [1 + G2 (s) G3 (s)][1 + G4 (s)] + G1 (s)[1 + G2 (s)] G4 (s) G5 (s)
2-3. BLOCK DIAGRAMS 49

1
G 2 (s)

U +
G 1 (s)
+
G 2 (s)
++ +
G 4 (s)
Y
∑ ∑ ∑ ∑
− − −

Step 1 G 3 (s)

G 5 (s)

U + G 2 (s) 1 G 4 (s) Y
∑ G 1 (s) 1 + G (s)
1+ G 2 (s) G 3 (s) 2 1+ G 4 (s)

Step 2

G 5 (s)

U + G 1 (s) [1+G 2 (s)] G 4 (s) Y



[1+ G 2 (s) G 3 (s)][1+ G 4 (s)]

Step 3

G 5 (s)

U G 1 (s) [1+G 2 (s)] G 4 (s) Y


[1+ G 2 (s) G 3 (s)][1+ G 4 (s)] + G 1 (s) [1+ G 2 (s)]G 4 (s) G 5 (s)
Step 4

Figure 2-42: Block diagram reduction in Example 2-17.


50 CHAPTER 2. TRANSFER FUNCTION MODELS

2-4 Linearization

Throughout the book we deal with the control of linear systems. However, many physical
systems are nonlinear. How can we then focus our attention on the control of only linear
systems? The answer lies in the fact that many nonlinear systems can be modeled by linear
equations in the neighborhood of an operating point or an equilibrium point. Figure 2-43
shows the v–i characteristics of a nonlinear resistor. In the neighborhood of the operating point
(v0 , i0 ), the nonlinear curve can be approximated by its slope at the operating point. Similarly,
many physical components that might have nonlinear characteristics over a wide operation
range can be approximated by a linear relationship in the neighborhood of an operating point.
This process is known as linearization.

Resistor response

i0 Linear approximation

Operating point

v0 v
Figure 2-43: Linearization of a nonlinear resistor.

Another form of linearization takes place when a system operates near an equilibrium
point. We illustrate this by the following example.
2-4. LINEARIZATION 51

Example 2-18: Linearization of the Pendulum Equation

mg

Figure 2-44: Pendulum.

Consider the simple pendulum shown in Fig. 2-44, where l denotes the length of the rod and
m denotes the mass of the bob. Assume the rod is rigid and has zero mass. Let θ denote the
angle subtended by the rod and the vertical axis through the pivot point. The pendulum is free
to swing in the vertical plane. The bob of the pendulum moves in a circle of radius l. To write
the equation of motion of the pendulum, let us identify the forces acting on the bob. There is a
downward gravitational force equal to mg, where g is the acceleration due to gravity. There is
also a frictional force resisting the motion, which we assume to be proportional to the speed
of the bob with a coefficient of friction k. Using Newton’s second law of motion, we can write
the equation of motion in the tangential direction as
ml θ̈ (t) = −mg sin θ (t) − kl θ̇ (t) . (2.40)
Writing the equation of motion in the tangential direction has the advantage that the rod
tension, which is in the normal direction, does not appear in the equation. The system
is in equilibrium when θ is constant. To find the equilibrium points, set θ̇ = θ̈ = 0 in
the foregoing equation to obtain sin θ = 0. Hence the pendulum has equilibrium points at
θ = 0, ±π , ±2π , . . .. Of the infinitely many equilibrium points, two have physical meaning:
the downward position where θ = 0 and the upward position where θ = π , while all the
others are repetitions of them. If we are interested in the motion near θ = 0, we can use the
approximation sin θ ≈ θ to arrive at the linear differential equation
ml θ̈ (t) = −mgθ (t) − kl θ̇ (t) .
If we are interested in the motion near θ = π , we write θ = π + φ and use the approximation
sin θ = sin(π + φ ) = − sin φ ≈ −φ
to arrive at the linear equation
ml φ̈ (t) = mgφ (t) − kl φ̇ (t) ,
where we used the fact that θ̇ = φ̇ and θ̈ = φ̈ .
52 CHAPTER 2. TRANSFER FUNCTION MODELS

Summary
Concepts
• Differential-equation and transfer-function models are equivalent.
• Transfer-function models of electrical, mechanical, and electromechanical systems
can be derived by application of physical laws in the Laplace-domain.
• Transfer-function models of electric circuits can be derived using impedances.
• Block diagrams can be used to represent systems that are formed from the inter-
connection of several components.
• Block-diagram reduction rules can be used to simplify a block diagram to a single
transfer function.
• A nonlinear system can be approximated by a linear system in the neighborhood
of an operating point.

Important Terms Provide definitions or explain the meaning of the following


terms:
dynamic component pick-off point strictly proper transfer function
free-body diagram poles summing junction
gear ratio potential divider time delay
linearization proper transfer function torque-speed characteristics
op-amp rational transfer function transfer function
Padé approximation static component zeros
2-4. LINEARIZATION 53

Mathematical Models
Transfer functions:
N(s)
Rational G(s) =
D(s)
N(s) and D(s) are polynomials
Time-delay G(s) = e−T s
s-domain relations of electric circuits:
Resistor V (s) = R I(s)
Inductor V (s) = Ls I(s)
Capacitor I(s) = Cs V (s)
Kirchhoff’s voltage law Vab +Vbc +Vcd +Vda = 0
Kirchhoff’s current law Ia + Ib + Ic + Id = 0
s-domain relations of translational mechanical systems:
Mass F(s) = Ms2 X (s)
Spring F(s) = K X (s)
Viscous damper F(s) = bs X (s)
Newton’s second law Ms2 X (s) = net force
s-domain relations of rotational mechanical systems:
Rotating mass F(s) = Js2 θ (s)
Torsional spring T (s) = K θ (s)
Viscous damper T (s) = bs θ (s)
Newton’s second law Js2 θ (s) = net torque
ω2 T2 1
Gear =n, =
ω1 T1 n
Block diagram reduction rules:
Series connection G = G1 G2 G3
Parallel connection G = G1 + G2 + G3
G1
Negative feedback
1 + G1 G2
G1
Positive feedback
1 − G1 G2
54 CHAPTER 2. TRANSFER FUNCTION MODELS

PROBLEMS

2.1 For each of the following differential equations, find the transfer function Y /U .
Determine if the transfer function is proper or strictly proper. If it is not strictly proper, find
the strictly proper part.
(a) y(3) = −3y(2) − 3y(1) − 2y + u(2) − u
(b) y(3) = −3.5y(2) − 3.5y(1) − y + u(3) − 3.5u(2) + 3.5u(1) + 3u
(c) y(4) = −8y − 14y(1) − 15y(2) − 7y(3) + 4u + 4u(1) + 3u(2) + u(3)
(d) ẏ − u̇ = −y − u

2.2 For each of the following transfer functions, G(s) = Y (s)/U (s), find the differential
equation that relates the input u(t) to the output y(t).
(s + 2)(s + 3)
(a) G(s) =
(s + 1)(s + 4)
(s2 + 0.4s + 1.04)(s + 3)
(b) G(s) =
(s2 + 0.2s + 1)(s + 2)(s + 4)
s−1
(c) G(s) = 1 +
(s + 1)(s + 2)
a
(d) G(s) = 2
s −a

2.3 Find the poles and zeros of each of the transfer functions of the previous problem.

2.4 Find the transfer function V /I of the circuits in Fig. P2.4.

R2

I L + I +
R1 R
V + C R3 Vo V + C L Vo
− −
− −
(a) (b)

Figure P2.4: Problems 2.4 and 2.5.

2.5 Find the transfer function Vo /V of the circuits in Fig. P2.4.


PROBLEMS 55

2.6 Consider the circuit of Fig. P2.6. Show that

Z2 (s) Z1 (s)
I1 = I and I2 = I
Z1 (s) + Z2 (s) Z1 (s) + Z2 (s)

I
I1 I2

Z 1 (s) Z 2 (s)

Figure P2.6: Problem 2.6.

2.7 Find the transfer function I/V of the circuit in Fig. P2.7.

R2 R3

I
+ IC

V R1 L C

Figure P2.7: Problems 2.7 and 2.8.

2.8 Find the transfer function Ic /I of the circuit in Fig. P2.7.

2.9 Find the transfer function Vo /Vi of the circuits in Fig. P2.9.

2.10 Find the transfer function Vo /Vi of the circuits in Fig. P2.10.
56 CHAPTER 2. TRANSFER FUNCTION MODELS

C2

C2
R2 C1 R2

− Vi −
Vo R1 Vo
Vi + +
(a) R3 (b)

R1 C1

Figure P2.9: Problem 2.9.

C2
R2 R1
C1
− Vi −
Vo Vo
Vi + +

(a) R2 (b)

R1 C1

Figure P2.10: Problem 2.10.


PROBLEMS 57

2.11 Find the transfer function X2 /F of the mechanical system of Fig. P2.11.

X1 X2
K1 K2

F
M1 M2

b1 b2 b3

Figure P2.11: Problem 2.11.

2.12 Find the transfer function X2 /F of the mechanical system of Fig. P2.12.

X1 X2
K1 K2

M1 M2 F

b1 b2

Figure P2.12: Problem 2.12.

2.13 Find the transfer function X2 /F of the mechanical system of Fig. P2.13.

X1 X2
K1

K2
F M1 M2

Figure P2.13: Problem 2.13.


58 CHAPTER 2. TRANSFER FUNCTION MODELS

2.14 Find the transfer function X2 /F of the mechanical system of Fig. P2.14.

X1 X2 X3
K1 K2 K3

M1 M2 M3 F

b1 b2 b3

Figure P2.14: Problem 2.14.

2.15 Find the transfer function X2 /F of the mechanical system of Fig. P2.15.

b1 K1

M1

X1
b2 K2

M2

X2

Figure P2.15: Problem 2.15.

2.16 In the automobile suspension model of Example 2-11, the tire is modeled by a spring
with spring constant kt . In other models the damping of the tire is modeled by a viscous
damper in parallel with the spring, with damping constant Ct . Find the transfer function As /S
of this model.
PROBLEMS 59

2.17 Find the transfer function θ2 /T of the mechanical system of Fig. P2.17.

K
T θ1 θ2

J1 J2

b1 b3

b2

Figure P2.17: Problem 2.17.

2.18 Find the transfer function θ2 /T of the mechanical system of Fig. P2.18.

K1
θ1 T θ2
K2
J1 J2

b1

b2

Figure P2.18: Problem 2.18.

2.19 Find the transfer function θ2 /T of the mechanical system of Fig. P2.19.

K1 K3
T θ1 K2
θ2

J1 J2

b1 b2

Figure P2.19: Problem 2.19.


60 CHAPTER 2. TRANSFER FUNCTION MODELS

2.20 Find the transfer function θ3 /T of the mechanical system of Fig. P2.20.

K2 K3
T θ1 θ2 θ3
K1
J1 J2 J3

b1

b2 b3

Figure P2.20: Problem 2.20.

2.21 Figure P2.21 shows a motor connected to a load through two gears. Find the transfer
function θL /Tm in terms of n1 = N1 /N2 and n2 = N3 /N4 .

Tm θm

Jm N1

bm N2 N3 θ L

N4 JL

bL

Figure P2.21: Problem 2.21.


PROBLEMS 61

2.22 Figure P2.22 shows a motor connected to a flexible load through gears. The flexible
load is modeled as two rotating masses connected by a spring. Find the transfer function
θ2 /Tm .

Tm θm

Jm N1
θ1 K θ2
bm N2 J1 J2

b3
b2

Figure P2.22: Problem 2.22.

2.23 The torque-speed characteristics of a dc motor have no-load speed = 9760 rpm and
stall torque = 222 mN-m at nominal voltage = 15 V. The motor’s moment of inertia is 10
g-cm2 . Find the constants Km (in rad/sec/volt) and τm (in sec).
2.24 Repeat Problem 2.23 for no-load speed = 9970 rpm, stall torque = 246 mN-m, nominal
voltage = 30 V, and moment of inertia = 10.1 g-cm2 .
2.25 Repeat Problem 2.23 for no-load speed = 8320 rpm, stall torque = 207 mN-m, nominal
voltage = 48 V, and moment of inertia = 9.96 g-cm2 .
62 CHAPTER 2. TRANSFER FUNCTION MODELS

2.26 For each of the systems in Fig. P2.26, find the transfer function Y /U .

U + 20 Y U + + 20 Y
∑ 10 s(s+10)
∑ 9 ∑ s(s+10)
− − −
s
(a)
(b)

U + 10(s+1) + 20 Y U + 20 Y
∑ ∑
s(s+10)
∑ 10
− s − − s(s+10)

s
s +1
(c) (d)

Figure P2.26: Problem 2.26.

2.27 Find the transfer function Y /U for the system in Fig. P2.27.

G 4 (s)

+
U + + + Y
∑ G 1 (s) G 2 (s) ∑ G 3 (s) ∑
− −

H 1 (s) H 2 (s)

Figure P2.27: Problem 2.27.


PROBLEMS 63

2.28 Find the transfer function Y /U for the system in Fig. P2.28.

G 2 (s)

+
U + + + Y
∑ G 1 (s) ∑ G 3 (s) ∑ G 4 (s)
− −

H 1 (s) H 2 (s)

Figure P2.28: Problem 2.28.

2.29 Use MATLAB to find the equivalent transfer function of the block diagram of Fig. 2-39
when
1 s + 0.2 5 10
G1 = , G2 = , G3 = , G4 = 2 , G5 = , and G6 = 3 .
s+1 s s+2 s + 10

2.30 Use MATLAB to find the equivalent transfer function of the block diagram of Fig. 2-41
when
s+1 s+2 1 10
G1 = , G2 = , G3 = 1 , G4 = , and G5 = .
s s+1 s2 + s + 1 s + 10
Chapter 3
Stability and Dynamic Response
Chapter Contents Objectives

Overview, 65 Upon learning the material presented in this chapter, you


3-1 BIBO Stability, 65 should be able to:
3-2 Routh-Hurwitz Criterion, 70
3-3 Dynamic Response, 78 1. Define stability of a linear system.
3-4 Step Response, 81 2. Determine stability in terms of the impulse response
Chapter Summary, 98 and the transfer function.
Problems, 100
3. Determine stability without calculating the poles of
the transfer function.
4. Divide the dynamic response into natural and forced
responses.
5. Divide the dynamic response into transient and
steady-state responses.
6. Determine the steady-state response to step,
sinusoidal, and periodic inputs.
7. Study the step response of first-order and second-
order transfer functions.
8. Approximate the step response of higher-order
transfer functions.

64
3-1 BIBO STABILITY 65

Overview
It is important in the analysis of dynamical systems to determine whether or not the system
is stable and to study its response to various inputs. In Section 3-1 we define input-output–
stability for linear time-invariant systems and characterize it in terms of the impulse response
and the poles of the transfer function. Section 3-2 presents the Routh-Hurwitz criterion, which
allows us to determine the stability of a system without calculating its poles. Section 3-3
examines the response of the system to various inputs, while Section 3-4 focuses on the step
response.

3-1 BIBO Stability


The response of a linear time-invariant system can be characterized by its transfer function
G(s) using the equation
Y (s) = G(s) U (s) , (3.1)
where U (s) and Y (s) are the Laplace transforms of the input and output signals u(t) and
y(t), respectively. Equivalently, the system can be characterized by its impulse response
g(t) = L−1 {G(s)} using the convolution integral
Z t
y(t) = g(τ ) u(t − τ ) d τ . (3.2)
0

Equation (3.1) is the Laplace transform of Eq. (3.2). The function g(t) is called the impulse
response because an impulse input u(t) = δ (t) results in the output y(t) = g(t).
In the preceding chapter we described systems whose transfer functions are rational
functions of s. It is worthwhile to note that there are systems of interest in which the transfer
function is not a rational function of s. An important example is the delay system defined by

y(t) = u(t − T ) ,

where the output signal is a replica of the input signal but delayed by the time delay T . Taking
the Laplace transform of this equation shows that

Y (s) = e−sT U (s) G(s) = e−sT .

The function e−sT is not a ratio of two polynomials, which shows that a delay element cannot
be represented by a differential equation of the form of Eq. (2.1).
Signals can be classified as bounded signals versus unbounded signals. A signal x(t) is
bounded if there is a positive constant k such that |x(t)| ≤ k for all t ≥ 0; otherwise it is
unbounded. Examples of bounded signals are the unit step function
(
1 if t ≥ 0 ,
1(t) =
0 if t < 0 ,

the sinusoidal sin(ω t + φ ), and the decaying exponential e−at 1(t), a > 0. Examples of
unbounded signals are the ramp t 1(t) and the growing exponential eat 1(t) for a > 0. The
66 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

system is Bounded-Input–Bounded-Output (BIBO) stable, or simply stable, if for every


bounded input, the output is bounded. We emphasize that this property has to hold for every
bounded input. If there is even one bounded input for which the output is unbounded, the
system is considered unstable. In the rest of this section we characterize stability in terms of
the impulse response and the transfer function.

Theorem 3.1 A system represented by the convolution integral Eq. (3.2) is stable if and only
if Z ∞
|g(t)| dt < ∞ . (3.3)
0

Proof: The statement “if and only if” means that the condition defined by Eq. (3.3) is both
necessary and sufficient.
R∞
Proof of sufficiency: Suppose 0 |g(t)| dt ≤ kg and consider a bounded input with |u(t)| ≤ ku
for all t ≥ 0.
Z t
|y(t)| = g(τ ) u(t − τ ) d τ
0
Z t
≤ |g(τ ) u(t − τ )| d τ
0
Z t
= |g(τ )| |u(t − τ )| d τ
0
Z t
≤ |g(τ )| ku d τ
0
Z t
= |g(τ )| d τ ku ≤ kg ku ,
0

where we used the properties that the absolute value of an integral is less than or equal to the
integral of the absolute value of the integrand, and the absolute value of a product is equal to
the product of absolute values.
Proof of necessity: We use a contradiction argument to show that BIBO stability cannot hold
if condition Eq. (3.3) is not satisfied. Given ku > 0, suppose there is a ky > 0 such that
|u(t)| ≤ ku , ∀ t ≥ 0 |y(t)| ≤ ky , ∀ t ≥ 0 ,
R∞
but 0 |g(t)| dt is not finite. Then there is a time t1 such that
Z t1
ky
|g(t)| dt > .
0 ku
Construct a signal u(t) such that

 ku when g(t) > 0 ,
u(t1 − t) = 0 when g(t) = 0 ,

−ku when g(t) < 0 .
3-1 BIBO STABILITY 67

The signal u(t) has the properties

|u(t1 − t)| ≤ ku , and g(t) u(t1 − t) = ku |g(t)|, for 0 ≤ t ≤ t1 .

Then, Z Z
t1 t1
ky
y(t1 ) = g(t) u(t1 − t) dt = ku |g(t)| dt > ku = ky ,
0 0 ku
which contradicts the claim that |y(t)| ≤ ky for all t ≥ 0.

Example 3-1: Stability of the Delay Element

Is the delay element y(t) = u(t − T ) BIBO stable?


Solution: Yes, y(t) = u(t − T ) is BIBO stable because the output signal is a delayed version
of the input signal. But we can alsoRsee that the condition of Theorem 3.1 is satisfied because

g(t) = L−1 {e−sT } = δ (t − T ) and 0 δ (t − T ) dt = 1.

Theorem 3.2 A system represented by a rational proper transfer function G(s) is stable if
and only if all poles of G(s) have negative real parts.

Proof: G(s) can be represented as G(s) = G(∞)+Gsp(s) and, using partial-fraction expansion,
the strictly proper transfer function Gsp (s) can be expanded as
r
X
Gsp (s) = Gi (s) ,
i=1

where Gi (s) takes the general form


K
Gi (s) = ,
(s − p)α

where p is a pole of G(s), α ≥ 1 is an integer, and K is a constant. If all poles of G(s)


are simple, α = 1 in the foregoing form for all the Gi (s) terms; otherwise for a pole with
multiplicity m > 1, there is a Gi (s) term with α = m. For example,
8
G(s) =
s(s2 + 2s + 2)(s + 2)2
1 1− j 1+ j 3 2
= + + − − ,
s s + 1 + j s + 1 − j s + 2 (s + 2)2

where j = −1. For the system to be stable, each Gi (s) term has to be stable. With
 
−1 K K t α −1 e pt
gi (t) = L = .
(s − p)α (α − 1)!
68 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

Gi (s) is stable if and only if gi (t) satisfies the condition of Theorem 3.1; that is,
Z ∞ Z ∞
K t α −1 e pt
|gi (t)| dt = dt < ∞ .
0 0 (α − 1)!
The pole p can be complex, so we write it as p = σ + jω . Hence,

K t α −1 e(σ + jω )t |K| t α −1 eσ t
= .
(α − 1)! (α − 1)!

Consider first the case σ = 0:


Z T Z T
|K| t α −1 |K|
lim |gi (t)| dt = lim dt = lim T α = ∞ .
T →∞ 0 T →∞ 0 (α − 1)! α ! T →∞
Hence, the system is unstable if G(s) has a pole on the imaginary axis. Consider now the case
σ , 0. If α = 1,
Z T Z T
|K|
lim |gi (t)| dt = lim |K|eσ t dt = lim (eσ T − 1) .
T →∞ 0 T →∞ 0 σ T →∞
The limit is finite if and only if σ < 0. If α = 2,
Z T Z T   
σt T 1 σT 1
lim |gi (t)| dt = lim |K| te dt = |K| lim − e + 2 .
T →∞ 0 T →∞ 0 T →∞ σ σ2 σ
The limit is finite if and only if σ < 0. In taking the limit, recall that
lim T a eσ T = 0 ,
T →∞

when σ < 0 for any integer a > 0. Since


Z Z
xn eax n
xn eax dx = − xn−1 eax dx ,
a a
repeating the foregoing calculation shows that for any α ≥ 1, G(s) is stable if and only if
σ < 0 for all poles of G(s).

◮ A transfer function is unstable if it has one or more poles with nonnegative real part. ◭

A special case of unstable transfer functions is the case when it has simple poles on the
imaginary axis (zero real part) with the remaining poles, if any, in the left-half plane (negative
real part). In this special case the system is called marginally stable. A marginally stable
transfer function is still unstable but its impulse response is bounded. For example, for the
transfer function
s+1 1 1 s
G(s) = 2 2
= 2 + 2 2
− 2 2 ,
s(s + ω ) ω s s + ω ω (s + ω 2 )
3-1 BIBO STABILITY 69

which has poles at s = 0 and s = ± jω , the impulse response


 
1 1 1
g(t) = + sin ω t − 2 cos ω t 1(t)
ω2 ω ω

is bounded. Moreover, the output of a marginally stable transfer function will be bounded
for almost all bounded inputs except those whose Laplace transforms have the same poles
as the simple poles of the transfer function on the imaginary axis. For example, the transfer
function G(s) = 1/s will produce an unbounded ramp when driven by a constant input, but
will produce a bounded output when driven by a periodic input with zero dc component. The
transfer function 1/(s2 + ω 2 ) will produce unbounded output if driven by the sinusoidal signal
sin(ω t + φ ) but will a produce bounded output if driven by the sinusoidal signal sin(Ωt + φ )
with Ω , ω .

Example 3-2: Stability of Transfer Functions

For each of the following transfer functions, determine if the system is stable or unstable. If it
is unstable, determine if it is marginally stable.

(s + 2)(s + 3)
(a) G(s) =
(s + 1)(s + 4)
(s + 2)(s + 3)
(b) G(s) =
(s − 1)(s + 4)
(s − 2)(s + 3)
(c) G(s) =
(s + 1)(s + 4)
(s2 + 0.4s + 1.04)(s + 3)
(d) G(s) =
(s2 + 0.2s + 1)(s + 2)(s + 4)
(s2 + 0.4s + 1.04)(s + 3)
(e) G(s) =
(s2 − 0.2s + 1)(s + 2)(s + 4)
s−1
(f) G(s) = 1 +
(s + 1)(s + 2)
a
(g) G(s) = 2 , a>0
s −a
1
(h) G(s) =
(s + 2)(s2 + 1)
1
(i) G(s) =
(s − 2)(s2 + 1)
1
(j) G(s) = 2
(s + 1)2
70 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

Solution:
(a) The poles of G(s) = (s + 2)(s + 3)/[(s + 1)(s + 4)] are −1 and −4. It is stable.
(b) The poles of G(s) = (s + 2)(s + 3)/[(s − 1)(s + 4)] are 1 and −4. It is unstable because
of the pole at 1. It is not marginally stable because the unstable pole is in the right-half
plane.
(c) The poles of G(s) = (s − 2)(s + 3)/[(s + 1)(s + 4)] are −1 and −4. It is stable. There is
a zero in the right-half plane, but zeros do not affect stability.
(d) The poles√ of G(s) = (s2 + 0.4s + 1.04)(s + 3)/[(s2 + 0.2s + 1)(s + 2)(s + 4)] are
−0.1 ± j 0.99, −2, and −4. It is stable.
2 2
√ of G(s) = (s + 0.4s + 1.04)(s + 3)/[(s − 0.2s + 1)(s + 2)(s +
(e) The poles √ 4)] are
0.1 ± j 0.99, −2, and −4. It is unstable because of the poles at 0.1 ± j 0.99. It
is not marginally stable because the unstable poles are in the right-half plane.
(f) The poles of G(s) = 1 + (s − 1)/[(s + 1)(s + 2)] are −1 and −2. It is stable.

(g) The√poles of G(s) = a/(s2 − a) (a > 0) are ± a. It is unstable because of the pole
at a. It is not marginally stable because the unstable pole is in the right-half plane.
(h) The poles of G(s) = 1/[(s + 2)(s2 + 1)] are −2 and ± j. It is unstable because of the
poles at ± j. It is marginally stable because the unstable poles are simple poles on the
imaginary axis.
(i) The poles of G(s) = 1/[(s − 2)(s2 + 1)] are 2 and ± j. It is unstable because the poles
are not in the left-half plane. Even though there are simple poles on the imaginary axis,
it is not marginally stable because of the pole at 2.
(j) There are multiple poles of G(s) = 1/(s2 + 1)2 at ± j. It is unstable because of these
poles. Even though the unstable poles are on the imaginary axis, it is not marginally
stable because the poles are not simple.

3-2 Routh-Hurwitz Criterion


Investigating the stability of a rational proper transfer function requires us to calculate its
poles; that is, to calculate the roots of its denominator polynomial. Calculating the roots of
a polynomial is easy if its degree is one or two. For higher degrees it is hard to calculate
the roots manually. Decades ago engineers used the Routh-Hurwitz criterion to determine
whether the roots of a polynomial are in the left-half plane without calculating such roots.
Even though we now have computer programs, such as MATLAB, that can easily calculate
the roots of a polynomial of a fairly high degree, it turns out that the Routh-Hurwitz criterion
is still useful in the analysis of feedback control systems because it can determine the range
of system parameters for the which the system is stable.
Starting with the 4th degree polynomial

s4 + a3 s3 + a2 s2 + a1 s + a0 ,
3-2 ROUTH-HURWITZ CRITERION 71

we construct a table, known as a Routh table, as shown below.

s4 1 a2 a0
s3 a3 a1
s2 b1 b2
s c1
1 d1

The table has five rows, designated by the powers of s from s4 to s0 = 1. The first two rows are
constructed from the coefficients of the polynomial in a zig-zag manner. In the first row and
first column we write the coefficient of s4 . Moving down in the first column to the second row,
we write the coefficient of s3 . Back to the first row, we write the coefficient of s2 in the second
column. Moving down in the second column to the second row, we write the coefficient of s.
Back to the first row, we write the absolute term in the third column. At this point all the
coefficients of the polynomial are covered, so the remaining elements in the first and second
rows are zeros, which we leave as blank. The coefficients of the third row are calculated from
the coefficients of the previous two rows as follows:

−1 1 a2 a2 a3 − a1 −1 1 a0 a0 a3
b1 = = , b2 = = = a0 .
a3 a3 a1 a3 a3 a3 0 a3

b1 equals the negative of the determinant of the 2 × 2 matrix formed by the first and second
columns of the previous two rows, divided by the first coefficient of the previous row;
b2 equals the negative of the determinant of the 2 × 2 matrix formed by the first and third
columns of the previous two rows, divided by the first coefficient of the previous row. This
pattern continues for all the elements of the third row. The 2 × 2 matrix is formed by the first
column and the column next to the column we are calculating and the division is always by
the first element of the previous row. The next element of the third row would have been

−1 1 0
b3 = =0,
a3 a3 0

and that is why this element is left blank. The next row is constructed using the same pattern
from the previous two rows.

−1 a3 a1 a1 b1 − a3 b2 −1 a3 0
c1 = = , c2 = =0.
b1 b1 b2 b1 b1 b1 0

Finally,
−1 b1 b2
d1 = = b2 = a0 .
c1 c1 0
For the nth degree polynomial,

sn + an−1 sn−1 + an−2 sn−2 · · · + a1 s + a0 .


72 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

The Routh table is constructed in the same way:

sn 1 an−2 an−4 ...


sn−1 an−1 an−3 an−5 ...
sn−2 b1 b2 b3 ...
sn−3 c1 c2 c3 ... (3.4)
.. ..
. .
1 h1

with
−1 1 an−2 −1 1 an−4
b1 = , b2 = , ...
an−1 an−1 an−3 an−1 an−1 an−5
−1 an−1 an−3 −1 an−1 an−5
c1 = , c2 = , ...
b1 b1 b2 b1 b1 b3

Routh-Hurwitz Criteriona

• The roots of the polynomial have negative real parts if and only if all the elements
of the first column are positive.

• If the elements of the first column are nonzero and change signs between positive
and negative, then the number of roots with positive real parts is equal to the
number of sign changes.
a The proof of the Routh-Hurwiz criterion can be found in [27] or [10].

Example 3-3: Stability by the Routh-Hurwitz Criterion

Investigate the stability of the system


s+2
G(s) = .
s3 + 9s2 + 10s + 20

Solution: Construct the Routh table of the denominator polynomial

s3 + 9s2 + 10s + 20 :

s3 1 10 −1 1 10 70
b1 = = ,
s2 9 20 9 9 20 9
s 70/9 −1 9 20
1 20 c1 = = 20 .
70/9 70/9 0
All elements in the first column are positive. Hence, the system is stable.
3-2 ROUTH-HURWITZ CRITERION 73

Example 3-4: Stability by the Routh-Hurwitz Criterion

Investigate the stability of the system


s+2
G(s) = .
s4 + 4s3 + 5s2 + 12s + 10

Solution: Construct the Routh table of the denominator polynomial

s4 + 4s3 + 5s2 + 12s + 10 .

s4 1 5 10 −1 1 5
s3 4 12 b1 = =2,
4 4 12
s2 2 10
−1 4 12
s −8 c1 = = −8 .
1 10 2 2 10

There are two sign changes in the first column, from row 3 to row 4 and from row 4 to row 5.
The system is unstable. There are two poles in the right-half plane.

Example 3-5: Determination of the Range of a Gain for Closed-Loop


Stability

Consider the feedback control system of Fig. 3-1, where the plant transfer function is
6
Gp (s) = ,
s3 + 6s2 + 11s + 6
and the transfer function of a proportional controller is Gc (s) = K. Find the range of K for
which the closed-loop system is stable.

R + Y
∑ G c (s) G p (s)

Figure 3-1: Feedback control system.

Solution: The closed-loop transfer function is


Y 6K
= 3 2
.
R s + 6s + 11s + 6(1 + K)
74 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

The Routh table of the denominator polynomial is

s3 1 11
s2 6 6(1 + K)
s (10 − K)
1 6(1 + K)

The system is stable when all elements in the first column are positive. This is the case only
when −1 < K < 10.

Example 3-6: Determination of the Ranges of Two Gains for Closed-Loop


Stability

Reconsider the feedback control system of the previous example, but change the controller to
a Proportional-Integral (PI) controller whose transfer function is Gc (s) = KP + KI/s. Find the
ranges of KP and KI for which the closed-loop system is stable.

Solution: The closed-loop transfer function is

Y 6(KP s + KI )
= 4 .
R s + 6s + 11s2 + 6(1 + KP )s + 6KI
3

The Routh table of the denominator polynomial is

s4 1 11 6KI
s3 6 6(1 + KP )
s2 (10 − KP ) 6KI
6[(10 − KP )(1 + KP ) − 6KI ])
s
(10 − KP )
1 6KI

The system is stable when all elements in the first column are positive. This is the case when

(10 − KP )(1 + KP )
KP < 10 and 0 < KI < .
6

For example, if we choose KP = 4, then the system is stable only if 0 < KI < 5.
3-2 ROUTH-HURWITZ CRITERION 75

Example 3-7: A Necessary Condition for Stability

Show that for the roots of a polynomial to have negative real parts, it is necessary that all the
coefficients of the polynomial be positive.
Solution: We show it for a polynomial of degree five. The general case is done similarly.

s5 + a4 s4 + a3 s3 + a2 s2 + a1 s + a0 .

s5 1 a3 a1
s4 a4 a2 a0
s3 b1 b2
s2 c1 a0
s d1
1 a0
with
a3 a4 − a2 a1 a4 − a0 a2 b1 − a4 b2 b2 c1 − ao b1
b1 = , b2 = , c1 = , and d1 = .
a4 a4 b1 c1
For the roots of the polynomial to have negative real parts it must be true that all elements in
the first column are positive. Thus, a4 and a0 are positive. Now,

c1 > 0 & d1 > 0 b2 > 0 a1 > 0; b1 > 0 & c1 > 0 a2 > 0; b1 > 0 a3 > 0.

The two cases mentioned under the Routh-Hurwitz criterion require all elements in the
first column to be nonzero. What if an element of the first column is zero? In that case the
system is unstable, but it will be useful to find more information about the roots to determine
if the system is marginally stable. Two cases are discussed below.
Case 1: An entire row is zero
In this case an even polynomial is a factor of the original polynomial. A polynomial is even
when all powers of s are even. The roots of an even polynomial, of degree 2 or higher, are
symmetric with respect to the origin, as in the cases

s2 − σ 2 = (s − σ )(σ + σ ) ,
s2 + ω 2 = (s + jω (s − jω ) ,
s4 + 2(ω 2 − σ 2 )s2 + (σ 2 + ω 2 )2 = (s2 + 2σ s + σ 2 + ω 2 )(s2 − 2σ s + σ 2 + ω 2 )
= (s + σ + jω )(s + σ − jω )(s − σ + jω )(s − σ − jω ) .

When we encounter a row of zeros, we form an auxiliary polynomial using the elements of
the row immediately above the row of zeros. The polynomial starts with the power of s in
the label column and continues by decreasing the power by two. We then divide the auxiliary
76 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

polynomial by the coefficient of the highest power of s. The resultant polynomial is a factor
of the original polynomial.

Example 3-8: Routh Table with a Row of Zeros

Construct the Routh table for the polynomial

s5 + 2s4 + 5s3 + 10s2 + 4s + 8 .

Solution:
s5 1 5 4
s4 2 10 8
s3 0 0 0
The third row is zero. We construct the auxiliary polynomial from the second row as
2s4 + 10s2 + 8. Division by 2 yields s4 + 5s2 + 4 as a factor of the original polynomial.
Factoring the auxiliary polynomial as

s4 + 5s2 + 4 = (s2 + 1)(s2 + 4)

shows that the original polynomial has roots at ± j and ±2 j. We can also determine the
remaining factor of the original polynomial by polynomial long division:
s+2

s4 + 5s2 + 4 s5 + 2s4 + 5s3 + 10s2 + 4s + 8


s5 + 5s3 + 4s

2s4 + 10s2 +8
2s4 + 10s2 +8

0 0 0

Thus, the original polynomial can be factored as (s + 2)(s4 + 5s2 + 4) and its roots are −2,
± j, and ±2 j.

Example 3-9: A Marginally Stable Closed-Loop System

Reconsider the system of Example 3-5. The Routh table of the denominator polynomial is

s3 1 11
s2 6 6(1 + K)
s (10 − K)
1 6(1 + K)
3-2 ROUTH-HURWITZ CRITERION 77

There is a row of zeros at K = 10 or K = −1. Consider first K = 10. The Routh table becomes
s3 1 11
s2 6 66
s 0
The zero is in the third row, so the auxiliary polynomial obtained from the row above it is
(6s2 + 66), which simplifies to s2 + 11. By polynomial
√ long division, the remaining factor is
s + 6. Thus, the system has poles at −6 and ± 11 j; it is marginally stable. Next, consider
K = −1.
s3 1 11
s2 6 0
s 11
1 0
The auxiliary polynomial
√ is s. The remaining factor is s2 + 6s + 11. Thus, the system has poles
at 0 and −3 ± 2 j; it is marginally stable.

Case 2: An element in the first column is zero but there are nonzero elements in the same row
In this case the zero element is replaced with a positive constant ε and we continue to construct
the table. When done, we determine the signs of the elements of the first column as ε → 0.

Example 3-10: Routh Table with a Zero in the First Column

Construct the Routh table for the polynomial


s5 + 2s4 + 2s3 + 4s2 + 11s + 10 .

Solution:
s5 1 2 11
s4 2 4 10
s3 0 6
Replace 0 in the third row with ε and continue:

s5 1 2 11
s4 2 4 10
s3 ε 6
s2 c1 10
s d1
1 10
4ε − 12 10ε 2
c1 = , d1 = 6 − .
ε 4ε − 12
As ε → 0, c1 → −12/ε < 0 and d1 → 6 > 0. There are two sign changes. Hence, the
polynomial has two roots in the right-half plane.
78 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

Example 3-11: Routh Table for a PI Controller Case with a Zero in the First
Column

Reconsider the system of Example 3-6. The Routh table of the denominator polynomial is

s4 1 11 6KI
s3 6 6(1 + KP )
s2 (10 − KP ) 6KI
6[(10 − KP )(1 + KP ) − 6KI ])
s
(10 − KP )
1 6KI

At KP = 10 while KI , 0, the first element in the third row is zero, while the second element
is nonzero. Replace 10 − KP with ε > 0 and continue:

s4 1 11 6KI
s3 6 6(11 − ε )
s2 ε 6KI
s c1
1 6KI

with
6ε (11 − ε ) − 36KI
c1 = .
ε
As ε → 0, c1 → −36KI /ε ; sign(c1 ) = −sign(KI ). Thus there is a sign change and the system
is unstable. The number of poles in the right-half plane depends on the sign of KI . If KI > 0,
there are two sign changes; hence, there are two poles in the right-half plane. If KI < 0, there
is one sign change; hence, there is one pole in the right-half plane. For example, if KI = 1, the
polynomial is
s4 + 6s3 + 11s2 + 66s + 6 .
and its roots are −5.9785, −0.0923, and 0.0354 ± 3.298 j, while if KI = −1, the polynomial
is
s4 + 6s3 + 11s2 + 66s − 6
and its roots are −6.0211, −0.0342 ± 3.3365 j, and 0.0895.

3-3 Dynamic Response


The response of a linear system to a wide class of inputs, including step, ramp, sinusoidal, etc.,
is divided into a natural response and a forced response. The natural response is determined
by the poles of the transfer function, while the forced response has the same form as the input.
For a stable transfer function, all poles have negative real parts, which causes the natural
response to converge to zero as time tends to infinity. In this case, the natural and forced
3-3 DYNAMIC RESPONSE 79

responses are called transient and steady-state, respectively. We shall look at the response of
a stable linear system to step, sinusoidal, and periodic inputs.

Step input:
Let u(t) = A 1(t), where 1(t) is the unit step function and A is the amplitude of the step. To
start with, let us consider the case where the transfer function has simple poles:
N(s)
G(s) = , pi , p j . (3.5)
(s − p1 )(s − p2 ) · · · (s − pn )
The Laplace transform of the output is given by
A N(s) A
Y (s) = G(s) U (s) = G(s) = .
s s(s − p1 )(s − p2 ) · · · (s − pn )
Expanding the expression of Y (s) using partial-fraction expansion results in
i=n
G(0) A X Ki
Y (s) = + ,
s s − pi
i=1

where
A G(s) (s − pi )
Ki = .
s s=pi
Taking the inverse Laplace transform yields
i=n
X
y(t) = G(0) A 1(t) + Ki e pi t 1(t)
| {z }
i=1
forced (steady-state) response | {z }
natural (transient) response
and
i=n
X
Re{pi } < 0, ∀i lim Ki e pit 1(t) = 0 lim y(t) = G(0) A .
t→∞ t→∞
i=1
Thus, the steady-state response of a stable transfer function to a step input is a constant equal
to the amplitude of the step multiplied by G(0), which is called the dc gain of the transfer
function. Even if G(s) has multiple poles, the output takes the form

y(t) = G(0) A 1(t) + f (t) , (3.6)


where f (t) is a summation of terms of the form Kt α −1 e pt /(α − 1)!, for a nonnegative
integer α . Once again, because the poles have negative real parts, these terms converge to
zero as time tends to infinity and the steady-state response is G(0) A.

◮ The steady-state response of a stable transfer function G(s) to the step input A 1(t) is
G(0) A, where G(0) is the dc gain of G(s). ◭
80 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

Sinusoidal input:
Let u(t) = A sin ω t, for t ≥ 0:
A jω t 
u(t) = A sin ω t = e − e− jω t , (3.7)
2j
and therefore
 
A 1 1
U (s) = −
2j (s − jω ) (s + jω )
and
 
A 1 1
Y (s) = G(s) U (s) = G(s) − .
2j (s − jω ) (s + jω )
Expanding the expression of Y (s) by partial-fraction expansion results in
A 1 A 1
Y (s) = G( jω ) − G(− jω ) + terms dependent on the poles of G(s) .
2j (s − jω ) 2 j (s + jω )

Let M = |G( jω )| and φ = ∠G( jω ) so that G( jω ) = Me jφ . It can be verified that

G(− jω ) = Me− jφ .

Hence,
 
A 1 A 1 AM e jφ e− jφ
G( jω ) − G(− jω ) = − ,
2j (s − jω ) 2 j (s + jω ) 2j (s − jω ) (s + jω )
and
  
AM e jφ e− jφ AM h j(ω t+φ ) i
L −1
− = e − e− j(ω t+φ ) = AM sin(ω t + φ ) .
2j (s − jω ) (s + jω ) 2j
Thus,
y(t) = AM sin(ω t + φ ) + f (t), for t ≥ 0 , (3.8)
where f (t) is a summation of terms of the form Kt α −1 e pt /(α − 1)! with a nonnegative
integer α . Note that

Re{pi } < 0, ∀i lim f (t) = 0 lim [y(t) − AM sin(ω t + φ )] = 0 .


t→∞ t→∞

Hence, y(t) approaches the sinusoidal signal A|G( jω )| sin(ω t +∠G( jω )); G( jω ) is called the
frequency response of G(s). This result can be extended to the sinusoidal input A sin(ω t + θ )
for θ , 0, where the steady-state response is A|G( jω )| sin(ω t + θ + ∠G( jω )).

◮ The steady-state response of a stable transfer function G(s) to the sinusoidal input
A sin(ω t + θ ) is a sinusoidal signal of the same frequency with the amplitude and phase
modified by the frequency response G( jω ). ◭
3-4 STEP RESPONSE 81

Periodic input:
A periodic signal can be expanded using Fourier series as a summation of a dc component,
a fundamental-frequency component and components of higher harmonics. A linear system
obeys the superposition principle; that is, if y1 , y2 , and y3 are the outputs to the inputs u1 ,
u2 , and u3 , respectively, then a1 y1 + a2 y2 + a3 y3 is the output to a1 u1 + a2 u2 + a3 u3 , for any
constants a1 , a2 , and a3 . Using this principle, the steady-state output of a stable linear system
driven by a periodic input will be a summation of a dc component, a fundamental-frequency
component, and components of higher harmonics, with the same fundamental frequency of
the input; that is, the steady-state output is a periodic signal of the same period as the input.

◮ The steady-state response of a stable transfer function to a periodic input is a periodic


signal of the same period as that of the input. ◭

3-4 Step Response


In the analysis and design of control systems we pay special attention to the step response.
The shape of the transient part of the step response is indicative of the transient response
to other inputs. Characteristics like how fast the response reaches steady state or whether
the natural response is monotonic or oscillatory can be seen from the step response. In this
section we look at the response of first and second-order transfer functions, how the zero of
a second-order transfer function affects its response, and when high-order transfer functions
can be approximated by lower-order transfer functions.

3-4.1 First-Order Transfer Functions


When the step input u(t) = A 1(t) is applied to the first-order stable transfer function
K
G(s) = , K>0, a>0, (3.9)
s+a
the Laplace transform of the output is given by
KA
Y (s) = G(s) U (s) = .
s(s + a)
Using partial-fraction expansion, we obtain
K1 K2
Y (s) = + ,
s s+a
where
KA KA
K1 = sY (s)|s=0 = , K2 = (s + a) Y (s)|s=−a = − .
a a
The inverse Laplace transform of Y (s) is given by
KA
y(t) = (1 − e−at ) 1(t) . (3.10)
a
82 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

1
0.9
ss
0.8
0.7 0.63
0.6
0.5
0.4
0.3
0.2
0.1
0
0 2 3 4 5 6
r
s

Figure 3-2: Step response of a first-order transfer function.

The steady-state output is

KA
yss = lim y(t) = = G(0) A .
t→∞ a

Upon normalizing the output by its steady-state value and defining the time constant τ = 1/a,
we have
y(t)
= (1 − e−t/τ ) 1(t) . (3.11)
yss
This function is plotted in Fig. 3-2. The time response is characterized by two parameters: the
rise time Tr , which is the time it take y(t) to go from 10% to 90% of its steady-state value, and
the settling time Ts , which is the time it takes y(t) to go from zero to 98% of its steady-state
value (that is, within 2% of its final value):

Tr = t2 − t1 , where 1 − e−t1 /τ = 0.1 and 1 − e−t2 /τ = 0.9 .

It can be verified that t1 ≈ 0.1τ and t2 ≈ 2.3τ . Hence, Tr ≈ 2.2τ . Similarly,

1 − e−Ts /τ = 0.98 Ts ≈ 4τ .

Another point of interest is that at t = τ , y/yss = 1 − e−1 ≈ 0.63. This feature is used to
find τ experimentally. After a step input is applied to the system, if the step response is close
to the plot of Fig. 3-2, the system is modeled by a first-order transfer function and τ is the
time at which the response is 63% of the steady-state value. This determines a = 1/τ . The
constant K is determined from the steady-state output, since yss = K/a.
3-4 STEP RESPONSE 83

In summary,

K y(t)
G(s) = , K>0, a>0, = (1 − e−t/τ ) 1(t) ,
s+a yss
1
τ= , Tr = 2.2τ , Ts = 4τ , y = 0.63 yss at t = τ .
a

3-4.2 Second-Order Transfer Functions


In this section we examine the step response of a second-order stable transfer function with
no zeros. The examination is divided into three cases depending on the location of the poles:
Overdamped: Two real distinct poles
Critically damped: Two real identical poles
Underdamped: A pair of complex poles
Figure 3-3 shows typical responses for the three cases. The overdamped response is
monotonic; that is, the output approaches the steady state monotonically. It does not overshoot
the steady state. The critically damped response is also monotonic and does not overshoot the
steady state, but it is faster than the overdamped response. The underdamped response is
oscillatory and overshoots the steady state. We now show the calculation of the output in each
case.
Overdamped:
For
K
G(s) = , K >0, b>a>0, (3.12)
(s + a)(s + b)

Underdamped

Critically damped

Overdamped

Figure 3-3: Comparison of the step response of three cases.


84 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

the Laplace transform of the output to the step input u(t) = A 1(t) is
KA
Y (s) = .
s(s + a)(s + b)
Using partial-fraction expansion, it can be shown that
K1 K2 K3
Y (s) = + + ,
s s+a s+b
with
KA −KA KA
K1 = , K2 = , K3 = .
ab a(b − a) b(b − a)
The inverse Laplace transform of Y (s) is
y(t) = (K1 + K2 e−at + K3 e−bt ) 1(t) . (3.13)
The steady-state output is
KA
yss = lim y(t) = K1 = = G(0) A
t→∞ ab
and
 
y(t) b −at a −bt
= 1− e + e 1(t) . (3.14)
yss b−a b−a
The fact that the response is monotonic and does not overshoot the steady state can be seen
by calculating the derivative of the foregoing expression:
 
d y(t) ab −at
= (e − e−bt ) ,
dt yss b−a
 
−at −bt d y(t)
b>a e > e , for t > 0 > 0, for t > 0 .
dt yss
Hence, the output increases monotonically towards the steady state. It does not overshoot the
steady state, because if it did so it would have to move toward the steady state with negative
slope. Similar to a first-order transfer function, the monotonic step response of an overdamped
transfer functions is characterized by the rise time Tr (to go from 10% to 90%) and the settling
time Ts (to go from 0 to 98%). However, in this case there are no simple formulas to calculate
Tr and Ts in terms of a and b. They are determined from the simulation of the response.

Critically damped:
For
K
G(s) = , K>0, a>0, (3.15)
(s + a)2
the Laplace transform of the output to the step input u(t) = A 1(t) is
KA
Y (s) = .
s(s + a)2
3-4 STEP RESPONSE 85

Using partial-fraction expansion, it can be shown that

K1 K2 K3
Y (s) = + + ,
s (s + a) (s + a)2

with
KA −KA −KA
K1 = , K2 = , K3 = .
a2 a2 a
Then,
KA  
y(t) = L−1 {Y (s)} = 2
1 − (1 + at)e−at 1(t) , (3.16)
a
KA
yss = lim y(t) = 2 = G(0) A ,
t→∞ a
and
y(t)
= [1 − (1 + at)e−at ] 1(t) . (3.17)
yss

Once again, calculating the derivative of the foregoing expression shows that
 
d y(t)
= a2 te−at > 0 , for t > 0 .
dt yss

Hence, the output increases monotonically towards the steady state and does not overshoot it.
As in the previous case, the monotonic step response is characterized by the rise time Tr and
the settling time Ts , which are determined from the simulation of the response.

Underdamped:
For
K ω n2
G(s) = , ωn > 0 , 0<ζ <1, (3.18)
s2 + 2ζ ω 2
ns + ω n

s2 + 2ζ ω n s + ω n2 = (s + ζ ω n )2 + ω n2 (1 − ζ 2 ) = (s + ζ ω n )2 + ω d2 ,
where p
def
ωd = ωn 1−ζ2 .
The transfer function has a pair of complex poles at −ζ ω n ± jω d ; ω n is the undamped
natural frequency, ω d is the damped natural frequency, and ζ is the damping ratio. The natural
response of the system oscillates with frequency ω d . If there is no damping; that is, if ζ = 0,
G(s) will have a pair of poles on the imaginary axis at ± jω n and the natural response will
have sustained oscillation with frequency ω n .
The Laplace transform of the output to the step input u(t) = A 1(t) is

K ω n2 A
Y (s) = .
s(s2 + 2ζ ω n s + ω n2 )
86 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

ωd ωn
ϕ
ζωn
Figure 3-4: Definition of the angle φ .

By partial-fraction expansion,

KA −KA(s + ζ ω n ) − ζ ω n KA
Y (s) = + ,
s (s + ζ ω n )2 + ω d2
 
−1 − ζ ω nt −ζ ω n t ζ ω n
y(t) = L {Y (s)} = KA 1 − e cos ω d t − e sin ω d t 1(t) , (3.19)
ωd
yss = lim y(t) = KA = G(0) A ,
t→∞
 
y(t) −ζ ω n t − ζ ω nt ζ ω n
= 1−e cos ω d t − e sin ω d t 1(t) . (3.20)
yss ωd

Consider the right-angled triangle of Fig. 3-4 and define the angle φ as shown in the
figure. Then
ζ ωn ωd p
cos φ = = ζ and sin φ = = 1−ζ2 ,
ωn ωn

 
ζ ωn ωn ωd
cos ω d t + sin ω d t = cos ω d t + ζ sin ω d t
ωd ωd ωn
1
= p (sin φ cos ω d t + cos φ sin ω d t)
1−ζ2
1
= p sin(ω d t + φ ) .
1−ζ2

Hence, the step response can be expressed as


!
y(t) 1
= 1− p e−ζ ω nt sin(ω d t + φ ) 1(t) . (3.21)
yss 1−ζ2
3-4 STEP RESPONSE 87

ss p

r p s

Figure 3-5: Step response of underdamped second-order transfer function.

A sketch of this response is shown in Fig. 3-5. The step response is characterized by the
following parameters:
Rise time Tr : Time to go from 10% to 90%
Settling time Ts : Time to go from zero to within 2% of steady state
Peak time Tp : Time of the first peak ymax
Overshoot Mp : (ymax − yss )/yss
Percent overshoot (PO): 100 × Mp
Next, we determine how each of these response parameters depends on the parameters of
the transfer function. Let us start with Tp . The times of maximum and minimum points of the
function y(t)/yss are determined by differentiating the function with respect to t and equating
the derivative to zero.
 
d y(t) −1 h i
= p −ζ ω n e−ζ ω nt sin(ω d t + φ ) + ω d e−ζ ω nt cos(ω d t + φ )
dt yss 1−ζ2
−ω n h p i
= p e−ζ ω nt −ζ sin(ω d t + φ ) + 1 − ζ 2 cos(ω d t + φ )
1−ζ2
−ω n
= p e−ζ ω nt [− cos φ sin(ω d t + φ ) + sin φ cos(ω d t + φ )]
1−ζ2
−ω n −ω n −ζ ω n t
= p e−ζ ω nt sin(ω d t + φ − φ ) = p e sin ω d t .
1−ζ2 1−ζ2
For  
d y(t) kπ
=0 sin ω d t = 0 t= , for k = 0, 1, 2, 3, . . .
dt yss ωd
88 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

k = 0, 1, 2, 3, . . . correspond to points where the response is a maximum or a minimum; k = 1


for the first maximum, k = 2 for the first minimum, k = 3 for the second maximum, and so
on. Thus, for the first maximum Tp = π /ω d , and the maximum is

ymax 1
= 1− p e−ζ ω n Tp sin(ω d Tp + φ ) .
yss 1−ζ2

Since
π ζπ
ω d Tp = π and ζ ω n Tp = ζ ω n = p ,
ωd 1−ζ2
the foregoing expression simplifies to
ymax 1 √ 2
= 1− p e−ζ π / 1−ζ sin(π + φ )
yss 1−ζ2
1 √ 2
= 1+ p e−ζ π / 1−ζ sin φ
1−ζ2
√ 2
= 1 + e−ζ π / 1−ζ .

Hence √ 2
ymax − yss ymax
Mp = = − 1 = e−ζ π / 1−ζ . (3.22)
yss yss
The overshoot depends only on ζ . As ζ increases towards 1, the overshoot decreases. Two
values of ζ that are useful to remember are

ζ PO (% overshoot)
0.5 16.3% < 17%
0.7 4.3% < 5%
The settling time Ts is the first time at which

y(t) − yss
≤ 0.02, for all t ≥ Ts ,
yss
y(t) − yss 1 1
= p e−ζ ω nt sin(ω d t + φ ) ≤ p e−ζ ω nt .
yss 1−ζ 2 1−ζ2

This upper bound is conservative because we replace the absolute value of a sine by its
maximum value of 1. Equating the upper bound at t = Ts to 0.02 yields
!
1
ζ ω n Ts = ln p .
0.02 1 − ζ 2

The right-hand side varies from 3.917 at ζ = 0.1 to 4.742 at ζ = 0.9, so we approximate it by
4 to obtain Ts = 4/(ζ ω n ).
3-4 STEP RESPONSE 89

r ωn
2.5
2.16 ζ + 0.6

1.5

0.5

0
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
ζ

Figure 3-6: Rise-time approximation.

The rise time Tr depends on both ζ and ω n , and there is no simple formula for it. However,
for 0.3 ≤ ζ ≤ 0.75, it can be approximated as

2.16ζ + 0.6
Tr ≈ .
ωn
Figure 3-6 compares Tr × ω n with 2.16ζ + 0.6 for different values of ζ . For 0.3 ≤ ζ ≤ 0.75,
the relative approximation error (100 × ∆Tr /Tr ) is less than 6%.
In summary,

K ω n2
G(s) = , ω n > 0, 0<ζ <1,
s2 + 2ζ ω n s + ω n2
" #
y(t) 1 p
= 1− p e−ζ ω nt sin(ω d t + φ ) 1(t) , ω d = ω n 1 − ζ 2 , cos φ = ζ ,
yss 1−ζ2
π √ 2 4
Tp = , PO = 100 × e−ζ π / 1−ζ , Ts = ,
ωd ζ ωn
2.16ζ + 0.6
Tr ≈ , for 0.3 ≤ ζ ≤ 0.75.
ωn
90 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

Example 3-12: The Step-Response Parameters of a Second-Order Transfer


Function

Compute Tr , Tp , Ts , PO, and yss to a unit step input, for each of the following transfer functions.
100
(a) G(s) = √
s2 + 8
2s + 64
9
(b) G(s) = 2
s + 3s + 9

Solution:
(a) The form of G(s) matches the underdamped transfer function defined by Eq. (3.18). Hence,
√ 1 p 8
ω n2 = 64 and 2ζ ω n = 8 2 ωn = 8 , ζ= √ , ωd = ωn 1−ζ2 = √ ,
2 2
2.16ζ + 0.6 2.16 × 0.707 + 0.6
Tr ≈ = = 0.2659 s,
ωn 8
π π 4 4
Tp = = √ = 0.5554 s, Ts = = √ = 0.707 s,
ω d 8/ 2 ζ ωn 4 2
√ 2
PO = 100 × e−ζ π / 1−ζ = 100 × e−π = 4.3%,
100
yss = G(0) = .
64
(b) This is also an underdamped transfer function with

1 p 3 3
ω n2 = 9 and 2ζ ω n = 3 ωn = 3 , ζ= , ωd = ωn 1−ζ2 = ,
2 2
2.16ζ + 0.6 2.16 × 0.5 + 0.6
Tr ≈ = = 0.56 s ,
ωn 3
π π 4 4
Tp = = √ = 1.21 s, Ts = = = 2.67 s,
ω d 3 3/2 ζ ω n 1.5
√ √
2
PO = 100 × e−ζ π / 1−ζ = 100 × e−π 3 = 16.3%,
yss = G(0) = 1 .

3-4.3 Effect of Zeros


The step response for the underdamped transfer function calculated in the previous examples,
together with Tr , Tp , Ts , and PO, are valid when the transfer function has no zero. The presence
of a zero can affect the response in a significant way. The zero could be in the left-half plane
or the right-half plane. We consider these two cases separately.
3-4 STEP RESPONSE 91

Effect of zero in the left-half plane (minimum-phase system)


The transfer function 
K ω n2 1 + as
G(s) = 2 , a>0 (3.23)
s + 2ζ ω n s + ω n2
has a zero at s = −a < 0. With a step input u(t) = A 1(t), we have

KAω n2 1 + as KAω n2 KAω n2 s/a
Y (s) = 2 = + , (3.24)
s(s + 2ζ ω n s + ω n2 ) s(s2 + 2ζ ω n s + ω n2 ) s(s2 + 2ζ ω n s + ω n2 )
| {z } | {z }
s
Y1 (s) a Y1 (s)

where y1 (t) is the step response of the transfer function with no zero. The inverse Laplace
transform yields
1 dy1
y(t) = y1 (t) + .
a dt
Since y1 (t) is increasing for small t, its derivative dy1 /dt is positive, and (1/a) dy1 /dt
contributes to faster rise and larger overshoot. When the zero is far to the left; that is, a is
large, y(t) ≈ y1 (t). As the zero approaches the origin, the overshoot increases.

Example 3-13: Effect of Zero in the Left-Half Plane

Figure 3-7 shows the step response of the transfer function (1 + s/a)/(s2 + s + 1) for three
different values of a, compared with the step response of 1/(s2 + s + 1) (no zero). As the zero
approaches the origin, the rise time is smaller and the overshoot is larger. Table 3-1 compares
the percent overshoot for a = 10, 5, 2, 1, 0.5, and 0.25 with the percent overshoot when there
is no zero.

Step Response No zero


2 a=2
a=1
1.5
Amplitude

a = 0.5
1

0.5

0
0 1 2 3 4 5 6 7 8
Time (seconds)

Figure 3-7: Effect of left-half-plane zero.


92 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

Table 3-1: Percent overshoot for different values of a.

a No zero 10 5 2 1 0.5 0.25


PO 16.29 16.38 16.68 19.1 29.8 69.9 171.2

Effect of zero in the right-half plane (non-minimum-phase system)

The transfer function



K ω n2 1 − as
G(s) = 2 , a>0 (3.25)
s + 2ζ ω n s + ω n2

has a zero at s = a > 0. Repeating the steps in the previous case, the step response can be
expressed as
1 dy1
y(t) = y1 (t) − ,
a dt
where y1 is the step response when there is no zero. Once again, dy1 /dt is positive for small t,
so that the effect of the zero is to push the response in the negative direction. In particular, at
the starting point
1 dy1 +
y(0+ ) = y1 (0+) − (0 ) < 0 .
| {z } a |dt {z }
=0
>0

The response undershoots the commanded input because it moves in the opposite direction
before it turns around to approach the steady state. When the zero is far to the right, that is,
when a is large, y(t) ≈ y1 (t). As the zero approaches the origin, the undershoot increases.

Example 3-14: Effect of Zero in the Right-Half Plane

Figure 3-8 shows the step response of the transfer function (1 − s/a)/(s2 + s + 1) for three
different values of a, compared with the step response of 1/(s2 + s + 1) (no zero). As the zero
approaches the origin, the undershoot is larger.

In summary,

◮ When the zero is far to the left or far to the right, its effect on the step response is
negligible. As the zero approaches the origin, its effect increases. For minimum-phase
systems the rise time decreases and the overshoot increases, while for non-minimum-
phase systems the undershoot increases. ◭
3-4 STEP RESPONSE 93

Step Response
1.5

Amplitude 1

0.5 No zero
0 a=2
–0.5
a=1
a = 0.5
–1
0 1 2 3 4 5 6 7 8
Time (seconds)

Figure 3-8: Effect of right-half-plane zero.

3-4.4 Approximation of Higher-Order Transfer Functions


We have derived the step response for a first-order transfer function of the form b0 /(s + a0 )
and a second-order transfer function of the form b0 /(s2 + a1 s + a0 ). What about higher-order
transfer functions? In general, calculating the step response would be very complicated and
we need to use computer simulation to find it. However, there are special cases where the step
response of a higher-order transfer function can be approximated by a first-order or second-
order transfer function. Two such cases are discussed next for approximation by a second-
order transfer function; similar discussion can be carried out for approximation by a first-order
transfer function.
Case 1: Additional poles are farther to the left than a pair of dominant poles
We illustrate this case by considering the transfer function
b0
G(s) = 2
, (3.26)
(s + a1 s + a0 )(s + α1 )(s + α2 )
where all the coefficients are positive. Suppose the poles −α1 and −α2 are farther to the
left than the dominant poles, which are the roots of s2 + a1 s + a0 . For convenience suppose
α1 , α2 , and let us represent them as α1 = γ1 α and α2 = γ2 α , where γ2 > γ1 > 0. As α
increases, these two poles move farther to the left. The dc gain of G(s) is G(0) = b0 /(a0 α1 α2 ).
Writing G(s) in terms of G(0), we obtain

G(0)a0 α1 α2 G(0)a0 γ1 γ2 α 2
G(s) = = .
(s2 + a1 s + a0 )(s + α1 )(s + α2 ) (s2 + a1 s + a0 )(s + γ1 α )(s + γ2 α )
The Laplace transform of the output to a step input of amplitude A is

G(0)a0 γ1 γ2 α 2 A
Y (s) = .
s(s2 + a1 s + a0 )(s + γ1 α )(s + γ2 α )
94 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

By partial-fraction expansion,
K1 K2
Y (s) = + + ···
s + γ1 α s + γ2 α

The dots stand for the additional terms of the expansion. The residues K1 and K2 are given by

G(0) a0 γ1 γ2 α 2 A G(0) a0 γ1 γ2 A
K1 = 2
= ,
−γ1 α (γ1 α 2 − a1 γ1 α + a0 )(−γ1 α + γ2 α ) −γ1 (γ12 α 2 − a1 γ1 α + a0 )(γ2 − γ1 )
G(0) a0 γ1 γ2 α 2 A G(0) a0 γ1 γ2 A
K2 = = .
−γ2 α (γ22 α 2 − a1 γ2 α + a0 )(−γ2 α + γ1 α ) 2 2
γ2 (γ2 α − a1 γ2 α + a0 )(γ2 − γ1 )

The inverse Laplace transform yields



y(t) = K1 e−γ1 α t + K2 e−γ2 α t + · · · 1(t) . (3.27)

For large α , the exponential terms e−γ1 α t and e−γ2 α t decay to zero faster than the terms due
to the dominant poles. Moreover, the residues K1 and K2 are small for large α ; in particular,
limα →∞ K1 = 0 and limα →∞ K2 = 0; Therefore, for large α , the contribution of the additional
poles to the step response is negligible. How much farther to the left should the additional
poles be for the approximation to be acceptable? The rule of thumb is:

◮ The additional poles should be five times farther to the left than the dominant poles for
acceptable approximation. A very good approximation is typically achieved if they are
ten times farther to the left. ◭

In neglecting the additional poles, care should be taken not to change the dc gain of the transfer
function. This can be done by expressing the term in the denominator due to the pole in the
form (τ s + 1) and then setting τ = 0. For the foregoing example, let τ1 = 1/α1 and τ2 = 1/α2 ,
and rewrite the transfer function as
G(0) a0
G(s) = 2
, (3.28)
(s + a1 s + a0 )(τ1 s + 1)(τ2 s + 1)

with
G(0)a0
τ1 ≈ 0 and τ2 ≈ 0 G(s) ≈ .
(s2 + a1 s + a0 )
3-4 STEP RESPONSE 95

Example 3-15: Approximation of a Third-Order Transfer Function

The transfer function


1
(s2 + s + 1)(τ s + 1)

has a pair of complex poles at −0.5 ± 0.5 3 j and a third pole at −1/τ . According to the rule
of thumb, it can be approximated by
1
2
s +s+1
if
1/τ
≥ 5, i.e., τ < 0.4 .
0.5
Figure 3-9 shows the step responses of the second-order and third-order transfer functions
for two different value of τ :
1/τ 1
τ =1 = =2,
0.5 0.5
1/τ 4
τ = 0.25 = =8.
0.5 0.5
The case τ = 0.25 is within the range of the rule of thumb, while τ = 1 is not. The figure
shows good approximation in the first case, and not so good approximation in the second
case.
Case 2: Additional poles are very close to zeros (almost pole-zero cancellation)

Step Response

1
Amplitude

0.5

0
0 1 2 3 4 5 6 7 8
Time (seconds)

Figure 3-9: Approximation of a high-order transfer function.


96 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

We illustrate this case by the transfer function

b0 (s + β )
G(s) = 2
,
(s + a1 s + a0 )(s + α )

where all coefficients are positive and α ≈ β . For the step input u(t) = A 1(t),

b0 (s + β )A
Y (s) = 2
.
s(s + a1 s + a0 )(s + α )

Partial-fraction expansion yields

K
Y (s) = + ··· ,
s+α

where
b0 (−α + β )A
K= ,
−α (α 2 − a1 α + a0 )

α ≈β β −α ≈ 0 K ≈0.

Thus, the effect of the pole at −α on the step response is negligible. The pole-zero cancellation
is performed while preserving the dc gain by writing G(s) as

b0 (β /α )(s/β + 1) b0 (β /α )
G(s) = 2
≈ 2
.
(s + a1 s + a0 )(s/α + 1) (s + a1 s + a0 )

Example 3-16: Approximation of a Third-Order Transfer Function with Almost


Pole-Zero Cancellation

The third-order transfer function

(s + z)
(s2 + s + 1)(s + 1)

can be approximated by the second-order transfer function

z
(s2 + s + 1)

if z is close enough to 1.
3-4 STEP RESPONSE 97

Figure 3-10 shows the step responses of the second-order and third-order transfer functions
for z = 0.5, 1.1, and 2. For z = 0.5 and 2, the zero is not close enough to the pole at −1
and the responses are not close to each other. For z = 1.1, the two responses are almost
indistinguishable.

Step Response Step Response


0.8 1.5

0.6
Amplitude

Amplitude
1
0.4
2nd order 0.5
0.2 3rd order
0 0
0 5 10 0 5 10
Time (seconds) Time (seconds)
Step Response
2.5

2
Amplitude

1.5

0.5

0
0 5 10
Time (seconds)

Figure 3-10: Approximation by pole-zero cancellation.


98 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

Summary
Concepts
• The system is stable when its output is bounded for every bounded input.
• The system is stable when R∞
– its impulse response function satisfies 0 |g(t)| dt < ∞.
– its poles have negative real parts.
• The system is marginally stable when all its poles have nonpositive real parts and
poles with zero real parts are simple
• Using the Routh-Hurwitz criterion we can determine stability without calculating
the poles of the transfer function
• The steady-state response of a stable transfer function to
– a step input is a constant equal to the amplitude of the input multiplied by the
dc gain.
– a sinusoidal input is a sinusoidal signal having the same frequency as the
input, with the amplitude and phase modified by the frequency response.
– a periodic input is a periodic signal having the same period as the input.
• The step response is monotonic for first-order transfer functions and also for
overdamped and critically damped second-order transfer functions.
• The step response is oscillatory for underdamped second-order transfer functions.
• A zero in the left-half complex plane increases the overshoot.
• A zero in the right-half complex plane causes undershoot.
• The effect of a zero is negligible if it is far to the left or far to the right in the
complex plane relative to the dominant poles.
• A higher-order transfer function can be approximated by a second-order transfer
function if
– extra poles are far to the left in the complex plane relative to the dominant
poles;
– extra poles are very close to zeros (almost resulting in pole-zero cancellation).
3-4 STEP RESPONSE 99

Mathematical Models
Step input: u(t) = A 1(t)
Steady-state response:
dc gain G(0)
Steady-state output yss = G(0) A
Transient response:
G(s) = K/(s + a):
Output y(t) = yss (1 − e−t/τ ) 1(t)
Time constant τ = 1/a
Rise time Tr = 2.2τ (10% to 90% of yss )
Settling time Ts = 4τ (0 to 98% of yss )
G(s) = K ω n2 /(s2 + 2ζ ω n s + ω n2 ):
Damping ratio ζ <1
Undamped natural frequency ω n p
Damped natural frequency ωd = ωn 1 − ζ 2
Angle φ cos φ = ζ " #
1 −ζ ω n t
Output y(t) = yss 1 − p e sin(ω d t + φ ) 1(t)
1−ζ2
Rise time Tr (10% to 90% of yss )
≈ (2.16ζ + 0.6)/ω n , for 0.3 ≤ ζ ≤ 0.75
Settling time Ts = 4/(ζ ω n ) (0 to within 2% of yss )
Peak time Tp = π /ω d (time of first peak) √
Percent overshoot PO = 100 (ymax − yss )/yss = 100 e−ζ π / 1−ζ 2

Important Terms Provide definitions or explain the meaning of the following


terms:
BIBO stability minimum-phase system Routh-Hurwitz criterion
damped natural frequency natural response settling time
damping ratio non-minimum-phase steady-state response
dc gain system transient response
forced response overshoot undamped natural frequency
frequency response peak time undershoot
marginal stability rise time
100 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

PROBLEMS
3.1 For each of the following transfer functions, determine whether the system is stable or
unstable. If it is unstable, determine whether it is marginally stable.
s+3
(a) G(s) =
(s + 1)(s + 2)(s + 5)
s−3
(b) G(s) =
(s + 1)(s − 2)(s + 5)
1
(c) G(s) = 2
s
s−2
(d) G(s) =
(s + 1)(s2 + 4)
s−3
(e) G(s) =
(s + 1)(s + 2)(s + 5)
2(s4 + 1)
(f) G(s) = 2
(s + s + 1)(s + 1)(s + 2)
3.2 Repeat the previous problem for each of the following transfer functions.
s+2
(a) G(s) =
(s + 1)(s2 + 4)
4
(b) G(s) = 2
s −9
s+2
(c) G(s) =
(s + 1)(s2 + 4)2
s+3
(d) G(s) =
(s + 1)(s − 2)(s + 5)
2
(e) G(s) = 2
(s − s + 1)(s + 1)(s + 2)
s+2
(f) G(s) =
(s − 1)(s2 + 4)(s + 5)
3.3 For each of the following transfer functions, use the Routh-Hurwitz criterion to
determine whether the system is stable or unstable. If it is unstable, determine whether it
is marginally stable. If it is unstable but not marginally stable, determine how many poles are
in the right-half plane.
2s2 − 8s − 10
(a) G(s) = 4
s + 8s3 + 23s2 + 28s + 12
5s + 5
(b) G(s) =
s4 + 3s3 + 3s2 + 3s + 2
s2 + 3s + 1
(c) G(s) =
s4 + 2s2 + 1
PROBLEMS 101

1
(d) G(s) =
s4 + 7s3 + 17s2 + 17s + 6
8s + 1
(e) G(s) =
s4 + 3s3 + 3s2 + 9s + 1
3.4 Repeat the previous problem for each of the following transfer functions.
1
(a) G(s) = 4 3 2
s +s +s +s+1
s2 − 4s + 2
(b) G(s) =
s4 + 5s3 + 9s2 + 7s + 2
2
(c) G(s) =
s5 + 5s4 + 10s3 + 10s2 + 5s + 1
2
(d) G(s) =
s6 + 7s5 + 20s4 + 30s3 + 25s2 + 11s + 2
4
(e) G(s) =
s4 + 4s3 + 3s2 − 4s − 4
3.5 Consider the feedback control system of Fig. 3-1 where Gc (s) = K ≥ 0. For each of the
following cases of G p (s), find the range of K for which the system is stable.
4(s + 1)
(a) G p (s) = 3
s + 9s2 + 26s + 24
10
(b) G p (s) =
s4 + 10s3 + 35s2 + 50s + 24
s+1
(c) G p (s) =
s3 + 4s2 + s − 6
4(s − 1)
(d) G p (s) =
s3 + 9s2 + 26s + 24
3.6 Estimate Tr , Tp , Ts , PO, and yss to a unit step input, for each of the following transfer
functions. Then, use MATLAB to find these quantities and compare with your estimates.
10
(a) G(s) = 2
s + 2s + 5
9
(b) G(s) =
s2 + 4.2s + 9
3
(c) G(s) =
s2 + 0.6s + 1
8
(d) G(s) =
(s2 + 2s + 4)(s + 8)
(s + 8)
(e) G(s) =
s2 + 1.73s + 3
102 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

10
(f) G(s) =
(s2 + s + 1)(s + 10)

3.7 Repeat the previous problem for each of the following transfer functions.
(8 − s)
(a) G(s) =
s2 + 2.45s + 3
(s + 8)
(b) G(s) =
(s2 + 2s + 4)(s + 10)
(s + 0.9)
(c) G(s) =
(s2 + 2s + 4)(s + 1)
(s + 0.9)
(d) G(s) =
(s2 + s + 1)(s + 1)(s + 10)
80
(e) G(s) =
(s2 + s + 1)(s + 8)(s + 10)

3.8 Use MATLAB to plot the response of the transfer function

3
G(s) =
(s2 + s + 1)(s + 1)(s + 3)

to each of the following inputs. For the first three cases determine the steady state and
comment on it in view of the conclusions of Section 3-3.
(a) Unit step input u(t) = 1(t)
(b) Sinusoidal input u(t) = sin 3t
(c) Periodic input u(t) = sint + 0.3 sin(3t) + 0.1 sin(5t)
(d) Ramp input u(t) = t 1(t)

3.9 Repeat Problem 3.8 for the transfer function

s+2
G(s) = .
s2 + 2s + 4

3.10 Repeat Problem 3.8 for the transfer function

s+2
G(s) = .
(s2 + 2s + 4)(s + 3)
PROBLEMS 103

3.11 For each of the unit step responses shown in Fig. P3.11, model the system by a transfer
function. Then, find the step response using MATLAB and compare with the one in Fig. P3.11.

Step Response Step Response


2 1

1.5 (a) (b)


Amplitude

Amplitude
1 0.5

0.5

0 0
0 2 4 6 8 0 0.5 1 1.5
Time (seconds) Time (seconds)
Step Response Step Response
2
2
1.5
Amplitude

Amplitude

1.5
1 (c) (d)
1
0.5 0.5

0 0
0 2 4 6 0 1 2 3
Time (seconds) Time (seconds)

Figure P3.11: Problem 3.11.

3.12 Explain why the step responses of the following four transfer functions are close to
each other:
4
(a) 2
s + 2s + 4
4
(b) 2
(s + 2s + 4)(0.1s + 1)
4(0.1s + 1)
(c)
s2 + 2s + 4
4(2.1s + 1)
(d) 2
(s + 2s + 4)(2s + 1)
104 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

3.13 Find the transfer function of the system whose unit step response is shown in
Fig. P3.13.

Step Response
3

2.5

2
Amplitude

1.5

0.5

0
0 1 2 3 4 5 6 7 8 9 10
Time (seconds)

Figure P3.13: Problem 3.13.

3.14 Show that the automobile suspension system of Example 2-11 is stable.
3.15 Consider the automobile suspension system of Example 2-11 with the parameters
Ms = 973 kg, Mus = 114 kg, ks = 42720 N/m, kt = 101115 N/m, and Cs = 1095 N·s/m [13].
We will simulate the response of the system to an isolated bump in an otherwise smooth
surface. The road displacement is defined by
 A 
2 1 − cos 2πυ
L
t
if 0 ≤ t ≤ υL ,
S(t) =
0 if t > υL ,

where A and L are the height and length of the bump and υ is the forward speed of the
automobile. A = 0.06 m and L = 5 m.
(a) Plot the body acceleration ÿs and the suspension stroke ys − yus for t ∈ [0, 10] s when
υ = 15 m/s and when υ = 30 m/s.
(b) Repeat (a) when Cs = 500 N·s/m.
PROBLEMS 105

(c) Comment on the results.


3.16 Engine idle is frequently encountered in city driving. The objective of idle speed
control is to maintain the engine speed at a desired set point in the presence of various load
disturbances due to air conditioning, power windows, etc. Two control inputs are usually used
in idle speed control: spark timing and air flow (regulated by the throttle or a bypass valve).
For the purpose of this problem, we consider only air flow. Figure P3.16 shows a linearized
model for a typical eight-cylinder engine [7]. In this figure, the control input ∆u is the change
of the bypass valve, the disturbance input ∆TL is the change of the load torque, and the output
∆N is the change of the engine speed; all changes are from the corresponding nominal values.
The time delay is due to the digital implementation of the controller. It is modeled in [7]
to be 0.04 s. The transfer function of the delay should be e−0.04s but we will use the Padé
approximation
1 − (0.04/2)s + (0.04)2 s2 /12
H(s) = .
1 + (0.04/2)s + (0.04)2 s2 /12

∆ TL
Manifold dynamics Delay Engine dynamics
∆u + 7.89 + − 34.96 ∆N
∑ 11.15 H(s) ∑
0.195s+1 0.227s+1

Engine pumping
0.00093

Figure P3.16: Linearized model of typical eight-cylinder engine for idle speed control.

(a) Find the transfer functions from ∆u to ∆N and from ∆TL to ∆N.
(b) Find the poles of the transfer function with and without delay. By “without delay” we
mean ignoring the delay by taking H(s) = 1.
(c) Plot the unit step response from ∆u and ∆TL with and without delay.
(d) Comment on the effect of the delay.
3.17 A synchronous generator connected to an infinite bus is modeled by [30]
δ̈ = −b1 Eq sin δ − b2 δ̇ + P ,
Ėq = b3 cos δ − b4 Eq + EF ,
where δ is the load angle in radians, Eq is the quadrature axis internal voltage, P is the
mechanical input power, and EF is the field voltage (input). The coefficients b1 to b4 are
positive. When P = P⋆ and EF = EF⋆ are positive constants, the equilibrium points (δ ⋆ , Eq⋆ ) of
the system satisfy the equations
0 = −b1 Eq⋆ sin δ ⋆ + P⋆ , 0 = b3 cos δ ⋆ − b4 Eq⋆ + EF⋆ .
106 CHAPTER 3. STABILITY AND DYNAMIC RESPONSE

It can be shown that when P⋆ < b1 EF⋆ /b4 , there is a unique equilibrium point in the range
0 < δ < π /2, which is the equilibrium point of interest. Assume that

b4 Eq⋆ cos δ ⋆ − b3 sin2 δ ⋆ > 0 .

Writing δ = δ ⋆ + y, Eq = Eq⋆ − x, and EF = EF⋆ − u, a linearized model of the system near the
equilibrium point is shown in the block diagram of Fig. P3.17.
(a) Find the transfer function Gp (s) = Y (s)/U (s).
(b) Using the Routh-Hurwitz criterion, verify that Gp (s) is stable.

U + 1 X b1 sin δ Y

s+ b4 s 2 + b2 s+ b1 Eq cos δ
+

b3 sin δ

Figure P3.17: Linearized model of a synchronous generator connected to an infinite bus.


Chapter 4
Feedback Control Systems
Chapter Contents Objectives

Overview, 108 Upon learning the material presented in this chapter, you
4-1 Stability, 108 should be able to:
4-2 The Root Locus Method, 110
4-3 Steady-State Error, 126 1. Study the stability of feedback control systems.
4-4 Effect of Disturbance, 133 2. Use the root locus method to study how the
4-5 Plant Parameter Uncertainty, 136 closed-loop poles change as the loop gain changes.
4-6 Effect of Measurement Noise, 139
4-7 Control Constraints, 140 3. Compute the steady-state tracking error for step,
4-8 Why Use Closed-Loop Instead of ramp, and parabola reference inputs.
Open-Loop?, 142 4. Study the effect of disturbance, plant parameter
Chapter Summary, 144 uncertainty, and measurement noise on the
Problems, 145 performance of the system.
5. Understand the effect of control constraints.
6. Compare open-loop and closed-loop control systems.

107
108 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Overview

In this chapter we look at the main features of feedback control systems. Without doubt,
the most important feature is stability. The feedback system must be designed to be stable,
whether or not the plant is stable. Stability is characterized in Section 4-1 in terms of the roots
of the characteristic equation. This characterization is carried out further in Section 4-2 by
developing the root locus method that allows us to study how the roots of the characteristic
equation change as some parameter of the system changes. Implicit in the stabilization of the
system is the assignment of the closed-loop poles, which, together with the closed-loop zeros,
shape the transient response of the system. Once we guarantee the stability of the system,
the next most important feature is the ability of the system to track the desired reference
signal. Section 4-3 characterizes the steady-state tracking error for three typical reference
signals: the step, the ramp, and the parabola. The performance of the feedback system is
affected by external factors beyond our control. Sections 4-4 to 4-6 describe three such factors:
disturbance, plant parameter uncertainty, and measurement noise. The effects of the first two
factors can be reduced by designing a tight feedback loop; that is, a feedback loop with high
loop gain. Such a design does not reduce the affect of measurement noise, and design trade-
offs, usually done in the frequency domain, need to be made to address all three effects.
The performance of feedback control systems is limited by our inability to make the control
signal arbitrarily large since the control input to any plant has to satisfy certain constraints.
Section 4-7 discusses control constraints. Finally, Section 4-8 summaries the pros and cons of
feedback control systems when compared with open-loop control.

4-1 Stability

A typical configuration of the feedback control system is shown in Fig. 4-1(a), where Gp (s)
is the transfer function of the plant (that is, the system to be controlled), Gc (s) is the transfer
function of the controller or compensator, and H(s) is the transfer function of the sensor
that measures the output y. The input r is the reference signal to be tracked by the output y
according to certain design specifications. Define G(s) = Gp (s) Gc (s) and redraw the system

r + u y r + y
∑ Gc (s) Gp (s) ∑ G(s)
− −

H(s) H(s)

(a) (b)

Figure 4-1: Feedback control system.


4-1. STABILITY 109

as in Fig. 4-1(b). The closed-loop transfer function is then given by


Y (s) G(s) def
= = T (s) . (4.1)
R(s) 1 + G(s) H(s)
The closed-loop system is stable when the poles of T (s) (called closed-loop poles) have
negative real parts. The poles of T (s) are the roots of the characteristic equation
1 + G(s) H(s) = 0 . (4.2)
Investigating the stability of the closed-loop system is usually done by investigating the roots
of the characteristic equation.

Example 4-1: PI Control of a dc Motor

We saw in Chapter 2 that an armature-controlled dc motor with the armature voltage va as


the control input and the motor speed ω m as the output is represented by the transfer function
given by Eq. (2.31c):
Km
Gp (s) = .
τm s + 1
In speed control problems, the motor speed ω m is required to track a reference signal ω r .
A common controller in such problems is the PI (Proportional-Integral) controller, represented
by
KI KP s + KI
Gc (s) = KP + = ,
s s
with positive gains KP and KI . Suppose that the sensor that measures the motor speed has
transfer function H(s) = 1. Upon using G(s) = Gp (s) Gc (s) in Eq. (4.2), the characteristic
equation of the closed-loop system is given by
  
KP s + KI Km
1+ =0.
s τm s + 1
Multiplication by s(τm s + 1) and division by τm yields the polynomial equation
 
1 + KPKm KI Km
s2 + s+ =0.
τm τm
The roots of this equation are the closed-loop poles of the system. In the design of the
controller gains KP and KI , suppose we fix the ratio KI /KP and then examine how changing
the gain KP changes the closed-loop poles. Then
KP Km (s + KI /KP )
G(s) H(s) = .
τm s(s + 1/τm )
Defining
KP Km (s + KI /KP )
K= and L(s) = ,
τm s(s + 1/τm )
110 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

the characteristic equation is then given by


1 + K L(s) = 0 ,
where L(s) is given and the roots of the equation change with K. Studying how the roots
change as K changes is the subject of the root locus method of the next section.

4-2 The Root Locus Method


Consider the feedback control system of Fig. 4-1(b). The transfer function G(s) H(s), which
we write as GH(s), is called the open-loop transfer function. Let GH(s) = K L(s) where
K ≥ 0 is a constant and
Qm
(s − zi ) (s − z1 )(s − z2 ) × · · · × (s − zm )
L(s) = ni=1
Q = , m≤n. (4.3)
i=1 (s − pi ) (s − p1 )(s − p2 ) × · · · × (s − pn )
L(s) has m zeros at z1 , z2 , . . . , zm and n poles at p1 , p2 , . . . , pn . They are called the open-loop
zeros and poles, respectively, because they are the zeros and poles of the open-loop transfer
function GH(s). Note that L(s) is a ratio of two monic polynomials; that is, polynomials
where the coefficient of the highest power of s is one. There is no loss of generality in this
representation because if the numerator or denominator polynomial of GH(s) is not monic,
the coefficient of the highest power of s can be factored out and included in the definition of
the constant K, as it was done in Example 4-1.
The roots of the characteristic equation
1 + K L(s) = 0 (4.4)
vary as K varies. The root locus method provides simple rules that allow us to sketch the
locus in the complex plane of each root of the characteristic equation as K varies from zero
to infinity. The rules are derived from two criteria, known as the magnitude criterion and the
phase (or angle) criterion. Let the complex number s be a root of the characteristic equation
represented by Eq. (4.4). Then, for K > 0,
K L(s) = −1 . (4.5)
For the complex number K L(s) to be equal to −1, its magnitude must be one and its angle an
odd multiple of 180◦ ; that is,
K|L(s)| = 1 , (4.6)

∠L(s) = k × 180 , k = ±1, ±3, ±5, . . . (4.7)
Equation (4.6) is the magnitude criterion and Eq. (4.7) is the phase (angle) criterion. In
writing the foregoing two equations, we used the fact that K is a real positive constant so
that |K L(s)| = K|L(s)| and ∠K L(s) = ∠L(s). Using the form of L(s) from Eq. (4.3), we see
that the magnitude and phase criteria can be written as
Qm
|s − zi |
K Qni=1 =1 (4.8)
i=1 |s − pi |
4-2. THE ROOT LOCUS METHOD 111

and
m
X n
X
∠(s − zi ) − ∠(s − pi ) = k × 180◦ , k = ±1, ±3, ±5, . . . (4.9)
i=1 i=1

These equations can be represented graphically in the complex plane. Recall that if A and B
are complex numbers represented by points A and B in the complex plane, then the complex
number A − B is represented by a vector originating at B and terminating at A. The length
of this vector is |A − B| and its angle with respect to the real axis is ∠(A − B). With this
representation, if s is a root of the characteristic equation, we draw the lines connecting s to
the open-loop poles and zeros. Figure 4-2 shows a case with three poles and one zero. From
the graph, the length and angle of each line can be determined. Then, Eq. (4.8) shows that
Product of distances from poles
K= , (4.10)
Product of distances from zeros
and Equation (4.9) shows that
sum of angles from zeros − sum of angles from poles = k × 180◦ , k = ±1, ±3, ±5, . . .
(4.11)

|s − p 2 | s

(s − p 2 )

|s − p1 |
|s − z 1 |
p2×
|s − p3 |
(s − z1 ) (s − p1 )

z1 p×1
(s − p3 )
p3×

Figure 4-2: Graphical representation in the complex plane of a root s for a case with three poles
and one zero.

4-2.1 Rules for Constructing the Root Locus


Multiplying the characteristic equation 1 + K L(s) = 0 by the denominator of L(s) yields
n
Y m
Y
(s − pi ) + K (s − zi ) = 0 . (4.12)
i=1 i=1

This is a polynomial of degree n; hence, there are n roots. As K varies, each root varies along
a certain curve; hence the root locus has n branches. At K = 0 the roots are p1 to pn .
112 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Rule #1: There are n branches of the root locus and they start at the poles of L(s) at
K = 0.

The polynomial equation given by Eq. (4.12) has real coefficients; hence, its complex roots
must be in conjugate pairs.

Rule #2: The root locus is symmetric with respect to the real axis.

Consider two points s1 and s2 on the real axis, as shown in Fig. 4-3. The figure shows also the
locations of the zeros and poles of L(s) for a case of two zeros and six poles. The point s1 is
to the left of an odd number of poles and zeros on the real axis, counted together (three in this
case), while the point s2 is to the left of an even number (two in this case). For s1 ,

∠(s1 − p1 ) = ∠(s1 − p2 ) = ∠(s1 − z1 ) = 180◦ ,


∠(s1 − z2 ) = ∠(s1 − p3 ) = ∠(s1 − p4 ) = 0 ,
∠(s1 − p5 ) = φ , ∠(s1 − p6 ) = 360◦ − φ .

Therefore,
2 6
Σi=1 ∠(s1 − zi ) − Σi=1 ∠(s1 − pi ) = 180 − (180 + 180 + φ + 360 − φ ) = −3 × 180 .

From the angle criterion, as stated in Eq. (4.11), we see that s1 lies on the root locus. For s2 ,

∠(s2 − p1 ) = ∠(s2 − p2 ) = 180◦ ,


∠(s2 − z1 ) = ∠(s2 − z2 ) = ∠(s2 − p3 ) = ∠(s2 − p4 ) = 0 ,
∠(s2 − p5 ) = θ , ∠(s2 − p6 ) = 360◦ − θ .

Therefore,
2 6
Σi=1 ∠(s2 − zi ) − Σi=1 ∠(s2 − pi ) = 0 − (180 + 180 + θ + 360 − θ ) = −4 × 180 .

ϕ
×p
5

s1
× × × ×
z2 p4 p3 z1 s2 p2 p1
360˚− ϕ
×
p6

Figure 4-3: Explanation of Rule #3.


4-2. THE ROOT LOCUS METHOD 113

The point s2 does not satisfy the angle criterion; it is not on the root locus. Repeating these
calculations for other points on the real axis, we arrive at the same conclusions.

Rule #3: Any segment of the real axis to the left of an odd number of poles and zeros,
counted together, lies on the root locus.

Next, we study the asymptotic behavior of the roots of the characteristic equation as
K → ∞. We start with a second-order example.

Example 4-2: Root Locus of a Second-Order System

Compute the roots of the characteristic equation

s+1
1+K =0.
s(s + 2)

Solution:
s+1
1+K =0 s2 + (2 + K)s + K = 0 .
s(s + 2)
There are two roots at
p s !
−(2 + K) ± (2 + K)2 − 4K 2+K 4K
s1,2 = =− 1∓ 1− .
2 2 (2 + K)2

For small |x|, 1 + x ≈ 1 + x/2. Therefore, as K → ∞,
  
2+K 2K
s1,2 ≈ − 1∓ 1− .
2 (2 + K)2

Thus
K
lim s1 = lim − = −1 ,
K→∞ K→∞ 2 + K
K
lim s2 = lim −(2 + K) + = −∞ .
K→∞ K→∞ 2+K

As K → ∞, one root approaches the open-loop zero at −1 and the other root tends to ∞ along
the negative real axis.
114 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Now consider the general case. Dividing Eq. (4.12) by K results in


n m
1Y Y
(s − pi ) + (s − zi ) = 0 .
K
i=1 i=1

As K → ∞, m roots approach the open-loop zeros z1 to zm . If n = m, this covers all the roots.
If n > m, the remaining n − m roots tend to infinity. Let us now reveal the pattern by which
these n − m roots approach infinity. As |s| → ∞, the terms with higher power of s dominate.
We shall approximate L(s) by keeping the two most dominant terms.
Qm P P
(s − zi ) sm − sm−1 m i=1 zi + · · · sm − sm−1 m i=1 zi
L(s) = Qni=1 = n n−1
P n ≈ n − sn−1
P n .
i=1 (s − pi ) s − s p
i=1 i + · · · s i=1 pi

Multiplying the numerator and denominator by s−m yields


P
1 − s−1 m z
L(s) ≈ n−m n−m−1i=1 Pni .
s −s i=1 pi

For small |x|, 1 − x ≈ 1/(1 + x). So we can approximate L(s) further as


1
L(s) ≈ Pn Pm
(sn−m − sn−m−1 i=1 pi ) (1 + s−1 i=1 zi )
1
= Pn Pm Pm Pn .
sn−m − sn−m−1 ( i=1 pi − i=1 zi ) − s
n−m−2
i=1 zi i=1 pi

Once again we keep the two most dominant terms in the denominator, to obtain
1
L(s) ≈ Pn Pm .
sn−m − sn−m−1 ( i=1 pi − i=1 zi )

Define Pn Pm
i=1 pi − i=1 zi
σ=
n−m
and rewrite L(s) as
1
L(s) ≈ .
sn−m − sn−m−1 (n − m)σ
Alternatively,

(s − σ )n−m = sn−m − (n − m)σ sn−m−1 + · · · ≈ sn−m − (n − m)σ sn−m−1 .

Hence, as |s| → ∞,
1
L(s) ≈ .
(s − σ )n−m
Substitution of this approximation in the equation K L(s) = −1 yields

(s − σ )n−m = −K .
4-2. THE ROOT LOCUS METHOD 115

This equation represents n − m straight lines that intersect the real axis at σ and have angles
given by

∠(s − σ )n−m = (n − m) ∠(s − σ ) = k × 180◦ , k = ±1, ±3, ±5, . . .

Rule #4: As K → ∞, m branches approach the zeros of L(s). If n > m, the remaining
n − m branches tend to infinity along asymptotes. The asymptotes intersect the real axis
at
sum of poles of L(s) − sum of zeros of L(s)
σ= , (4.13)
n−m
and their angles with respect to the real axis are given by

k × 180◦
, k = ±1, ±3, ±5, . . .
n−m

For n − m = 1, 2, 3, 4, the angles are shown in Table 4-1 and the asymptotes are shown in
Fig. 4-4.

Table 4-1: Angles of the asymptotes.

n−m 1 2 3 4
Angles 180◦ ±90◦ ±60◦ , 180◦ ±45◦ , ±135◦

n− m=1 n− m=2 n− m=3 n− m=4

Figure 4-4: Asymptotes.


116 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

With the four rules we have developed so far we can sketch the root locus for a wide class
of systems. We proceed in steps:

Step 1: Locate the poles and zeros of L(s) in the complex plane.

Step 2: Determine segments of the real axis that belong to the root locus. To do this
you might start at the extreme right of the real axis beyond all poles and zeros. Move
to the left and as you cross poles and zeros mark the segments that are to the left of an
odd number of poles and zeros counted together. Continue this motion until you cross all
poles and zeros.

Step 3: Determine the number of asymptotes, their angles, and their intersection with
the real axis. Draw the asymptotes.

Step 4: Sketch the root locus with each branch starting at a pole and approaching a zero
or tending to infinity along one of the asymptotes. Note that when two branches starting
on the real axis meet at a point, they break into complex branches and the meeting point
is called a breakaway point. Similarly, when two conjugate complex branches reach the
real axis at a point, they move on the real axis in opposite directions and the point is
called a break-in point.
4-2. THE ROOT LOCUS METHOD 117

Example 4-3: Root Locus of a Second-Order Transfer Function

Sketch the root locus of


K
GH(s) = .
s(s + 2)

Solution:
• Open-loop poles: 0, −2
• Open-loop zeros: None
• Real axis: [−2, 0]
• Two asymptotes ±90◦
0−2
• σ= 2 = −1
The sketch of the root locus is shown in Fig. 4-5. Two branches start at the open-loop poles
0 and −2. They move on the real axis until they meet at the breakaway point −1. Then they
move as conjugate complex roots along a vertical line s = −1 towards ±∞. The rules of the
root locus do not require in general that the complex parts of the root locus move exactly
along the asymptotes all the way, but for this specific example it can be seen by calculating
the roots of the characteristic equation s2 + 2s + K = 0 that the complex parts are exactly on
the asymptotes.

1.5

0.5

–0.5

–1

–1.5

–2
–2.5 –2 –1.5 –1 –0.5 0 0.5

Figure 4-5: Example 4-3.


118 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Example 4-4: Root Locus of a Third-Order Transfer Function

Sketch the root locus of


K
GH(s) = .
(s + 1)(s + 2)(s + 3)

Solution:
• Open-loop poles: −1, −2, −3
• Open-loop zeros: None
• Real axis: [−2, −1] and (−∞, −3]
• Three asymptotes ±60◦ , 180◦
−1−2−3
• σ= 3 = −2
The sketch of the root locus is shown in Fig. 4-6. The three asymptotes intersect the real axis
at −2. Two branches start at the open-loop poles −1 and −2. They move on the real axis until
they meet at the breakaway point. Then they move as conjugate complex roots approaching
infinity along the ±60◦ asymptotes. The third branch starts at the open-loop pole −3 and
moves along the real axis towards −∞.

3
Breakaway
2

–1

–2

–3

–4

–5
–8 –7 –6 –5 –4 –3 –2 –1 0 1 2

Figure 4-6: Example 4-4.


4-2. THE ROOT LOCUS METHOD 119

Example 4-5: Root Locus of a Second-Order Transfer Function with a Zero

Sketch the root locus of


K(s + 2)
GH(s) = .
s(s + 1)

Solution:

• Open-loop poles: 0, −1

• Open-loop zeros: −2

• Real axis: [−1, 0] and (−∞, −2]

• One asymptote 180◦

The sketch of the root locus is shown in Fig. 4-7. Two branches start at the open-loop poles 0
and −1. They move on the real axis until they meet at the breakaway point. Then they move
as conjugate complex roots. The complex branches reach the real axis at the break-in point,
beyond which the two branches move on the real axis, one towards the open-loop zero −2
and the other towards −∞. It is interesting to note that the complex part of the root locus is a
circle centered at the open-loop zero −2. This observation is not obvious through the rules of
the root locus.

2.5
Breakaway
2

1.5
Break-in
1

0.5

–0.5

–1

–1.5

–2
–5.5 –5 –4.5 –4 –3.5 –3 –2.5 –2 –1.5 –1 –0.5 0

Figure 4-7: Example 4-5.


120 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Example 4-6: Root Locus of a Third-Order Transfer Function with a Zero

Sketch the root locus of


K(s + 1)
GH(s) = .
s(s + 2)(s + 3)

Solution:

• Open-loop poles: 0, −2, −3

• Open-loop zeros: −1

• Real axis: [−1, 0] and [−3, −2]

• Two asymptotes ±90◦


(0−2−3)−(−1)
• σ= 2 = −2

The sketch of the root locus is shown in Fig. 4-8. The two asymptotes intersect the real axis
at −2. One branch moves on the real axis from the open-loop pole 0 to the open-loop zero −1.
The other two branches start at the open-loop poles −2 and −3. They move on the real axis
until they reach the breakaway point. Then they move as conjugate complex roots approaching
infinity along the asymptotes.

–2

–4

–6

–8
–3.5 –3 –2.5 –2 –1.5 –1 –0.5 0 0.5

Figure 4-8: Example 4-6.


4-2. THE ROOT LOCUS METHOD 121

Example 4-7: Root Locus of a Third-Order Transfer Function with a Pair of


Complex Zeros

Sketch the root locus of


K(s2 + 2s + 2)
GH(s) = .
s(s + 2)(s + 3)

Solution:

• Open-loop poles: 0, −2, −3

• Open-loop zeros: −1 ± j

• Real axis: [−2, 0] and (∞, −3]

• One asymptote 180◦

The sketch of the root locus is shown in Fig. 4-9. Two branches start at the open-loop poles 0
and −2. They move on the real axis until they meet at the breakaway point. Then they move
as conjugate complex roots approaching the open-loop zeros −1 ± j. The third branch starts
at the open-loop pole −3 and moves on the real axis towards −∞.

1.5

0.5

–0.5

–1

–1.5
–6 –5 –4 –3 –2 –1 0 1

Figure 4-9: Example 4-7.


122 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

4-2.2 Refinement of the Root Locus


Next we present two rules to refine the root locus by calculating crossing points of the
imaginary axis and breakaway and break-in points.1
When the root locus crosses the imaginary axis, as in Example 4-4, the crossing points
are the boundary between stability and instability. At these points the closed-loop system
is marginally stable with a constant or oscillatory natural response. Since stability can be
determined by the Routh-Hurwitz criterion, we can use it to calculate the value of K at which
crossing takes place, from which we can calculate the crossing points.

Rule #5: Use the Routh-Hurwitz criterion to determine the crossing points of the
imaginary axis.

Example 4-8: Crossing Points of the Imaginary Axis

Find the crossing points of the imaginary axis in Example 4-4.


Solution: The characteristic equation 1 + K L(s) = 0 is given by

(s + 1)(s + 2)(s + 3) + K = 0 s3 + 6s2 + 11s + (6 + K) = 0 .

The Routh table is


s3 1 11
s2 6 (6 + K)
s (60 − K)/6
1 (6 + K)
The system is stable for −6 < K < 60. It is marginally stable at K = 60. The closed-loop poles
on the imaginary axis at K = 60 are the roots of the equation

6s2 + 66 = 0 s = ± 11 j .

Hence, the root locus crosses the imaginary axis at ± 11 j. At K = √ 60, the natural response
of the closed-loop system oscillates at the natural frequency ω n = 11.

For the real portion of the root locus, K = −1/L(s). Near a breakaway point, s moves
towards that point as K increases and when it reaches the breakaway point K is maximum. On
the other hand, at a break-in point, s moves away from the point as K increases; hence K is
1 Control textbooks, for example [28] or [11], usually include a third rule to calculate angles of departures and
arrival from complex poles and zeros. This rule is needed if the manually generated root locus plot is used in
design. However, as we shall see shortly, design calculations are typically done using MATLAB-generated root
locus plots. Therefore this third refinement rule is not included here.
4-2. THE ROOT LOCUS METHOD 123

minimum at the break-in point. Therefore, break-in and breakaway points can be determined
by finding the minimum and maximum points of −1/L(s), which are the roots of
   
d 1 d 1
− =0 =0.
ds L(s) ds L(s)

Rule #6: The break-in and breakaway points are located at the roots of
 
d 1
=0. (4.14)
ds L(s)

Example 4-9: Breakaway Point

Find the breakaway point of Example 4-4.


Solution:  
d 1 d 3
= (s + 6s2 + 11s + 6) = 0 ,
ds L(s) ds
1
3s2 + 12s + 11 = 0 s = −2 ± √ = −1.432, −2.577.
3
From the root locus sketch we know that the breakaway point is between −1 and −2. Hence,
the root −2.577 is rejected and the breakaway point is at −1.432.

Example 4-10: Break-In and Breakaway Points

Find the break-in and breakaway points of Example 4-5.


Solution:    
d 1 d s(s + 1)
= =0,
ds L(s) ds s+2
(s + 2)(2s + 1) − s(s + 1)
=0,
(s + 2)2

s2 + 4s + 2 = 0 s = −2 ± 2 = −0.586, −3.414.
From the root locus sketch we see that the breakaway point is at −0.586 and the break-in
point is at −3.414.

Our discussion of the root locus so far has been for the closed-loop system of Fig. 4-1(b),
where GH(s) = K L(s); that is, the constant K is the gain of the open-loop transfer function.
We can also use the root locus to study how the closed-loop poles vary with some other
124 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

constant in the transfer function GH(s). This requires us to rewrite the characteristic equation
in the form 1 + α L(s) = 0, where α includes the constant to be investigated, while L(s) does
not depend on that constant. We illustrate this process by reconsidering the speed control
problem of Example 4-1.

Example 4-11: Rewriting the Characteristic Equation in the Standard Form

We saw in Example 4-1 that the characteristic equation of a dc motor controlled by a PI


controller is given by  
2 1 + KPKm KI Km
s + s+ =0.
τm τm
Suppose we fix the controller gains KP and KI so we may study how the closed-loop poles
will vary as τm varies. Rewrite the characteristic equation as
 
1 + KP Km s + KI Km /(1 + KP Km )
1+ =0.
τm s2
Setting α = KP Km /τm , the equation takes the standard form
s + KI Km /(1 + KP Km )
1 + α L(s) = 0, where L(s) = .
s2
The root locus is sketched in Fig. 4-10. Suppose that for the nominal value of τm , the controller
gains are designed to locate the closed-loop poles at the red squares. If τm changes over
the range [a, b], α will change over the range [KP Km /b, KP Km /a]. For a limited variation
of τm , the closed-loop poles will change over an arc like the one marked by the red marks. If,
however, τm becomes very small, α will be very large, which might push the closed-loop poles
into the real part of the root locus. This will cause a significant change in the performance of
the system because a system that is designed to be underdamped will become overdamped.

Figure 4-10: Example 4-11.


4-2. THE ROOT LOCUS METHOD 125

In Appendix D it is shown how to plot the root locus using MATLAB. A question that
comes to the mind of many students: If we can plot the root locus exactly using MATLAB,
why do we have to learn all these rules to draw a sketch of it? The answer consists of a few
points, all of them building on the fact that drawing a sketch of the root locus not only can
be done easily in a few minutes, but also it gives us confidence in the plot we draw using
MATLAB. Pressing a wrong key while entering the data will usually generate a plot that is
quite different from the sketch. Second, the sketch, as approximate as it might be, still offers a
good idea about the behavior of the system as the gain K changes. Third, the root locus sketch
can help the designer make quick decisions about some parameter choices without detailed
calculations. We illustrate this point by once again recalling Example 4-1.

Example 4-12: Making Design Decisions by Sketching the Root Locus

The PI controller of Example 4-1 has two parameters, KP and KI . A typical procedure to
design these parameters is to fix the ratio KI /KP and then investigate how the closed-loop
poles vary with KP . The characteristic equation 1 + KL(s) = 0 has K = KP Km /τm , and

s + KI /KP
L(s) =
s(s + 1/τm )

has two poles at 0 and −1/τm and a zero at −KI /KP . The choice of the ratio KI /KP determines
the location of the zero. Choosing KI /KP < 1/τm locates the zero between the two poles, while
KI /KP > 1/τm locates the zero to the left of the poles. Sketches of the root locus for these two
cases are shown in Fig. 4-11. For KI /KP < 1/τm , the closed-loop system will be overdamped,
while for KI /KP > 1/τm , the closed-loop system can be designed to be underdamped by
locating the poles on the complex part of the root locus.

KI /K P > 1/ m KI /K P < 1/ m

Figure 4-11: Example 4-12.


126 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Reference
Output

Time

Figure 4-12: Ramp transition to a set point.

4-3 Steady-State Error


The accuracy of the feedback control system is determined by its ability to track the desired
reference signal. This accuracy is measured after the decay of the transient response. In other
words, we examine the steady-state of the error e = r − y, where r is the reference input and y
is the output.
In many control systems, the goal is to regulate the output to a constant value, usually
called the set point. In such cases we study the steady-state error to a step input r(t) = A 1(t),
where 1(t) is the unit step function and A is the amplitude of the step. In some control
problems the output is required to track a target moving with constant velocity. An example
is an antenna tracking a satellite orbiting at constant velocity. Another example is the speed
control of a motor where the measured output is the angular position θ . To regulate the angular
velocity ω = θ̇ to a constant ω r , θ tracks ω r t. In such cases the steady-state accuracy of the
system is tested by studying the steady-state error to a ramp input r(t) = At 1(t), where A is
the slope of the ramp. Testing the steady-state error of the response to a ramp input might be
useful even when the ultimate goal is to regulate the output to a constant position. Figure 4-12
shows an example of a reference signal that moves the output from zero to the desired position
over a time period by first applying a ramp followed by a constant. The figure shows the
response of a system whose transfer functions is 100/(s2 + 10s + 100). The error during the
transition period is determined by examining the steady-state error to a ramp input. Such a
ramp transition of the output from zero to the desired set point is needed if a step input would
cause the control signal to become very large, exceeding its maximum permissible value.
In some control systems, the output is required to track a target moving with constant
acceleration, as in the example of an antenna tracking an accelerating missile. In such systems
we study the steady-state error of the response to a parabola r(t) = 12 At 2 1(t).2 In this section
we characterize the steady-state error for these three test signals: the step, the ramp, and the
parabola.

2 The 1
factor 2 is included so that R(s) = A/s3 .
4-3. STEADY-STATE ERROR 127

4-3.1 Unity Feedback System


We start by considering the feedback control system of Fig. 4-1(b) in the special case when
H = 1. We assume that the closed-loop system is stable; that is, all poles of the closed-loop
transfer function
G(s)
T (s) =
1 + G(s)
have negative real parts. The steady-state tracking error is given by

e(∞) = lim e(t) = lim [r(t) − y(t)] ,


t→∞ t→∞

provided the limit exists. We calculate e(∞) using the final value theorem of the Laplace
transform:
e(∞) = lim sE(s) ,
s→0

provided all poles of sE(s) have negative real parts. Since


G(s) 1
E(s) = R(s) −Y (s) = R(s) − R(s) = R(s) ,
1 + G(s) 1 + G(s)
it follows that
s
e(∞) = lim R(s) . (4.15)
s→0 1 + G(s)

(a) Step input:


For
A A
r(t) = A 1(t) R(s) = E(s) = ,
s s[1 + G(s)]
A A
e(∞) = lim sE(s) = lim = .
s→0 s→0 1 + G(s) 1 + lims→0 G(s)
Define the position error constant Kp as

Kp = lim G(s) .
s→0

Then the steady-state error is given by

A
e(∞) = . (4.16)
1 + Kp

If G(s) has no pole at s = 0, Kp = G(0) is finite and e(∞) , 0. If G(s) has one or more poles
at s = 0, Kp = ∞ and e(∞) = 0.
(b) Ramp input:
For
A A
r(t) = At 1(t) R(s) = E(s) = ,
s2 s2 [1 + G(s)]
128 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

A A
e(∞) = lim sE(s) = lim = .
s→0 s→0 s[1 + G(s)] lims→0 s G(s)
Define the velocity error constant Kυ by

Kυ = lim s G(s) .
s→0

Then the steady-state error is given by

A
e(∞) = .

If G(s) has no pole at s = 0, Kυ = 0 and e(∞) = ∞. If G(s) has one pole at s = 0, Kυ is finite
and different from zero. In this case e(∞) is finite and different from zero. If G(s) has two or
more poles at s = 0, Kυ = ∞ and e(∞) = 0.
(c) Parabola input:
For
A A
r(t) = 12 A t 2 1(t) R(s) =
3
E(s) = 3 ,
s s [1 + G(s)]
A A
e(∞) = lim sE(s) = lim 2 = .
s→0 s→0 s [1 + G(s)] lims→0 s2 G(s)
Define the acceleration error constant Ka by

Ka = lim s2 G(s) .
s→0

Then the steady-state error is given by

A
e(∞) = . (4.17)
Ka

If G(s) has less than two poles at s = 0, Ka = 0 and e(∞) = ∞. If G(s) has two poles at s = 0,
Ka is finite and different from zero. In this case e(∞) is finite and different from zero. If G(s)
has three or more poles at s = 0, Ka = ∞ and e(∞) = 0.
Because the closed-loop system is stable, in all three cases where e(∞) is finite, sE(s)
has poles with negative real parts. Therefore, the application of the final value theorem to
calculate e(∞) is valid.
Warning: We cannot use the foregoing expressions to calculate the steady-state error unless
the closed-loop system is stable.
Definition: The unity feedback control system is said to be of Type N if G(s) has N poles at
s = 0.
4-3. STEADY-STATE ERROR 129

Table 4-2: Summary of the steady-state errors.

Input Type 0 Type 1 Type 2


e(∞) e(∞) e(∞)
A
Step, r(t) = A 1(t) 0 0
1 + Kp
A
Ramp, r(t) = At 1(t) ∞ 0

A
Parabola, r(t) = 12 A t 2 1(t) ∞ ∞
Ka

With this definition, the foregoing results are summarized in Table 4-2.

Example 4-13: Step Input to Type 0 Feedback System

Consider the feedback control system of Fig. 4-1(b) with a plant transfer function

1
Gp (s) =
(s + 1)(s + 2)(s + 3)

and a proportional controller Gc (s) = K > 0. Find the steady-state error to a unit step input.
Can you design K such that e(∞) < 0.01?

Solution:
K
G(s) = .
(s + 1)(s + 2)(s + 3)

The system is Type 0.

K 1 6
Kp = G(0) = e(∞) = = .
6 1 + Kp 6 + K

To answer the posed question take

6
< 0.01 K > 594 .
6+K
130 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

At this point it is tempting to answer the question with YES. But this answer is premature
because we did not check whether the closed-loop system is stable for K > 594. Recall that
the expression for e(∞) is valid only if the system is stable. Now let us use the Routh-Hurwitz
criterion to check stability. The characteristic equation of the closed-loop system is given by

(s + 1)(s + 2)(s + 3) + K = s3 + 6s2 + 11s + 6 + K = 0 .

s3 1 11
s2 6 (6 + K)
s (60 − K)/6
1 (6 + K)

The system is stable for K < 60. Hence we cannot achieve e(∞) < 0.01 by taking K > 594.

Example 4-14: Step Input to Type 1 Feedback System

Reconsider the previous example and change the controller to a PI controller

Gc (s) = KP + KI /s .

Can you design KP and KI so that e(∞) < 0.01?

Solution:
KP (s + KI /KP )
G(s) = Gp (s) Gc (s) = .
s(s + 1)(s + 2)(s + 3)

The system is Type 1. Therefore, if KP and KI are designed such that the closed-loop system is
stable, e(∞) = 0. It is not hard to see that we can design such KP and KI . For example, taking
KI /KP = 1 so that the zero of G(s) cancels the pole at −1, the characteristic equation is

s(s + 2)(s + 3) + KP = s3 + 5s2 + 6s + KP = 0 .

s3 1 6
s2 5 KP
s (30 − KP )/5
1 KP

The system is stable for 0 < KP < 30.


4-3. STEADY-STATE ERROR 131

4-3.2 Non-Unity Feedback System


Now consider the feedback control system of Fig. 4-1(b) when H(s) , 1. We can represent
the system by an equivalent unity feedback system. The process is illustrated in Fig. 4-13.
Figure 4-13(a) is the original non-unity feedback system. In Fig. 4-13(b) we add and subtract
Y at the summation node. In Fig. 4-13(c) we replace the parallel connection of H(s) and the
branch from Y that enters the summation node with a positive sign by the equivalent transfer
function H(s)−1. In Fig. 4-13(d) we replace the inner feedback loop by its equivalent transfer
function
G(s)
Ge (s) = .
1 + G(s)[H(s) − 1]
This process does not change the stability of the system, which can be checked from the
original configuration (a) or the equivalent configuration (d).

R (s) + Y (s ) R (s) + Y (s )
∑ G(s) ∑ G(s)
− −
+ −

H(s) H(s)

(a)
(b)

R (s) + Y (s ) R (s) + Y (s )
∑ G(s) ∑ G e (s)
− −

G(s)
H(s) − 1 Ge ( s) = 1+ G(s)[H (s)− 1]

(c) (d)

Figure 4-13: Representation of a non-unity feedback system as a unity feedback system.


132 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Example 4-15: Steady-State Error of Non-Unity Feedback System

Consider the feedback control system of Fig. 4-1(b) with

K
G(s) = , H(s) = H , 1 ,
s(s + 1)

where K and H are positive constants. Find the steady-state error to a unit step input.
Solution: The characteristic equation of the closed-loop system is

1 + G(s) H(s) = 0 s2 + s + KH = 0 .

The system is stable for all positive K and H. This can be seen by calculating the roots of the
equation, sketching the root locus, or applying the Routh-Hurwitz criterion. The equivalent
transfer function Ge (s) is given by

G(s)
Ge (s) =
1 + G(s)[H(s) − 1]
K
s(s+1)
= K
1+ s(s+1) (H − 1)
K
= .
s2 + s + K(H − 1)

Ge (s) has no poles at s = 0; hence, the system is Type 0.

1 1 H −1
Kp = Ge (0) = e(∞) = = .
H −1 1 + Kp H

Notice that Ge (s) has no poles at s = 0 even though G(s) has a pole at s = 0.

Example 4-16: A Non-Unity Feedback System with H(0) = 1

Reconsider the previous example with

10
H(s) = .
s + 10

Solution: The characteristic equation of the closed-loop system is

1 + G(s)H(s) = 0 s3 + 11s2 + 10s + 10K = 0 .


4-4. EFFECT OF DISTURBANCE 133

By application of the Routh-Hurwitz criterion it can be seen that the system is stable for
0 < K < 11. We calculate the steady-state error for K in this range. The equivalent transfer
function Ge (s) is given by

G(s)
Ge (s) =
1 + G(s)[H(s) − 1]
K
s(s+1)
= K
 10 
1+ s(s+1) s+10 −1
K
s(s+1)
= K
 −s 
1+ s(s+1) s+10

K(s + 10)
= .
s(s2 + 11s + 10 − K)

The system is Type 1; hence, the steady-state error to a step input is zero.

4-4 Effect of Disturbance


Control systems are usually subject to disturbances, which are input signals that cannot be
manipulated. To motivate our discussion, let us consider a position servo control problem
where the angular position of a motor is to be regulated to a set point. The motor shaft can be
subject to torque disturbance Td (t). In this case, the torque balance equation that results from
applying Newton’s second law is given by

Tm (s) = Jm s2 θm (s) + bm s θm (s) + Td (s) , (4.18)

where Td (s) is the Laplace transform of Td (t) and the other variables are defined in Chapter 2.
Assuming an armature-controlled dc motor with negligible armature inductance La and
friction coefficient bm , the system is modeled by

Kt [Va (s) − Kb s θm (s)]


= Jm s2 θm (s) + Td (s) .
Ra
Hence
 
1 Kt
θm (s) = Va (s) − Td (s)
s(Jm s + Kt Kb /Ra ) Ra
 
Km Ra
= Va (s) − Td (s) , (4.19)
s(τm s + 1) Kt

where Km = 1/Kb and τm = Jm Ra /(Kt Kb ). Define the normalized disturbance

−Ra Td (t)
d(t) = ;
Kt
134 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

D (s)
Controller Plant
+
R (s) +∑ G c (s)
U(s) +
∑ G p (s)
Y (s)

Figure 4-14: Feedback control system subject to disturbance.

then the foregoing equation is rewritten as

Km
θm (s) = [Va (s) + D(s)] ,
s(τm s + 1)

where D(s) is the Laplace transform of d(t). In this representation, the disturbance d enters
the system at the same point as the control input va . Note that d has the same units as va .
Figure 4-14 provides a general representation of a control system where the disturbance
D enters the system at the same point as the control signal U , which is generated by the
controller. The output is given by

Gp (s) Gc (s) Gp (s)


Y (s) = R(s) + D(s)
1 + Gp (s) Gc (s) 1 + Gp (s) Gc (s)
G(s) Gp (s)
= R(s) + D(s) ,
1 + G(s) 1 + G(s)

where G(s) = Gp (s) Gc (s). The expression for Y is obtained by superposition. First set D = 0
and find the output due to R; then set R = 0 and find the output due to D. If the closed-loop
system is stable; that is, all the roots of the characteristic equation 1 + G(s) = 0 have negative
real parts, then both transfer functions G(s)/[1 + G(s)] and Gp (s)/[1 + G(s)] are stable. The
tracking error E is given by

E(s) = R(s) −Y (s)


1 Gp (s)
= R(s) − D(s) . (4.20)
1 + G(s) 1 + G(s)

Attenuating the effect of the disturbance is achieved by designing Gc (s) so that


Gp (s)/[1 + G(s)] is small. This is best done in the frequency domain where Gc (s) is designed
such that |G( jω )| ≫ 1 over the frequency band of the disturbance. If this condition is also
done over the frequency band of the reference, we will be attenuating the error due to the
reference. We shall consider frequency domain design in Chapter 7.
4-4. EFFECT OF DISTURBANCE 135

Steady-state error due to constant disturbance


An important special case arises when the disturbance is constant. In this case the error due
to the disturbance converges to a constant value, which we can determine by applying a step
input at the disturbance and calculating the steady-state error using the final-value theorem of
the Laplace transform. Let d(t) = B 1(t), where B is the amplitude of the constant disturbance.
The Laplace transform of the error due to the disturbance is given by
Gp (s) Gp (s) B
Ed (s) = − D(s) = −
1 + G(s) 1 + G(s) s
and
Gp (s) B
ed (∞) = lim s Ed (s) = − lim . (4.21)
s→0 s→0 1 + G(s)

Example 4-17: Steady-State Error Due to Constant Disturbance

Consider Fig. 4-14 where


Km
Gp (s) =
s(τm s + 1)
and the disturbance is a unit step. Find the steady-state error due to the disturbance when the
controller is
(a) Proportional: Gc (s) = K;
(b) Proportional-Integral (PI): Gc (s) = KP + KI /s.
Solution: It can be seen that in both cases the controller parameters can be designed so that
the closed-loop system is stable.
(a)
Km
s(τm s + 1) Km 1
ed (∞) = − lim = − lim =− .
s→0 KKm s→0 s(τm s + 1) + KKm K
1+
s(τm s + 1)
(b)
Km
s(τm s + 1) Km s
ed (∞) = − lim = − lim 2 =0.
s→0 (KP + KI /s)Km s→0 s (τm s + 1) + Km (sKP + KI )
1+
s(τm s + 1)

It is important to note that with the proportional controller the steady-state error due to
the disturbance is not zero, even though when we study the steady-state error due to a step
reference signal the error would be zero because the system is Type 1. Including the integrator
ensures zero steady-state error due to the step disturbance. Because constant disturbances are
common in control systems, integral action via PI or PID (Proportional-Integral-Derivative)
controllers is used frequently.
136 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Controller Plant
R (s) + ∑ G c (s) G p (s)
Y (s)

Figure 4-15: Feedback control system.

4-5 Plant Parameter Uncertainty


It is not uncommon for a control engineer to have to design a controller for a plant whose
parameters are not exactly known. Even if the parameters were exactly known at the time
of the design, they do change during the operation of the system and it is not practical to
stop operation to redesign the controller; think of a control system in an automobile that is
driven for tens of thousands of miles. Therefore the control design should accommodate plant
parameter uncertainty.
There are two approaches to deal with parameter uncertainty. For small parameter
changes, we study their effect on the performance of the closed-loop system by sensitivity
analysis. For large parameter changes, special design methods are developed in an area known
as robust control, which is not covered in this book.3
Consider the feedback control system of Fig. 4-15, where Gp (s) is the nominal transfer
function of the plant; that is, the transfer function that is available at the time of the design.
Let Gc (s) be the transfer function of the controller that is designed using the nominal Gp (s),
resulting in the nominal closed-loop transfer function

Gp (s) Gc (s)
T (s) = . (4.22)
1 + Gp (s) Gc (s)

Let G′p (s) be the actual transfer function of the plant, after parameter changes, with

G′p (s) Gc (s)


T ′ (s) =
1 + G′p (s) Gc (s)

as the actual closed-loop transfer function. In the forthcoming analysis, we relate the relative
error in T (s) to the relative error in Gp (s). For convenience, we omit writing the argument s
of the transfer functions. The deviation is

3 See, for example, [15, 16, 35, 36].


4-5. PLANT PARAMETER UNCERTAINTY 137

∆T = T ′ − T
G′p Gc Gp Gc
= ′

1 + Gp Gc 1 + Gp Gc
G′p Gc (1 + Gp Gc ) − Gp Gc (1 + G′p Gc )
=
(1 + G′p Gc )(1 + Gp Gc )
(G′p − Gp )Gc ∆Gp Gc
= = ,
(1 + G′p Gc )(1 + Gp Gc ) (1 + G′p Gc )(1 + Gp Gc )

where ∆Gp = G′p − Gp . The relative error ∆T /T is given by

∆T ∆Gp Gc 1 + Gp Gc 1 ∆Gp
= ′
× = ′
.
T (1 + Gp Gc )(1 + Gp Gc ) Gp Gc 1 + Gp Gc Gp

Define the sensitivity transfer function for the actual system as

1
S′ (s) =
1 + G′p (s)Gc (s)

and the sensitivity transfer function for the nominal system with G(s) = Gp (s) Gc (s) as

1 1
S(s) = = .
1 + Gp (s) Gc (s) 1 + G(s)

Hence,
∆T (s) ∆Gp (s)
= S′ (s) .
T (s) Gp (s)
The sensitivity function S′ (s) depends on G′p (s), which is not known. It is better to relate
∆T /T to ∆Gp /Gp by a known quantity. For small ∆Gp , we can use the approximation
S′ (s) ≈ S(s), to arrive at

∆T (s) ∆Gp (s) 1


= S(s) , where S(s) = . (4.23)
T (s) Gp (s) 1 + G(s)

Designing Gc (s) such that G(s) is large results in a small sensitivity function so that the
relative error in the closed-loop transfer function is much smaller than the relative error in the
plant transfer function. This is best achieved in the frequency domain where Gc (s) is designed
such that |G( jω )| ≫ 1 over the frequency domain of interest, which is the frequency band of
the reference signal. This is consistent with the design requirement we saw in the previous
section to attenuate the effect of disturbance.
138 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

Example 4-18: Sensitivity to Parameter Uncertainty

Consider a feedback control system where the plant is a dc motor represented by

Km
Gp (s) =
s(τm s + 1)

and the controller is Gc (s) = K > 0. Recall that Km = 1/Kb and τm = Jm Ra /(Kt Kb ). Find the
relative error in the closed-loop transfer function ∆T /T in terms of the relative error in the
moment of inertia ∆Jm /Jm .

Solution: To start with, let us note that the closed-loop system is stable for all K > 0. The
change in the plant transfer function is

Km Km
∆Gp = −
s [1 + s(Jm + ∆Jm )Ra /(Kt Kb )] s [1 + sJm Ra /(Kt Kb )]
s(Km Ra /Kt Kb )∆Jm
=− ,
s [1 + s(Jm + ∆Jm )Ra /(Kt Kb )] [1 + sJm Ra /(Kt Kb )]
and
∆Gp s(Jm Ra /Kt Kb ) ∆Jm
=− .
Gp [1 + s(Jm + ∆Jm )Ra /(Kt Kb )] Jm

Using the approximation Jm + ∆Jm ≈ Jm , the preceding expression simplifies to

∆Gp s(Jm Ra /Kt Kb ) ∆Jm τm s ∆Jm


=− =− .
Gp [1 + sJm Ra /(Kt Kb )] Jm τm s + 1 Jm

The sensitivity transfer function is given by

1 s(τm s + 1)
S(s) = = .
1 + KKm/[s(τm s + 1)] τm s2 + s + KKm

Therefore,
∆T ∆Gp τm s2 ∆Jm
=S =− .
T Gp τm s2 + s + KKm Jm

An increase in the controller gain K reduces the sensitivity of the closed-loop transfer function
to errors in the moment of inertia Jm .
4-6. EFFECT OF MEASUREMENT NOISE 139

D (s)
Controller Plant
+
R(s) +∑ G c (s)
U(s) +∑ G p (s)
Y (s)


+

+ N (s)

Figure 4-16: Feedback control system subject to disturbance and measurement noise.

4-6 Effect of Measurement Noise


Figure 4-16 shows a feedback control system with three inputs: the reference R, the
disturbance D, and the measurement noise N, which corrupts the measurement of the output Y .
The output is given by

Gp (s) Gc (s) Gp (s) Gp (s) Gc (s)


Y (s) = R(s) + D(s) − N(s) .
1 + Gp (s) Gc (s) 1 + Gp (s) Gc (s) 1 + Gp (s) Gc (s)

This expression can be written by superposition, taking one input at a time, or can be written
directly from the block diagram. Note that the denominator of all three transfer functions is
the same, namely 1 plus the loop gain. The numerator of each transfer function is the forward
path from the input to the output. The tracking error is given by

1 Gp (s) G(s)
E(s) = R(s) −Y (s) = R(s) − D(s) + N(s)
1 + G(s) 1 + G(s) 1 + G(s)
= S(s) R(s) − S(s) Gp (s) D(s) + [1 − S(s)] N(s) , (4.24)

where G(s) = Gp (s) Gc (s) is the loop gain and S(s) = 1/[1 + Gp (s) Gc (s)] is the sensitivity
transfer function. To reduce the error due to R and D, we want |G| ≫ 1 so that |S| ≪ 1. This
design, however, makes |1 − S| ≈ 1, which allows the noise N to affect the error without
attenuation. Attenuating the effect of the measurement noise requires |G| ≪ 1 so that |S| ≈ 1
and |1 − S| ≈ 0. It is clear that we cannot achieve both requirements at the same time.
This trade-off is usually handled in the frequency domain by designing the system to have
|G( jω )| ≫ 1 over the frequency bands of R and D and then rolling off |G( jω )| to a small
value for higher frequencies; thereby attenuating the effect of measurement noise at those
frequencies.
140 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

4-7 Control Constraints


While the objectives in control design are to reduce the steady-state tracking error and to
shape the transient response of the system, the design has to cope with the fact that the control
input of the plant cannot exceed its maximal permissible value determined by the capacity
of the plant. For example, the armature voltage of an armature-controlled dc motor cannot
exceed a certain value beyond which the volage can damage the coils of the motor.
There are two approaches to coping with control constraints. The first approach considers
the magnitude of the control in design, either explicitly or implicitly. In the explicit approach,
the control is designed to meet the constraint |u(t)| ≤ Umax , where Umax is the maximum
permissible value of the control input.4 This approach leads to a complicated design
procedure, which usually uses nonlinear analysis. In contrast, the implicit approach takes
the control magnitude into consideration by formulating an optimal R ∞ control problem where
the control task is to minimize a performance index of the form 0 [e2 (t) + ρ u2 (t)] dt, where
e is the tracking error, u is the control input, and ρ is a positive factor that weighs minimizing
the error versus minimizing the control.5 Increasing ρ puts a heavier penalty on the control
and results in a smaller control magnitude. By iterating the design for different values of ρ , we
arrive at a design that meets the control constraint. This approach is pursued using state-space
models like the ones we will see later in Chapter 8.
The second approach does not take the control constraint into consideration during the
design, but uses simulation and/or analysis to determine whether the design meets the control
constraint. This is the approach we follow in this book, although we rarely go the extra step
of checking the control constraint. Meeting the control constraint may require adjusting the
reference signal.6 In Example 4-19, a step input is smoothed out through a prefilter used to
limit the magnitude of the control input during the transient period.

Example 4-19: Smoothing a Step Reference by a Prefilter

Consider the double-integrator plant Gp (s) = 1/s2 and suppose the control is constrained to
|u(t)| ≤ 5. A controller Gc (s) = 20(s + 1)/(s + 10) is designed that assigns the closed-loop
poles at −1.1234 ± 1.1478 j and −7.7531. The dc gain of the closed-loop transfer function
T (s) = 20(s+ 1)/(s3 + 10s2 + 20s+ 20) is 1; hence the steady-state error to step inputs is zero.
The reference is a step input that sets the output at a desired set point. For small reference
signals, the control constraint is met, but for large reference signals it could be violated.

4 See,for example, [18].


5 See,for example, [23, 24].
6 Read about the reference governor approach in [14].
4-7. CONTROL CONSTRAINTS 141

Parts (a) and (b) of Fig. 4-17 show the output and control for a unit step reference. The
control exceeds 15 during the transient period. The level of the control can be reduced by
smoothing the reference signal by passing the step input through a prefilter and using the
output of the filter as the reference. The prefilter F(s) = 5/(s + 5) is used. It has a dc gain of
1 so that T (s) F(s) still has a dc gain of 1, leading to a zero steady-state error for step inputs.
Parts (c) and (d) of Fig. 4-17 compare the output and control signals with and without the
prefilter. The use of prefilter reduces the control during the transient period at the expense of
increasing the rise time of the output response.

(a) (b)
1.4 20
1.2
15
1

Control
Output

0.8 10
0.6
5
0.4
0.2 0
0
0 1 2 3 4 5 0 1 2 3
Time Time
(c) (d)
1.4 20
1.2 Without filter
15 With filter
1
Control
Output

0.8 10
0.6
Without filter 5
0.4 With filter
0.2 0
0
0 1 2 3 4 5 0 1 2 3
Time Time

Figure 4-17: Example 4-19. Effect of using a prefilter.


142 CHAPTER 4. FEEDBACK CONTREL SYSTEMS

D (s)
Controller Plant
+
R(s) U(s) + Y (s)
Go (s) ∑ G p (s)

Figure 4-18: Open-loop control system.

4-8 Why Use Closed-Loop Instead of Open-Loop?


The two fundamental structures for controlling the behavior of a system are the open-loop
control of Fig. 4-18 and the closed-loop control of Fig. 4-16. In both cases the driving input
is the reference signal R and a disturbance signal D is present at the input of the plant.
For the open-loop system, the reference drives the controller Go (s), which generates the
control signal U . The transfer function from R to Y is

To (s) = Gp (s) Go (s) ,

and the tracking error is given by

Eo (s) = R(s) −Y (s)


= [1 − Gp (s) Go (s)]R(s) − Gp (s) D(s) . (4.25)

For the closed-loop system, the output Y is measured by a sensor, whose measurement is
corrupted by noise N. The measured output is subtracted from the reference signal, resulting in
the error, which drives the controller that generates the control signal U . The transfer function
from R to Y is
G(s)
T (s) = ,
1 + G(s)
and the tracking error is given by

1 Gp (s) G(s)
E(s) = R(s) − D(s) + N(s) , (4.26)
1 + G(s) 1 + G(s) 1 + G(s)

where G(s) = Gp (s) Gc (s). In this section we look at the pros and cons of the closed-loop
control system versus the open-loop control system.
The first advantage of feedback is that it can stabilize an unstable plant because the control
design can make the closed-loop transfer T (s) stable even when the plant transfer function
Gp (s) is unstable. The ability to assign the closed-loop poles also means that the transient
response of the closed-loop system can be greatly improved over the transient response of
the open-loop system. It might appear that unstable poles of Gp (s) can be cancelled by zeros
of the controller transfer function Go (s), thus resulting in a stable transfer function To (s).
Such unstable pole-zero cancellation is not allowed because it does not work. The effect of
4-8. WHY USE CLOSED-LOOP INSTEAD OF OPEN-LOOP? 143

the unstable poles of Gp (s) appears in the response to non-zero initial conditions and the
response to the disturbance D. Similarly, stable but undesired poles should not be canceled.
The transfer function from the disturbance D to the tracking error E is −Gp (s) for
the open-loop system and −Gp (s)/[1 + G(s)] for the closed-loop system. By designing the
controller Gc (s) such that G(s) is large, the feedback controller can greatly attenuate the
effect of the disturbance, compared with the open-loop system.
We saw before that in a feedback control system the relative error in the closed-loop
transfer is related to the relative error in the plant transfer function by the expression

∆T (s) 1 ∆Gp (s)


= .
T (s) 1 + G(s) Gp (s)

Once again, by designing G(s) to be large, ∆T /T can be made much smaller than ∆Gp /Gp .
On the other hand, for the open-loop system

∆To (s) ∆Gp (s)


= .
To (s) Gp (s)

Thus, plant parameter changes have full effect on the transfer function from R to Y .
Are there any situations where the open-loop system might be similar to or better than
the closed-loop system? If the plant transfer function is stable and the open-loop controller
Go (s) is designed such that To (s) = T (s), the steady-state tracking error due to the reference
R will be the same as in the closed-loop system. To design such a Go (s), we note that for the
closed-loop system, the transfer function from R to U is given by

Gc (s)
.
1 + G(s)

Setting
Gc (s)
Go (s) =
1 + G(s)
results in To (s) = T (s).
The main drawback of the closed-loop system is that a sensor is needed to measure
the output and measurement noise affects the performance of the system. The output is not
measured in the open-loop system. Table 4-3 offers a comparison between closed-loop and
open-loop control systems.7

7 Table 4-3 is taken from a similar table in [23].


144 CHAPTER 4. FEEDBACK CONTREL SYSTEMS

Table 4-3: Comparison of closed-loop and open-loop control systems.

Feature Closed-loop control Open-loop control


Stability Unstable plant can Unstable plant cannot
be stabilized be stabilized
Transient response Great improvement in No improvement in
response to initial response to initial
conditions is possible conditions is possible
Steady-state error Can be made the same
due to the reference as closed-loop if
the plant is stable
Effect of disturbance Effect can be Effect cannot be
greatly reduced reduced
Effect of plant Effect can be Effect cannot be
parameter variations greatly reduced reduced
Effect of It increases the No effect
measurement noise tracking error

Summary
Concepts
• Closed-loop poles are the roots of the characteristic equation
• Using knowledge of the open-loop poles and zeros, the root locus method allows
us to draw loci of the closed-loop poles as the loop gain changes.
• The rules of the root locus method allow us to sketch the root locus quickly.
• Exact drawing of the root locus can be done using MATLAB.
• For unity feedback systems, the steady-state errors in the responses to step, ramp,
and parabola reference inputs are given in terms of the position, velocity, and
acceleration error constants, respectively.
• The tracking error due to the reference and disturbance signals can be reduced by
increasing the loop gain.
• The sensitivity transfer function relates the relative error in the closed-loop transfer
function to the relative error in the open-loop transfer function.
• The sensitivity transfer function can be reduced by increasing the loop gain.
• The effect of measurement noise can be reduced by decreasing the loop gain.
• There is a design trade-off in choosing the loop gain to meet the foregoing
conflicting requirements. The trade-off is better handled in the frequency domain.
• Meeting control constraints may require smoothing the reference signal.
• Closed-loop control has several advantages over open-loop control.
PROBLEMS 145

Mathematical Models
Characteristic equation: 1 + GH(s) = 0
Steady-state error:
Step input e(∞) = A/(1 + Kp )
Ramp input e(∞) = A/Kυ
Parabola input e(∞) = A/Ka
Sensitivity transfer function: S = 1/(1 + Gp Gc )
Tracking error due to reference R: SR
Tracking error due to disturbance D: −SGp D
Tracking error due to measurement noise N: (1 − S)N

Important Terms Provide definitions or explain the meaning of the following


terms:
acceleration error constant control constraint position error constant
asymptotes disturbance reference
breakaway point measurement noise root locus
break-in point non-unity feedback system root locus branch
characteristic equation open-loop control type of feedback system
closed-loop control open-loop poles unity feedback system
closed-loop poles plant parameter uncertainty velocity error constant

PROBLEMS

4.1 Consider the feedback control system of Fig. 4-1(b). Sketch the root locus for each of
the following transfer functions as K varies from zero to infinity. Drawing the sketch should
start by finding:
(i) the segments of the real axis that belong to the root locus;
(ii) the number of asymptotes, their angles and their intersection with real axis.
K
(a) GH(s) =
s(s + 1)(s + 3)
K
(b) GH(s) =
s(s + 2)(s + 4)(s + 6)
K(s + 7)
(c) GH(s) =
(s + 1)(s + 2)
K(s + 2)
(d) GH(s) = 2
s + 1)
146 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

4.2 Repeat Problem 4.1 for the following transfer functions.


K
(a) GH(s) =
(s + 1)(s + 2)(s + 6)
K
(b) GH(s) =
s(s + 2)2 (s + 4)
K(s + 2)
(c) GH(s) =
(s + 1)(s + 4)
K(s + 2)(s + 4)
(d) GH(s) =
(s2 + 1)
4.3 Repeat Problem 4.1 for the following transfer functions.
K(s − 1)
(a) GH(s) = 2
(s + 2s + 2)
K(s2 + 6s + 18)
(b) GH(s) =
(s + 1)(s2 + 2s + 2)
K(s + 2)
(c) GH(s) = 2
s (s + 4)
K(s + 1)(s + 2)(s + 4)
(d) GH(s) =
(s + 3)(s2 − 2s + 2)
4.4 Repeat Problem 4.1 for the following transfer functions.
(s2 + 2s + 2)
(a) GH(s) =
(s − 1)(s + 4)
K(s + 4)(s2 + 4s + 13)
(b) GH(s) = 2
(s + 2s + 2)(s2 + 2s + 10)
K(s + 3)
(c) GH(s) = 2
s (s + 1)
K(s + 1)(s + 4)
(d) GH(s) =
(s + 3)(s2 − 2s + 2)
4.5 For each of the cases of Problem 4.1, refine the sketch of the root locus by finding:
(i) crossing points of the imaginary axis (if any);
(ii) break-in and breakaway points (if any).
4.6 For each of the cases of Problem 4.2, refine the sketch of the root locus by finding:
(i) crossing points of the imaginary axis (if any);
(ii) break-in and breakaway points (if any).
4.7 For each of the cases of Problem 4.3, refine the sketch of the root locus by finding:
(i) crossing points of the imaginary axis (if any);
(ii) break-in and breakaway points (if any).
4.8 For each of the cases of Problem 4.4, refine the sketch of the root locus by finding:
PROBLEMS 147

(i) crossing points of the imaginary axis (if any);


(ii) break-in and breakaway points (if any).
4.9 Consider the feedback control system of Fig. 4-1(b). Sketch the root locus for each of
the following transfer functions as K varies from zero to infinity.
s
(a) GH(s) = 3 2
s +s +K
5(s + K)
(b) GH(s) =
s(s + 1)
1
4 (s + 1)
(c) GH(s) =
s2 (s + K)
s+K
(d) GH(s) =
s2 (s + 1)
4.10 For each of the transfer functions of Problem 4.1, plot the root locus using MATLAB
and compare with the sketch developed in that problem and refined in Problem 4.5.
4.11 For each of the transfer functions of Problem 4.2, plot the root locus using MATLAB
and compare with the sketch developed in that problem and refined in Problem 4.6.
4.12 For each of the transfer functions of Problem 4.3, plot the root locus using MATLAB
and compare with the sketch developed in that problem and refined in Problem 4.7.
4.13 For each of the transfer functions of Problem 4.4, plot the root locus using MATLAB
and compare with the sketch developed in that problem and refined in Problem 4.8.
4.14 For each of the MATLAB plots of Problem 4.10,
(a) find a pair of dominant closed-loop poles with ζ = 0.7;
(b) using MATLAB, find the value of K at this point and determine all the closed-loop
poles;
(c) for comparison, find the value of K using the magnitude criterion Eq. (4.8).
4.15 Consider a unity feedback control system. For each of the following transfer functions,
determine the type of the feedback system and calculate the steady-state error to the step input
r(t) = 10 1(t), the ramp input r(t) = 10t 1(t), and the parabola input r(t) = 10t 2 1(t).
10
(a) G(s) =
s(s + 1)(s + 3)
20
(b) G(s) =
s(s + 1)(s + 3)
100
(c) G(s) =
s(s + 2)(s + 4)(s + 6)
10(s + 7)
(d) G(s) =
(s + 1)(s + 2)
5(s + 1)
(e) G(s) = 2
s (s + 3)
148 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

R (s) + 20 Y (s ) R (s) + + 20 Y (s)


∑ 10 ∑ 9 ∑
s(s+10) s(s+10)
− − −
s
(a)
(b)

R (s) + 10 (s+1) + 20 Y (s) R (s) + 20 Y (s )


∑ ∑ s(s+10) ∑ 10 s(s+10)
s
− − −
s
s +1
(c) (d)

Figure P4.16: Problem 4.16.

4.16 For each of the systems in Fig. P4.16, find the type of the feedback system and calculate
the corresponding error constant (K p for Type 0, Kv for Type 1, and Ka for Type 2).
4.17 Consider a unity feedback control system with
K
G(s) = , K>0.
s(s + 3)

(a) Choose K such that Kv > 10 and the natural frequency of the closed-loop transfer
function ω n < 10.
(b) What is the steady-state error to the step input r(t) = 1(t)?
(c) What is the steady-state error to the ramp input r(t) = t 1(t)?
4.18 Consider a unity feedback control system with
K
G(s) = , K>0.
(s + 1)(s + 2)

(a) Can you choose K such that the steady-state error to a unit step input is less than 0.01?
(b) Can you choose K such that the steady-state error to a unit step input is less than 0.01
while keeping the natural frequency of the closed-loop transfer function ω n < 10?
4.19 Consider a unity feedback control system with
10 KI
Gp (s) = , Gc (s) = KP + , KP > 0 , KI > 0 .
(s + 1)(s + 10) s
Can you choose the PI controller gains KP and KI such that
PROBLEMS 149

(a) the steady-state error to a unit step input is less than 0.01?
(b) the steady-state error to the ramp input r(t) = t 1(t) is less than 0.01?
(c) the steady-state error to the parabola input r(t) = t 2 1(t) is less than 0.01?
4.20 Consider a unity feedback control system with
K
G(s) = , K >0.
s(s + 1)(s + 2)
Can you choose K such that
(a) the steady-state error to a unit step input is less than 0.1?
(b) the steady-state error to the ramp input r(t) = t 1(t) is less than 0.1?
4.21 Consider a non-unity feedback control system where G(s) has one or more poles at
s = 0 and H(s) , 1 but H(0) = 1. Show that

G(s)
Ge (s) =
1 + G(s)[H(s) − 1]
has a pole at s = 0.
4.22 A cruise-control system is modeled by

mυ̇ = au − bv − mg sin θ ,

where υ is the velocity of the vehicle, m is its mass, u is the throttle angle (control input),
a is the engine gain, bυ is the force due to road friction, and θ is the inclination of the road.
The controller is driven by the tracking error e = υdes − υ , where υdes is the velocity set point.
Find the steady-state tracking error for θ = 30◦ when the controller is
(a) a proportional controller: Gc (s) = K;
(b) a PI controller: Gc (s) = KP + KI /s.
4.23 Consider a unity feedback control system with
K
G(s) = .
s3 + 13s2 + 32s + 20

(a) Find the range of K for stability.


(b) Find the frequency of oscillation when the system is marginally stable.
(c) Find the position error constant Kp and the steady-state error to a unit step input. Can
you make the error less than 0.1?
4.24 Consider a unity feedback control system with
K
G(s) = .
s3 + 10s2 + 25s + 10

(a) Find the range of K for stability.


150 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

(b) Find the frequency of oscillation when the system is marginally stable.
(c) Find the position error constant Kp and the steady-state error to a unit step input. Can
you make the error less than 0.01?
4.25 Consider a unity feedback control system with
K
G(s) = .
s4 + 7s3 + 11s2 + 7s

(a) Find the range of K for stability.


(b) Find the value of K at which the system oscillates and the frequency of oscillation.
(c) Calculate the steady-state error e(∞) for a unit step input. Can you choose K to make
e(∞) < 0.1?
(d) Calculate the steady-state error e(∞) for a unit ramp input. Can you choose K to make
e(∞) < 0.1?
4.26 Consider the idle speed control of Problem 3.16 together with the linearized model of
Fig. P3.16. The time delay is modeled by the transfer function

1 − (0.04/2)s + (0.04)2 s2 /12


H(s) = .
1 + (0.04/2)s + (0.04)2 s2 /12

Suppose the feedback control is taken as ∆u = K(∆Nr − ∆N), where Nr is the desired engine
speed and ∆Nr is the change from the nominal value.
(a) Draw the root locus as K changes from 0 to ∞ and find the maximum value of K that
brings the system to verge of instability.
(b) Find K at which the real part of dominant poles is about −2.
(c) What are the closed-loop poles for the value of K determined in (b).
(d) What are the overshoot and settling time for the value of K of determined in (b).
4.27 A riderless bicycle can be stabilized by equipping it with a steering mechanism and
feedback control from the measured lean angle. In [1], the dynamics of the bicycle, in constant
forward velocity, from the steering angle to the lean angle is modeled by
 
s+8
G1 (s) = 3.373 2
s − 18.9

and the steering mechanism is modeled by

(33.9)2
G2 (s) = H(s) ,
s2 + 40.68s + (33.9)2

where H(s) is the transfer function of 0.015 s time delay. Using Padé approximation, the time
delay is modeled by
1 − (0.015/2)s + (0.015)2 s2 /12
H(s) = .
1 + (0.015/2)s + (0.015)2 s2 /12
PROBLEMS 151

The transfer function from the input of the steering mechanism to the lean angle is
G1 (s) G2 (s). A PID controller is designed in [1] as
 
1.5431
Gc (s) = KP 1 + + 0.075s ,
s
with KP = 2.5177.
(a) Draw the root locus of the system as KP changes from 0 to ∞.
(b) Show that the system is stable for K1 < KP < K2 and find K1 and K2 .
For the rest of this problem, KP = 2.5177.
(c) Find the closed-loop poles.
(d) What is the steady-state error to a unit step reference?
(e) Plot the step response of the closed-loop system. Determine the overshoot and the
settling time.
4.28 A process in the pulp and paper industry is modeled by the transfer function [5]
  
K1 e−τ s K1 1 − (τ s)/2 + (τ s)2 /12
Gp (s) = ≈ ,
τ1 s + 1 τ1 s + 1 1 + (τ s)/2 + (τ s)2 /12
where the nominal values of the parameters are K1 = 1, τ1 = 3 s, and τ = 0.2 s. It is common in
this industry to design the controller using the Internal Model Principle, where the controller
cancels the process dynamics, process poles with controller zeros and process zeros with
controller poles. For the given process, a PI controller is taken as
K(τ1 s + 1)
Gc (s) = .
s
(a) Draw the root locus as K varies from 0 to ∞.
(b) Choose K such that the settling time of the step response is about 2 sec.
(c) Compare the open-loop and closed-loop step responses.
(d) Using simulation, study the effect of ±20% change in each of K1 , τ1 , and τ on the
closed-loop step response. Take the changes in the parameters one at a time. The
controller parameters are kept at the nominal values.
(e) Comment on the results.
4.29 A process in the pulp and paper industry is modeled by the transfer function [5]
K1 (β s + 1)
Gp (s) = ,
s(τ1 s + 1)
where the nominal values of the parameters are K1 = 0.005, τ1 = 20 s, and β = 300 s. It is
common in this industry to design the controller using the Internal Model Principle, where
the controller cancels the process dynamics, process poles with controller zeros and process
zeros with controller poles. For the given process, a PID controller plus filter is taken as
  
K(τ1 s + 1)(s + z) 1
Gc (s) = .
s βs+1
152 CHAPTER 4. FEEDBACK CONTROL SYSTEMS

(a) Sketch the root locus as K varies from 0 to ∞.


(b) Choose z and K such that the settling time of the step response is about 2 s.
(c) Plot the step response of the closed-loop system.
(d) Using simulation, study the effect of ±20% change in each of K1 , τ1 and β on the
closed-loop step response. Take the changes in the parameters one at a time. The
controller parameters are kept at the nominal values.
(e) Comment on the results.
4.30 For people with type 1 diabetes, the pancreatic β -cells do not produce endogenous
insulin, which may lead to high glucose levels. Treatment with exogenous insulin is needed
to avoid extended periods of high glucose. An automated system for insulin delivery (closed-
loop insulin pump) has been the subject of research for many years and continues to be an
active area of research [6, 19, 34].
Figure P4.30 shows the block diagram of a typical closed-loop insulin pump system [34].
Glucose levels are measured by subcutaneous continuous glucose monitor (CGM) and insulin
is delivered by a continuous subcutaneous insulin infusion (CCII) pump. The insulin dose is
calculated by the controller, which determines the input voltage to the pump. A mathematical
model from the insulin delivery rate to the measured glucose level is given by the transfer
function [19, 34]
Ko
Gp (s) = .
(τ1 s + 1)(τ2 s + 1)2
The time constants τ1 = 247 (min) and τ2 = 17 (min) are uniform across patients while the
gain Ko is individualized to the patient. In particular, Ko = −12000/TDI, where TDI is the
total daily insulin dose of the patient. A PID controller is taken as

(τ1 s + 1)(τ2 s + 1)
Gc (s) = K ,
s
where the zeros of Gc (s) are chosen to cancel two poles of Gp (s).
(a) Choose K in terms of Ko such that the closed-loop step response has overshoot less than
5%. Determine the rise and settling times.

Desired Insulin Actual


glucose delivery glucose
level + Voltage rate level
∑ Controller CSII Pump Patient
+
Measured
glucose
level
CGM (sensor)

Figure P4.30: Closed-loop insulin pump.


PROBLEMS 153

(b) Using simulation, study the effect of ±20% change in Ko and ±10% change in each of
τ1 and τ2 on the closed-loop step response. Take the changes in the parameters one at a
time. The controller parameters are kept at the nominal values.
(c) Comment on the results.
Chapter 5
Time-Domain Design
Chapter Contents Objectives

Overview, 155 Upon learning the material presented in this chapter, you
5-1 Design Specifications, 155 should be able to:
5-2 Design by Gain Adjustment, 156
5-3 Design by Cascade Compensation, 163 1. Know the time-domain design specifications.
5-4 Lead and PD Controller, 165 2. Design by adjustment of a constant gain.
5-5 Lag and PI Controller, 179
5-6 Lead-Lag and PID Controller, 186 3. Design by cascade compensation.
5-7 Tuning PID Controllers and 4. Design lead, lag, and lead-lag compensators.
Anti-Windup Schemes, 194
Chapter Summary, 201 5. Design PI (Proportional-Integral), PD (Proportional-
Problems, 202 Derivative), and PID (Proportional-Integral-
Derivative) controllers.
6. Compensate for the effect of a controller’s zero by
prefilter or set-point weighting.
7. Tune PID controllers.
8. Understand integrator windup and the use of
anti-windup schemes.

154
5-1. DESIGN SPECIFICATIONS 155

Overview
The basic feedback control system is shown in Fig. 5-1. Given the plant transfer
function Gp (s), the objective of the control design problem is to design the controller transfer
function Gc (s) so that the closed-loop system meets certain design specifications. Time-
domain design specifications are stated in Section 5-1. Sections 5-2 to 5-6 describe different
procedures, increasing in complexity, for designing Gc (s).

Controller Plant
R(s) + ∑ Gc (s) Gp (s)
Y (s)

Figure 5-1: Feedback control system.

One of the most used controllers in industry is the proportional-integral-derivative (PID)


controller. Section 5-7 describes two practical issues in implementing PID controllers, tuning
their gains and preventing integrator drift during actuator saturation.

5-1 Design Specifications


Time-domain design specifications are classified into two groups:

• Steady-state error specifications, which take the form of requirements on the steady-
state error e(∞) to step, ramp, or parabola inputs. Equivalently, they may take the
form of requirements on the error constants, Kp (for Type 0 systems), Kυ (for Type 1
systems), or Ka (for Type 2 systems).

• Transient-response specifications, which are requirements imposed on the step response


of the closed-loop system. They constitute:

– Requirement on the percent overshoot (PO).


– Requirement on the rise time (Tr ), the peak time (Tp ), or the settling time (Ts ).

When the closed-loop system has a pair of dominant complex poles, which are the roots of
s2 + 2ζ ω n s + ω n2 , the transient response specifications are translated into requirements on
the damping ratio ζ and the natural frequency ω n , using relations that were developed in
Chapter 3. Those relations are exact only when the closed-loop transfer function T (s) is given
by the transfer function defined by Eq. (3.9):

K ω n2
T (s) = . (5.1)
s2 + 2ζ ω n s + ω n2
156 CHAPTER 5. TIME-DOMAIN DESIGN

For other cases we should ensure that the closed-loop transfer function can be approximated
by the above second-order transfer function. We have seen in Chapter 3 that such an
approximation is valid when other poles are far to the left in the complex plane relative to
the dominant complex poles, or when poles and zeros appear in pairs where the pole and
zero are very close to each other. In any case, the transient response should be checked by
simulation to make sure that the specifications are met.

5-2 Design by Gain Adjustment


Our first attempt to meet the design specifications is to use a proportional controller
Gc (s) = K, where K is a positive constant. The gain K is adjusted to meet the requirements.
Since we choose only one parameter, we can adjust it to meet only one of the specifications.
We can then check whether or not the other specifications are met by the same gain. There are
two reasons for starting the design process by adjusting the gain of a proportional controller.
If the chosen gain happens to meet all specifications, we end up with the simplest controller.
If the adjusted gain does not meet all specifications, our calculations usually guide us to the
next type of controller to try.
Choosing K to meet a requirement on the steady-state error is realized by calculating the
appropriate error constant, Kp , Kυ , or Ka , in terms of K, using formulas from Section 4-
3. Choosing K to meet a requirement on the transient response is accomplished by first
translating the transient response requirement to a requirement on a pair of complex dominant
poles. This step can take one of four forms: a requirement on ζ (for overshoot), a requirement
on ω n , a requirement on the real part of the poles
p −ζ ω n (for settling time), or a requirement
on the imaginary parts of the poles ωd = ω n 1 − ζ 2 .
The choice of K is realized in three steps:

1. Draw the root locus of Gp (s).

2. Draw a line or a curve in the complex plane that has the desired property of the closed-
loop poles and find its intersection with the root locus. The intersection point is the
desired closed-loop pole.

3. Find K at the desired closed-loop pole by applying the magnitude criterion of the root
locus method.

The second of the above three steps is illustrated in Fig. 5-2:

(a) For a desired ζ , find the intersection of the root locus with a line from the origin that
makes angle φ with the negative real axis, where cos φ = ζ .
(b) For a desired ω n , find the intersection of the root locus with the semicircle centered at
the origin with radius ω n .
5-2. DESIGN BY GAIN ADJUSTMENT 157

(c) For a desired −ζ ω n , find the intersection of the root locus with the vertical line drawn
at −ζ ω n .
(d) For a desired ω d , find the intersection of the root locus with the horizontal line drawn
at ω d .

ζ constant

ωn constant

(a) (b)

– ζ ωn constant
ωd constant

(c) (d)

Figure 5-2: Choice of a desired pole on the root locus.


158 CHAPTER 5. TIME-DOMAIN DESIGN

Example 5-1: Gain Design for Desired Overshoot

Given the plant transfer function

1
Gp (s) = ,
(s + 1)(s + 3)

design K such that PO (percent overshoot) ≤ 5%.



Solution: For PO ≤ 5%, set ζ = 1/ 2, for which √ PO = 4.3%, which is based on Eq. (3.22)
in Section 3-4.2, where it was shown that ζ = 1/ 2 ≈ 0.7 leads to PO = 4.3%. Now proceed
as follows:
Step 1: Draw the root locus of Gp (s) (Fig. 5-3).

Step 2: Draw a line from the origin at an angle φ = cos−1 (1/ 2) = 45◦ with the negative
real axis. The line intersects the root locus at s⋆ = −2 + 2 j.
Step 3: Apply the magnitude criterion at s⋆ to find K.

K
|KGp (s⋆ )| = 1 =1 K=5.
|(−2 + 2 j + 1)| |(−2 + 2 j + 3)|

2 s = −2 + 2 j

ϕ = 45◦
0

–1

–2

–3
–5 –4 –3 –2 –1 0 1 2

Figure 5-3: Example 5-1.


5-2. DESIGN BY GAIN ADJUSTMENT 159

Example 5-2: Gain Design for Desired Steady-State Error

Given the plant transfer function


1
Gp (s) = ,
(s + 1)(s + 3)

design K such that the steady-state error to a unit step input is less than 5%.
Solution: From the root locus in the previous example, the system is stable for all K ≥ 0.
Hence,
K
Kp = KGp (0) =
3
and
1 3
e(∞) = < 0.05 < 0.05 K > 57 .
1 + Kp 3+K

Example 5-3: Gain Design for Desired Overshoot and Steady-State Error

Given the plant transfer function


1
Gp (s) = ,
(s + 1)(s + 3)

design K such that


(a) PO ≤ 5% and
(b) the steady-state error to a unit step input is less than 5%.
Solution: From Example 5-1, the first requirement is satisfied for K ≤ 5 and from Example
5-2, the second requirement is satisfied for K > 57. Hence, there is no value of K that meets
both requirements.

Example 5-4: Gain Design for Desired Overshoot

Given the plant transfer function


10
Gp (s) = ,
s(s + 1)(s + 10)

design K such that the overshoot of the step response is less than 20%. Find the settling time.
Solution: For PO ≤ 20%, set ζ = 0.5, for which PO = 16.3% (according to Section 3-4.2).
Now proceed as follows:
160 CHAPTER 5. TIME-DOMAIN DESIGN

–1

–2

–3

–4
–6 –5 –4 –3 –2 –1 0 1 2 3

Figure 5-4: Root locus of Example 5-4.

Step 1: Draw the root locus of Gp (s) (Fig. 5-4 shows only the complex part of the root locus).

Step 2: Draw a line from the origin at an angle φ = cos−1 (0.5) = 60◦ with the negative real
axis. The line intersects the root locus at the desired closed-loop pole s⋆ . If the root locus is
drawn to scale, we can use a ruler to determine the real part of s⋆ ; we can then calculate the
imaginary part from the slope of the line. Alternatively, we may approximate the real part
of s⋆ .
The point of intersection lies slightly to the right of the breakaway point. Find the
breakaway point from
d 3
(s + 11s2 + 10s) = 3s2 + 22s + 10 = 0 .
ds
The roots of this equation are s = −0.49 and s = −6.85. From the root locus, the breakaway
point is between s = 0 and s = −1. Hence,√it is s = −0.49. Approximate
√ the real part of s⋆ by
−0.4. Then, Im[s⋆ ] = 0.4 tan(60◦ ) = 0.4 3. Hence, s⋆ ≈ −0.4 + 0.4 3 j.
Step 3: Apply the magnitude criterion at s⋆ to find K:
10K
=1,
s(s + 1)(s + 10) s=s⋆

1 √ √ √
K= |(−0.4 + 0.4 3 j)||(−0.4 + 0.4 3 j + 1)||(−0.4 + 0.4 3 j + 10)| ≈ 0.71
10
5-2. DESIGN BY GAIN ADJUSTMENT 161

and
4 4 4
Ts ≈ = √ = = 10 s .
ζ ω n 0.5| − 0.4 + 0.4 3 j| 0.5 × 0.8

Step 4: Simulate the step response of the closed-loop system with K = 0.71; the MATLAB
code is displayed in Fig. 5-5. The step response parameters are summarized in Table 5-1 for
three values of K, including K = 0.71, for which PO = 12.6% and Ts = 7 s. The requirement
on the overshoot is met. The actual Ts = 7 is lower than the estimated value Ts = 10.

>> G1 = zpk([],[0 -1 -10],10)


G1 =
10
--------------
s (s+1) (s+10)
>> T1 = feedback(0.71*G1,1);
>> stepinfo(T1)
ans =
struct with fields:
RiseTime: 2.0826
SettlingTime: 7.0474
SettlingMin: 0.9099
SettlingMax: 1.1262
Overshoot: 12.6225
Undershoot: 0
Peak: 1.1262
PeakTime: 4.5932

Figure 5-5: MATLAB code for Example 5-4.

Table 5-1: Example 5-4: comparison of the step response parameters for three gains.

K PO Tr (s) Tp (s) Ts (s)


0.71 12.6% 2.08 4.59 7.05
0.822 15.9% 1.84 4.15 9
1 20.1% 1.56 3.62 8.49
162 CHAPTER 5. TIME-DOMAIN DESIGN

Imaginary Axis (seconds–1)


– – – – –
Real Axis (seconds–1)

Figure 5-6: MATLAB-plotted root locus of Example 5-4.

The root locus can be plotted using MATLAB, which is shown in Fig. 5-6. Moving the
cursor over the root locus we can find a point where ζ = 0.5. We reached a point where
ζ = 0.504 at which K = 0.822. The step response of the closed-loop system with K = 0.822
was simulated in MATLAB and the results are summarized in Table 5-1; PO = 15.9% and
Ts = 9 s. The requirement on the overshoot is met. Notice that with the exact calculations of
MATLAB, the PO is closer to the expected PO = 16.3%, which corresponds to ζ = 0.5.
Now, let us take another crack at the design of K. The poles of Gp (s) are 0, −1, and −10.
The pole at −10 is far to the left relative to the other two poles. Therefore we may approximate
Gp (s) as
1 1
Gp (s) = ≈ .
s(s + 1)(0.1s + 1) s(s + 1)
The complex part of the root locus of the approximate transfer function is a vertical√line
at s = −0.5. The intersection of this line with the ζ = 0.5 line is at s⋆ = −0.5 + 0.5 3 j.
Application of the magnitude criterion yields

K
√ √ =1 K=1.
|(−0.5 + 0.5 3 j)||(−0.5 + 0.5 3 j + 1)|
5-3. DESIGN BY CASCADE COMPENSATION 163

The step response of the closed-loop system with the actual Gp (s) was simulated using
MATLAB and the results appear in Table 5-1. The requirement on the overshoot is almost
satisfied even with the approximation since PO = 20.1%. This is helped by the fact that
choosing ζ = 0.5 was an over-design since ζ = 0.5 yields PO = 16.3% while the requirement
is PO = 20%. From the table we see also that as the gain K increases, the overshoot increases
but the rise and peak times decrease.

5-3 Design by Cascade Compensation


To improve the performance of the control system beyond the proportional controller,
the controller transfer function Gc (s) is chosen from a family of transfer functions that
include Lead compensator, Lag compensator, Lead-Lag compensator, PI (Proportional-
Integral) controller, PD (Proportional-Derivative) controller, and PID (Proportional-
Integral-Derivative) controller. All these compensators, as well as the simple P (Proportional)
controller, can be realized by the circuit of Fig. 5-7.

C2
C4

C1 R2
C3 R4

Vi −
R1

V1 R3
+ Vo
+

Figure 5-7: Realization of cascade compensators.

It is shown in Example 2-9 that the transfer function of the circuit is given by Eq. (2.20)
as   
1  1
s+ s+
Vo C1C3  C1 R1  
 C3 R3 
.
=    (5.2)
Vi C2C4 1 1 
s+ s+
C2 R2 C4 R4
Specific choices of the R and C components result in the aforementioned transfer functions,
as shown in Table 5-2. Note that removing one of the capacitors is equivalent to setting C = 0,
while removing one of the resistors is equivalent to setting R = ∞.
The derivative component of the PD and PID controllers is obtained by approximation. In
particular, starting with the lead compensator with C3 = C4 = 0, Eq. (5.2) simplifies to
 
R2 R4 C1 R1 s + 1
, (5.3)
R1 R3 C2 R2 s + 1
164 CHAPTER 5. TIME-DOMAIN DESIGN

Table 5-2: Realization of different compensators using the circuit of Fig. 5-7.

Compensator Condition Transfer Function


P C1 = C2 = C3 Gc (s) = K
R2 R4
= C4 = 0 K=
R1 R3
 
s+z
Lead C3 = C4 = 0 Gc (s) = K
s+ p
C1 R4 1 1
C1 R1 > C2 R2 K= , z= , p= >z
C2 R3 C1 R1 C2 R2
 
s+z
Lag C3 = C4 = 0 Gc (s) = K
s+ p
C1 R4 1 1
C1 R1 < C2 R2 K= , z= , p= <z
C2 R3 CR C2 R2
 1 1  
s + z1 s + z2
Lead-Lag C1 R1 > C2 R2 Gc (s) = K
s + p1 s + p2
C1C3 1 1
C3 R3 < C4 R4 K= , z1 = , p1 = > z1
C2C4 C1 R1 C2 R2
1 1
z2 = , p2 = < z2
C3 R3 C4 R4
K2
PI R2 = ∞, C3 = C4 = 0 Gc (s) = K1 +
s
C1 R4 R4
K1 = , K2 =
C2 R3 C2 R1 R3
PD C2 = C3 = C4 = 0 Gc (s) = K1 + K2 s
R2 R4 C1 R2 R4
K1 = , K2 =
R1 R3 R3
K2
PID R2 = ∞, C4 = 0 Gc (s) = K1 + + K3 s
s
R4 (C1 R1 +C3 R3 )
K1 =
C2 R1 R3
R4 C1C3 R4
K2 = , K3 =
C2 R1 R3 C2

which has a pole at −1/(C2 R2 ) and a zero at −1/(C1 R1 ). Also, choosing C2 R2 ≪ C1 R1 locates
the pole far to the left in the complex plane with respect to the zero. Hence, the transfer
function can be approximated by neglecting the pole; that is, by setting C2 = 0. The resulting
transfer function is
R2 R4 def
(C1 R1 s + 1) = K1 + K2 s ,
R1 R3
5-4. LEAD AND PD CONTROLLER 165

with
R2 R4 C1 R2 R4
K1 = , K2 = .
R1 R3 R3
The condition C2 = 0 can be achieved by removing the capacitor C2 , but in reality the parasitic
capacitance across R2 will induce C2 with a small value.
When cascade compensation is used, the system with proportional controller is referred to
as the uncompensated system. The six types of cascade compensators are grouped into three
groups depending on their functionality:

(a) To stabilize the system and improve the transient response using:
• Lead compensator or
• PD controller (special case of the lead compensator).
(b) To improve the steady-state error using:
• Lag compensator or
• PI controller (special case of the lag compensator).
(c) To improve the transient response and the steady-state error using:
• Lead-Lag compensator or
• PID controller (special case of the lead-lag compensator).
The suggested approach to design cascade compensation is to start with the
uncompensated system where Gc (s) = K and then choose the gain K to meet one of the
design specifications. If the design does not meet all design specifications, the next step will
depend on what needs to be improved. If we need to improve the transient response, we bring
in a lead or PD controller. If we need to improve the steady-state error, we bring in a lag or PI
controller. If we need to do both, we bring in a lead-lag or PID controller.
The design of the last case is usually realized in two steps. For example, in a lead-lag
compensator, we may start first by designing the lead component to improve the transient
response, and then design the lag component to improve the steady-state error.

5-4 Lead and PD Controller


The lead compensator and PD controller are used to stabilize the system and improve the
transient response. We start with the lead compensator.

5-4.1 Lead Compensator


The transfer function of the lead compensator is given by
 
s+z
Gc (s) = K , K > 0, p > z > 0. (5.4)
s+ p

Gc (s) has a pole at −p and a zero at −z. They lie on the negative real axis of the s-plane with
the zero to the right of the pole.
166 CHAPTER 5. TIME-DOMAIN DESIGN

X O ✲
−p −z

The addition of a lead compensator shifts the root locus of the uncompensated system
to the left, which allows for stabilization and improvement of the transient response. This
property is illustrated by the following example.

Example 5-5: The Lead Compensator Shifts the Root Locus to the Left

Sketch the root loci for the uncompensated system


K
KGp (s) =
s2
and the compensated system
 
s+z
Gp (s) Gc (s) = K , p>z>0.
s2 (s + p)

Solution: The root loci are shown in Fig. 5-8. The system cannot be stabilized by a
proportional controller but can be stabilized by a lead compensator.

Uncompensated Compensated

Unstable for all K ≥ 0 Stable for all K > 0

Figure 5-8: Example 5-5.

Design Procedure:
Step 1: From the transient response specifications, choose the desired dominant complex
closed-loop poles or the area of the s-plane where the poles should be located. A requirement
5-4. LEAD AND PD CONTROLLER 167

on PO takes the form PO ≤ α % for some number α < 100. Requirements on Ts , Tp or Tr take
the form Ts ≤ β , Tp ≤ γ , and Tr ≤ δ for some specified numbers β , γ , and δ . From
√ [ln(100/α )/π ]
−ζ π / 1−ζ 2 def
PO ≤ α % e ≤ 0.01α ζ≥ q = ζo .
1 + [ln(100/α )/π ] 2

Recall that for PO ≤ 5% set ζ ≥ 1/ 2 and for PO ≤ 20% set ζ ≥ 0.5.
Note that the desired closed-loop pole s⋆ lies to the left of a line from the origin that makes
an angle φ with the negative real axis, where cos φ = ζo . Also,

4 4 4
Ts ≤ β ≤β ζ ωn ≥ Re[s⋆ ] ≤ − ,
ζ ωn β β
π π π
Tp ≤ γ ≤γ ωd ≥ Im[s⋆ ] ≥ ,
ωd γ γ
2.16ζ + 0.6 2.16ζ + 0.6
Tr ≤ δ ≤δ ωn ≥ .
ωn δ

After choosing ζ (within the range 0.3 ≤ ζ ≤ 0.75), ω n should lie outside a semicircle
centered at the origin of radius (2.16ζ + 0.6)/δ .
Step 2: Sketch the root locus of the uncompensated system; that is, the system with Gc (s) = K.
If the desired closed-loop poles can be chosen on the complex part of the root locus, stop. You
do not need a lead compensator. Otherwise, proceed to the next step.
Step 3: The design of the lead compensator involves choosing three parameters: z, p, and K.
Start by choosing z, which is equivalent to locating the compensator’s zero on the negative
real axis. Two suggestions for locating the zero are:

• Choose the zero to cancel one of the poles of Gp (s). Because the pole of the
compensator is to the left of its zero, the net effect amounts to replacing one pole of
Gp (s) by another pole to the left, which shifts the root locus to the left. Warning: Do
not cancel poles with non-negative real parts (Re[pi ] ≥ 0). We will say more about this
point later.

• Locate the zero under the desired closed-loop pole (move it to the right or left as
needed).

Step 4: Apply the angle criterion at the desired closed-loop pole s⋆ to find the location of the
compensator’s pole −p.
Step 5: Apply the magnitude criterion at s⋆ to find K.
Step 6: Simulate the step response of the closed-loop system to make sure the transient
response specifications are satisfied. You will need to redo the design if the specifications
are not satisfied.
168 CHAPTER 5. TIME-DOMAIN DESIGN

Example 5-6: Lead Compensator Design for Desired Settling Time

Given the plant transfer function


1
Gp (s) = ,
s(s + 1)

design a compensator Gc (s) so that Ts ≤ 1 s.


Solution: For
4
Ts ≤ 1 ≤1 ζ ωn ≥ 4 Re[s⋆ ] ≤ −4 .
ζ ωn
The uncompensated root locus is shown in Fig. 5-9. The complex part of the root locus is a
vertical line at Re[s] = − 21 . Use a lead compensator to shift the root locus to the left. Choose
the zero of the compensator to cancel the plant’s pole at −1; hence z = 1. The compensated
root locus is shown in Fig. 5-9. The design specification will be met with p ≥ 8 so that
p/2 ≥ 4. Choose p = 8. Any closed-loop pole on the vertical line at Re[s] = −4 will meet the
requirement Ts ≤ 1.
We √ have freedom in choosing the imaginary part of s⋆ . We choose it such that s⋆ has
ζ = 1/ 2. That places s⋆ on a line from the origin that makes 45◦ angle with the negative
real axis. Therefore, s⋆ = −4 + 4 j. Apply the magnitude criterion at s⋆ to find K:

K K
=1 =1 K = 32 .
s(s + 8) s=−4+4 j |(−4 + 4 j)||(−4 + 4 j + 8)|

Thus,
32(s + 1) 32 32
Gc (s) = Gp (s)Gc (s) = T (s) = .
s+8 s(s + 8) s2 + 8s + 32

x x x x
0 x
−1 −1/ 2 p −p/2 −1

Uncompensated Compensated

Figure 5-9: Example 5-6.


5-4. LEAD AND PD CONTROLLER 169

Because T (s) is a second-order transfer function, Ts = 4/(ζ ω n ) = 4/4 = 1 s.

Example 5-7: Lead Compensator Design for Desired Overshoot and Peak Time

Given the plant transfer function


0.5
Gp (s) = ,
s(s + 2.5)
design a compensator Gc (s) such that PO ≤ 20% and Tp ≤ 0.5 s.
Solution: For PO ≤ 20%, take ζ = 0.5.
π
Tp ≤ 0.5 ≤ 0.5 ω d ≥ 2π .
ωd
The uncompensated root locus is shown in Fig. 5-10. The complex part of the root locus is
a vertical line at Re[s] = −1.25. The point on that line that has ζ = 0.5 is at the intersection
with a line originating at the origin that√makes an angle of 60◦ with the negative real axis.
At this point ω d = 1.25 tan(60◦ ) = 1.25 3 ≈ 2.165 < 2π . The design specifications cannot
be met by the uncompensated system. Hence, use a lead compensator √ to shift the root locus
to the left. On the shifted root locus, if Re[s⋆ ] = −α , ω = α 3. For ω ≥ 2π , we need
√ d d √
α ≥ 2π / 3 = 3.63. Set α = 4 so that the desired closed-loop pole is s⋆ = −4 + 4 3 j. The
design of the lead compensator starts by locating its zero.

s = −4 + 4√3 j s = −4 + 4√3 j
• •

x x
−2.5 −1.25

θ2 θ1 θ4 θ3 θ2 θ1
x o
x x x o x x
−p −p −4 −2.5
Uncompensated Design #1 Design #2

Figure 5-10: Example 5-7.

We consider two designs, where in the first design the zero is chosen to cancel a pole of
Gp (s) while in the second design it is located under the desired closed-loop pole.
Design #1: Set z = 2.5 to cancel the plant’s pole at −2.5. Recall that this is the only pole
we can cancel because we cannot cancel the pole at the origin. To find the location of the
compensator’s pole, apply the angle criterion. From Fig. 5-10,
−[θ1 + θ2 ] = −180◦ , θ1 = 180 − 60 = 120◦ θ2 = 60◦ ,
170 CHAPTER 5. TIME-DOMAIN DESIGN

and √
4 3 √
tan θ2 = = tan 60◦ = 3 p=8.
p−4
Apply the magnitude criterion to find K:

0.5K

=1 K = 128 .
s(s + 8) s=−4+4 3 j

Hence,
128(s + 2.5) 64
Gc (s) = T (s) = .
s+8 s2 + 8s + 64

Design #2: Locate the zero under the desired closed-loop pole s⋆ = −4 + 4 3 j by setting
z = 4. Apply the angle criterion to find the location of the pole −p. From Fig. 5-10,

θ3 − (θ1 + θ2 + θ4 ) = −180◦ ,
√ !
−1 4 3
θ1 = 120◦ , ◦
θ2 = 180 − tan = 102.2◦ , θ3 = 90◦ ,
1.5

90 − (120 + 102.2 + θ4 ) = −180 θ4 = 47.8◦ ,


and √
4 3
tan θ4 = = tan 47.8 = 1.1 p = 10.28 .
p−4
Apply the magnitude criterion to find K:

0.5K(s + 4)

=1 K = 153 .
s(s + 2.5)(s + 10.28) s=−4+4 3 j

Hence,
153(s + 4) 76.5(s + 4)
Gc (s) = T (s) = .
s + 10.28 (s + 4.78)(s2 + 8s + 64)
Figure 5-11 compares the step responses of the closed-loop transfer functions for the two
designs. Design #2 has a larger overshoot and a smaller rise time due to the zero of the
closed-loop transfer function. In particular, for Design #1, PO = 16.3%, Tr = 0.2 s, and Tp =
0.45 s, while for Design #2, PO = 23.9%, Tr = 0.18 s, and Tp = 0.43 s. The difference is
not significant because the effect of the zero at −4 in the second design is reduced by the
closed-loop pole at −4.78, which is fairly close to the zero.
5-4. LEAD AND PD CONTROLLER 171

Step Response
1.4
Design #1
Design #2
1.2
Design #2 with prefilter

1
Amplitude

0.8

0.6

0.4

0.2

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4
Time (seconds)

Figure 5-11: Comparison of the step responses in Examples 5-7 and 5-8.

Prefilter
In the previous example, we can reduce the overshoot in Design #2 by using a prefilter to
move the zero of the closed-loop transfer function, as shown in Fig. 5-12. The filter transfer
function is
bs + z
F(s) = , b≥0, (5.5)
s+z

Prefilter Controller Plant


R(s) + ∑ Y (s)
F(s) Gc (s) Gp (s)

Figure 5-12: Prefilter.


172 CHAPTER 5. TIME-DOMAIN DESIGN

and −z is a zero of the closed-loop transfer function that we want to move to −z/b. The filter
has a dc gain of 1; that is, F(0) = 1, so that it does not change the dc gain of the closed loop
transfer function. The filtered closed-loop transfer function is T (s) F(s). If b = 0, the filter
cancels the zero of the plant. We have seen in Section 4-7 that a prefilter z/(s + z) can be used
to smooth the reference input and reduce the amplitude of the control signal.

Example 5-8: Lead Compensator with Prefilter

Reconsider Design #2 of the previous example and use a prefilter to reduce the overshoot.
Solution: We set b = 8/9 to replace the zero at −4 by a zero at −4.5, which is closer to
the pole at −4.78. The step response of the filtered closed-loop transfer function is shown in
Fig. 5-11, and the step response parameters are summarized in Table 5-3.

Table 5-3: Examples 5-7 and 5-8: comparison of the step responses.

PO Tr (s) Tp (s) Ts (s)


Design #1 16.3% 0.2 0.45 1
Design #2 23.38% 0.18 0.43 1.02
Design #2 with prefilter 18.6% 0.196 0.45 1.01

Warning about Pole-Zero Cancelation: Don’t cancel a pole with Re[s] ≥ 0 because such a
pole will be a hidden unstable pole. It will appear in the natural response of the closed-loop
system due to non-zero initial conditions and the response due to disturbances. The latter case
is illustrated in the next example.

Example 5-9: Unstable Hidden Pole

Reconsider Example 5-7 and suppose that we design the lead compensator by canceling the
pole of Gp (s) at s = 0.
Solution: For
Ks 0.5K
Gc (s) = Gp (s)Gc (s) = .
s+ p (s + 2.5)(s + p)

It can be verified that closed-loop poles at −4 ± 4 3 j are achieved with p = 5.5 and
K = 100.5. The closed-loop transfer function from R to Y is given by

Y 50.25
= 2 .
R s + 8s + 64
5-4. LEAD AND PD CONTROLLER 173

Note that the dc gain is not 1 because the system now is Type 0. However, this is not the issue.
As far as the transient response specifications are concerned, they are met. Suppose that a
disturbance D enters the system, as shown in Fig. 5-13. The transfer function from D to Y is
given by
Y 0.5(s + 5.5)
= .
D s(s2 + 8s + 64)
The hidden pole at s = 0 appears in this transfer function; hence, it is unstable. A constant
disturbance would cause a ramp signal at the output.

D(s)

R(s) + ∑ Gc (s)
+ ∑ Gp (s)
Y (s)

− −

Figure 5-13: Example 5-9.

5-4.2 Proportional Derivative (PD) Controller


The transfer function of the PD controller is
def KP
Gc (s) = KP + KD s = K(s + z), where K = KD , z= .
KD
The PD controller is a special case of the lead compensator as the compensator pole tends
to −∞. Starting with the lead compensator transfer function
  !
s+z K1 s+z
Gc (s) = K1 = , (5.6)
s+ p p 1p s + 1

we set K1 = K p, which leads to


!
s+z
Gc (s) = K 1
→ K(s + z) as p → ∞ .
p s+1

Since differentiation of signals amplifies noise, the derivative term s is typically implemented
as s/(τ s + 1) with very small τ .
The addition of a PD controller shifts the root locus of the uncompensated system to the
left, which allows for stabilization and improvement of the transient response. This property
is illustrated by the following example.
174 CHAPTER 5. TIME-DOMAIN DESIGN

Example 5-10: The PD Controller Shifts the Root Locus to the Left

Sketch the root locus for the uncompensated system


K
KGp (s) = , a>0,
s(s + a)

and the root locus for the compensated system


s+z
Gp (s) Gc (s) = K , z>0.
s(s + a)

Solution: The root loci are shown in Fig. 5-14.

Uncompensated Compensated

Figure 5-14: Example 5-10.

Example 5-11: PD Controller Design to Reduce the Settling Time

Given the plant transfer function


1
Gp (s) = ,
s(s + 1)

(a) Design Gc = K to have ζ = 0.5. What is Ts ?


(b) Design Gc = K(s + z) to have ζ = 0.5 and reduce Ts to 1/4 of the uncompensated value.
(c) Compare the step responses.
5-4. LEAD AND PD CONTROLLER 175

Solution:
(a) For Gc = K,
K
s(s + 1) K
T (s) = = 2 2ζ ω n = 1, ω n2 = K ,
K s +s+K
1+
s(s + 1)
ζ = 0.5 ωn = 1 K=1,
4
Ts = = 8 s.
ζ ωn
(b) For Gc = K(s + z)
K(s + z)
s(s + 1) K(s + z)
T (s) = = 2 2ζ ω n = K + 1 , ω n2 = Kz .
K(s + z) s + (K + 1)s + Kz
1+
s(s + 1)
For ζ = 0.5, ω n = K + 1. For Ts = 2 s,
4 8 16
Ts = = =2 ωn = 4 K = 3 and z = ,
ζ ωn ωn 3
3s + 16
T (s) = .
s2 + 4s + 16
(c) The results of the MATLAB simulation are summarized in Table 5-4.

Table 5-4: Example 5-11: comparison of the step responses.


Gc PO Tr (s) Ts (s)
1 16.3% 1.64 8.1
3s + 16 23.38% 0.29 1.89

The PD controller reduces the settling time as desired but the presence of a zero in the
closed-loop transfer function causes an increase in the overshoot and reduction in the
rise time.

The procedure for designing the PD controller using the root locus is similar to the
procedure for the lead compensator except that steps 3 and 4 for choosing the zero and pole
of the compensator are replaced with a single step to choose the zero of the PD controller:

◮ Apply the angle criterion at the desired closed-loop pole s⋆ to find the location of the
PD controller’s zero at −z. ◭
176 CHAPTER 5. TIME-DOMAIN DESIGN

Example 5-12: PD Controller Design for Desired Overshoot and Peak Time

Reconsider Example 5-7. Given the plant transfer function

0.5
Gp (s) = ,
s(s + 2.5)

design a compensator Gc (s) so that PO ≤ 20% and Tp ≤ 0.5 s.


Solution: Proceeding as in Example 5-7, the desired closed-loop pole is chosen as

s⋆ = −4 + 4 3 j .

We need to shift the uncompensated root locus to the left to have this desired pole. Use a PD
controller Gc (s) = K(s + z). To find z, apply the angle criterion at s⋆ . From Fig. 5-15,

θ3 − (θ1 + θ2 ) = −180◦ ,
√ !
4 3
θ1 = 120◦ , θ2 = 180◦ − tan−1 = 102.2◦ θ3 = 42.2◦ ,
1.5

4 3
tan θ3 = = tan 42.2 = 0.907 z = 11.64 .
z−4
Apply the magnitude criterion at s⋆ to find K.

0.5K(s + 11.64)

=1 K ≈ 11 .
s(s + 2.5) s=−4+4 3 j

s = −4 + 4√3 j

θ3 θ2 θ1
o x x
−z −4 −2.5

Figure 5-15: Example 5-12.


5-4. LEAD AND PD CONTROLLER 177

Hence,
5.5(s + 11.64)
Gc = 11(s + 11.64) T (s) = .
s2 + 8s + 64
The step response of the PD controller is compared with the two lead compensator designs
of Example 5-7. The results are summarized in Table 5-5. Similar to Design #2 of the
lead compensator, the presence of a zero in the closed-loop transfer function under the PD
controller causes an increase in the overshoot and reduction in the rise time. In the case of the
lead compensator, the effect of the zero at −4 is moderated by the pole at −4.78. In the case of
the PD controller, there is no pole that moderates the effect of the zero, but the zero is farther
to the left, at −11.64 compared with −4 for the lead compensator. That is why the overshoot
of the PD controller is comparable to the overshoot of Design #2 of the lead compensator.

Table 5-5: Example 5-12: comparison of the step responses.

Gc PO Tr (s) Tp (s) Ts (s)


Lead: Gc = 128(s + 2.5)/(s + 8) 16.3% 0.2 0.45 1
Lead: Gc = 153(s + 4)/(s + 10.28) 23.98% 0.18 0.43 1.02
PD: Gc = 11(s + 11.64) 22.1% 0.15 0.35 0.95

Set-Point Weighting

As it was done with the lead compensator, the overshoot of the closed-loop transfer function
of the PD controller can be reduced by a prefilter that changes the location of the transfer
function’s zero. In this case, the filter can be realized by weighting the reference input to the
controller, as shown in Fig. 5-16. The closed-loop transfer function is

Y = Gp (s) [KP (R −Y ) + KD s(bR −Y )] ,

R +∑ +∑ U Y
b KD s Gp (s)
− +
+
∑ KP

Figure 5-16: PD controller with set-point weighting.


178 CHAPTER 5. TIME-DOMAIN DESIGN

Y (KD bs + KP ) Gp (s)
=
R 1 + (KD s + KP ) Gp (s)
K(bs + z) Gp (s) KP
= , where K = KD , z = .
1 + K(s + z) Gp (s) KD

We can rewrite this transfer function as


   
Y bs + z K(s + z) Gp (s)
= , (5.7)
R s+z 1 + K(s + z) Gp (s)
| {z } | {z }
Prefilter Closed-loop TF under PD control

which shows that set-point weighting is equivalent to a prefilter that moves the zero from −z
to −z/b. When b = 0, set-point weighting cancels the zero. The case b = 0 is interesting in
another aspect that can be seen in the time domain. When b , 0 the control signal is given by

d
u(t) = KP [r(t) − y(t)] + KD [br(t) − y(t)] ,
dt

while when b = 0, the control signal is given by

d
u(t) = KP [r(t) − y(t)] + KD [−y(t)] .
dt

A step jump in the reference signal causes a spike in the control signal when b , 0 but not
with b = 0 because r(t) is not differentiated.

Example 5-13: PD Controller with Set-Point Weighting

Reconsider the previous example and implement the PD controller with set-point weighting
b = 0.

Solution: The closed-loop transfer function under PD control is

5.5(s + 11.64)
T (s) = ,
s2 + 8s + 64

and under the PD control with b = 0 set-point weighting is

64
T (s) = .
s2 + 8s + 64

The results of the step-response simulation are shown in Table 5-6.


5-5. LAG AND PI CONTROLLER 179

Table 5-6: Example 5-13: comparison of the step responses.

PD PO Tr (s) Tp (s) Ts (s)


PD: Gc = 11(s + 11.64) 22.1% 0.15 0.35 0.95
PD with b = 0 set-point weighting 16.3% 0.2 0.45 1

5-5 Lag and PI Controller


The lag compensator and PI controller are used to reduce the steady-state error. We start with
the lag compensator.

5-5.1 Lag Compensator


The transfer function of the lag compensator is
 
s+z
Gc (s) = K , K>0, z> p>0. (5.8)
s+ p

Gc (s) has a pole at −p and a zero at −z. They lie on the negative real axis of the s-plane with
the zero to the left of the pole.

O X ✲
−z −p

The lag compensator increases the error constant (Kp , Kυ , or Ka ) because the dc gain
of (s + z)/(s + p) = z/p > 1. The increase in the error constant is to be achieved while
maintaining the transient response of the uncompensated system. This is done by locating
the pole and zero of the compensator very close to the origin, far from the closed-loop poles
of the uncompensated system. In particular, if s⋆ is the dominant closed-loop pole of the
uncompensated system, z and p are chosen small enough so that

∠(s⋆ + z) ≈ ∠(s⋆ + p) and |s⋆ + z| ≈ |s⋆ + p| . (5.9)

Because z and p are very small, the ratio z/p can be chosen high enough to achieve the
desired increase in the error constant. The conditions of Eq. (5.9) are illustrated in Fig. 5-17.
The magnitude and angle criteria of the root locus are approximately satisfied at s⋆ for
the compensated system. Therefore the value of K for the compensated system can be
approximated by its value for the uncompensated system. The choice of z and p to meet
the conditions of Eq. (5.9) is subjective. A rule of thumb is to choose z such that the ratio of
|Re[s⋆ ]| to z is between 5 and 10.
Design Procedure:
Step 1: Study the uncompensated system and find dominant complex closed-loop poles, s⋆ ,
that meet the transient response specifications.
180 CHAPTER 5. TIME-DOMAIN DESIGN

s•

ox
−z −p

Figure 5-17: Locating the pole and zero of the lag compensator.

Step 2: Find K of the uncompensated system and calculate the error constant (Kp , Kυ , or Ka ).
Step 3: If the error constant is high enough, stop. Otherwise, use a lag compensator.
Step 4: Choose z such that the ratio |Re[s⋆ ]|/z is between 5 and 10.
Step 5: Choose p such that the ratio z/p is greater than the required increase in the error
constant.
Step 6: Set K as in the uncompensated system.
Step 7: Simulate the step response of the closed-loop system to make sure the transient
response specifications are satisfied.

Example 5-14: Lag Compensator Design for Desired Overshoot and Steady-
State Error

Given the plant transfer function

1
Gp (s) = ,
(s + 1)(s + 3)

design Gc (s) so that: (1) PO ≤ 20% and (2) the steady-state error to step inputs is less than 1%.
5-5. LAG AND PI CONTROLLER 181

Solution: Start with the uncompensated system Gc = K and choose K to meet the overshoot
requirement. For PO ≤ 20%, set ζ = 0.5. The complex part of the root locus is a vertical line
at Re[s] = −2. The desired closed-loop pole is at the intersection of this line with the line
from the origin that makes angle 60◦ with the negative real axis. Hence,

s⋆ = −2 + 2 tan(60◦ ) j = −2 + 2 3 j .

Application of the magnitude criterion yields


√ √
K = |(−2 + 2 3 j + 1)(−2 + 2 3 j + 3)| = 13 ,

K 13
Kp = KGp (0) = = .
3 3
For e(∞) < 0.01,
1
< 0.01 Kp > 99 .
1 + Kp
Use a lag compensator to increase Kp . With Re[s⋆ ] = −2, set z = 0.1 × 2 = 0.2. We need

z 99 0.2
> = 22.85 p< = 0.00875 .
p 13/3 22.85

Set p = 0.008. Keep K = 13. Hence,


 
s + 0.2
Gc = 13 ,
s + 0.008

Kp = Gp (0) Gc (0) = 109.33 e(∞) = 0.009 .


The closed-loop poles, computed using MATLAB, are −1.92 ± 3.42 j and −0.171. The
complex poles are fairly close to the uncompensated poles −2 ± 3.46 j. The closed-loop
transfer function has a zero at −0.2, which is close to the pole at −0.171. The step responses
of the uncompensated and compensated closed-loop transfer functions are shown in Fig. 5-18.
The compensated system reduces the steady-state error, but it approaches the steady-state
in a sluggish way, resulting in a large settling time; Ts = 12.6 s compared with Ts = 2.02 s for
the uncompensated system. The slow convergence is the effect of the pole at −0.171, even
though its effect is reduced by the zero at −0.2.

5-5.2 Proportional-Integral (PI) Controller


The transfer function of the PI controller is
 
s+z
KI def
Gc (s) = KP + =K , (5.10)
s s
KI
where K = KP and z = .
KP
182 CHAPTER 5. TIME-DOMAIN DESIGN

Step Response
1.2

0.8
Amplitude

Uncompensated
0.6
Compensated

0.4

0.2

0
0 5 10 15 20 25
Time (seconds)

Figure 5-18: Example 5-14.

The PI controller is a special case of the lag compensator as the compensator’s pole tends
to zero. Because the PI controller has a pole at the origin, it increases the type of the
uncompensated, from Type 0 to Type 1, from Type 1 to Type 2, and so on. The increase
in the type usually takes care of the requirement on the steady-state error. For example, if the
uncompensated system is Type 0 and the steady-state error to a step input is required to be
less than a certain value, the use of a PI controller results in zero steady-state error to step
inputs. The design of the PI controller involves the choice of z and K.
Design Procedure:
Step 1: Study the uncompensated system and find dominant complex closed-loop poles, s⋆ ,
that meet the transient response specifications.
Step 2: Find K of the uncompensated system and calculate the error constant (Kp , Kυ , or Ka ).
Step 3: If the error constant is high enough, stop. Otherwise, use a PI controller.
Step 4: Choose z to meet the transient response specifications. There are three approaches to
choose z:
5-5. LAG AND PI CONTROLLER 183

1. Choose small z so that the zero is close to the origin and far from the uncompensated
closed-loop poles. This approach is similar to the design of the lag compensator. The
constant K can be approximated by its uncompensated value and the settling time is
expected to increase.
2. Choose z to reshape the uncompensated root locus by shifting it to the left. Then find a
point on the reshaped root locus that meets the design specifications.
3. Choose a desired closed-loop pole s⋆ that meets the design specifications and apply the
angle criterion to locate the controller’s zero such that s⋆ lies on the compensated root
locus.

Step 5: Apply the magnitude criterion at s⋆ to find K.


Step 6: Simulate the step response of the closed-loop system to make sure the transient
response specifications are satisfied.

Example 5-15: PI Controller Design for Desired Overshoot and Steady-State


Error

Reconsider the plant transfer function


1
Gp (s) =
(s + 1)(s + 3)
from Example 5-14, where the goal is to design Gc (s) such that: (1) PO ≤ 20% and (2) the
steady state error to step inputs is less than 1%.
Solution: We have already seen from Example 5-14 that the design specifications cannot be
met with a choice of a gain K in Gc = K. So, use a PI controller:
 
s+z
Gp (s) Gc (s) = K .
s(s + 1)(s + 3)

Design #1: Choose the controller’s zero to cancel one of the plants’s poles. Which pole to
cancel, −1 or −3? Cancelling the pole at −3 leaves two poles at 0 and −1, while canceling
the pole at −1 leaves two poles at 0 and −3. The root locus in the second case will be further
to the left. So we choose z = 1 and the compensated transfer function becomes
 
1
Gp (s) Gc (s) = K .
s(s + 3)
The complex part of the root locus is a vertical line at Re[s] = −1.5. The requirement on
√the

overshoot is met with ζ = 0.5. Hence, the desired closed-loop pole is s = −1.5 + 1.5 3 j.
Application of the magnitude criterion yields
√ √
K = |(−1.5 + 1.5 3)(−1.5 + 1.5 3 j + 3)| = 9 .
184 CHAPTER 5. TIME-DOMAIN DESIGN

Hence,  
s+1 9
Gc (s) = 9 T (s) = .
s s2 + 3s + 9
The dc gain of T (s) = 1, showing that the steady-state error to step inputs is zero. The second-
order transfer function T (s) has ζ = 0.5; hence PO = 16.3%.
Design #2: Choose the controller’s zero to locate the desired closed-loop pole at

s⋆ = −1 + 3 j .

Apply the angle criterion. From Fig. 5-19,

s = −1 + √3 j

θ3 θ2 θ1
x θ4 o x x
−3 −z −1

Figure 5-19: Example 5-15.

θ3 − (θ1 + θ2 + θ4 ) = −180◦ ,
√ !
◦ ◦ −1 3
θ1 = 120 , θ2 = 90 , θ4 = tan = 40.9◦ ,
2
θ3 = 120 + 90 + 40.9 − 180 = 70.9◦ ,

◦ 3
tan θ3 = tan 70.9 = 2.888 = z = 1.6 .
z−1
Apply the magnitude criterion to find K:

s(s + 1)(s + 3)
K= √
=5.
s + 1.6 s=−1+ 3 j

Hence,
5(s + 1.6) 5(s + 1.6)
Gc (s) = T (s) = .
s (s + 2)(s2 + 2s + 4)
Table 5-7 compares the closed-loop step responses of the two designs. The increase in the
overshoot of Design #2 is due to the zero of the closed-loop transfer function.
5-5. LAG AND PI CONTROLLER 185

Table 5-7: Example 5-15. Comparison of the step responses.

PO Tr (s) Ts (s)
Design #1 16.3% 0.55 2.7
Design #2 21.7% 0.7 4.1

Set-Point Weighting: Figure 5-20 shows a set-point weighting scheme for the PI controller.
The closed-loop transfer function is given by
KI
Y = Gp (s)[KP (bR −Y ) + (R −Y )] ,
s
Y Gp (s)(KP b + KI /s)
=
R 1 + Gp (s)(KP + KI /s)
Gp (s)(KP bs + KI )
=
s + Gp (s)(sKP + KI )
Gp (s)K(bs + z) KI
= , where K = KP , z =
s + Gp (s)K(s + z) KP
   
bs + z K(s + z) Gp (s)
= . (5.11)
s+z s + K(s + z)Gp (s)
| {z } | {z }
Prefilter Closed-loop TF under PI control

R +∑ +∑ U Y
b KP Gp (s)
− +
+ KI

s

Figure 5-20: PI controller with set-point weighting.

Example 5-16: PI Controller with Set-Point Weighting

Reconsider Design #2 of Example 5-15 and implement the PI controller with set-point
weighting. Try b = 1.6/2 and b = 0.
186 CHAPTER 5. TIME-DOMAIN DESIGN

Solution: With b = 1.6/2, the closed-loop transfer function is


4(s + 2) 4
= .
(s + 2)(s2 + 2s + 4) s2 + 2s + 4
With b = 0, the closed-loop transfer function is
8
.
(s + 2)(s2 + 2s + 4)
The step responses of the closed-loop transfer functions for b = 1, b = 1.6/2 = 0.8, and b = 0
are shown in Fig. 5-21. The case b = 1 is the PI controller with no set-point weighting. As b
moves from 1 towards 0, the overshoot decreases and the rise time increases.

Step Response
1.4
b=1
1.2 b = 0.8
b=0

1
Amplitude

0.8

0.6

0.4

0.2

0
0 1 2 3 4 5 6 7
Time (seconds)

Figure 5-21: Example 5-16.

5-6 Lead-Lag and PID Controller


Improving both the transient response and the steady-state error may need the combination of
both the lead and lag compensators, leading to the lead-lag compensator, or the combination
the PD and PI controllers, leading to the PID controller.
5-6. LEAD-LAG AND PID CONTROLLER 187

5-6.1 Lead-Lag Compensator


  
s + z1 s + z2
Gc (s) = K , K > 0, p1 > z1 > 0, z2 > p2 > 0 . (5.12)
s + p1 s + p2
Design Procedure:
Step 1: Design z1 , p1 and K of the lead part to meet the transient response specifications
following the design procedure of the lead compensator.
Step 2: Choose z2 and p2 to increase the error constant while maintaining the transient
response, following the design procedure of the lag compensator. Keep K as in the first step.
Step 3: After each step, simulate the step response of the closed-loop system.

Example 5-17: Design of a Lead-Lag Compensator

Given the plant transfer function


1
Gp (s) = .
s(s + 0.4)

1. Design a lead compensator to achieve PO ≤ 20% and Ts ≤ 5 s.

2. Add a lag compensator to increase Kυ by a factor of 5.

Solution: To start with, note that the required settling time cannot be met with the
uncompensated system because the complex part of the uncompensated root locus is a
vertical line at Re[s] = −0.2 so that the settling time for any closed-loop poles on this line
is Ts = 4/0.2 = 20 s.
To design the lead compensator, choose a desired closed-loop pole that meets the design
specifications. To account for the increased overshoot due to the compensator’s zero, √ over-
design the system to achieve PO ≤ 5% and Ts ≤ 5 s. For PO ≤ 5%, set ζ = 1/ 2. For
Ts = 4/(ζ ω n ) ≤ 5, set ζ ω n ≥ 0.8. These requirements are met by choosing the desired closed-
loop pole as s⋆ = −1 + j. Locate the compensator’s zero under the desired pole by setting
z1 = 1 and apply the angle criterion at s⋆ to find p1 .
188 CHAPTER 5. TIME-DOMAIN DESIGN

s = −1 + j

θ4 θ3 θ2 θ1
x o x x
− p1 −1 −0.4

Figure 5-22: Example 5-17.

From Fig. 5-22,


θ3 − (θ1 + θ2 + θ4 ) = −180◦ ,
 
1
θ1 = 135◦ , ◦
θ2 = 180 − tan −1
= 121◦ , θ3 = 90◦ θ4 = 14◦ ,
0.6
1
tan θ4 = tan 14◦ = 0.25 = p1 = 5 .
p1 − 1
Apply the magnitude criterion to find K.
K(s + 1)
=1 K = 6.8 .
s(s + 0.4)(s + 5) s=−1+ j

With
6.8(s + 1)
Gc (s) = ,
(s + 5)
the closed-loop transfer function is
6.8(s + 1)
T (s) = ,
(s + 3.4)(s2 + 2s + 2)
whose complex poles are −1 ± j. The simulation of T (s) results in PO = 18.4%, Tr = 0.8 s,
and Ts = 3.8 s. Now design the lag part of the compensator to increase Kυ by a factor of 5.
With Re[s⋆ ] = −1, set z2 = 0.1. Then, z2 /p2 = 5 yields p2 = 0.02. Keep K = 6.8. With
6.8(s + 1)(s + 0.1)
Gc (s) = ,
(s + 5)(s + 0.02)
the closed-loop transfer function is
6.8(s + 1)(s + 0.1)
T (s) = .
(s + 3.455)(s + 0.102)(s2 + 1.863s + 1.929)
5-6. LEAD-LAG AND PID CONTROLLER 189

Its complex poles are −0.993 ± 1.03 j. The simulation of T (s) results in PO = 23.2%,
Tr = 0.77 s, and Ts = 4.05 s. The increase in Ts is small because the pole and zero of the
lag part are very close to each other. The overshoot, however, does not meet the design
specification. How can we reduce the overshoot?
• Redesign with a larger ζ ,
• push z2 and p2 closer to the origin, or
• use a prefilter.
We try the first and third approaches. Redesign p with ζ = 0.75. Keep ζ ω n = 1, as in the
previous design. Then ω n = 1/0.75 and ω d = ω n 1 − ζ 2 = 0.882. Thus, s⋆ = −1 + 0.882 j.
Set z1 = 1 and apply the angle criterion to find p1 .
θ3 − (θ1 + θ2 + θ4 ) = −180◦ ,
θ1 = 180◦ − tan−1 (0.882) = 138.59◦ ,
θ2 = 180◦ − tan−1 (0.882/0.6) = 124.23◦ , θ3 = 90◦ ,
0.882
θ4 = 7.18◦ tan θ4 = 0.126 = p1 = 8 .
p1 − 1
Apply the magnitude criterion to find K.
K(s + 1)
=1 K = 11.38 .
s(s + 0.4)(s + 8) s=−1+0.882 j

With
11.38(s + 1)
Gc (s) = ,
(s + 8)
the closed-loop transfer function is
11.38(s + 1)
T (s) = .
(s + 6.4)(s2 + 2s + 1.778)
Its complex poles are −1 ± 0.882 j. The simulation of T (s) results in PO = 14.5%, Tr = 0.8 s,
and Ts = 3.9 s. Adding the lag part from the previous design yields
11.38(s + 1)(s + 0.1)
Gc (s) =
(s + 8)(s + 0.02)
and
11.38(s + 1)(s + 0.1)
T (s) = .
(s + 6.425)(s + 0.102)(s2 + 1.893s + 1.738)
The complex poles of T (s) are −0.947 ± 0.918 j. The simulation of T (s) results in
PO = 18.66%, Tr = 0.76 s, and Ts = 4.25 s.
Alternatively, we can keep the first design and add the prefilter F(s) = (0.5s + 1)/(s + 1)
to move the zero from −1 to −2. Simulation of the filtered closed-loop transfer function yields
PO = 9.57%, Tr = 1.22 s, and Ts = 4.58 s.
190 CHAPTER 5. TIME-DOMAIN DESIGN

5-6.2 Proportional-Integral-Derivative (PID) Controller


KI KD s2 + KP s + KI K(s + z1 )(s + z2 )
Gc (s) = KP + + KD s = = ,
s s s
KI KP
where K = KD , z1 z2 = , z1 + z2 = ,
KD KD
 
s + z2
Gc (s) = K (s + z1 ) . (5.13)
| {z } s
PD | {z }
PI

Design Procedure
Step 1: Design z1 and K of the PD part to meet the transient response specifications following
the design procedure of the PD controller.
Step 2: Choose z2 small enough to maintain the transient response.
Step 3: After each step, simulate the step response of the closed-loop system.

Example 5-18: Design of a PID Controller

Given the plant transfer function

(s + 7)
Gp (s) = ,
(s + 2)(s + 5)(s + 10)

design a PID controller such that

1. PO ≤ 20%;

2. Tp ≤ 0.2 s;

3. zero steady-state error to step inputs.


5-6. LEAD-LAG AND PID CONTROLLER 191

Imaginary Axis (seconds–1)


– – – – –
Real Axis (seconds–1)

Figure 5-23: Uncompensated root locus of Example 5-18.

Solution: The third requirement is met by the use of the PID controller because it increases
the type of the system to Type 1. So we need to work on the first two requirements. Let us
start with the uncompensated system Gc = K. For PO ≤ 20%, set ζ = 0.5. On the root locus
of the system, drawn using MATLAB, ζ = 0.5 is achieved at s ≈ −4.8 + 8.3 j with K ≈ 83,
as shown in Fig. 5-23. The closed-loop transfer function is

83(s + 7)
T (s) = ,
(s + 7.41)(s2 + 9.594s + 91.95)
whose complex poles are −4.8 ± 8.3 j. The step-response parameters are PO = 17.9%,
Tr = 0.17 s, Tp = 0.37 s, and Ts = 0.85 s. Proceed to design the PD controller to reduce Tp :
π π
Tp = ≤ 0.2 ωd ≥ = 15.7 .
ωd 0.2
Set ω d = 16. With ζ = 0.5,

ζ ωd
ζ ωn = p = 9.2 ≈ 9 .
1−ζ2
192 CHAPTER 5. TIME-DOMAIN DESIGN

s = −9 + 16 j

θ5 θ4 θ3 θ2 θ1
o x o x x
− z1 −10 −7 −5 −2

Figure 5-24: Example 5-18.

Set the desired closed-loop pole as s⋆ = −9+ 16 j. Design the PD controller K(s+ z1 ) to locate
the dominant closed-loop pole at s⋆ . Apply the angle criterion to find z1 . From Fig. 5-24,
θ3 + θ5 − (θ1 + θ2 + θ4 ) = −180◦ ,
  
◦ −1 16 ◦ ◦ −1 16
θ1 = 180 − tan = 113.63 , θ2 = 180 − tan = 104.04◦ ,
7 4
 
16
θ3 = 180◦ − tan−1 = 97.13◦ , θ4 = tan−1 (16) = 86.42◦ ,
2
θ5 = 113.63 + 104.04 + 86.42 − 97.13 − 180 = 26.96◦ ,
16
tan θ5 = tan 26.96◦ = 0.509 = z1 = 40.46 ≈ 40 .
z1 − 9
Apply the magnitude criterion to find K.
K(s + 7)(s + 40)
=1 K = 8.2 ,
(s + 2)(s + 5)(s + 10) s=−9+16 j
5-6. LEAD-LAG AND PID CONTROLLER 193

8.2(s + 7)(s + 40)


Gc = 8.2(s + 40) T (s) = .
(s + 7.116)(s2 + 18.08s + 336.7)
The complex poles of T (s) are −9.042 ± 15.967 j. The step-response parameters are
PO = 20.19%, Tr = 0.075 s, Tp = 0.168 s, and Ts = 0.421 s. Finally, add the PI
controller (s + z2 )/s. The closest closed-loop pole to the imaginary axis is s = −7.116. Set
z2 < 7.116/10 = 0.77116. Set it z2 = 0.5. Hence,

8.2(s + 40)(s + 0.5) 8.2(s + 7)(s + 40)(s + 0.5)


Gc = T (s) = .
s (s + 7.125)(s + 0.485)(s2 + 17.59s + 332.2)

The complex poles of T (s) are −8.795 ± 15.964 j. The step-response parameters are
PO = 17.74%, Tr = 0.078 s, Tp = 0.168 s, and Ts = 0.866 s.
Figure 5-25 compares the step responses of the P, PD, and PID controllers. Even though
the response of the PID controller reaches within 2% of the steady state at Ts = 0.886 s, it
moves slowly towards the steady state. This is the effect of setting the zero of the PI controller
very close to its pole at the origin.

Step Response
1.2

0.8
Amplitude

P
0.6 PD
PID

0.4

0.2

0
0 0.5 1 1.5 2 2.5 3
Time (seconds)

Figure 5-25: Example 5-18.


194 CHAPTER 5. TIME-DOMAIN DESIGN

+∑
b KP

+
R +∑ KI +∑ U Y
Gp (s)
s
− +
+∑
c KD s

Figure 5-26: PID controller with set-point weighting.

Set-Point Weighting
As in the PD and PI controllers, set-point weighting can be used with the PID controller. The
scheme, shown in Fig. 5-26, combines the schemes for the PD and PI controllers. The control
signal, in the time-domain, is given by
Z
d
u(t) = KP [br(t) − y(t)] + KI [r(τ ) − y(τ )] d τ + KD [cr(t) − y(t)] .
dt
The closed-loop transfer function is given by

Y (cKD s2 + bsKP + KI ) GP (s)


= . (5.14)
R s + (KD s2 + KP s + KI ) Gp (s)

The extra closed-loop zeros due to the PID controller are the roots of

cKD s2 + bsKP + KI = 0 .

The locations of the two zeros can be adjusted by choosing the weights b and c, which is an
effective way to reduce the overshoot caused by the presence of the zeros. The choice c = 0
is preferred because it avoids the differentiation of the reference signal. This leaves only one
zero at −KI /(bKP ). This zero can be also eliminated by taking b = 0.

5-7 Tuning PID Controllers and Anti-Windup Schemes


The PID controller, also known as the three-term controller, is one of the most used controllers
in industry because a wide range of systems that are commonly used in industrial processes
can be effectively controlled by PID controllers. A main reason for its popularity is that its
three gains can be tuned without the knowledge of a mathematical model of the system.
Experienced system operators determine the three gains by trial and error using experimental
5-7. TUNING PID CONTROLLERS AND ANTI-WINDUP SCHEMES 195

Table 5-8: Effect of changing the three gains of the PDI controller on the step response.

PID Gain Overshoot Settling Time Steady-State Error


Increase KP Increases Minimal impact Decreases
Increase KI Increases Increases Zero error
Increase KD Decreases Decreases No impact

testing. Such empirical procedures depend on having general understanding of the effect of
changing each gain on the step response. Table 5-8 summarizes these effects.
There are several published tuning procedures for PID controllers.1 There are even
industrially available automatic tuning algorithms for PID controllers.2 One of the manual
tuning procedures, known as the Quarter Amplitude Delay Method, is described here:
Step 1: With KI = KD = 0, adjust KP until the second peak of the oscillation of the step
response is about one-fourth of the first peak.
Step 2: With KP fixed and KI = 0, slowly increase KD until you reduce the overshoot to the
desired level.
Step 3: With KP and KD fixed, slowly increase KI . The steady-state error will be zero, but
initially the settling time will be large. Keep increasing KI to reduce the settling time to an
acceptable level.

Example 5-19: PID Controller Design

In this example we perform a simulation experiment to tune the PID controller for an unknown
plant using the aforementioned tuning procedure. We set the goal to achieve 20% overshoot
in the step response. The plant transfer function used in the simulation is
10
Gp (s) = ,
(s + 1)(s + 3)(s + 10)

but this model is not used during the tuning steps.

1 See, for example, Section 4.3 of [11].


2 See, for example, [17].
196 CHAPTER 5. TIME-DOMAIN DESIGN

Step 1: With KI = KD = 0, we incremented KP in steps of 1, starting from KP = 1 while


checking the step response for the condition that the second peak of the oscillation is about
one fourth of the first peak. At KP = 20 we obtained the response in Fig. 5-27. The first peak
= 1.26 − 0.867 = 0.393 and the second peak = 0.96 − 0.867 = 0.093. The ratio of the first to
the second peak is 4.2, which we considered to be close enough to 4. So, we fixed KP = 20.

Step Response
1.4 x 0.82
y 1.25971

1.2
x 2.3
1 y 0.959829 x 5.9
y 0.867408
Amplitude

0.8

0.6

0.4

0.2

0
0 1 2 3 4 5
Time (seconds)

Figure 5-27: Step response for KP = 20, KI = 0, and KD = 0 in Example 5-19.


5-7. TUNING PID CONTROLLERS AND ANTI-WINDUP SCHEMES 197

Step 2: With KP = 20 and KI = 0, we incremented KD in steps of 0.5, starting from KD = 1.


The step response results are shown in Table 5-9. We set KD = 2.5 because the overshoot is
the closest to the goal of 20%.

Table 5-9: Tuning KD in Example 5-19.

KD Tr (s) Ts (s) PO (%)


1 0.317 2.487 32.45
1.5 0.316 2.136 27.71
2 0.31 1.75 23.65
2.5 0.3 1.66 20.23
3 0.296 1.53 17.34

Step 3: With KP = 20 and KD = 2.5, we incremented KI in steps of 0.5, starting from


KI = 0.5. We went through 30 values. Table 5-10 shows samples of the results. To maintain
the overshoot under 20%, we set KI = 14.5.

Table 5-10: Tuning KI in Example 5-19.

KI Tr (s) Ts (s) PO (%)


0.5 0.37 84.85 4.97
3 0.36 12.9 7.52
5.5 0.352 6.26 10.2
8 0.346 3.65 12.8
10.5 0.341 2.03 15.44
13 0.335 1.92 18.09
14.5 0.333 1.89 19.66
15 0.331 1.88 20.2
198 CHAPTER 5. TIME-DOMAIN DESIGN

Hence the result of the tuning procedure is KP = 20, KI = 14.5, and KD = 2.5. The tuned
step response is shown in Fig. 5-28.

Step Response
1.2

0.8
Amplitude

0.6

0.4

0.2

0
0 0.5 1 1.5 2 2.5 3
Time (seconds)

Figure 5-28: The tuned step response in Example 5-19.

Integrator Windup: All actuators have physical limits. Limiters (saturation functions) are
used to limit the control signal to its extreme values so as to protect the actuator. This has a
serious impact when integral action is used in the control as in PI and PID controllers. The
integrator by itself is not a stable system because it has a pole at the origin. This does not
cause problems as long as the feedback loop is closed. However when the control saturates,
the feedback loop is open because the output of the saturating element does not react to its
input. The state of the integrator may then drift to large values. When the controller comes
out of saturation, it may take a long time for the system to recover its normal operation. This
phenomenon is known as integrator windup.
5-7. TUNING PID CONTROLLERS AND ANTI-WINDUP SCHEMES 199

Anti-windup schemes:
Several anti-windup schemes are used to stop the integrator windup during control saturation.3
One such scheme is shown in Fig. 5-29. The signal es , which is the difference between the
input υ and the output u of the saturating element, is fed back to the integrator through a
positive gain Kw . When the control is not saturating, u = υ and es = 0. In this case the feedback
around the integrator has no effect. When the control saturates, es , 0 and the loop around the
integrator is closed. The equivalent transfer function from e to υ becomes KI /(s + Kw ), which
is stable.

+ 1 ++ υ u
e KI ∑ s

+
− +

es
Kw

Figure 5-29: Integrator anti-windup scheme.

3 See, for example, [3].


200 CHAPTER 5. TIME-DOMAIN DESIGN

Example 5-20: Anti-Windup Controller

Consider a feedback control system formed of the plant Gp (s) = 4/(s+1) and the PI controller
Gc (s) = 0.25 + 1/s. The control is saturated at ±0.3. A unit step input is applied at the
reference. Figure 5-30 shows the output, control, and integrator signals without anti-windup
scheme and with the anti-windup scheme of Fig. 5-29 with Kw = 1. It is clear that the anti-
windup scheme reduces the drift of the integrator. The system recovers faster as the gain Kw
increases. This is shown in Fig. 5-31 by comparing the responses for Kw = 1 and Kw = 10.

1
Output

Without anti-windup
0.5
With anti-windup

0
0 1 2 3 4 5 6 7 8
Time (seconds)
0.4
Control

0.2

0
0 1 2 3 4 5 6 7 8
Time (seconds)
Integrator state

0.5

0
0 1 2 3 4 5 6 7 8
Time (seconds)

Figure 5-30: The effect of the anti-windup scheme in Example 5-20.


SUMMARY 201

Output 0.5

0
0 1 2 3 4 5 6 7 8
Time (seconds)
0.4
Control

0.2

0
0 1 2 3 4 5 6 7 8
Time (seconds)
Integrator state

0.4

0.2

0
0 1 2 3 4 5 6 7 8
Time (seconds)

Figure 5-31: The effect of increasing the anti-windup gain in Example 5-20.

Summary
Concepts
• Gain adjustment can meet only one design specification.
• The lead compensator and PD controller can stabilize the system and improve the
transient response because they shift the root locus to the left in the complex plane.
• The lag compensator and PI controller can reduce the steady-state error because
they increase the error constant Kp , Kυ , or Ka .
• The lead-lag compensator combines the functions of the lead and lag compensa-
tors.
• The PID controller combines the functions of the PI and PD controllers.
• Control saturation can cause integrator windup, which can be mitigated by anti-
windup schemes.
• For a class of systems, the three gains of the PID controller can be tuned without
knowing a mathematical model of the system.
202 CHAPTER 4. FEEDBACK SYSTEMS

Mathematical Models
 
s+z
Lead compensator: Gc (s) = K , K > 0, p>z>0
s+ p
PD controller: Gc (s) = KP + KD s, KP > 0, KD > 0
 
s+z
Lag compensator: Gc (s) = K , K > 0, z > p > 0
s+ p
KI
PI controller: Gc (s) = KP + , KP > 0, KI > 0
s
  
s + z1 s + z2
Lead-lag compensator: Gc (s) = K , K > 0, p1 > z1 > 0,
s + p1 s + p2
z2 > p2 > 0
KI
PID controller: Gc (s) = KP + + KD s, KP > 0, KI > 0, KD > 0
s

Important Terms Provide definitions or explain the meaning of the following


terms:
anti-windup scheme lead compensator PID controller
gain adjustment lead-lag compensator prefilter
integrator windup PD controller set-point weighting
lag compensator PI controller tuning PID controller

PROBLEMS
5.1 Consider a unity feedback control system with
K
G(s) =
(s + 2)(s + 4)
Design K such that the system operates at 5% overshoot. Determine the settling time.
5.2 Consider a unity feedback control system with
K
G(s) = .
s(s + 2)
Design K such that the system operates at 20% overshoot. Determine the settling time.
5.3 Consider a unity feedback control system with
K(s + 3)
G(s) = .
s(s + 1)
PROBLEMS 203

(a) Draw the root locus using MATLAB.


(b) Choose K such that Ts = 2 s. What is PO?
(c) Simulate the step response of the closed-loop transfer function and determine Ts
and PO. If the results are different than part (b), explain why.
5.4 Consider a unity feedback control system with

K(s + 3)
G(s) = .
s(s + 1)

(a) Draw the root locus using MATLAB.


(b) It is desired to choose K such that PO ≤ 5%. Verify that there are two choices of K that
meet this requirement.
(c) Simulate the step response of the closed-loop transfer function for each choice of K and
comment on the results.
5.5 Consider a unity feedback control system with
K
G(s) = .
s(s + 1)(s + 2)

(a) Draw the root locus using MATLAB.


(b) Choose K such that PO = 60%. What is Ts ?
(c) Simulate the step response of the closed-loop transfer function and determine Ts
and PO.
(d) Comments on the results of parts (b) and (c).
5.6 Consider a unity feedback control system with

10K
G(s) = .
(s + 1)2 (s + 10)

(a) Approximate G by
K
G(s) ≈
(s + 1)2
and use the approximate transfer function to choose K to achieve 5% overshoot.
(b) Simulate the step response of the exact closed-loop transfer function with the choice of
K from part (a). Using the results of the simulation, comment on the appropriateness of
the approximation.
5.7 Consider a unity feedback control system with

1
Gp (s) = .
s(s + 1)(s + 10)
204 CHAPTER 4. FEEDBACK SYSTEMS

(a) Design Gc = K such that the system operates at 5% overshoot. Determine the settling
time.
(b) Design a lead compensator to decrease the settling time by a factor of 2 while operating
at 5% overshoot.
(c) Using MATLAB simulation, compare the performance of the compensated and uncom-
pensated systems.
5.8 Consider a unity feedback control system with
1
Gp (s) = .
(s + 1)(s + 3)
(a) Design Gc = K such that the system operates at 10% overshoot. Determine the settling
time.
(b) Design a compensator to decrease the settling time by a factor of 3 while operating at
10% overshoot.
(c) Using MATLAB verify that the design specifications of part (b) are satisfied.
5.9 Consider a unity feedback control system with Gp (s) = 1/s2 .
(a) Sketch the root locus when Gc (s) = K ≥ 0.
(b) Design a lead compensator Gc (s) = K(s + z)/(s + p) so that the closed-loop system has
complex poles at −1 ± j. Take z = 12 .
5.10 Consider a unity feedback control system with
K
G(s) = .
(s + 1)(s + 2)(s + 11)
(a) Design K such that the system operates at 5% overshoot. Determine the settling time.
(b) Design a lead compensator to decrease the settling time by a factor of 2 while operating
at 5% overshoot.
(c) Using MATLAB simulation, compare the performance of the compensated and uncom-
pensated systems.
5.11 Consider a unity feedback control system with the plant transfer function Gp (s) = 1/s2 .
To achieve overshoot under 5%, the desired closed-loop poles are chosen to be −1 ± j.
(a) Design a PD controller to achieve the desired closed-loop poles.
(b) Simulate the step response of the closed-loop transfer function and determine the over-
shoot.
(c) If the overshoot in (b) is higher than 5%, how would you modify the controller to
reduce the overshoot to under 5%? Verify that your modification does indeed bring the
overshoot under 5%.
5.12 Consider the plant transfer function
10
Gp (s) = .
s(s + 1)(s + 5)
PROBLEMS 205

(a) Design a compensator Gc (s) such that: (1) PO ≤ 5%; (2) Ts ≤ 4 s.; (3) steady-state error
to step inputs ≤ 1%.
(b) Simulate the step response of the closed-loop system to verify that all specifications are
met.
5.13 The first design of Example 5-7 chooses the zero of the lead compensator to cancel the
pole of the plant at −2.5. This of course assumes that the location of the plant pole is known
precisely. In this problem we investigate the effect of the uncertainty in the pole’s location.
Using MATLAB, simulate the step response of the closed-loop transfer function when
0.5 0.5 0.5
(a) Gp (s) = , (b) Gp (s) = , (c) Gp (s) = .
s(s + 2.5) s(s + 3) s(s + 2)
The compensator is
128(s + 2.5)
Gc (s) =
s+8
in all cases. Case (a) is the ideal case treated in Example 5-7. Cases (b) and (c) represent
±20% error in the pole’s location. Comment on the simulation results.
5.14 Consider a unity feedback control system with the plant transfer function
1
Gp (s) = .
s(s + 2)

(a) Design Gc (s) = K to operate at 20% overshoot. What are Ts and Kυ ?


(b) Design Gc (s) to increase Kυ by a factor of 2 while maintaining the transient response.
(c) Using simulation, compare the step responses of the uncompensated and compensated
systems.
5.15 Consider a unity feedback control system with
1
Gp (s) = .
(s + 3)(s + 5)

(a) Design Gc = K to operate at 5% overshoot. What are Ts and Kp ?


(b) Design Gc (s) to increase Kp by a factor of 10 while maintaining the transient response.
(c) Using simulation, compares the step responses of the uncompensated and compensated
systems.
5.16 For the plant transfer function
4
Gp (s) = ,
(s + 1)(s + 4)

(a) design a compensator Gc (s) such that: (1): PO ≤ 20%; (2) zero steady-state error to
step inputs;
(b) verify that the design requirements are met.
206 CHAPTER 4. FEEDBACK SYSTEMS

5.17 For the plant transfer function


10
Gp (s) = ,
s(s + 10)

(a) design a compensator Gc (s) such that; (1): PO ≤ 20%; (2) zero steady-state error to
ramp inputs;
(b) simulate the step response of the closed-loop system. If the overshoot is higher than
required, modify the controller to bring the overshoot down.
5.18 Consider a unity feedback control system with
1
Gp (s) = .
s(s + 12)

(a) Design Gc = K such that the system operates at 20% overshoot.


(b) Redesign the compensator Gc (s) of part (a) to reduce the settling time by a factor of 2
while maintaining the percent overshoot.
(c) Redesign the compensator Gc (s) of part (a) to increase Kυ by a factor of 4 while
maintaining the dominant closed-loop poles.
5.19 Consider a unity feedback control system with
K
G(s) = .
s(s + 2)

(a) Design K such that the system operates at 5% overshoot.


(b) Add a compensator to reduce the settling time of part (a) by a factor of 5.
(c) Add another compensator to increase Kυ of part (b) by a factor of 5.
5.20 Consider a unity feedback control system with
1
Gp (s) = .
s(s + 10)

(a) Design Gc = K such that the system operates at 20% overshoot.


(b) Redesign the compensator Gc (s) of part (a) to reduce the settling time by a factor of 4
while maintaining the percent overshoot.
(c) Redesign the compensator Gc (s) of part (a) to increase Kυ by a factor of 2 while
maintaining the dominant closed-loop poles.
5.21 Let
1
Gp (s) = .
s(s + 0.4)
Design a lead-lag compensator such that: (1) PO ≤ 8%; (2) Ts ≤ 1 s; (3) Kυ ≥ 10. Use
simulation to verify that the design specifications are met.
PROBLEMS 207

5.22 Let
(s + 7)
Gp (s) = .
(s + 2)(s + 5)(s + 10)
Design a PID controller such that: (1) PO ≤ 8%; (2) Ts ≤ 0.5 s; (3) zero steady-state error to
step inputs. Use simulation to verify that the design specifications are met.
5.23 A linearized model of a synchronous generator connected to an infinite bus is shown in
Fig. P3.17. Let b1 = 34.29, b2 = 0, b3 = 0.149, b4 = 0.3341, sin δ ⋆ = 0.78, and Eq⋆ = 1.0552.
(a) Find the transfer function Gp (s) = Y (s)/U (s).
(b) Design a PID controller U = Gc (s)(R −Y ) such that the overshoot is less than 5%.
(c) Plot the step response.
5.24 Figure P5.24 shows a schematic diagram of an inverted pendulum on a cart. The
pivot of the pendulum is mounted on a cart that can move in a horizontal direction. θ is the
rotation angle of the pendulum (measured clockwise from the vertical position) and y is the
displacement of the cart. Viewing the cart acceleration as the control input to the pendulum,
we can model the pendulum by the second-order differential equation [22]

(J + mL2 )θ̈ = mgL sin θ − mLÿ cos θ ,

where J is the moment of inertial of the pendulum with respect to the center of gravity, m
the mass of the pendulum, L the distance from the center of gravity to the pivot, and g the
acceleration due to gravity. With ÿ = 0, the pendulum has equilibrium at the vertical position
with θ = θ̇ = 0. Defining the control input as u = −ÿ/g, the linearization of the system near
the equilibrium point is given by
mgL
θ̈ = a(θ + u), where a = .
J + mL2

Let m = 0.1 kg, J = 0.008 kg m2 , L = 0.5 m, and g = 9.81 m/s2 .

Pendulum
V
θ
mg
y
Cart F H

Figure P5.24: Inverted pendulum on a cart.


208 CHAPTER 4. FEEDBACK SYSTEMS

(a) Find the transfer function θ /U . Show that the system is unstable.
(b) Draw the root locus when u = −K θ , for K ≥ 0. Can you choose K to stabilize the
system?
(c) Design a compensator such that
√ the closed-loop system has a pair of complex poles
with ω n = 1 rad/s and ζ = 1/ 2.

5.25 A riderless bicycle can be stabilized by equipping it with a steering mechanism and
feedback control from the measured lean angle. In [1], the dynamics of the bicycle, in constant
forward velocity, from the steering angle to the lean angle is modeled by
 
s+8
G1 (s) = 3.373 2 ,
s − 18.9

and the steering mechanism is modeled by

(33.9)2
G2 (s) = H(s) ,
s2 + 40.68s + (33.9)2

where H(s) is the transfer function of a time delay. In this problem we ignore the time delay;
that is, H(s) ≈ 1.
(a) Design a PI controller such that settling time is less than 2 s.
(b) Plot the step response of the closed-loop system. Determine the overshoot and the
settling time.

5.26 Consider the idle speed control of Problem 3.16 together with the linearized model of
Fig. P3.16. The time delay is modeled by the transfer function

1 − (0.04/2)s + (0.04)2 s2 /12


H(s) = .
1 + (0.04/2)s + (0.04)2 s2 /12

Consider the PI controller


 
KI
∆U = KP + (∆Nr − ∆N) ,
s

where Nr is the desired engine speed and ∆Nr is the change from the nominal value. Design
the PI controller to achieve settling time less than 2 s. Plot the step response.

5.27 Repeat the PID tuning simulation experiment of Example 5-19. Use

1
Gp (s) =
s(s + 1)

in the simulation.
PROBLEMS 209

5.28
(a) If you want to increase the error constant (Kp or Kυ ) of uncompensated system while
maintaining the transient response, which compensator would you use and how would
you design it?
(b) If you want to reduce the settling time of uncompensated system while maintaining the
overshoot, which compensator would you use and how would you design it?
(c) What is set-point weighting? Why and how is it used?
(d) What is a prefilter? Why and how is it used?
(e) In PID control, how would increasing the derivative gain KD affect the overshoot,
settling time, and steady-state error?
(f) In PID control, how would increasing the proportional gain KP affect the overshoot,
settling time, and steady-state error?
(g) In PID control, how would increasing the integration gain KI affect the overshoot,
settling time, and steady-state error?
(h) What is integrator windup and what is an anti-windup scheme?
Chapter 6
Frequency-Response Methods
Chapter Contents Objectives

Overview, 211 Upon learning the material presented in this chapter, you
6-1 Polar Plot, 211 should be able to:
6-2 Bode Plots, 217
6-3 Time-Delay Systems, 233 1. Draw the polar plot of a transfer function.
6-4 Nyquist Criterion, 234 2. Draw the Bode plots of a transfer function.
6-5 Relative Stability, 249
6-6 Relations between Frequency-Domain 3. Apply the Nyquist stability criterion to determine the
and Time-Domain Responses, 256 stability of the feedback control system.
Chapter Summary, 266 4. Measure relative stability by the gain and phase
Problems, 267 margins.
5. Find the gain and phase margins and their
corresponding crossover frequencies from the Bode
plots.
6. Determine the type of a feedback system and the error
constant Kp, Kυ, or Ka from the Bode plots.
7. Understand the relationship between the open-loop
frequency response, the closed-loop frequency
response, and the closed-loop step response.

210
6-1. POLAR PLOT 211

Overview
The frequency response of a transfer function G(s) is G( jω ) where the frequency ω varies
from −∞ to ∞ rad/s. In other words, the frequency response is obtained by restricting the
complex variable s to the imaginary axis of the complex plane. We have seen in Chapter 3
that the steady-state response of a stable transfer function G(s) to the sinusoidal input
A sin(ω t + θ ) is a sinusoidal signal of the same frequency with the amplitude and phase
modified by the amplitude and phase of the frequency response G( jω ). The definition of
the frequency response, however, is not limited to stable transfer functions.
We can characterize and study the stability of the control system of Fig. 6-1 using the
frequency response of G(s) H(s), which we write as GH(s). Such characterization uses
graphical representations of the frequency response. Two such representations are covered
in this chapter: the polar plot of Section 6-1 and the Bode plots of Section 6-2.

+
∑ G(s)

H(s)

Figure 6-1: Feedback control system.

The polar plot is used in developing the Nyquist stability criterion introduced in
Section 6-3 and studying relative stability in Section 6-4. The notion of relative stability deals
with the ability of the closed-loop system to maintain stability in the face of uncertainty in
GH(s). Relative stability is quantified by two parameters: the gain and phase margins, which
measure the strength of the stability of the system.
For transfer functions that have no poles in Re[s] > 0, the gain and phase margins can be
easily depicted using Bode plots. Using Bode plots we can also shape the frequency response
of the system to meet requirements on the performance of the closed-loop system, such as
tracking and the effect of disturbance and measurement noise. These applications of Bode
plots are introduced in Chapter 7 in the context of frequency-domain design. Section 6-5
provides certain relations between the frequency-domain and time-domain responses.

6-1 Polar Plot


For each frequency ω , the frequency response G( jω ) is a complex number that can be written
as
G( jω ) = Re[G( jω )] + jIm[G( jω )] = |G( jω )|e j∠[G( jω )] .
The complex number can be represented by a point in a complex plane whose real axis is
Re[G] and imaginary axis is Im[G]. The plane is called the G-plane. The polar plot of G( jω )
212 CHAPTER 6. FREQUENCY RESPONSE METHODS

Im[G]

ω1 < ω2 < ω3 < ω4

G( jω 4 ) Re[G]
o
o G( jω 3 )
o G( jω 2 )
o G( jω 1 )

Figure 6-2: Polar plot.

is a plot of G( jω ) in the G-plane as ω is varied from −∞ to ∞. Figure 6-2 shows a segment


of a polar plot with four points corresponding to four frequencies. The arrowhead on the plot
shows the direction of increasing frequency.
The polar plot can be drawn using the MATLAB command “nyquist”, but a sketch that
shows the general shape of the plot can be drawn by simple calculations. We shall see later,
when we study the Nyquist criterion, that it is often sufficient to have an approximate sketch
of the polar plot.
Drawing an approximate sketch of the polar plot can be realized by the following steps:
Step 1: Derive analytic expressions for Re[G], Im[G], and ∠[G] in terms of ω . Calculating
Re[G] and Im[G] is sufficient to determine G, but calculating ∠[G] simplifies drawing the
sketch.
Step 2: For ω > 0, calculate the limits of Re[G], Im[G], and ∠[G] as:
(a) ω → 0, and
(b) ω → ∞.

Step 3: Find points of intersection with


(a) the real axis: Im[G] = 0, and
(b) the imaginary axis: Re[G] = 0.

A rational transfer function G(s) with real coefficients has the property that

G( jω ) = X (ω ) + jY (ω ) G(− jω ) = X (ω ) − jY (ω ) .

Therefore, the polar plot is symmetric with respect to the real axis. The plot for ω < 0 is a
mirror image of the plot for ω > 0, where the image is reflected off the real axis.
6-1. POLAR PLOT 213

Example 6-1: Polar Plot of a First-Order Transfer Function

Sketch the polar plot of


K
G(s) = , K > 0, τ > 0.
τs + 1
Solution:
K K(1 − jωτ )
G( jω ) = = ,
1 + jωτ 1 + ω 2τ 2
K K ωτ
Re[G] = , Im[G] = − , ∠[G] = − tan−1 (ωτ ) .
1 + ω 2τ 2 1 + ω 2τ 2
Compute the limits:
• As ω → 0, Re[G] → K, Im[G] → 0, ∠[G] → 0,
• As ω → ∞, Re[G] → 0, Im[G] → 0, ∠[G] → − π2 .
Intersection with the axes:
• Real axis: Im[G] = 0 ω =0 Re[G] = K ,
• Imaginary axis: no intersections except at the origin.
Using this information we draw the sketch shown in Fig. 6-3.

Im

ω ω

Re
ω ω

Figure 6-3: Polar plot of Example 6-1.


214 CHAPTER 6. FREQUENCY RESPONSE METHODS

At ω = 0, the plot starts at the point (K, 0) on the real axis. As ω increases, Im[G] becomes
negative. Hence, the plot moves into the lower half of the plane. There are no intersections
with the axes until the plot reaches the origin as ω tends to infinity. Because the limit of ∠[G]
is −π /2 the plot is tangent to the imaginary axis as it approaches the origin. The shape of the
plot is drawn arbitrarily since the information about the limits and intersection with the axes
does not provide information on the shape of the plot. We can improve the approximation by
calculating Re[G] and Im[G] at a few frequencies, but since we can draw the exact plot using
MATLAB, we usually do not try to improve the approximation of the sketch. For ω < 0,
the plot is the mirror image of the plot for ω > 0. The sketch shows points where ω = 0+
and ω = 0− ; ω = 0+ when it approaches zero from the positive side and ω = 0− when ω
approaches zero from the negative side.

Example 6-2: Polar Plot of a Second-Order Transfer Function

Sketch the polar plot of


K
G(s) = , K > 0, τ > 0.
s(τ s + 1)

Solution:
K − jK(1 − jωτ ) −K(ωτ + j)
G( jω ) = = = ,
jω (1 + jωτ ) ω (1 + ω 2 τ 2 ) ω (1 + ω 2 τ 2 )
Kτ K π
Re[G] = − , Im[G] = − , ∠[G] = − − tan−1 (ωτ ) .
1 + ω 2τ 2 ω (1 + ω 2 τ 2 ) 2
Note that ∠[G] is computed from the original expression of G( jω ), not from Re[G] and Im[G].
This is usually the easier way to compute ∠[G] when G can be written as G = G1 G2 . . . Gm
because ∠[G] = ∠[G1] + ∠[G2 ] + · · · + ∠[Gm ].
Compute the limits:

• As ω → 0, Re[G] → −K τ , Im[G] → −∞, ∠[G] → − π2 ,

• As ω → ∞, Re[G] → 0, Im[G] → 0, ∠[G] → −π .


6-1. POLAR PLOT 215

There are no intersections with the axes except at the origin.


The sketch is shown in Fig. 6-4. As ω → 0, the plot approaches −∞ asymptotic to the
vertical line Re[G] = −K τ . As ω increases, the plot stays in the lower half of the plane and
approaches the origin, tangent to the real axis since ∠[G] approaches −π . For ω < 0, the plot
is the mirror image of the plot for ω > 0.

ω Im

Re
ω

Figure 6-4: Polar plot of Example 6-2.

Example 6-3: Polar Plot of a Third-Order Transfer Function

Sketch the polar plot of


1
G(s) = .
(s + 1)(s + 2)(s + 3)

Solution:
1 (1 − jω )(2 − jω )(3 − jω )
G( jω ) = = ,
(1 + jω )(2 + jω )(3 + jω ) (1 + ω 2 )(4 + ω 2 )(9 + ω 2 )
216 CHAPTER 6. FREQUENCY RESPONSE METHODS

6(1 − ω 2 ) ω (11 − ω 2 )
Re[G] = , Im[G] = − ,
(1 + ω 2 )(4 + ω 2 )(9 + ω 2 ) (1 + ω 2 )(4 + ω 2 )(9 + ω 2 )
ω  ω 
∠[G] = − tan−1 (ω ) − tan−1 − tan−1 .
2 3
Compute the limits:
1
• As ω → 0, Re[G] → 6 , Im[G] → 0, ∠[G] → 0 ,

• As ω → ∞, Re[G] → 0. Im[G] → 0, ∠[G] → − 32π ≡ π


2 ,

Intersection with the axes:


1 −1
• Real axis: Im[G] = 0 ω =0 Re[G] = 6 or ω 2 = 11 Re[G] = 60 ,
−1
• Imaginary axis: Re[G] = 0 ω =1 Im[G] = 10 .

The sketch is shown in Fig. 6-5. At ω = 0, the plot starts at ( 16 , 0) on the real axis. As ω

Im

ω ω

Re
ω

Figure 6-5: Polar plot of Example 6-3.


6-2. BODE PLOTS 217

increases, Im[G] becomes negative; hence, the plot moves into the lower half of the plane.
1
It intersects the imaginary axis at (0, − 10 ) and moves into the third quadrant. It stays in the
1
third quadrant until it intersects the real axis at (− 60 , 0) and crosses into the second quadrant.
It stays in the second quadrant until it approaches the origin as ω → ∞. Because the limit of
∠[G] is π2 , the plot is tangent to the imaginary axis as it approaches the origin. This is shown
in the zoomed-in graph of Fig. 6-6. For ω < 0, the plot is the mirror image of the plot for
ω > 0.

Im

Re

Figure 6-6: Polar plot of Example 6-3.

6-2 Bode Plots


Bode plots provide an alternative way to plot the frequency response G( jω ). Recall that
G( jω ) = |G( jω )|e j∠[G( jω )] , where |G| is the magnitude of G and ∠[G] is the angle or phase
of G. In Bode plots, G( jω ) is represented by two plots: magnitude versus frequency and phase
versus frequency. There are, however, some details that make these plots very useful. First,
the ω -axis uses a logarithmic scale, which allows for a wide frequency range.

10−1 100 101 102 103 ω
218 CHAPTER 6. FREQUENCY RESPONSE METHODS

Second, the magnitude is also drawn using a logarithmic scale by plotting 20 log |G| versus ω .
The log is taken to the base 10 and the units of 20 log |G| are decibels (dB).1 When G
is a product of simpler transfer functions, G = G1 G2 . . . Gm , magnitude G is a product of
magnitudes, |G| = |G1 ||G2 | . . . |Gm |. The logarithm converts this product into a summation,
log |G| = log |G1 | + log |G2 | + · · · + log |Gm | .
Recalling that the phase ∠[G] is also a summation,
∠[G] = ∠[G1 ] + ∠[G2 ] + · · ·∠[Gm ] ,
we see that the Bode plots of G = G1 G2 · · · Gm can be constructed by adding the Bode plots
of G1 , G2 , to Gm .
Figure 6-7 shows an example of Bode plots drawn using the MATLAB command “bode”.
The grid is added using the command “grid”.

50
Magnitude (dB)

–50

–100

–150
0
Phase (deg)

–90

–180

–270
10–2 10–1 100 101 102 103 104
Frequency (rad/s)

Figure 6-7: Bode plots drawn using MATLAB.

Example 6-4: Bode Plots of a Transfer Function with One Pole at the Origin

Sketch the Bode plots of


K
G(s) = .
s
1 In communications, the power gain is measured in decibels, 10 log(P /P ). Because power is the square of
2 1
voltage, the power gain is measured by 20 log(V2 /V1 ).
6-2. BODE PLOTS 219

Solution:
K K
G( jω ) = , |G| = , ∠[G] = −90◦ .
jω ω
The phase plot is a horizontal line at −90◦ . For the magnitude plot,
 
K
20 log |G| = 20 log = 20 log K − 20 log ω .
ω

Because the ω -scale is logarithmic, the foregoing equation represents a straight line with
negative slope.

K K
If ω2 and ω1 differ by a decade; that is, ω2 = 10 ω1 , = ,
ω2 10 ω1
     
K K K
20 log = 20 log − 20 log 10 = 20 log − 20 .
ω2 ω1 ω1

20 log |G| drops by 20 dB per decade; so, the slope is −20 dB/dec. The Bode plots are shown
in Fig. 6-8. The magnitude plot intersects the zero-dB line at ω = K because at ω = K,
K/ω = 1 and log(1) = 0.

20

10

–10

–20
K

–89

–89.5

–90

–90.5

–91

Figure 6-8: Bode plots of Example 6-4.


220 CHAPTER 6. FREQUENCY RESPONSE METHODS

6-2.1 Asymptotic Bode Plots


We now examine the use of approximations to obtain asymptotic Bode plots of the transfer
function.

Example 6-5: Bode Plots of a Transfer Function with One Pole

Sketch the Bode plots and asymptotic Bode plots of

K
G(s) = , K>1.
(τ s + 1)

Solution:
K K
G( jω ) = , |G| = √ , ∠[G] = − tan−1 (ωτ ) .
(1 + jωτ ) 1 + ω 2τ 2

One particular frequency of interest is ω = 1/τ , which is called the corner frequency or break
frequency. At this frequency,

K
|G| = √ 20 log |G| ≈ 20 log K − 3 dB and ∠[G] = − tan−1 (1) = −45◦ .
2

The Bode plots can be approximated by a sequence of straight lines, called asymptotes.

1
For ω ≪ , G( jω ) ≈ K |G| = K and ∠[G] = 0,
τ

1 K K
For ω ≫ , G( jω ) ≈ |G| = and ∠[G] = −90◦ ,
τ jωτ ωτ
K
|G| = 20 log |G| = 20 log K − 20 log(ωτ ) .
ωτ
This is the equation of a line that starts at 20 log K at the break frequency ω = 1/τ and
decreases with a slope of −20 dB/dec. Thus, the asymptotic magnitude plot is formed of
two lines intersecting at the break frequency. Starting at low frequency, we draw a horizontal
line of amplitude 20 log K. The line is extended until the break frequency where a line with a
slope of −20 dB/dec starts, extending to high frequencies.
For the asymptotic phase plot we want to draw a line that starts at 0◦ at low frequency and
goes to −90◦ at high frequencies and passes through −45◦ at w = 1/τ . For that, we draw a
line of slope −45◦ /dec that starts one decade below the break frequency, at ω = 0.1/τ , and
reaches −90◦ one decade after the break frequency, at ω = 10/τ . The asymptotic phase plot
is zero for ω < 0.1/τ and −90◦ for ω > 10/τ .
6-2. BODE PLOTS 221

The asymptotic Bode plots are shown in Fig. 6-9. They are shown again in Fig. 6-10
together with the exact Bode plots. The figure shows that the asymptotic Bode plots are good
approximations of the exact Bode plots.

–45

–90

Figure 6-9: Asymptotic Bode plots of Example 6-5.


222 CHAPTER 6. FREQUENCY RESPONSE METHODS

–45

–90

Figure 6-10: Asymptotic (red) and exact (blue) Bode plots of Example 6-5.

Example 6-6: Asymptotic Bode Plots of a Transfer Function with One Zero

Draw the asymptotic Bode plots of

G(s) = K(τ s + 1) .

Solution:
p
G( jω ) = K(1 + jωτ ), |G| = K 1 + ω 2τ 2 , ∠[G] = tan−1 (ωτ ) .

At the break frequency ω = 1/τ ,



|G| = K 2 20 log |G| ≈ 20 log K + 3 dB and ∠[G] = tan−1 (1) = 45◦ .

1
For ω ≪ , G( jω ) ≈ K |G| = K and ∠[G] = 0,
τ
6-2. BODE PLOTS 223

1
For ω ≫ , G( jω ) ≈ jK ωτ |G| = K ωτ and ∠[G] = 90◦ ,
τ

|G| = K ωτ 20 log |G| = 20 log K + 20 log(ωτ ) .

This is the equation of a line that starts at 20 log K at the break frequency ω = 1/τ and
increases with slope 20 dB/dec. Thus, the asymptotic magnitude plot is formed of two lines
intersecting at the break frequency. The asymptotic Bode plots are shown in Fig. 6-11. Starting
at low frequency, we draw a horizontal line of amplitude 20 log K. The line is extended until
the break frequency where a line of slope 20 dB/dec starts, extending to high frequency. For
the asymptotic phase plot, there are two frequencies of interest: one decade below the break
frequency at 0.1/τ and one decade after the break frequency at 10/τ . The asymptotic phase
plot is formed of three lines. For ω < 0.1/τ , we draw a horizontal line with ∠[G] = 0◦ .
Between 0.1/τ and 10/τ we draw a line that starts at 0◦ and increases with slope 45◦ /dec to
reach 90◦ at ω = 10/τ . For ω > 10/τ , the asymptotic phase plot is constant at 90◦ .

90

45

Figure 6-11: Asymptotic Bode plots of Example 6-6.


224 CHAPTER 6. FREQUENCY RESPONSE METHODS

Example 6-7: Asymptotic Bode Plots of a Transfer Function with Three Poles

Draw the asymptotic Bode plots of


1000 20
G(s) = = 1 1
.
(s + 1)(s + 5)(s + 10) (s + 1)( 5 s + 1)( 10 s + 1)

Solution: There are two ways to draw the asymptotic Bode plots of G. The first one is
to represent G as a product of three transfer functions of the form K/(τ s + 1), draw the
asymptotic Bode plots of each transfer function, and then add the plots together.
The second way, which we follow here, is to identify the frequencies at which there
are changes in the slopes of the asymptotic plots and change the slopes accordingly. The
asymptotic Bode plots are shown in Fig. 6-12. For the magnitude plot, the frequencies
of interest are the break frequencies of the three first-order terms; that is, 1, 5 and 10;
all frequencies are in rad/s. At each frequency a slope of 20 dB/dec is subtracted from

40

20

–20

–40

–60
–2 –1 0 1 2 3
10 10 10 10 10 10

–100

–200

–270
–300
–2 –1 0 1 2 3
10 10 10 10 10 10

Figure 6-12: Asymptotic Bode plots of Example 6-7.


6-2. BODE PLOTS 225

the previous slope. At low frequency, the magnitude plot starts with zero slope from
20 log 20 ≈ 26 dB since G(0) = 20.
For the phase plot, the frequencies of interest are one decade below and one decade after
each of the break frequencies. At one decade below the break frequency a slope −45◦ /dec
starts and ends at one decade after the break frequency. For the first term, a slope −45◦ /dec
starts at 0.1 and ends at 10. For the second term, a slope −45◦ /dec starts at 0.5 and ends at 50.
For the third term, a slope −45◦ /dec starts at 1 and ends at 100. At low frequency the phase
plot starts from 0◦ because G(0) = 20. For comparison, both the asymptotic and exact Bode
plots are shown in Fig. 6-13.

40

20

–20

–40

–60
10 –2 10 –1 10 0 10 1 10 2 10 3

–100

–200

–270
–300
10 –2 10 –1 10 0 10 1 10 2 10 3

Figure 6-13: Asymptotic (red) and exact (blue) Bode plots of Example 6-7.
226 CHAPTER 6. FREQUENCY RESPONSE METHODS

Example 6-8: Asymptotic Bode Plots of a Transfer Function with Three Poles
and One Zero

Draw the asymptotic Bode plots of


1
50(s + 10) 10( 10 s + 1)
G(s) = = 1
.
s(s + 1)(s + 50) s(s + 1)( 50 s + 1)

Solution: The procedure is similar to the previous example but there are two important
differences. First, at low frequency G( jω ) ≈ 10 ◦
jω . Therefore |G| = 10/ω and ∠[G] = −90 .

Thus, the asymptotic phase plot starts from −90 . To draw the asymptotic magnitude plot at
low frequency, start at ω = 10 rad/s on the zero-dB line and draw a line of slope −20 dB/dec.
The asymptotic magnitude plot starts on this line at low frequency but it may not follow it all
the way because the slope will change at the first break frequency.
The second difference from the previous example is the presence of the numerator term
1
( 10 s + 1). As we saw in Example 6-6, the magnitude plot of this term will add a positive
slope of 20 dB/dec starting at the break frequency and its phase adds a positive slope of
45◦ /dec starting one decade below the break frequency and ending one decade after it.
The asymptotic Bode plots are shown in Fig. 6-14. The frequencies of interest for the
magnitude plot are 1, 10, and 50 rad/s (the break frequencies of the first-order terms) and
the frequencies of interest for the phase plot are 0.1, 1, 5, 10, 100, and 500 rad/s (one decade
below and one decade after the break frequencies of the first-order terms). The magnitude plot
starts with a slope −20 dB/dec, which changes to −40 dB/dec at ω = 1 rad/s. The numerator
term starts to be effective at ω = 10 rad/s with a slope 20 dB/dec and that brings the net slope
to −20 dB/dec. This continues until ω = 50 rad/s where the denominator term with 50 rad/s
break frequency becomes effective, bringing the net slope back to −40 dB/dec.
In the phase plot, a negative slope −45◦ /dec starts at ω = 0.1 rad/s and ends at ω = 10
rad/s. A positive slope 45◦ /dec starts at ω = 1 rad/s and ends at ω = 100 rad/s. Finally, a
negative slope −45◦ /dec starts at ω = 5 rad/s and ends at ω = 500 rad/s. The resulting net
slope is shown in the asymptotic phase plot. Figure 6-15 shows both the asymptotic and exact
Bode plots.
6-2. BODE PLOTS 227

50

–50

–100
–2 –1 0 1 2 3
10 10 10 10 10 10

–60

–90

–120

–150

–180

–210
–2 –1 0 1 2 3
10 10 10 10 10 10

Figure 6-14: Asymptotic Bode plots of Example 6-8.


228 CHAPTER 6. FREQUENCY RESPONSE METHODS

50

–50

–100
10 –2 10 –1 10 0 10 1 10 2 10 3

–60

–90

–120

–150

–180

–210
10 –2 10 –1 10 0 10 1 10 2 10 3

Figure 6-15: Asymptotic (red) and exact (blue) Bode plots of Example 6-8.

6-2.2 Underdamped Second-Order Transfer Functions


Consider

ω n2 ω n2
G(s) = , ζ < 1, G( jω ) = .
s2 + 2ζ ω n s + ω n2 ω n2 − ω 2 + j2ζ ω n ω

We start by investigating the magnitude plot.

ω n2
|G( jω )| = p ,
(ω n2 − ω 2 )2 + 4ζ 2 ω n2 ω 2

ω n2
ω ≪ ωn |G( jω )| ≈ p ≈1 20 log |G| ≈ 0 ,
ω n4 + 4ζ 2 ω n2 ω 2
 ω 2  
ω n2 n ω
ω ≫ ωn |G( jω )| ≈ p ≈ 20 log |G| ≈ −40 log .
4 2 2
ω + 4ζ ω n ω 2 ω ωn
6-2. BODE PLOTS 229

The asymptotic magnitude plot is formed of the intersection of two lines. Starting from low
frequency a horizontal line at 0 dB intersects at ω = ω n with a line of slope −40 dB/dec
extending to high frequency. For small ζ the exact magnitude plot can deviate significantly
from the asymptotic plot. In fact, the magnitude plot may have a maximum value for small ζ .
To find the frequency of the maximum point, differentiate |G( jω )|2 with respect to ω and
equate to zero, to obtain
ω 2 = ω n2 (1 − 2ζ 2 ) .

Therefore, a maximum exists for ζp < 1/ 2. Denote the frequency at which the maximum is
achieved by ω p ; that is, ω p = ω n 1 − 2ζ 2 . Substituting ω = ω p in |G( jω )| results in the
maximum
1
Mpω = p .
2ζ 1 − ζ 2
For very small ζ the peak of the exact magnitude plot deviates significantly from the
asymptotic plot. Figure 6-16 shows the asymptotic and exact magnitude plots of

1
G(s) = , for ζ = 0.5 and ζ = 0.1 .
s2 + 2ζ s + 1

20

–20

–40

–60

–80
10 –2 10 –1 10 0 10 1 10 2

–45

–90

–135

–180
–2 –1 0 1 2
10 10 10 10 10

Figure 6-16: Bode plots of G(s) = 1/(s2 + 2ζ s + 1).


230 CHAPTER 6. FREQUENCY RESPONSE METHODS

We turn now to the phase plot.


 
−1 2ζ ωω n
For ω < ω n , ∠[G( jω )] = − tan ,
ω n2 − ω 2
∠[G(0)] = 0; as ω → ω n− , ∠[G( jω )] → −90◦ ,
 
◦ −1 2ζ ωω n
For ω > ω n , ∠[G( jω )] = −180 + tan ,
ω 2 − ω n2
As ω → ω n+ , ∠[G( jω )] → −90◦ ; as ω → ∞, ∠[G( jω )] → −180◦ .
The asymptotic phase plot is formed of three lines. A line of slope −90◦ /dec extends from
0 at ω = 0.1ω n to −180◦ at ω = 10ω n . For ω < 0.1ω n there is a horizontal line at 0◦ and
for ω > 10ω n , there is a horizontal line at −180◦ . The asymptotic phase plot coincides with
the exact plot at ω = ω n where ∠[G] = −90◦ . Similar to the magnitude plot, the exact phase
plot can deviate significantly from the asymptotic phase plot for small ζ . This is shown in
Fig. 6-16.

Example 6-9: Bode Plots of a Third-Order Transfer Function with a Pair of


Complex Poles

Draw the asymptotic and exact Bode plots of


5000
G(s) = .
(s + 5)(s2 + 10s + 100)

Solution: For the second-order term, ω n = 10 rad/s and ζ = 0.5.


G(0) = 10 20 log G(0) = 20 and ∠[G(0)] = 0◦ ,
5000
As ω → ∞, G( jω ) → .
( jω )3
Thus, as ω → ∞, the slope of the magnitude plot approaches −60 dB/dec and the phase plot
approaches −270◦ .
The frequencies of interest for the asymptotic magnitude plot are 5 and 10 rad/s. The plot
starts from 20 dB at low frequency. A negative slope of −20 dB/dec starts at ω = 5 rad/s,
due to the first-order term. A negative slope of −40 dB/dec starts at ω = 10 rad/s, due to the
second-order term„ bringing the net slope to −60 dB/dec, which extends to high frequencies.
The frequencies of interest for the asymptotic phase plot are 0.5, 1, 5, and 100 rad/s. The
plot starts from 0◦ at low frequency. A negative slope of −45◦ /dec starts at ω = 0.5 rad/s, due
to the first-order term. A negative slope of −90◦ /dec starts at ω = 1 rad/s, due to the second-
order term, bringing the net slope to −135◦ /dec. At ω = 50, the negative slope of −45◦ /dec
ends, resulting in a net slope of −90◦ /dec. At ω = 100 rad/s, the negative slope of −90◦ /dec
ends. At this frequency, ∠[G] = −270◦ and the asymptotic phase plot extends horizontally to
high frequency. The asymptotic Bode plots are shown in Fig. 6-17, together with the exact
plots, which are calculated using MATLAB.
6-2. BODE PLOTS 231

50

20
0

–50

–100
10 –1 10 0 10 1 10 2 10 3

–100

–200

–270
–300
1
10 – 10 0 10 1 10 2 10 3

Figure 6-17: Bode plots of Example 6-9.

6-2.3 Error Constants from Bode Plots


For a unity feedback control system with a forward transfer function G(s), the error constants
Kp , Kυ , or Ka can be determined from the Bode magnitude plot of G( jω ). For Type 0 systems,
Kp = G(0). The magnitude plot starts from 20 log |G(0)| at low frequency. Therefore, Kp
can be determined from the low-frequency level of the magnitude plot. In particular, if the
magnitude plot starts from b dB at low frequency, then Kp = 10(b/20) .
For Type 1 systems, G(s) has a pole at s = 0 and Kυ = lims→0 sG(s). Hence, the low-
frequency approximation of |G( jω )| is Kυ /ω . The magnitude plot starts at low frequency
with slope −20 dB/dec. Extend the low-frequency line until it intersects the zero-dB line at
frequency ω1 ; hence, Kυ = ω1 .
For Type 2 systems, G(s) has two poles at s = 0 and Ka = lims→0 s2 G(s). Hence, the low-
frequency approximation of |G( jω )| is Ka /ω 2 . The magnitude plot starts at low frequency
with slope −40 dB/dec. Extend the low-frequency line until it intersects the zero-dB line at
frequency ω2 ; hence, Ka = ω22 .
232 CHAPTER 6. FREQUENCY RESPONSE METHODS

Example 6-10: Finding the Type of Feedback System and the Error Constant
from the Bode Magnitude Plot

Figure 6-18 shows the Bode magnitude plots of the forward transfer functions G(s) for
three unity feedback systems. Determine the type of each system and the corresponding error
constant.

100
Magnitude (dB)

50
0
–50

10 –1 10 0 (a) 10 1 10 2

50
Magnitude (dB)

–50
10 –1 10 0 (b) 10 1 10 2
Magnitude (dB)

20

–20

10 –1 10 0 (c) 10 1 10 2

Frequency (rad/s)

Figure 6-18: Bode plots of Example 6-10.

Solution: For case (a), the slope of the magnitude plot at low frequency is −40 dB/dec. Hence,
the system is Type 2. The extension of the low frequency line intersects the zero-dB line at
ω ≈ 7 rad/s. Hence, Ka ≈ 49.
For case (b), the slope of the magnitude plot at low frequency is −20 dB/dec. Hence,
the system is Type 1. The extension of the low frequency line intersects the zero-dB line at
ω ≈ 10 rad/s. Hence, Kυ ≈ 10.
For case (c), the magnitude plot starts flat at 26 dB. Hence, the system is Type 0 and
Kp = 10(26/20) ≈ 20.
6-3. TIME-DELAY SYSTEMS 233

6-3 Time-Delay Systems


Signals may be delayed, for example, due to communication time. A time-delay unit is an
element whose output y(t) is delayed from its input u(t) by a delay time τ ; that is,

y(t) = u(t − τ ) .

Taking the Laplace transform of both sides yields

L{y(t)} = L{u(t − τ )} Y (s) = e−τ s U (s) .

Therefore, the transfer function of the time-delay unit is e−τ s .


A time-delay system has its input or output delayed by time τ . The transfer function of
such a system takes the form
G(s) = e−τ s Ĝ(s) ,
where the undelayed function Ĝ(s) is a proper rational function of s. The frequency response
of G(s) is given by

G( jω ) = e− jωτ Ĝ( jω ) ,
|G( jω )| = e− jωτ |Ĝ( jω )| = |Ĝ( jω )| because e− jωτ = 1 ,
 
∠[G( jω )] = ∠ e− jωτ + ∠[Ĝ( jω )] = −ωτ + ∠[Ĝ( jω )] .

Thus, the Bode magnitude plot of G( jω ) is the same as the Bode magnitude plot of Ĝ( jω ),
while the Bode Phase plot of G( jω ) has the curve ωτ subtracted from the Bode phase plot
of Ĝ( jω ). While ωτ is linear in ω , the curve ωτ in the Bode plot will not be linear because
the frequency scale is logarithmic. Note that the unit of ωτ is radian, so to plot it on a Bode
phase plot it should be converted into degrees.

Example 6-11: Bode Plots of a Transfer Function with Time Delay

Draw the Bode plots of


10e−(π /4)s
G(s) = .
s(s + 1)

Solution: The Bode plots of G and Ĝ = 10/[s(s + 1)] are shown in Fig. 6-19.
234 CHAPTER 6. FREQUENCY RESPONSE METHODS

50

–50

10 –2 10 –1 10 0 10 1 10 2

–90

–135

–180

–2 –1 0 1 2
10 10 10 10 10

Figure 6-19: Bode plots of Example 6-11.

6-4 Nyquist Criterion


6-4.1 Contour Mapping
Let F(s) be a rational function of s. If s is a complex number, F(s) also is a complex number.
The complex number s can be represented by a point in a complex plane, called the s-plane,
where the real and imaginary axes are Re[s] and Im[s]. Similarly, F(s) can be represented by a
point in a complex plane, called the F-plane, where the real and imaginary axes are Re[F(s)]
and Im[F(s)]. Hence, the point s in the s-plane is mapped into the point F(s) in the F-plane.
If s varies along a closed contour in the s-plane, F(s) also varies along a closed contour
in the F-plane, as illustrated in Fig. 6-20.
6-4. NYQUIST CRITERION 235

c
Im[s] Im[F]
f g h
d b

e a e a
Re[s] Re[F]

f h
d c b
g
s-plane F-plane

Figure 6-20: Contour mapping.

6-4.2 Cauchy’s Principle of the Argument


Let Qm
(s + zi )
F(s) = K Qni=1 .
i=1 + pi )
(s
How many times does the F-plane contour encircle the origin? The answer is determined by
m
X n
X
∠[F(s)] = ∠[(s + zi )] − ∠[(s + pi )] .
i=1 i=1

If the net change in ∠[F(s)], as s completes a clockwise revolution around the s-plane contour,
is 2kπ for an integer k, the F-plane contour encircles the origin k times. If k is positive, the
encirclement is clockwise. If it is negative, the encirclement is counterclockwise. If the net
change in ∠[F(s)] is zero, the F-plane contour does not encircle the origin.
236 CHAPTER 6. FREQUENCY RESPONSE METHODS

Im[s] Im[s]
f g h f g h

o − zi
e a e a
Re[s] Re[s]

d c b d c b
o − zi

s-plane s-plane

Figure 6-21: Net change in the angle of (s + zi ).

The net change in ∠[(s + zi )] depends on whether the zero −zi is inside or outside the
s-plane contour. Assume the zero is not on the contour itself. Figure 6-21 shows two cases,
one where the zero is inside and another where the zero is outside the s-plane contour. For
a point s on the contour, (s + zi ) is represented by the vector connecting −zi to s. Let s start
at point a and make a complete clockwise revolution until it comes back to a. The vectors
(s + zi ) at the representative points a, b, . . . , h, a are shown. When −zi is inside the contour,
the net change in ∠[(s + zi )] is 2π , but when −zi is outside the contour, the net change in
∠[(s + zi )] is zero.
Similarly, if a pole −pi is not on the s-plane contour, the net change in ∠[(s + pi )] is 2π
if the pole is inside the contour and zero if it is outside. Thus, provided no poles or zeros of
F(s) lie on the s-plane contour,

Net change in ∠[F(s)] = 2π (Z − P) ,

where Z and P are, respectively, the numbers of zeros and poles of F(s) inside the s-plane
contour. Let N be the number of counterclockwise encirclements of the origin by the F-plane
contour. Then
−2π N = 2π (Z − P) N = P−Z .
6-4. NYQUIST CRITERION 237

Example 6-12: Encirclement of the Origin by the F-Plane Contour

The function
(s + 2)(s + 3)
F(s) =
s(s + 1)
has two poles at 0 and −1 and two zero at −2 and −3. Figure 6-22 shows four different
s-plane contours. The first contour encircles the pole at s = 0. Thus, P = 1, Z = 0, and N = 1;
the F-plane contour encircles the origin once counterclockwise. The second contour encircles
the poles at 0 and −1. Thus, P = 2, Z = 0, and N = 2; the F-plane contour encircles the
origin twice counterclockwise. The third contour encircles the poles at 0 and −1 and the
zero at −2. Thus, P = 2, Z = 1, and N = 1; the F-plane contour encircles the origin once
counterclockwise. The fourth contour encircles the poles at 0 and −1 and the zeros at −2
and −3. Thus, P = 2, Z = 2, and N = 0; the F-plane contour does not encircle the origin.

s
1
10

0 0

−10
−1
−4 −3 −2 −1 0 1 −15 −10 −5 0 5 10 15
2 4
2
0 0
−2
−2
−4 −2 0 2 −2 0 2 4
2
2

0 0

−2
−2
−4 −2 0 2 −1 0 1 2 3
5
1

0 0

−1
−5
−4 −2 0 2 4 −0.5 0 0.5 1 1.5 2 2.5

Figure 6-22: Example 6-12.


238 CHAPTER 6. FREQUENCY RESPONSE METHODS

6-4.3 Stability of Feedback Systems


Consider the feedback control system of Fig. 6-1 where GH(s) is a proper rational function
of s; that is,
n(s)
GH(s) = ,
d(s)

in which n(s) and d(s) are polynomials with deg(n(s)) ≤ deg(d(s)). The characteristic
equation of the system is
1 + GH(s) = 0 .

The system is stable if all the zeros of this equation have negative real parts; that is, all the
zeros are in the Left-Half Plane (LHP). Recall that the zeros of the characteristic equation are
the poles of the closed-loop transfer function

G(s)
.
1 + GH(s)

We will apply Cauchy’s principle of the argument to determine whether or not the zeros of
1 + GH(s) are in the RHP. Let F(s) = 1 + GH(s). Then,

n(s) + d(s)
F(s) = .
d(s)

The poles of F(s) are known and the task is to determine if its zeros are in the LHP. Let P and
Z be the numbers of poles and zeros of F(s) in the Right-Half Plane (RHP) and recall that P
is known since it is the number of poles of GH(s) in the RHP. The system is stable if Z = 0.
Cauchy’s principle of the argument is applied as follows:

(1) Choose a contour in the s-plane, called the Nyquist contour, that includes the whole
RHP in its interior.

(2) Map the Nyquist contour into the F-plane

(3) Determine the number N of counterclockwise encirclements of the origin by the


F-plane contour.

Hence,
Z = P−N .
6-4. NYQUIST CRITERION 239

To construct the Nyquist contour, assume, for now, that GH(s) has no poles on the
imaginary axis; we will deal with poles on the imaginary axis later on. The contour is
constructed as shown in Fig. 6-23. Take a path on the imaginary axis from ω = −r to ω = r
and close the contour by a semicircle of radius r centered at the origin in the RHP. Then, let r
tend to ∞ so that the Nyquist contour includes the whole RHP.

Im[s]

r
r→∞

Re[s]

Figure 6-23: Nyquist contour.

The next step is to map the Nyquist contour into the F-plane. Here, we make a slight
modification. Since F(s) = 1+ GH(s), we map the Nyquist contour into the GH-plane instead
of the F-plane. The number of encirclements of the origin by the F-plane contour is the same
as the number of encirclements of the point (−1 + 0 j) by the GH-plane contour. The GH-
plane contour is called the Nyquist plot.
Drawing the Nyquist plot requires mapping two segments of the Nyquist contour. The first
segment is the imaginary axis of the s-plane. This segment maps into the graph of GH( jω )
in the GH-plane. This is precisely the polar plot we examined in Section 6-1. The second
segment is the semicircle of a radius approaching ∞. To map this segment, take s = re jθ with
θ changing from π2 to − π2 , substitute s in GH(s), and compute the limit as r → ∞. The limit
will be zero when GH(s) is strictly proper; that is, when deg(n(s)) < deg(d(s)).
In summary,
240 CHAPTER 6. FREQUENCY RESPONSE METHODS

Nyquist Stability Criterion: Let

• P be the number of RHP poles of GH(s);

• N be the number of counterclockwise encirclements of −1+ 0 j by the Nyquist plot


in the GH-plane;

• Z be the number of closed-loop poles in RHP.

Then,
Z = P−N .
The system is stable when Z = 0.

Example 6-13: Checking Stability by the Nyquist Criterion

Determine the stability of a feedback control system with

1
GH(s) = .
(s + 1)(s + 2)(s + 3)

Solution: GH(s) has no poles in RHP; that is, P = 0. The polar plot is shown in Fig. 6-5.
Since GH(s) is strictly proper, s = re jθ maps into the origin as r → ∞. Hence, the Nyquist plot
coincides with the polar plot. The Nyquist plot intersects the negative real axis at −1/60 + 0 j.
Thus, the plot does not encircle −1 + 0 j; that is, N = 0. Therefore, Z = P − N = 0. The system
is stable.

6-4.4 Application of the Nyquist Criterion with Gain Adjustment


d
Suppose GH(s) = K GH(s), K > 0. The characteristic equation is

d =0 1 d
1 + K GH(s) + GH(s) = 0 .
K
The number of encirclements of (−1 + 0 j) by the Nyquist plot of GH(s) is the same as the
d
number of encirclements of −(1/K)+0 j by the Nyquist plot of GH(s). Hence, we can expand
the application of the Nyquist criterion as follows:

d
(1) Given GH(s) = K GH(s), K > 0, draw the Nyquist plot of GH(s) at K = 1.

(2) By changing K, determine the number of counterclockwise encirclements of


−(1/K) + 0 j for different values of K.

(3) Apply the equation Z = P − N to find Z for different values of K.


6-4. NYQUIST CRITERION 241

Example 6-14: Checking Stability by the Nyquist Criterion for All Values of a
Positive Gain

Determine the stability of a feedback control system with


K
GH(s) = , K>0.
(s + 1)(s + 2)(s + 3)

Solution: GH(s) has no poles in RHP; that is, P = 0. From the previous example, the Nyquist
plot for K = 1 is shown in Fig. 6-5. The plot intersects the negative real axis at (−1/60 + 0 j).
1 1
For − <− , N=0 Z = P−N = 0 ,
K 60
1 1
For − > − , N = −2 Z = P−N = 2 .
K 60
Note that N = −2 because the encirclements are clockwise.
1 1 1 1
− <− > K < 60 .
K 60 K 60
Thus, the system is stable for K < 60 and unstable (with two RHP closed-loop poles) for
K > 60.

Example 6-15: Checking Stability by the Nyquist Criterion for All Values of a
Positive Gain

Determine the stability of a feedback control system with


6K
GH(s) = , K>0.
(s − 1)(s + 2)(s + 3)

Solution: The poles of GH(s) are 1, −2, and −3. Hence, P = 1.


Step 1: Draw the Nyquist plot for K = 1. Start with the polar plot
−6 −6(1 + jω )(2 − jω )(3 − jw)
GH( jω ) = = ,
(1 − jω )(2 + jω )(3 + jω ) (1 + ω 2 )(4 + ω 2 )(9 + ω 2 )
−6(6 + 4ω 2 )
Re[GH( jω )] = ,
(1 + ω 2 )(4 + ω 2 )(9 + ω 2 )
−6ω (1 − ω 2 )
Im[GH( jω )] = ,
(1 + ω 2 )(4 + ω 2 )(9 + ω 2 )
ω  ω 
∠[GH( jω )] = π + tan−1 (ω ) − tan−1 − tan−1 .
2 3
Compute the limits:
242 CHAPTER 6. FREQUENCY RESPONSE METHODS

(a) At ω = 0, Re[GH] = −1, Im[GH] = 0, ∠[GH] = π ;


π
(b) As ω → ∞, Re[GH] → 0, Im[GH] → 0, ∠[GH] → 2 .
Intersection with the axes:
(c) Real axis: Im[GH] = 0 ω = 0 or ω 2 = 1;
ω =0 Re[GH] = −1, ω2 = 1 Re[GH] = −0.6.

(d) No intersections with the imaginary axis.


Since GH(s) is strictly proper, s = re jθ maps into the origin as r → ∞. Hence, the Nyquist
plot coincides with the polar plot. The Nyquist plot is sketched in Fig. 6-24.

0.1

0.08

0.06

0.04
Imaginary Axis

0.02

–0.02

–0.04

–0.06

–0.08

–0.1
–1.2 –1 –0.8 –0.6 –0.4 –0.2 0
Real Axis

Figure 6-24: Nyquist plot of Example 6-15.

At ω = 0, the plot starts at (−1, 0). For small ω > 0, Im[GH( jω )] < 0; hence, the plot
moves into the lower half of the plane. At ω = 1, the plot crosses the real axis at (−0.6, 0)
moving into the upper half of the plane and stays there because Im[GH( jω )] > 0 for ω > 1.
As ω → ∞, the plot approaches the origin tangent to the imaginary axis since the limit of
∠[GH( jω )] is π /2. For ω < 0, the plot is the mirror image of the plot for ω > 0.
6-4. NYQUIST CRITERION 243

Step 2: Apply the Nyquist criterion with (−1/K, 0) as the critical point. There are three cases:

(a) For − K1 < −1, the critical point is to the left of the Nyquist plot. Hence,

N=0 Z = P−N = 1 ,
1 1
− < −1 >1 K <1.
K K
For K < 1, there is one closed-loop pole in the RHP.

(b) For −1 < − K1 < −0.6, the critical point is in the left lobe of the Nyquist plot. It is
encircled once counterclockwise. Hence,

N=1 Z = P−N = 0 ,
1 1 1
−1 < − < −0.6 1> > 0.6 1<K< .
K K 0.6
For 1 < K < 1/0.6, there are no closed-loop poles in the RHP.

(c) For − K1 > −0.6, the critical point is in the right lobe of the Nyquist plot. It is encircled
once clockwise. Hence,

N = −1 Z = P−N = 2 ,
1 1 1
− > −0.6 < 0.6 K> .
K K 0.6
For K > 1/0.6, there are two closed-loop poles in the RHP.

Therefore, the system is stable for 1 < K < 1/0.6.

6-4.5 The Case When GH(s) Has Poles on the Imaginary Axis
To apply Cauchy’s principle of the argument, F(s), and consequently GH(s), cannot
have poles on the imaginary axis. In this case, the Nyquist contour is modified to take
infinitesimally small detours in the RHP around the imaginary-axis poles. Because the detours
are in the RHP, poles on the imaginary axis are not included in the count P. As shown in
Fig. 6-25, for a pole at jω , the points of the detour are given by
π π
s = jω + ε e jφ , φ :− → 0 → and ε → 0 .
2 2
φ is described by three angles to indicate that the detour is in the RHP.
Mapping of the detour is obtained by substituting s in GH(s) and taking the limit as
ε → 0. Because GH(s) has the term (s − jω ) in its denominator, |GH(s)| → ∞ as ε → 0.
Therefore, the mapping will be an arc with an infinitely large radius. The mapping of the
angle φ determines the angle that the infinite-radius arc traverses.
244 CHAPTER 6. FREQUENCY RESPONSE METHODS

s
ε
ϕ
jω x

Figure 6-25: Detour around s = jω .

Example 6-16: Application of the Nyquist Criterion When GH(s) Has a Pole
at the Origin

Determine the stability of a feedback control system with

K
GH(s) = , K>0.
s(s + 1)

Solution: The Nyquist contour is shown in Fig. 6-26. Different segments of the contour map
as follows:

(a) Segment a-b → polar plot.

(b) Segment b-c-d → origin.

(c) Segment d-e → the mirror image of the polar plot of a-b.

(d) Segment e-f-a: s = ε e jφ , φ : − π2 → 0 → π


2 and ε → 0. Also, at K = 1,

1 − jφ 1
GH(ε e jφ ) = e , ≈
ε e jφ (ε e jφ
+ 1) ε
1 π π
→ ∞ as ε → 0 and − φ changes from → 0 → − .
ε 2 2
π
The segment e-f-a maps into an infinite-radius arc that traverses in the RHP from 2 to
0 to − π2 .
6-4. NYQUIST CRITERION 245

Im[s]
b

r
r→∞
a

ε → 0 eε f c
Re[s]

Figure 6-26: Nyquist contour of Example 6-16.

Polar plot of GH( jω ) at K = 1:

1 − j(1 − jω )
GH( jω ) = = ,
jω (1 + jω ) ω (1 + ω 2 )
−1 −1 π
Re[GH( jω )] = , Im[GH( jω )] = , ∠[GH( jω )] = − − tan−1 (ω ) .
1 + ω2 ω (1 + ω 2 ) 2
(1) As ω → 0, Re[GH] → −1, Im[GH] → −∞ and ∠[GH] → − π2 .

(2) As ω → ∞, Re[GH] → 0, Im[GH] → 0, and ∠[GH] → −π .

(3) No intersection with the axes except at the origin.


246 CHAPTER 6. FREQUENCY RESPONSE METHODS

10

5
Imaginary Axis

−5

−10

−10 −5 0 5 10 15
Real Axis

Figure 6-27: Nyquist plot of Example 6-16.

The Nyquist plot is shown in Fig. 6-27. Segment a-b starts from −∞ asymptotic to the
vertical line Re[s] = −1. As ω → ∞, it approaches the origin tangent to the real axis. Segment
d-e is the mirror image of segment a-b. Segment e-f-a closes the plot with infinite-radius arc.
Apply the Nyquist criterion. The critical point at −1/K + 0 j is to left of the Nyquist plot.
Thus, N = 0. With P = 0, we have Z = 0. The system is stable for all K > 0.

Example 6-17: Application of the Nyquist Criterion When GH(s) Has a Pole
at the Origin and a Pole in the RHP

Determine the stability of a feedback control system with

K(s + 2)
GH(s) = , K>0.
s(s − 1)
6-4. NYQUIST CRITERION 247

Solution: The poles of GH(s) are at 0 and 1; hence, P = 1. Because of the pole at the
origin, the Nyquist contour, which is taken as in the previous example, is shown in Fig. 6-26.
Different segments of the contour map as follows:

(a) Segment a-b → polar plot.

(b) Segment b-c-d → origin.

(c) Segment d-e → the mirror image of the polar plot of a-b.

(d) Segment e-f-a: s = ε e jφ , φ : − π2 → 0 → π


2 and ε → 0. Also, at K = 1,

ε e jφ + 2 2 2
GH(ε e jφ ) = j φ j φ
≈ j φ
= e j(π −φ ) ,
ε e (ε e − 1) −ε e ε
1 3π π
→ ∞ as ε → 0 and π − φ changes from →π → .
ε 2 2

The segment e-f-a maps into an infinite-radius arc that traverses in the left-half plane
from − π2 to π to π2 .

Polar plot of GH( jω ) at K = 1:

jω + 2 −(2 + jω ) j(2 + jω )(1 + jω )


GH( jω ) = = = ,
jω ( jω − 1) jω (1 − jω ) ω (1 + ω 2 )

−3 2 − ω2
Re[GH] = , Im[GH] = ,
1 + ω2 ω (1 + ω 2 )

ω  π π ω 
∠[GH] = π + tan−1 − + tan−1 (ω ) = + tan−1 + tan−1 (ω ) .
2 2 2 2

π
(1) As ω → 0, Re[GH] → −3, Im[GH] → ∞, and ∠[GH] → 2 .


(2) As ω → ∞, Re[GH] → 0, Im[GH] → 0, and ∠[GH] → 2 ≡ − π2 ;

(3) Intersection with the real axis: Im[GH] = 0 ω2 = 2 Re[GH] = −1.


248 CHAPTER 6. FREQUENCY RESPONSE METHODS

10

4
Imaginary Axis

−2

−4

−6

−8

−10
−10 −9 −8 −7 −6 −5 −4 −3 −2 −1 0 1
Real Axis

Figure 6-28: Nyquist plot of Example 6-17.

The Nyquist plot is shown in Fig. 6-28. Segment a-b starts from ∞ asymptotic to the vertical
line Re[s] = −3. It crosses the real axis at −1 and approaches the origin as ω → ∞ tangent to
the imaginary axis. Segment d-e is the mirror image of segment a-b. Segment e-f-a closes the
plot with infinite-radius arc in the left-half plane.
Apply the Nyquist criterion:

1
− < −1 N = −1 Z = P−N = 2 ,
K
1 1
− < −1 >1 K<1,
K K
1
− > −1 N=1 Z = P−N = 0 .
K

The system is stable for K > 1 and unstable for K < 1 with two RHP closed-loop poles.
6-5. RELATIVE STABILITY 249

6-5 Relative Stability


One of the main concerns in control system analysis and design is the effect of parameter
uncertainty. If we design a control system to be stable, will stability be robust to changes in
the plant model due to parameter uncertainty? The ability of the system to maintain stability
is called relative stability. It is a way to quantify the strength of the stability of the system.
The Nyquist stability criterion gives us a way to measure relative stability since stability
is determined by the number of encirclements of the critical point (−1 + 0 j) in the GH-plane.
The stability is stronger if the Nyquist plot is far from (−1 + 0 j) so that a relatively large
uncertainty can be tolerated without destroying stability. On the other hand, if the Nyquist
plot is close to (−1 + 0 j), a small uncertainty might change the number of encirclements of
(−1 + 0 j).
Figure 6-29 shows an example of a Nyquist plot for a system with P = 1. The nominal
Nyquist plot, shown in blue color, encircles (−1 + 0 j) once counterclockwise, which shows
that the system is stable. Parameter perturbations can cause changes in the Nyquist plot.
Figure 6-29 shows the envelope of uncertainty, in dashed red color, for a certain range of

0.1

0.08

0.06

0.04
Imaginary Axis

0.02

0 +
–0.02

–0.04

–0.06

–0.08 –

–0.1
–1.5 –1 –0.5 0
Real Axis

Figure 6-29: Envelope of uncertainty.


250 CHAPTER 6. FREQUENCY RESPONSE METHODS

parameter perturbations that do not change the number P of RHP poles. For all parameter
perturbations in this range, the perturbed Nyquist plot will be within the envelope of
uncertainty. In this example the nominal Nyquist plot is far enough from (−1 + 0 j) so that
stability is maintained for the prescribed parameter perturbations.

6-5.1 Stability Margins


For systems with no RHP open-loop poles; that is, P = 0, relative stability is measured by the
gain and phase margins, which are defined in Fig. 6-30. Since P = 0, the closed-loop system
is stable if the Nyquist plot does not encircle (−1 + 0 j), as shown in the figure. The distance
from the Nyquist plot to the point (−1 + 0 j) is measured by two parameters, the ratio 1/d and
the angle α .

Figure 6-30: Gain and phase margins.

The Nyquist plot intersects the real axis at −d. At this point the phase is 180◦ . Increasing
the gain |GH( jω )| by a factor 1/d, while maintaining ∠[GH( jω )] = 180◦ , brings the system
to the verge of instability. This factor is usually expressed in decibels: 20 log(1/d) dB.

◮ The gain margin (GM) is the increase in the open-loop gain, expressed in decibels
(dB), required at 180◦ phase shift, to make the closed-loop system unstable. ◭

The magnitude of the Nyquist plot in Fig. 6-30 is unity at an angle α from the 180◦ line.
Delaying the phase ∠[GH( jω )] by an angle α while maintaining |GH( jω )| = 1, brings the
system to the verge of instability.
6-5. RELATIVE STABILITY 251

◮ The phase margin (PM) is the phase delay in the open-loop transfer function required,
at unity gain, to make the closed-loop system unstable. ◭

The gain and phase margins are called the stability margins. Both margins must be positive
for the closed-loop system to be stable.

6-5.2 Stability Margins from Bode Plots


The gain and phase margins can be easily determined from the Bode plots. Figure 6-31 shows
an example of the Bode plots for a stable system. The frequency at which the magnitude plot
crosses the zero–dB line is called the crossover frequency and denoted by ω c . The phase
margin is determined at this frequency. It is the distance from the −180◦ line to the phase plot
at ω c ; that is,
PM = (phase at ω c ) + 180◦ .
The frequency at which the phase plot crosses the −180◦ line is called the phase crossover
frequency and denoted by ω pc . The gain margin is determined at this frequency. It is the

50

0
GM
–50

–100

–150
10 –2 10 –1
ωc 10 0
ωpc 10 1 10 2

–100

–150
PM
–180
–200

–250

–300
10 –2 10 –1 10 0 10 1 10 2

Figure 6-31: Gain and phase margins from Bode plots.


252 CHAPTER 6. FREQUENCY RESPONSE METHODS

distance from the zero–dB line to the magnitude plot at ω pc . For a stable system, the
magnitude at ω pc will be under the zero–dB line.
The Bode plots illustrate the meaning of the gain and phase margins. Suppose you start
with a system that has the open-loop transfer function GH(s) with positive gain and phase
margins GM and PM, respectively. Suppose now that you replace G(s) by KG(s) for some
positive gain K. What is the effect of the gain K on the Bode plots? The phase plot does not
change. The magnitude plot will move up if K > 1 and will move down if K < 1. Because
the phase plot does not change, the phase crossover frequency ω pc does not change. When
K > 1, increasing K will move the magnitude at ω pc closer to the zero–dB line, thus reducing
the gain margin. When 20 log K = GM, the gain margin of the system will be reduced to zero.
Thus, K = 10GM/20 is the gain that makes the system unstable.
Suppose now that you replace G(s) by e−τ s G(s) for some time delay τ . What is the
effect of the time delay on the Bode plots? The magnitude plot does not change because
|e− jωτ | = 1. The phase plot will become more negative since ωτ is subtracted from the phase
of G( jω ). Since the magnitude plot does not change, the crossover frequency ω c does not
change. Because the phase at ω c is now more negative, adding the time delay reduces the
phase margin of the system. When

180
ωτ × = PM ,
π

the system becomes unstable. Thus, the foregoing equation gives the time delay that makes
the system unstable. The left-hand side of this equation is multiplied by 180/π because ωτ is
in radians while PM is in degrees.
There are special cases when the gain or phase margin can approach infinity. Figure 6-32
shows such cases. The figures are generated with the MATLAB command margin. The
infinite-gain-margin case is for the transfer function

10
.
s(s + 1)

The phase plot does not cross the −180◦ line. It approaches the line asymptotically as ω → ∞.
Hence, ω pc = ∞ rad/s. The infinite-gain margin means that the system remains stable for any
increase in the gain of the open-loop transfer function.
The infinite-phase-margin case is for the transfer function

0.1
.
s(s + 1)(s + 2)

The magnitude plot is always under the zero–dB line (equivalently, the gain is always less
than one). Therefore, no phase delay, no matter how large, would drive the system unstable.
6-5. RELATIVE STABILITY 253

Bode Diagram
GM = Inf dB (at Inf rad/s), PM = 18º (at 3.08 rad/s)
60

Magnitude (dB)
40
20
0
–20
–40

–90
Phase (deg)

–135

–180
10 –2 10 –1 10 0 10 1 10 2
Frequency (rad/s)

Bode Diagram
GM = 55.6 dB (at 3.32 rad/s), PM = Inf
–40
Magnitude (dB)

–60

–80

–100

–120

–140

0
Phase (deg)

–90

–180

–270
–2 –1 0 1 2
10 10 10 10 10
Frequency (rad/s)

Figure 6-32: Infinite stability margins.


254 CHAPTER 6. FREQUENCY RESPONSE METHODS

Example 6-18: The Gain and Phase Margins from the Bode Plots

The Bode plots of G(s) in a unity-feedback control system are shown in Fig. 6-33.

(a) Find the gain and phase margins and the corresponding crossover frequencies.

(b) Replace G(s) by KG(s) with K ≥ 1. Find the range of K for stability.

(c) Replace G(s) by e−τ s G(s) with τ ≥ 0. Find the range of τ for stability.

100

–100

–200
10 –3 10 –2 10 –1 10 0 10 1 10 2 10 3

–100

–150
–180
–200

–250

–300
–3 –2 –1 0 1 2 3
10 10 10 10 10 10 10

Figure 6-33: Bode plots of Example 6-18.

Solution:

(a) The locations of the crossover frequencies are shown in Fig. 6-33. ω pc = 1 rad/s. At
this frequency, the magnitude is approximately −32 dB. Hence, GM ≈ 32 dB. Also, ω c
is about halfway between 0.1 and 0.2 rad/s. At this frequency the phase is ≈ −146◦ .
Hence, PM ≈ −146◦ + 180◦ = 34◦ . Because the frequency scale is logarithmic, ω c is
not 1.5 rad/s, although we may use 1.5 as an approximation. However, if we want a
6-5. RELATIVE STABILITY 255

more accurate answer, we need to know how to read frequencies on a logarithmic scale,
as follows.
Let the frequency ω be between frequencies ω1 and ω2 on a logarithmic scale. Let A be
the linear distance from ω1 to ω and B be the linear distance from ω1 to ω2 .

ω1 ω ω2


A ✲
B
✛ ✲

Let r = A/B. Then  r


ω2
ω= ω1 .
ω1
Applying this calculation to our example, we have ω1 = 0.1, ω2 = 0.2, and r = 0.5.
Therefore, ω c = 20.5 = 1.4 rad/s.

(b)
20 log Kmax = GM = 32 Kmax = 1032/20 = 39.8.
The closed-loop system is stable for 1 ≤ K < 39.8.

(c)
180 34 × π
τmax ω c × = PM τmax = = 0.424 s.
π 1.4 × 180
The closed-loop system is stable for 0 ≤ τ < 0.424.
256 CHAPTER 6. FREQUENCY RESPONSE METHODS

+
∑ G(s)

Figure 6-34: Feedback control system.

6-6 Relations between Frequency-Domain and Time-Domain


Responses
Consider the unity feedback control system of Fig. 6-34. The closed-loop transfer function is
given by
G(s)
T (s) = .
1 + G(s)
When we investigate the behavior of this system we can look at it from two different
perspectives. We may look at the time response of T (s), represented by the step response, or
at the frequency response. It is important to understand how these two responses are related
to each other. The step response is characterized by the percent overshoot (PO) and the speed
of the response, measured by the rise time (Tr ), the peak time (Tp ), or the settling time (Ts ).
The frequency response is represented by the magnitude plot of T ( jω ) as a function
of ω . A typical response is shown in Fig. 6-35, where the frequency is in a logarithmic scale
and the magnitude is in decibels. There are three parameters that characterize this response:
Mpω , ω p , and ω BW . Frequency ω p is called the peak frequency, as it is the frequency at
which where |T ( jω )| has its peak. The magnitude Mpω is the ratio of the peak to the dc gain,
|T ( jω p )|/|T (0)|, and ω BW is the bandwidth of the system. It is the frequency √ at which the
magnitude of T ( jω ) is 3 dB under its dc value; that is, |T ( jω BW )/T (0)| = 1/ 2.

ωp ωBW

Figure 6-35: Closed-loop frequency response.


6-6. RELATIONS BETWEEN FREQUENCY-DOMAIN AND TIME-DOMAIN 257

Another set of relations that are important to understand are those that govern how the
closed-loop frequency response T ( jω ) is related to the open-loop frequency response G( jω ).
For this relationship, the open-loop frequency response is characterized by the crossover
frequency (ω c ) and the phase margin (PM).
The aforementioned relationships can be calculated exactly for the underdamped second-
order transfer function
ω n2 G(s)
T (s) = = , ζ <1,
s2 + 2ζ ω n s + ω n2 1 + G(s)

for which
ω n2
G(s) = .
s(s + 2ζ ω n s)
We saw in Chapter 3 that the step response parameters are determined by the damping ratio ζ
and the natural frequency ω n . In particular,
√ 2
PO = 100 × e−ζ π / 1−ζ ,

2.16ζ + 0.6 π 4
Tr ≈ , for 0.3 ≤ ζ ≤ 0.75, Tp = p , Ts = .
ωn ωn 1 − ζ 2 ζ ωn
For the frequency response, we saw in Section 6-2 that

|T ( jω )| = |ω n2 /(ω n2 − ω 2 + j2ζ ωω n )|
√ √
does not peak if ζ > 1/ 2, and peaks for ζ < 1/ 2, where
p 1
ωp = ωn 1 − 2ζ 2 , Mpω = p .
2ζ 1 − ζ 2

The bandwidth frequency ω BW can be determined by equating |T ( jω )|2 to 21 .

ω n4 1
2 2 2 2 2 2
= :
(ω n − ω ) + 4ζ ω ω n 2

ω 4 − 2ω n2 (1 − 2ζ 2 )ω 2 − ω n4 = 0 .
By the quadratic formula, the bandwidth is
r q
ω BW = ω n (1 − 2ζ 2 ) + 1 + (1 − 2ζ 2 )2 .

For the open-loop transfer function G(s) = ω n2 /[s(s + 2ζ ω n )],


 
ω n2 π −1 ω
|G( jω )| = p , ∠[G( jω )] = − − tan .
ω ω 2 + 4ζ 2 ω n2 2 2ζ ω n
258 CHAPTER 6. FREQUENCY RESPONSE METHODS

The crossover frequency ω c can be determined by equating |G( jω )| to 1:

ω n4
=1,
ω 2 (ω 2 + 4ζ 2 ω n2 )

ω 4 + 4ζ 2 ω n2 ω 2 − ω n4 = 0 .
By the quadratic formula,
q p
ωc = ωn −2ζ 2 + 1 + 4ζ 4 .

Substitution of ω = ω c in ∠[G( jω )] yields the phase margin


    
◦ ◦ −1 ωc ◦ −1 ωc
PM = 180 + −90 − tan = 90 − tan .
2ζ ω n 2ζ ω n
Using the fact that if tan(θ ) = b/a, tan(90◦ − θ ) = a/b, we express the phase margin as
 
−1 2ζ ω n
PM = tan .
ωc
All quantities ω c /ω n , ω p /ω n , ω BW /ω n , PM, and Mpω depend on the damping ratio ζ .
The expressions show the general trend of how these quantities change with ζ . Some of these
expressions can be approximated by simpler formulas for a certain range of ζ .
Starting with ω c , Fig. 6-36(a) shows the ratio ω c /ω n for ζ ∈ [0.1, 0.9]. For ζ ∈ [0.3, 0.75],
least-squares parameter fitting yields the straight-line approximation
(3.35 − 2ζ )
ωc ≈ ωn .
3
Figure 6-36(b) shows that the relative approximation error is less than 1%.

0.02
1

0.01
0.8
ωc /ωn

0.6
Exact –0.01
Approximate
0.4 –0.02
0 0.5 1 0.2 0.4 0.6 0.8
ζ ζ

Figure 6-36: Crossover frequency and its approximation.


6-6. RELATIONS BETWEEN FREQUENCY-DOMAIN AND TIME-DOMAIN 259

80 0.05

60

40 0

Exact
20 Approximate

0 –0.05
0 0.5 1 0.2 0.4 0.6 0.8
ζ ζ

Figure 6-37: Phase margin and its approximation.

Figure 6-37(a) shows the phase margin for ζ ∈ [0.1, 0.9]. For ζ ∈ [0.3, 0.75], least-squares
parameter fitting yields the straight line approximation

PM ≈ 12 + 76ζ .

Figure 6-37(b) shows that the relative approximation error is less than 5%.
Figure 6-38(a) shows the ratio ω BW /ω n for ζ ∈ [0.1, 0.9]. For ζ ∈ [0.3, 0.75], least-
squares parameter fitting yields the straight line approximation

ω BW ≈ (1.83 − 1.16ζ )ω n .

Figure 6-38(b) shows that the relative approximation error is less than 2%.
Sometimes it is convenient to relate ω BW to ω c . Figure 6-38(c) shows the ratio ω BW /ω c
for ζ ∈ [0.1, 0.9]. A simple approximation of this relationship is

ω BW ≈ 1.6ω c .

Figure 6-38(d) shows that, for ζ ∈ [0.3, 0.75], the relative approximation error is less than 5%.
260 CHAPTER 6. FREQUENCY RESPONSE METHODS

0.02
1.6 Exact
Approximate 0.01
1.4
ωBW /ωn

0
1.2

1 –0.01

0.8 –0.02
0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8
ζ ζ

0.06

1.6
0.04
ωBW /ωc

Exact 0.02
1.5 Approximate
0

1.4 –0.02
0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8
ζ ζ

Figure 6-38: Bandwidth of the closed-loop system and its approximation.

All the relations for the second-order transfer function are summarized in Fig. 6-39.
Can the relations of Fig. 6-39 be used for other systems? They can be used as
approximations for systems whose closed-loop transfer function can be approximated by T (s)
of Fig. 6-39. We have discussed these cases in Subsection 3-4.4.
The more general message we get from the relations of Fig. 6-39 is the general trend of
the change in the response characteristics with the change of the damping ratio ζ and natural
frequency ω n of a pair of dominant closed-loop poles. That trend is shown in Table 6-1.
Increase in ζ results in increase in PM and decrease in Mpω and PO. The opposite is also true;
that is, a decrease in ζ results in a decrease in PM and an increase in Mpω and PO. The effect
of changing ω n for a fixed value of ζ is read similarly.
6-6. RELATIONS BETWEEN FREQUENCY-DOMAIN AND TIME-DOMAIN 261

ω n2 G(s) ω n2
G(s) = , T (s) = = 2
s(s + 2ζ ω n ) 1 + G(s) s + 2ζ ω n s + ω n
Step response of T (s):

1−ζ 2
PO = 100 × e−ζ π /
2.16ζ + 0.6 π 4
Tr ≈ , Tp = p , Ts =
ωn ωn 1 − ζ 2 ζ ωn

Frequency response of T (s):

1 p 1
For ζ < √ , ωp = ωn 1 − 2ζ 2 , Mpω = p
2 2ζ 1 − ζ 2
r q
ω BW = ω n (1 − 2ζ 2 ) + 1 + (1 − 2ζ 2 )2 ≈ (1.83 − 1.16ζ )ω n ≈ 1.6ω c

Frequency response of G(s):


q p (3.35 − 2ζ )
ω c = ω n −2ζ 2 + 1 + 4ζ 4 ≈ ωn
3
 
−1 2ζ ω n
PM = tan ≈ 12 + 76ζ
ωc

Approximations are valid for 0.3 ≤ ζ ≤ 0.75.

Figure 6-39: Time-domain–frequency-domain relations.

Table 6-1: The effect of changing ζ and ω n on the frequency and time responses.

Open-loop Closed-loop Closed-loop


Dominant poles frequency response frequency response step response
ζ , ωn G(s) T (s) T (s)
ζ ↑ PM ↑ Mpω ↓ PO ↓
Fix ζ , ω n ↑ ωc ↑ ω p , ω BW ↑ Tr , Tp , Ts ↓
262 CHAPTER 6. FREQUENCY RESPONSE METHODS

Example 6-19: Estimation of the Closed-Loop-Response Parameters from


the Open-Loop Bode Plots

The Bode plots of G(s) in a unity-feedback control system are shown in Fig. 6-40.
(a) Find ω c and PM.
(b) Estimate ζ and ω n .
(c) Estimate PO, Tr , Tp , and Ts of the closed-loop step response.
(d) Estimate Mpω , ω p , ω BW of the closed-loop frequency response.

40

20
Magnitude (dB)

–20

–40

–60
–90
Phase (deg)

–120

–150

–180
10–1 100 101 102
Frequency (rad/s)

Figure 6-40: Bode plots of Example 6-19.

Solution: The phase plot starts from −90◦ and approaches −180◦ asymptotically. Therefore,
the transfer function has a pole at the origin and deg(denominator) − deg(numerator) = 2.
(a) From the Bode plots, ω c ≈ 2.36 rad/s and ∠[G(2.36 j)] ≈ −128◦ . Hence
PM ≈ 180 − 128 = 52◦ .
(b)
PM = 12 + 76ζ 52 = 12 + 76ζ ζ = 0.53 ,
3.35 − 2ζ 3.35 − 2 × 0.53 2.36
ωc = ωn = ω n = 0.76ω n ωn = = 3.1 rad/s.
3 3 0.76
6-6. RELATIONS BETWEEN FREQUENCY-DOMAIN AND TIME-DOMAIN 263

(c)
PO = 14%, Tr = 0.56 s, Tp = 1.195 s, Ts = 2.43 s.

(d)
ω p = 2.05 rad/s, Mpω = 1.11, ω BW = 1.6ω c = 3.78 rad/s.

Now that we have estimated all these quantities using the relations of Fig. 6-39, it is useful
to get a sense of how good the estimates are. To that end, let us reveal that the Bode plots of
Fig. 6-40 are for the transfer function
9
G(s) = .
s(s + 3)

Table 6-2 compares the estimates with the exact values.

Table 6-2: Example 6-19.

ωc PM ζ ωn PO Tr Tp Ts Mpω ωp ω BW
Estimate 2.36 52 0.53 3.1 14 0.56 1.195 2.43 1.11 2.05 3.78
Exact 2.36 51.8 0.5 3 16.3 0.546 1.197 2.69 1.15 2.15 3.81
264 CHAPTER 6. FREQUENCY RESPONSE METHODS

Example 6-20: Estimation of the Closed-Loop-Response Parameters from


the Open-Loop Bode Plots

Repeat Example 6-19 for the Bode plots of Fig. 6-41.

50
Magnitude (dB)

–50

–100

–150
–90

–135
Phase (deg)

–180

–225

–270
10–1 100 101 102 103
Frequency (rad/s)

Figure 6-41: Bode plots of Example 6-20.

Solution: The phase plot starts from −90◦ and approaches −270◦ asymptotically. Therefore,
the transfer function has a pole at the origin and deg(denominator) − deg(numerator) = 3.

(a) From the Bode plots, ω c ≈ 2.5 rad/s and ∠[G(2.5 j)] ≈ −145◦ . Hence,
PM ≈ 180 − 145 = 35◦ .

(b)
PM = 12 + 76ζ 35 = 12 + 76ζ ζ = 0.3 ,
3.35 − 2ζ 3.35 − 2 × 0.3 2.5
ωc = ωn = ω n = 0.917ω n ωn = = 2.73 rad/s.
3 3 0.917
(c)
PO = 37.2%, Tr = 0.46 s, Tp = 1.21 s, Ts = 4.88 s.

(d)
ω p = 2.47 rad/s, Mpω = 1.75, ω BW = 1.6ω c = 4 rad/s.
6-6. RELATIONS BETWEEN FREQUENCY-DOMAIN AND TIME-DOMAIN 265

As done in the previous example, we reveal that the Bode plots of Fig. 6-41 are for the transfer
function
81
G(s) = .
s(s + 3)(s + 9)
The closed-loop transfer function

G(s) 81
T (s) = =
1 + G(s) (s + 10.12)(s2 + 1.877s + 8)

has a pair of dominant poles with ζ = 0.33 and ω n = 2.83 rad/s. Table 6-3 compares the
estimates with the exact values.

Table 6-3: Example 6-20.

ωc PM ζ ωn PO Tr Tp Ts Mpω ωp ω BW
Estimate 2.5 35 0.3 2.73 37.2 0.46 1.21 4.88 1.75 2.47 4
Exact 2.3 38.1 0.33 2.83 38.1 0.51 1.28 4.02 1.55 2.5 3.94
266 CHAPTER 6. FREQUENCY RESPONSE METHODS

Summary
Concepts
• The frequency response of a transfer function can be represented graphically by
the polar plot or by the Bode plots.
• A sketch of the polar plot can be drawn from the knowledge of the asymptotic
behavior of the frequency response as ω → 0 and ω → ∞, and the intersection
points with the real and imaginary axes.
• Bode plots consist of two plots: magnitude versus frequency and phase versus
frequency, with the frequency in a log scale. Usually the magnitude is in decibels,
the phase in degrees, and the frequency in rad/s.
• Bode plots of G = G1 G2 . . . Gm are the sums of the Bode plots of G1 , G2 , to Gm if
the Bode magnitude plots are in decibels.
• Bode plots can be approximated by the asymptotic Bode plots, which are drawn
from the knowledge of the break frequencies of first and second-order transfer
functions.
• Multiplication of a transfer function by a constant gain does not change the phase
plot, and multiplication by a time-delay transfer function does not change the
magnitude plot.
• The Nyquist stability criterion determines the number of closed-loop pole in the
RHP (right-half plane) by counting the number of open-loop poles in the RHP and
the number of encirclement of a critical point by the Nyquist plot.
• Relative stability is a way to quantify the robustness of the stability of the feedback
system. It is measured by the gain and phase margins, which are the gain increase
and phase delay, respectively, that bring the system to the verge of instability.
• The gain and phase margins and their corresponding crossover frequencies can be
easily determined form the Bode plots.
• The open-loop frequency response, the closed-loop frequency response, and the
closed-loop step response are related to each other. For the underdamped second-
order transfer function, the parameters of these three responses can be expressed
or approximated in terms of the damping ratio ζ and the undamped natural
frequency ω n .

Mathematical Models
Nyquist criterion: Z = P − N; the system is stable for Z = 0.
Time-domain–frequency-domain relations: See Table 6.1 and Figure 6-39.
PROBLEMS 267

Important Terms Provide definitions or explain the meaning of the following


terms:
asymptotic Bode plots crossover frequency peak frequency
bandwidth gain margin phase crossover frequency
Bode plots Nyquist contour phase margin
Cauchy’s principle of the Nyquist plot polar plot
argument Nyquist stability criterion relative stability
contour mapping peak

PROBLEMS

6.1 Let
10
G(s) = .
s(s + 1)(s + 4)
(a) Find the expressions of ∠G( jω ), Re[G( jω )], and Im[G( jω )].
(b) Sketch the polar plot. Using MATLAB, draw the polar plot and compare with your
sketch.
(c) Draw the asymptotic Bode plots. Using MATLAB, draw the Bode plots and compare
with yours.
6.2 Repeat Problem 6.1 for
10(s + 4)
G(s) = .
(s + 2)(s + 5)

6.3 Repeat Problem 6.1 for

10(s + 3)(s + 4)
G(s) = .
s(s + 2)(s + 5)

6.4 Repeat Problem 6.1 for

10
G(s) = .
s(s + 1)(s + 10)

6.5 Repeat Problem 6.1 for

10(s + 5)
G(s) = .
(s + 1)(s + 10)(s + 50)

6.6 Repeat Problem 6.1 for


32
G(s) = .
s(s + 2)(s + 8)
268 CHAPTER 6. FREQUENCY RESPONSE METHODS

6.7 Repeat Problem 6.1 for


60
G(s) = .
(s + 1)(s + 3)(s + 5)

6.8 Repeat Problem 6.1 for

104
G(s) = .
(s + 1)(s + 10)(s + 100)

6.9 Repeat Problem 6.1 for


100(s + 5)
G(s) = .
s(s + 10)(s + 100)

6.10 Repeat Problem 6.1 for


20(s + 5)(s + 50)
G(s) = .
(s + 1)(s + 10)(s + 100)

6.11 Consider a unity feedback control system with


K
G(s) = , K > 0.
s(s − 1)(s + 2)
Using the Nyquist criterion find the range of K for stability. Verify your answer using the
Routh-Hurwitz criterion.
6.12 Repeat Problem 6.11 for
64K(s + 1)
G(s) = , K > 0.
(s + 2)(s + 4)(s + 8)

6.13 Repeat Problem 6.11 for


15K
G(s) = , K > 0.
s(s + 3)(s + 5)

6.14 Repeat Problem 6.11 for


10K(s + 2)
G(s) = , K > 0.
(s − 1)(s + 1)(s + 10)

6.15 Repeat Problem 6.11 for


K
G(s) = , K > 0.
s(s + 1)(s − 2)
PROBLEMS 269

6.16 Repeat Problem 6.11 for

K(s + 1)
G(s) = , K > 0.
s(s − 1)(s + 5)

6.17 Repeat Problem 6.11 for

K
G(s) = , K > 0.
s2 (s + 1)

6.18 Repeat Problem 6.11 for

5K(s + 1)
G(s) = , K > 0.
s(s − 1)(s + 3)

6.19 Repeat Problem 6.11 for

K
G(s) = , K > 0.
s(s − 2)(s + 8)

6.20 Repeat Problem 6.11 for

K
G(s) = , K > 0.
(s + 1)(s + 3)(s + 5)

6.21 Repeat Problem 6.11 for

K(s + 5)
G(s) = , K > 0.
s(s + 10)(s + 100)

6.22 Repeat Problem 6.11 for

K(s − 5)(s + 50)


G(s) = , K > 0.
(s + 1)(s + 10)(s + 100)
270 CHAPTER 6. FREQUENCY RESPONSE METHODS

6.23 The Bode plots of G(s) in a unity feedback control system are shown in Fig. P6.23.
(a) Find the gain and phase margins and the corresponding crossover frequencies.
(b) Replace G(s) by KG(s) with K ≥ 1. Find the range of K for stability.
(c) Replace G(s) by e−τ s G(s) with τ ≥ 0. Find the range of τ for stability.
(d) Find the type of the feedback system and the corresponding error constant.
(e) Find the steady-state error to a unit step input.
(f) Estimate the percent overshoot, rise time, and settling time of the step response.
(g) Estimate the bandwidth of the closed-loop frequency response.
(h) Estimate the peak amplitude and peak frequency of the closed-loop frequency response.

50
Magnitude (dB)

–50

–100
–90

–135
Phase (deg)

–180

–225

–270
10–2 10–1 100 101 102
Frequency (rad/s)

Figure P6.23: Bode plots of Problem 6.23.


PROBLEMS 271

6.24 Repeat Problem 6.23 for the Bode plots shown in Figure P6.24.

20

0
Magnitude (dB)

–20

–40

–60

–80
0

–45
Phase (deg)

–90

–135

–180
10–2 10–1 100 101 102 103
Frequency (rad/s)

Figure P6.24: Bode plots of Problem 6.24.


272 CHAPTER 6. FREQUENCY RESPONSE METHODS

6.25 Repeat Problem 6.23 for the Bode plots shown in Figure P6.25.

0
Magnitude (dB)

–50

–100

–150
0
Phase (deg)

–90

–180

–270
10–2 10–1 100 101 102 103
Frequency (rad/s)

Figure P6.25: Bode plots of Problem 6.25.


PROBLEMS 273

6.26 Repeat Problem 6.23 for the Bode plots shown in Fig. P6.26.

150

100
Magnitude (dB)

50

–50

–100
–120
Phase (deg)

–150

–180
10–2 10–1 100 101 102 103
Frequency (rad/s)

Figure P6.26: Bode plots of Problem 6.26.


274 CHAPTER 6. FREQUENCY RESPONSE METHODS

6.27 Repeat Problem 6.23 for the Bode plots shown in Fig. P6.27.

50
Magnitude (dB)

–50

–100

–150
–90

–135
Phase (deg)

–180

–225

–270
10–2 10–1 100 101 102 103
Frequency (rad/s)

Figure P6.27: Bode plots of Problem 6.27.


PROBLEMS 275

6.28 The Bode plots of G(s) in a unity feedback control system are shown in Fig. P6.28.
(a) Find the gain and phase margins and the corresponding crossover frequencies.
(b) What is the range of K ≥ 1 for stability if G(s) is replaced by KG(s)?
(c) What is the gain margin if G(s) is replaced by 2G(s)?
(d) What is the range of τ ≥ 0 for stability if G(s) is replaced by e−τ s G(s)?
(e) What is the phase margin if G(s) is replaced by e−0.2s G(s)?

0
Magnitude (dB)

–50

–100

–150
0
Phase (deg)

–90

–180

–270
10–2 10–1 100 101 102 103
Frequency (rad/s)

Figure P6.28: Bode plots of Problem 6.28.

6.29 A riderless bicycle can be stabilized by equipping it with a steering mechanism and
feedback control from the measured lean angle. In [1], the dynamics of the bicycle, in constant
forward velocity, from the steering angle to the lean angle is modeled by
 
s+8
G1 (s) = 3.373 2 ,
s − 18.9

and the steering mechanism is modeled by

(33.9)2
G2 (s) = e−0.015s .
s2 + 40.68s + (33.9)2
276 CHAPTER 6. FREQUENCY RESPONSE METHODS

The transfer function from the input of the steering mechanism to the lean angle is Gp = G1 G2 .
A PID controller is designed in [1] as
 
1.5431
Gc (s) = 2.5177 1 + + 0.075s .
s

(a) Verify the stability of the system using Nyquist criterion.


(b) Plot |Gp ( jω ) Gc ( jω )|. Determine the crossover frequency ω c . Find the minimum of
|Gp ( jω ) Gc ( jω )| for ω ≤ 0.1ω c and the maximum of |Gp ( jω ) Gc ( jω )| for ω ≥ 10ω c .
Chapter 7
Frequency-Domain Design
Chapter Contents Objectives

Overview, 278 Upon learning the material presented in this chapter, you
7-1 Design Specifications, 278 should be able to:
7-2 Design by Gain Adjustment, 280
7-3 Lead Compensation, 287 1. Know the frequency-domain design specifications.
7-4 Lag Compensation, 295 2. Design by adjustment of a constant gain.
7-5 PI Compensation, 299
7-6 Lead-Lag Compensation, 302 3. Design lead, lag, and lead-lag compensators.
7-7 Advantages of the Frequency-Domain 4. Design a PI controller.
Approach, 306
Chapter Summary, 307 5. Appreciate the advantages of the frequency-domain
Problems, 308 approach in analysis and design.

277
278 CHAPTER 7. FREQUENCY RESPONSE METHODS

Overview
There are two approaches to the design of feedback control systems: the time-domain
approach and the frequency-domain approach. Time-domain design is covered in Chapter 5
and will be covered again in Chapter 8 using state-space models.
In this chapter we present the frequency-domain design approach. The design uses Bode
plots of the open-loop transfer function. Section 7-1 states the design specifications in the
frequency domain. In Section 7-2 the controller is a gain, which is adjusted to meet one
of the design specifications. If other design specifications are not met by this gain choice,
compensation is used. Section 7-3 uses lead compensation to improve the dynamic response
of the system as measured by the phase margin and the crossover frequency. Sections 7-4
and 7-5 show how to reduce the steady-state error by increasing the low-frequency gain. It
is realized by lag compensation in Section 7-4 and PI (proportional-integral) compensation
in Section 7-5. To improve the dynamic response and increase the low-frequency gain, lead
and lag compensation are combined in the lead-lag compensator of Section 7-6. Section 7-7
concludes our discussion in this chapter, and the previous one, by summarizing the advantages
of the frequency-domain approach in analysis and design.

7-1 Design Specifications


Given the plant transfer function Gp (s) in the feedback control system of Fig. 7-1, the
objective is to design the controller transfer function Gc (s) to meet frequency-domain design
specifications.

Controller Plant
R (s) + Y (s)
∑ G c (s) G p (s)

Figure 7-1: Feedback control system.

Frequency-domain design specifications are classified into three groups:

Group 1: Stability requirements on the phase margin and crossover frequency. From the
relations presented in Section 6-5, we know that the phase margin and crossover frequency
shape the dynamic response of the closed-loop system, whether looked at in the frequency
domain through the closed-loop frequency response or in the time domain through the closed-
loop step response.
Group 2: Requirements on the error constants Kp , Kυ , or Ka in order to meet requirements on
the steady-state tracking errors.
Group 3: Requirements on the open-loop frequency response Gp ( jω ) Gc ( jω ) in order to
track the reference signal and attenuate the effects of disturbance and measurement noise.
7-1. DESIGN SPECIFICATIONS 279

D (s)
Controller Plant
+
R (s) + U(s) + Y (s)
∑ G c (s) ∑ G p (s)

+
N (s)
∑ +

Figure 7-2: Feedback control system.

To elaborate on the third group of requirements, let us recall Fig. 4-16 from Section 4-6,
repeated here as Fig. 7-2. The figure shows the feedback control system subject to three
inputs: the reference R, the disturbance D, and the measurement noise N. The tracking error
is given by

1 Gp (s) G(s)
E(s) = R(s) −Y (s) = R(s) − D(s) + N(s)
1 + G(s) 1 + G(s) 1 + G(s)
= S(s) R(s) − S(s) Gp (s) D(s) + [1 − S(s)] N(s) , (7.1)

where G(s) = Gp (s) Gc (s) is the loop gain and S(s) = 1/[1 + G(s)] is the sensitivity transfer
function. To reduce the error due to R and D, we want |G| ≫ 1 so that |S| ≪ 1. This
design, however, makes |1 − S| ≈ 1, which allows the noise N to affect the error without
attenuation. Attenuating the effect of the measurement noise requires |G| ≪ 1 so that |S| ≈ 1
and |1 − S| ≈ 0. It is clear that we cannot achieve both requirements at the same time.
The frequency-domain approach allows us to trade off these two conflicting requirements.
The frequency spectrum of the reference R and disturbance D is usually in a low frequency
band [0, ω1 ]. The frequency spectrum of the measurement noise, on the other hand, is usually
flat on a wide frequency band, but the noise amplitude will be small if we have good sensors.
One way to trade off these requirements is to design the loop gain |G( jω )| to be high over a
frequency band that covers the reference and disturbance frequency bands, and then let it roll
off to a low gain for higher frequencies. Figure 7-3 shows typical requirements on the loop
gain.
280 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

Figure 7-3: Requirements on the loop gain |G( jω )|.

7-2 Design by Gain Adjustment


Let Gc (s) = K > 0 and choose K to meet one of the design specifications. We shall see shortly
how to do it for different specifications. Once K is chosen, we have to check the stability of
the system for the chosen value of K. This can be done analytically by calculating the roots
of the characteristic equation
1 + KGp (s) = 0 , (7.2)
or it can be done using the Bode plots:

(1) Draw the magnitude and phase Bode plots for K = 1.

(2) If the magnitude plot needs to be raised by A dB to meet the design specification,
determine the new crossover frequency ω c . It is the frequency at which the magnitude
plot equals −A dB.

(3) Project the crossover frequency down to the phase plot and make sure that ∠[G( jω c )]
is above the −180◦ line, for then the phase margin PM = ∠[G( jω c )] + 180◦ will be
positive.

This procedure is illustrated in Fig. 7-4. Note that if the magnitude plot needs to be lowered
by A dB to meet the design specification, then the new crossover frequency is the frequency
at which the magnitude plot is A dB.

7-2.1 Gain Adjustment to Achieve a Desired Crossover Frequency


Choose K such that ω c = ωc des , where ωc des is the desired crossover frequency.
Step 1: Check that the system will have a positive phase margin at ωc des . This can be
done by finding ∠[G( jωc des )] and verifying that PM = ∠[G( jωc des )] + 180◦ > 0. The angle
∠[G( jωc des )] can be calculated from the analytic expression of G(s) or from the phase plot
7-2. DESIGN BY GAIN ADJUSTMENT 281

ωc

ωc

–180

Figure 7-4: Checking the phase margin when the magnitude plot for K = 1 is raised by A dB.

of G(s) at K = 1. If the phase margin at ωc des is not positive, stop. This desired crossover
frequency cannot be achieved.
Step 2: Choose K such that |G( jωc des )| = 1.
This can be done analytically. Let G(s) = K Ĝ(s), where Ĝ(s) is a given transfer
function. Set
1
K= , (7.3)
|Ĝ( jωc des )|
or from the Bode plot, draw the magnitude plot of G at K = 1. Mark the desired
crossover frequency ωc des on the zero–dB line and determine whether or not the
magnitude plot needs to move up or down so that it intersects the zero–dB line at
ωc des . Figure 7-5 shows a case where the magnitude plot needs to be raised by A dB;
K = 10A/20 .

7-2.2 Gain Adjustment to Achieve a Desired Phase Margin


Choose K such that PM = PMdesired , where PMdesired is the desired phase margin. Let
G(s) = K Ĝ(s), where Ĝ(s) is a given transfer function..
282 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

ωc des
0

Figure 7-5: Choice of K to achieve a desired crossover frequency.

Step 1: From the phase plot of Ĝ(s), find ω c at which ∠[Ĝ( jω c )] = PMdesired − 180◦ ; see
Fig. 7-6.
Step 2: Choose K such that |G( jω c )| = 1.

This can be determined analytically: K = 1/|Ĝ( jω c )|,

or from the Bode plot by drawing the magnitude plot of G at K = 1. Determine whether
the magnitude plot needs to move up or down so that it intersects the zero-dB line
at ω c . Figure 7-6 shows a case where the magnitude plot needs to be raised by A dB;
K = 10A/20 .

7-2.3 Gain Adjustment to Achieve a Desired Kp , Kυ , or Ka


Calculate the error constant in terms of K, as was done in Section 4-3, and choose K to achieve
the desired error constant, or find K from the Bode plots. Figure 7-7 shows how to compute
K for a Type 0 system and Fig. 7-8 shows how to do it for a Type 1 system.

• For the case of Kp , draw the Bode magnitude plots for K = 1. At the low frequency end
of the magnitude plot, where the plot is flat, mark the desired Kp in decibels. Assuming
that the desired Kp is higher than the one for K = 1, you need to raise the plot by A dB.
Set K = 10A/20 .

• For the case of Kυ , draw the Bode magnitude plot for K = 1. On the zero–dB line mark
the frequency that is equal to the desired Kυ . From this point draw a line with a slope
−20 dB/dec, extending to the low-frequency end of the graph. At the low frequency
where the magnitude plot for K = 1 has a slope −20 dB/dec, mark the required change
in the magnitude. Assuming that the desired Kυ is higher than the one for K = 1, you
need to raise the plot by A dB. Set K = 10A/20 .
7-2. DESIGN BY GAIN ADJUSTMENT 283

ωc

des

–180

Figure 7-6: Choice of K to achieve a desired phase margin.

ωc

Figure 7-7: Choice of K to achieve a desired Kp .


284 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

ωc

Figure 7-8: Choice of K to achieve a desired Kυ .

7-2.4 Gain Adjustment to Shape the Low Frequency Gain


Choose K such that for a specified gain a, |G( jω )| ≥ a, for all ω ∈ [0, ω1 ]. Typically, |G( jω )|
has low-pass filtering characteristics; that is, |G( jω )| ≥ |G( jω1 )| for all ω ∈ [0, ω1 ]. Therefore
it is sufficient to choose K such that |G( jω1 )| ≥ a.

This can be done analytically. Let G(s) = K Ĝ(s), where Ĝ(s) is a given transfer
function. Set
a
K≥ ,
|Ĝ( jω1 )|
or from the Bode plot, draw the magnitude plot of G at K = 1. At ω = ω1 determine
the increase A (dB) in the magnitude plot needed to bring |G( jω1 )| to the desired level.
Set K = 10A/20 .

Example 7-1: Gain Choice to Meet One Design Specification

Let
K
G(s) = .
(s + 1)(5s + 1)
(1) Find K such that ω c = 1 rad/s.

(2) Find K such that PM = 60◦ .

(3) Find K such that Kp ≥ 100.

(4) Find K such that

20 log |G( jω )| ≥ 20 dB for ω ∈ [0, 1] rad/s.


7-2. DESIGN BY GAIN ADJUSTMENT 285

Solution: The Bode phase plot is shown in Fig. 7-9. The system has an infinite gain margin.
Hence, it is stable for all K > 0.

(1) Choose K such that |G( jω )| = 1 at ω = 1 rad/s:

K K
|G( j)| = p = =1 K = 7.21.
(1 + 1)(25 + 1) 7.21

(2) For PM = 60◦ , ∠[G] = −120◦ . From the phase plot, ω c ≈ 0.9 rad/s. Choose K such
that |G(0.9 j)| = 1:

K K
|G(0.9 j)| = p = =1 K = 6.2.
(0.81 + 1)(20.25 + 1) 6.2

(3) Kp = G(0) = K. Set K ≥ 100.

(4) Choose K such that 20 log |G( j)| ≥ 20:

K
20 log |G( j)| ≥ 20 |G( j)| ≥ 10 ≥ 10 K ≥ 72.1.
7.21

–60

–120

–180

10 –2 10 –1 10 0 10 1 10 2

Figure 7-9: Phase plot of Example 7-1.

Example 7-2: Gain Choice Using Bode Plots without Analytic Expression of
the Transfer Function

Let G(s) = K Ĝ(s). The Bode plots of Ĝ(s) are shown in Fig. 7-10.

(1) Find K such that ω c = 1 rad/s.


286 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

(2) Find K such that PM = 60◦ .

(3) Find K such that Kυ = 1.

(4) Find K such that

20 log |G( jω )| ≥ 30 dB for ω ∈ [0, 0.1] rad/s.

40

20

–20

–40

–60
10 –2 10 –1 10 0 10 1

–90

–135

–180

–225

10 –2 10 –1 10 0 10 1

Figure 7-10: Bode plots of Example 7-2.

Solution: The calculations are illustrated in Fig. 7-11.

(1) First we need to check if the system has a positive phase margin at ω c = 1 rad/s. From
the phase plot, it can be seen that at 1 rad/s the phase plot is above the −180◦ line.
Hence, the phase margin is positive. At 1 rad/s, the magnitude plot is about −22.5 dB.
We need to raise the magnitude plot by 22.5 dB. Hence, K = 1022.5/20 = 13.3.

(2) For PM = 60◦ , the phase should be −120◦ at ω c . From the phase plot, this occurs at
ω ≈ 0.5 rad/s. This frequency is the desired ω c . The magnitude plot at 0.5 rad/s is about
−15 dB. We need to raise the magnitude plot by 15 dB. Hence, K = 1015/20 = 5.6.
7-3. LEAD COMPENSATION 287

(3) Starting at ω = 1 rad/s on the zero–dB line, draw a line with a slope −20 dB/dec
extending to the low-frequency end of the graph. From the graph we see that we need
to raise the magnitude plot by 20 dB. Since we saw earlier that the system will be stable
when the magnitude plot is raised by 22.5 dB, it will be stable when it is raised by
20 dB. Hence, K = 1020/20 = 10.

(4) We need to lift the magnitude plot up so that it is equal to 30 dB at 0.1 rad/s. The
magnitude is almost 0 dB at 0.1 rad/s. Hence, we need to lift it by 30 dB. To check
stability of the system we need to find the phase margin at the new ω c . The new ω c is
the frequency at which the magnitude plot for K = 1 is −30 dB. At this frequency the
phase plot is above the −180◦ line. Hence, the system is stable and K = 1030/20 = 31.6.

40

20

–20

–40

–60
10 –2 10 –1 10 0 10 1

–90

–135

–180

–225

10 –2 10 –1 10 0 10 1

Figure 7-11: Bode plots of Example 7-2 with solution illustration.

7-3 Lead Compensation


We saw in Chapter 5 that the lead compensator improves stability in the time-domain design
because it shifts the root locus to the left. It does the same function in the frequency-domain
design because it can increase the phase margin.
288 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

The transfer function of the lead compensator, written in a form suitable for frequency-
domain calculations, is
 
Ts+1
Gc (s) = K , K > 0, T > 0, 0 < β < 1. (7.4)
βTs+1
It has a zero at −1/T and a pole at −1/(β T ). Because β < 1, the zero is to the right of the
pole. The key property of the lead compensator that enables increasing the phase margin is
that its phase is positive. The phase of the lead compensator is given by

∠[Gc ( jω )] = tan−1 (T ω ) − tan−1 (β T ω ) . (7.5)

The break frequency 1/T is lower than the break frequency 1/(β T ). Therefore, the angle
tan−1 (T ω ) starts to increase positively at an earlier frequency than that for the angle
tan−1 (β T ω ). Eventually, the angle tan−1 (β T ω ) starts to increase positively and as ω → ∞,
∠[Gc ( jω )] → 0◦ . The general shape of ∠[Gc ( jω )] is shown in Fig. 7-12. The phase has a

[Gc ( jω)]

ϕmax

0 ωmax ω

Figure 7-12: Phase plot of the lead compensator.

maximum φmax at frequency ω max . To find ω max , differentiate ∠[Gc ( jω )] with respect to ω
and equate to zero:

d T βT T (1 − β )(1 − β T 2 ω 2 )
∠[Gc ( jω )] = − = .
dω 1 + T 2 ω 2 1 + β 2 T 2 ω 2 (1 + T 2 ω 2 )(1 + β 2 T 2 ω 2 )
Equating the derivative to zero yields
1
ω max = p . (7.6)
T β
Frequency ω max is the geometric mean of the break frequencies 1/T and 1/(β T ). On a
logarithmic scale, the geometric mean is halfway between the two break frequencies.
7-3. LEAD COMPENSATION 289

The maximum phase is given by


!
1 p 
−1
φmax = ∠[Gc ( jω max )] = tan p − tan−1 β . (7.7)
β

Using the trigonometric identity

tan φ1 − tan φ2
tan(φ1 − φ2 ) = ,
1 + tan φ1 tan φ2

we obtain
p
√1 − β
β 1−β
tan φmax = 1
p = p .
1+ √ · β 2 β
β

Therefore,
1−β 1 − sin φmax
sin φmax = β= . (7.8)
1+β 1 + sin φmax
In summary,

Phase Relations of the Lead Compensator

1 1−β 1 − sin φmax


ω max = p , sin φmax = , β=
T β 1+β 1 + sin φmax

Table 7-1 shows how φmax changes with β . For large φmax , β is very small. It is hard to
implement the lead compensator with a very small β . Therefore we usually do not design the
lead compensator for φmax > 70◦ . If a large positive angle is needed, we can cascade multiple
lead compensators. For example, if 90◦ is needed we can cascade two lead compensators
providing 45◦ each.

Table 7-1: φmax as function of β .

φmax (degrees) 20 30 40 50 60 70 80
β 0.49 0.33 0.22 0.13 0.07 0.03 0.008

The Bode plots of the lead compensator, both exact and asymptotic, are shown in
Fig. 7-13. The magnitude plot starts fromp20 log K and increases by 20 log(1/β ) to approach
20 log(K/β ) as ω → ∞. At ω max = 1/(T β ), the magnitude plot is halfway between its two
limits; that is, at 10 log(K/β ).
290 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

ϕmax

0
ωmax

Figure 7-13: Bode plots of the lead compensator.

7-3.1 Design of a Lead Compensator to Increase the Phase Margin at a Desired


Crossover Frequency
Given a specified value for ω c , design Gc (s) such that PM = PMdesired .

Step 1: Calculate the uncompensated phase margin PMunc . This is the phase margin if
Gc (s) = K. That is,
PMunc = ∠[Gp ( jω c )] + 180◦ .

Step 2: Choose φmax to increase the phase at ω c to the desired level:

φmax = PMdesired − PMunc .

Step 3: Calculate β :
1 − sin φmax
β= .
1 + sin φmax
7-3. LEAD COMPENSATION 291

Step 4: Choose T so as to locate ω max at ω c .


1 1
ωc = p T= p . (7.9)
T β ωc β

Step 5: Choose K such that Gc ( jω c )Gp ( jω c ) = 1.

Example 7-3: Increasing the Phase Margin at a Desired Crossover Frequency

Consider the plant transfer function


0.5
Gp (s) = .
s(s + 2.5)
Design a compensator Gc (s) such that ω c = 6 rad/s and PM = 50◦ .
Solution:  
◦ −1 6
∠[Gp (6 j)] = −90 − tan = −157.38◦
2.5
and
PMunc = ∠[Gp (6 j)] + 180◦ = −157.38◦ + 180◦ = 22.62◦ .
The uncompensated phase margin is less than the desired phase margin. We use a lead
compensator to increase the phase at the desired ω c :

φmax = PMdesired − PMunc = 50◦ − 22.62◦ = 27.38◦ ,


1 − sin φmax 1 − sin 27.38◦
β= = = 0.37,
1 + sin φmax 1 + sin 27.38◦
1 1
T= p = √ = 0.274,
ωc β 6 0.37
  
0.274s + 1 0.5
K = 1,
0.274 × 0.37s + 1 s(s + 2.5) s=6 j
(1 + 0.274 × 0.37 × 6 j)6 j(2.5 + 6 j)
K= = 47.43,
(1 + 0.274 × 6 j) × 0.5
and
47.43(0.274s + 1) 128.2(s + 3.65)
Gc (s) = = .
(0.274 × 0.37s + 1) (s + 9.86)
MATLAB Check: margin(Gp ∗ Gc) yields PM = 50◦ , ω c = 6 rad/s.
To get a sense of how the lead compensator is working, Fig. 7-14 shows the Bode plots for
the uncompensated system, the compensator, and the compensated system. The Bode plots
for the uncompensated system are for KGp ( jω ), where K = 78 was chosen so as to place the
crossover frequency at 6 rad/s; that is, |KGp ( j6)| = 1.
292 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

50

–50
ωc
10 –1 10 0 10 1 10 2

–50

–100

–150

–1 0 1 2
10 10 10 10

Figure 7-14: Bode plots for Example 7-3.

7-3.2 Design of a Lead Compensator to Increase the Phase Margin without


Changing the Low-Frequency Gain
This is a more challenging task than the previous one. Keeping the low-frequency gain means
that the gain K in the compensator transfer function
 
Ts+1
Gc (s) = K
βTs+1

is fixed and we only have the freedom to choose β and T . This situation arises when the
design specifications require Kp or Kυ to have a certain value, but doing it with Gc (s) = K
yields a low value for the phase margin. When we add a lead compensator we need to decide
where to locate ω max . It cannot be located at the uncompensated crossover frequency because
the magnitude of the compensator is positive, which when added to the uncompensated
magnitude plot will shift the crossover frequency to the right; see Fig. 7-15. Because the
increase in the magnitude of the compensator at ω max is 10 log(1/β ), we can estimate the
compensated crossover frequency as the frequency at which the uncompensated magnitude
plot is −10 log(1/β ). But at this frequency, the angle Gp ( jω ) will typically be more negative
7-3. LEAD COMPENSATION 293

Figure 7-15: Shift of the crossover frequency after adding a lead compensator without changing
the low-frequency gain.

than its value at the uncompensated crossover frequency. We can anticipate this reduction in
our choice of φmax by adding a correction factor.
The design steps for this case are:
Step 1: Choose φmax :
φmax = PMdesired − PMunc + correction factor.
The correction factor is usually 5 to 10 degrees.
Step 2: Calculate β :
1 − sin φmax
β= .
1 + sin φmax
Step 3: Estimate the new crossover frequency ω c as the frequency at which the
uncompensated magnitude plot is −10 log(1/β ).
Step 4: Choose T :
1
T= p .
ωc β
Step 5: Keep K as in the uncompensated design.

We may have to redo the design by changing the correction factor.

Example 7-4: Increasing the Phase Margin without Changing the Low-
Frequency Gain

Consider the plant transfer function


0.5
Gp (s) = .
s(s + 2.5)
294 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

(1) Design a compensator Gc (s) = K so that Kυ = 10. Find the phase margin and the
crossover frequency.

(2) Design a lead compensator to increase the phase margin by 20◦ while keeping Kυ = 10.

Solution:

(1)
0.5K K
Kυ = lim s = = 10 K = 50.
s→0 s(s + 2.5) 5

MATLAB Check: margin(50 ∗ Gp ) yields PM = 28◦ , ω c = 4.7 rad/s.

(2) Set 10◦ as the correction factor

φmax = PMdesired − PMunc + correction factor = 20◦ + 10◦ = 30◦ ,

1 − sin 30◦
β= = 0.33,
1 + sin 30◦
 
1
10 log = 4.8 dB.
β
Figure 7-16 shows the Bode plots of 50Gp (s), with the range of axes chosen to focus
on the area of interest. To estimate the compensated crossover frequency, we determine
the frequency at which the magnitude plot of 50Gp is at −4.8 dB. From Fig. 7-16,
this frequency is 6.4 rad/s and ∠[Gp (6.4 j)] = −158.6. This angle is 6.6◦ lower than the
angle at the uncompensated crossover frequency. The correction factor of 10 is expected
to work. We continue to work with β = 0.33 and ω c = 6.4 rad/s. Hence,

1
T= p = 0.272 s.
ωc β
Keep K = 50, which leads to

50(0.272s + 1) 151.5(s + 3.676)


Gc (s) = = .
(0.272 × 0.33s + 1) (s + 11.14)

MATLAB Check: margin(Gp ∗ Gc ) yields PM = 51.7◦ , ω c = 6.35 rad/s.

The phase margin has been improved by 23.7◦ , which is more than the required 20◦ . It
is acceptable to achieve a phase margin slightly higher than what is required because it
offers stronger relative stability.
7-4. LAG COMPENSATION 295

10

–5

–10
10 0 10 1

–140

–150

–160

–170

–180
10 0 10 1

Figure 7-16: Bode plots of 50Gp (s) of Example 7-4.

7-4 Lag Compensation


The lag compensator is used to increase the low-frequency gain. Its transfer function is
 
α (T s + 1)
Gc (s) = K , K > 0, T > 0, α > 1.
αT s + 1

The transfer function has a zero at −1/T and a pole at −1/(α T ). Because α > 1, the pole is
to the right of the zero.
The Bode plots and asymptotic Bode plots of the lag compensator are shown in Fig. 7-17
for K = 1. The magnitude plot starts at low frequency from a high gain of 20 log α dB and
approaches 0 dB as ω → ∞. Therefore, adding a lag compensator allows us to increase
the low-frequency gain over the gain of the uncompensated system. However, the phase of
the compensator is negative and reaches a minimum
√ at the geometric mean of the break
frequencies 1/T and 1/(α T ), which is 1/(T α ). This negative phase can compromise the
stability of the system by decreasing the phase margin of the uncompensated system.
To reduce this effect, the break frequencies of the lag compensator are chosen at a low
frequency relative to the crossover frequency of the uncompensated system. In particular, if
296 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

Figure 7-17: Bode plots of the lag compensator.

ω c is the crossover frequency of the uncompensated system, T is chosen such that

1
0.1ω c ≤ ≤ 0.2ω c .
T

Even with this choice there will be a residual negative phase at ω c . Table 7-2 shows the
residual angle at ω c for different values of α . The table shows the cases when 1/T = 0.1ω c
and 1/T = 0.2ω c . This residual negative angle can be compensated for at the uncompensated
design stage. In particular, if during the uncompensated design we anticipate the addition of

Table 7-2: Residual negative angle of the lag compensator at the uncompensated crossover
frequency.

α 10 20 30 40 50
∠[Gc ( jω c )] (degree) for 1/T = 0.1ω c −5.1 −5.4 −5.5 −5.57 −5.6
∠[Gc ( jω c )] (degree) for 1/T = 0.2ω c −10.1 −10.7 −10.9 −11.02 −11.08
7-4. LAG COMPENSATION 297

a lag compensator, we design for

PM = PMdesired + correction factor,

and the correction factor is usually 5 to 10 degrees.

7-4.1 Design of a Lag Compensator to Increase the Low-Frequency Gain with


Minimal Effect on the Phase Margin of the Uncompensated System
Given an uncompensated system with desired phase margin at crossover frequency ω c , it is
requred to increase the low-frequency gain by a factor F. The process involves the following
steps:

Step 1: Choose α ≥ F.
1
Step 2: Choose T such that 0.1ω c ≤ T ≤ 0.2ω c .
Step 3: Keep K as in the uncompensated design.

Example 7-5: Increasing Kp While Maintaining the Phase Margin

Given the plant transfer function


0.2
Gp (s) = ,
(s + 0.2)(s + 1)

design a compensator Gc (s) such that Kp ≥ 100 and PM ≈ 50◦ .


Solution: We start by designing Gc (s) = K to achieve the required phase margin. Noting that
Gp (0) = 1, we anticipate that we will need to use a lag compensator to increase the dc gain to
meet the requirement on Kp . With that anticipation, we design for PM = 55◦ . From the phase
plot of Gp ( jω ), shown in Fig. 7-18, 55◦ phase margin is achieved at ω c ≈ 1.04 rad/s.
298 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

–125

–180

10 –2 10 –1 10 0 10 1

Figure 7-18: Phase plot of Gp of Example 7-5.

0.2K
|KGp (1.04 j)| = 1 p =1 K = 7.64.
(0.04 + 1.0816)(1 + 1.0816)
100
Uncompensated Kp = K = 7.64. Hence, we need to increase Kp by = 13.09.
7.64
1
Set α = 14, = 0.1ω c = 0.104 T = 9.615 ≈ 10.
T

Keep K = 7.64. Hence,

7.64 × 14(10s + 1) 7.64(s + 0.1)


Gc (s) = = 1
,
140s + 1 s + 140

Kp = Gp (0)Gc (0) = 7.64 × 14 = 103.6 .

MATLAB check: margin(Gp ∗ Gc ) yields PM = 49.6◦ , ω c = 1.04 rad/s.

Figure 7-19 shows the Bode plots of the uncompensated system (7.64Gp ), the compensa-
tor (Gc ), and the compensated system (Gp Gc ). It is clear how the lag compensator increases
the low-frequency gain with little effect on the phase margin of the uncompensated system.
7-5. PI COMPENSATION 299

50

–50
10 –3 10 –2 10 –1 10 0 10 1

–50

–100

–150
–180

10 –3 10 –2 10 – 1 10 0 10 1

Figure 7-19: Bode plots of Example 7-5.

7-5 PI Compensation
The PI controller increases the low-frequency gain because it increases the type of the
feedback system. Its transfer function is
 
Ts+1
Gc (s) = K , K > 0, T > 0.
Ts
Figure 7-20 shows the exact and asymptotic Bode plots of Gc (s) for K = 1.
The magnitude plot starts from infinity at zero frequency and rolls off with −20 dB/dec
slope towards the break frequency 1/T . It approaches 0 dB asymptotically as ω → ∞. The
phase plot starts from −90◦ and increases to 0◦ , passing through −45◦ at the break frequency.

7-5.1 Design of a PI Controller to Increase the Type of the Feedback System and
Achieve a Desired Phase Margin
The design includes the following steps:

Step 1: Choose T .
300 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

–45

–90

Figure 7-20: Bode plots of (T s + 1)/(T s).

Step 2: Draw the Bode phase plot of


 
Ts+1
Ĝ(s) = Gp (s)
Ts

and find the frequency ω c at which

∠[Ĝ( jω c )] = PMdesired − 180◦ ,

where PMdesired is the desired phase margin.


Step 3: Choose K such that |K Ĝ( jω c )| = 1.

Example 7-6: Design of a PI Controller

Given the plant transfer function


0.2
Gp (s) = ,
(s + 0.2)(s + 1)
7-5. PI COMPENSATION 301

design a compensator Gc (s) such that Kp ≥ 100 and PM ≈ 50◦ .

Solution: We use a PI controller, which yields Kp = ∞; so the requirement on Kp is met. To


meet the requirement on the phase margin, we choose T , draw the Bode phase plot for

 
Ts+1
Ĝ(s) = Gp (s)
Ts

and find the frequency ω c at which ∠[Ĝ( jω c )] = −130◦ . Then we calculate K such that
|K Ĝ( jω c )| = 1. This process was repeated for different values of T , and the results are shown
in Table 7-3. The table shows that the crossover frequency ω c and the gain K increase as T
increases.

Table 7-3: The effect of the choice of T of the PI controller of Example 7-6.

T (s) 2 4 6 8 10
ω c (rad/s) 0.268 0.728 0.914 0.977 1.02
K 0.82 4.42 6.24 6.91 7.39

We pick the case T = 10 to compare the PI controller with the lag compensator of
Example 7-5. Recall that in Example 7-5, a lag compensator was designed to meet the same
design specifications for the same plant as in the current example. The case T = 10 results
in ω c = 1.02 rad/s, which is comparable to ω c = 1.04 rad/s of Example 7-5. The transfer
functions are

7.64(s + 0.1)
Lag Compensator: Gc (s) = ,
s + 0.0071
7.39(s + 0.1)
PI controller: Gc (s) = .
s

The main difference is that the pole at −0.0071 in the lag compensator is replaced by a pole
at the origin in the PI controller.
Figure 7-21 shows the Bode plots of Gp Gc for the two controllers. The plots are
indistinguishable near 1 rad/s, where the crossover frequencies are located, but they are quite
different at low frequencies. For the PI controller, the magnitude plot rolls off from infinity
and the phase starts from −90◦ , while for the lag compensator the magnitude plot starts flat
from a finite value and the phase starts from zero degrees. Implementing the lag compensator
with the small coefficient 0.0071 requires high accuracy; an issue that does not arise in the PI
controller. On the other hand, the PI controller will likely be implemented with an anti-windup
scheme, as discussed in Section 5-7.
302 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

Magnitude (dB) 100

50

–50

–100
0

– 45
Phase (deg)

–90

–135

–180
10–4 10–3 10–2 10– 1 100 101 102
Frequency (rad/s)

Figure 7-21: Comparison of the Bode plots of the loop gain for the lag compensator and the PI
controller of Example 7-6.

7-6 Lead-Lag Compensation


We can improve the phase margin with a lead compensator. We can increase the low-frequency
gain with a lag compensator. We can achieve both with a lead-lag compensator. The process
is illustrated by the following two examples.

Example 7-7: Design of a Lead-Lag Compensator

Given the plant transfer function

20
Gp (s) = ,
(s + 0.2)(s + 1)(s + 100)

design a compensator Gc (s) such that

(i) Kp ≈ 100; (ii) PO ≈ 20%; (iii) Tp ≈ 1 s.


7-6. LEAD-LAG COMPENSATION 303

Solution: To pursue the design in the frequency domain, we need to convert the requirements
(ii) and (iii) into equivalent frequency-domain requirements. Although the transfer function
is third-order, the pole at −100 is far to the left in the complex plane relative to the poles at
−0.2 and −1. It is reasonable to expect that the closed-loop transfer function will have a pair
of dominant complex poles. Therefore, we use the relations of Fig. 6-39 as approximations.
For 20% overshoot we set ζ = 0.5. Hence,
π π
Tp = p =1 ωn = √ = 3.63 rad/s,
ωn 1 − ζ 2 1 − 0.25

PM = 12 + 76ζ = 12 + 76 × 0.5 = 50◦ ,


3.35 − 2ζ 3.63(3.35 − 2 × 0.5)
ωc = ωn = = 2.84 rad/s.
3 3
Hence, the frequency-domain specifications are

(i) Kp ≈ 100; (ii) PM ≈ 50◦ ; (iii) ω c ≈ 2.84 rad/s.

We use a lead compensator to meet requirements (ii) and (iii) and, if needed, a lag
compensator will be used to meet requirement (i). Anticipating the probable use of a lag
compensator, we design the lead compensator for PM = 55◦ . We start by investigating the
uncompensated system when Gc = K:
   
−1 2.84 −1 −1 2.84
∠[Gp (2.84 j)] = − tan − tan (2.84) − tan
0.2 100
= −85.97◦ − 70.6◦ − 1.63◦ = −158.2◦ .

The uncompensated phase margin is

PMunc = −158.2◦ + 180◦ = 21.8◦ .

A lead compensator is used to increase the phase margin at the desired ω c . Its transfer function
is  
Ts+1
Gc (s) = K .
βTs+1
The maximum angle of the lead compensator is chosen as

φmax = 55◦ − 21.8◦ = 33.2◦ ,


1 − sin 33.2◦
β= = 0.29.
1 + sin 33.2◦
The maximum angle is located at the desired crossover frequency by the choice:

1 1
T= p = √ = 0.65 s.
ωc β 2.84 0.29
304 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

The gain K of the lead compensator is chosen such that |GP (2.84 j)Gc (2.84 j)| = 1:
  
0.65s + 1 20
K =1 K = 23.17.
0.29 × 0.65s + 1 (s + 0.2)(s + 1)(s + 100) s=2.84 j

Thus, the lead compensator is

23.17(0.65s + 1)
Gc (s) = ,
0.65 × 0.29s + 1
Kp = Gp (0) Gc (0) = 23.17.

We need to increase Kp by the factor 100/23.17 = 4.32. Add the lag compensator

α (T1 s + 1)
.
α T1 s + 1
Because the gain of the lag compensator is kept the same as in the previous step, we didn’t
include a gain K in the above expression. Set α = 4.5. To reduce the effect of the negative
phase of the lag compensator on the phase margin, set
1
= 0.1ω c = 0.284 T1 = 3.52 s.
T1
Thus, the final compensator is
  
23.17(0.65s + 1) 4.5(3.52s + 1) 79.9(s + 1.54)(s + 0.28)
Gc (s) = = ,
0.65 × 0.29s + 1 4.5 × 3.52s + 1 (s + 5.31)(s + 0.063)
Kp = Gp (0) Gc (0) = 104.27.

MATLAB check:

PM = 50.8◦ , ω c = 2.85 rad/s, PO = 20.45%, Tp = 1.19 s.

Kp = 104.27 is slightly higher than the required 100, which is acceptable since the higher Kp
is, the smaller is the steady-state error. The overshoot of 20.45% is fairly close to the required
20%. The peak time of 1.19 s is about 20% higher than the required 1 s, which is reasonable
in view of the approximations used in the design calculations. If it is necessary to reduce Tp ,
we can repeat the design with a higher value of ω c .

Example 7-8: Design of a Lead-Lag Compensator

Given the plant transfer function


0.2
Gp (s) = ,
(s + 0.2)(s + 1)
7-6. LEAD-LAG COMPENSATION 305

design a compensator Gc (s) such that


(i) Loop gain ≥ 100 (i.e., 40 dB) over the frequency band [0, 0.1] rad/s;
(ii) PM ≈ 50◦ ; (iii) ω c ≈ 3 rad/s.

Solution: Anticipating that the Bode magnitude plot of Gp ( jω ) Gc ( jω ) will be non-


increasing at low frequency, requirement (i) is equivalent to
|Gp (0.1 j) Gc (0.1 j)| ≥ 100.
We start by designing a lead compensator with
K(T s + 1)
Gc (s) =
βTs+1
to meet requirements (ii) and (iii). Anticipating the use of a lag compensator to increase the
low-frequency gain, we design the lead compensator for PM = 60◦ :
∠[Gp (3 j)] = − tan−1 (3/0.2) − tan−1 (3) = −157.75◦ ,
PMunc = −157.75◦ + 180◦ = 22.25◦ .
The maximum angle of the lead compensator is chosen as
φmax = 60◦ − 22.25◦ = 37.75◦ ,
1 − sin 37.75◦
β= = 0.24.
1 + sin 37.75◦
T is chosen to locate the maximum angle at the desired crossover frequency:
1 1
T= p = √ = 0.68 s.
ωc β 3 0.24
The gain K is chosen such that |Gp (3 j) Gc (3 j)| = 1:
  
K(0.68s + 1) 0.2
=1 K = 23.2,
0.68 × 0.24s + 1 (s + 0.2)(s + 1) s=3 j

|Gp (0.1 j) Gc (0.1 j)| = 20.69.


We use a lag compensator to increase the loop gain at ω = 0.1 rad/s by the factor
100/20.69 = 4.833. The transfer function of the lag compensator is
α (T1 s + 1)
.
α T1 s + 1
We did not include a gain K in the lag compensator’s transfer function because the gain is
kept the same as in the lead compensator:
s
α (T1 s + 1) 1 + (0.1T1 )2
=α .
α T1 s + 1 s=0.1 j 1 + (0.1α T1 )2
306 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

To reduce the effect of the lag compensator’s negative angle on the phase margin, set
1 10
= 0.1ω c = 0.3 T1 = s.
T1 3
We need to choose α such that
s
1 + ( 31 )2
α > 4.833,
1 + ( α3 )2

but this choice is not feasible because the left-hand side of the foregoing inequality is a
monotonically increasing function of α that reaches a maximum value of 3.16 as α → ∞.
We bring the break frequency 1/T1 closer to ω c by setting
1
= 0.5 T1 = 2 s.
T1
We need to choose α such that
s
1 + (0.2)2
α > 4.833.
1 + (0.2α )2

The inequality is satisfied with α = 16 for which the left-hand side is 4.867. Thus, the final
compensator is
  
23.2(0.68s + 1) 16(2s + 1) 96.67(s + 1.47)(s + 0.5)
Gc (s) = = .
(0.24 × 0.68s + 1 16 × 2s + 1 (s + 6.13)(s + 0.031)

MATLAB check:

PM = 51.1◦ ; ω c = 3.02 rad/s; 20 log[Gp Gc ] = 40 dB at ω = 0.1 rad/s.

7-7 Advantages of the Frequency-Domain Approach


Controllers can be designed in the time domain, as in Chapter 5, or in the frequency domain as
in this chapter. Time-domain analysis and design have the advantage that the performance can
be checked by performing experiments on the system; for example, the step response can be
determined experimentally by applying a step input to the closed-loop system and recording
the output. What are the advantages of the frequency-domain analysis and design approach?
There are four advantages:
• The frequency response can be obtained directly from experimental data. For a wide
class of systems that do not have poles in the right-half plane, the frequency response
at a frequency ω can be obtained by applying a sinusoidal input of frequency ω ,
measuring the sinusoidal output at the same frequency, and using the change in
magnitude and phase to find the frequency response at that frequency. By sweeping the
frequency of the input over the frequency range of interest, the frequency response is
SUMMARY 307

determined. We can then fit the response with a transfer function Gp (s). This fitting
process involves an approximation. Consequently, the frequency response obtained
from Gp (s) will not be exactly the same as the one determined experimentally.
In time-domain analysis and design, our only option is to use the approximate
transfer function Gp (s). In frequency-domain analysis and design, we can perform the
calculations using the experimentally determined frequency response, instead of the
approximate frequency response calculated from Gp (s).

• Time delay can be easily handled using Bode plots. In time-domain analysis and design,
transfer functions have to be rational functions of s. Therefore, the only way to include
the time-delay transfer function e−τ s is to approximate it by a rational function of s, as
discussed in Section 2-1. In addition to being an approximation, the rational transfer
function increases the order of the system, which increases the complexity of the
analysis and design.

• Robustness to model uncertainty is quantified by the gain and phase margins.

• Reference tracking, disturbance attenuation, and measurement of noise attenuation can


be improved by shaping the frequency response of the loop transfer function G = Gp Gc .

Summary
Concepts
• Gain adjustment can meet only one design specification.
• The lead compensator can stabilize the system and improve the dynamic response
because it adds a positive phase to the loop transfer function.
• The lag compensator can reduce the steady-state error because it increases the low-
frequency gain.
• The lead-lag compensator combines the functions of the lead and lag compensa-
tors.
• The PI controller reduces the steady-state error because it increases the type of the
feedback system.
• Meeting the conflicting requirements of increasing the loop gain to reduce the
tracking error due to reference and disturbance and decreasing the sensitivity
function, while reducing the loop gain to attenuate the effect of measurement
noise, can be handled in the frequency domain by having high loop gain in a low
frequency band that covers the frequencies of the reference and disturbance and
then letting the gain roll off to low values at high frequency.
308 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

Mathematical Models
Ts+1
Lead compensator: Gc (s) = K , K > 0, T > 0, 0 < β < 1
βTs+1
1
Lead phase relations: ω max = p
T β
1−β
sin φmax =
1+β
1 − sin φmax
β=
1 + sin φmax
Ts+1
Lag compensator: Gc (s) = K α , K > 0, T > 0, α > 1
αT s + 1
Ts+1
PI controller: Gc (s) = K , K > 0, T > 0
Ts

Important Terms Provide definitions or explain the meaning of the following


terms:
gain adjustment lead compensator phase relations of the lead compensator
lag compensator lead-lag compensator PI controller

PROBLEMS

In all problems where the analytic expression of Gp is given and you are
asked to design a compensator to meet certain design specifications, use
MATLAB to check if you achieved the design objective.

7.1 Let
K
G(s) = .
s(s + 1)
(a) Find K such that ω c = 2 rad/s.
(b) Find K such that PM = 50◦ .
(c) Find K such that Kυ = 10.
(d) Find K such that
20 log |G( jω )| ≥ 20 dB for ω ∈ [0, 1] rad/s.

7.2 Let
6K
G(s) = .
(s + 1)(s + 2)(s + 3)
PROBLEMS 309

(a) Find K such that ω c = 2 rad/s.


(b) Find K such that PM = 60◦ .
(c) Find K such that Kp = 5.
(d) Find K such that

20 log |G( jω )| ≥ 10 dB for ω ∈ [0, 0.3] rad/s.

7.3 Let G(s) = K Ĝ(s). The Bode plots of Ĝ(s) are shown in Fig. P7.3.
(a) Find K such that ω c = 10 rad/s.
(b) Find K such that PM = 50◦ .
(c) Find K such that Kυ = 20.
(d) Find K such that

20 log |G( jω )| ≥ 30 dB for ω ∈ [0, 1] rad/s.

50

0
Magnitude (dB)

–50

–100

–150

–200
–90

–135
Phase (deg)

–180

–225

–270
10– 1 100 101 102 103 104
Frequency (rad/s)

Figure P7.3: Bode plots of Problem 7.3.

7.4 Let G(s) = K Ĝ(s). The Bode plots of Ĝ(s) are shown in Fig. P7.4.
310 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

(a) Find K such that ω c = 3 rad/s.


(b) Find K such that PM = 45◦ .
(c) Find K such that Kp = 10.
(d) Find K such that

20 log |G( jω )| ≥ 14 dB for ω ∈ [0, 1] rad/s.

0
Magnitude (dB)

–50

–100

–150
0
Phase (deg)

–90

–180

–270
10–2 10–1 100 101 102 103
Frequency (rad/s)

Figure P7.4: Bode plots of Problem 7.4.

7.5 Given the plant transfer function


1
Gp (s) = ,
s(s + 1)(s + 2)
design a lead compensator such that ω c = 1 rad/s and PM = 50◦ .
7.6 Given the plant transfer function
1
Gp (s) = ,
(s + 1)(s + 2)
design a lead compensator such that ω c = 10 rad/s and PM = 50◦ .
PROBLEMS 311

7.7 Given the plant transfer function


100
Gp (s) = ,
(s + 1)(s + 5)(s + 10)
design a compensator such that ω c = 5 rad/s and PM = 45◦ .
7.8 Given the plant transfer function
100
Gp (s) = ,
s(s + 5)(s + 10)
design a compensator such that ω c = 5 rad/s and PM = 45◦ .
7.9 Consider the plant transfer function
1
Gp (s) = .
s(s + 1)(s + 2)

(a) Design a compensator Gc (s) = K so that Kυ = 2. Find the phase margin and the
crossover frequency.
(b) Design a lead compensator to increase the phase margin by 30◦ while keeping Kυ = 2.
7.10 Consider the plant transfer function
1
Gp (s) = .
(s + 1)(s + 2)

(a) Design a compensator Gc (s) = K so that Kp = 20. Find the phase margin and the
crossover frequency.
(b) Design a lead compensator to increase the phase margin by 30◦ while keeping Kp = 20.
7.11 Consider the plant transfer function
1
Gp (s) = .
(s + 1)(s + 2)

(a) Design a compensator Gc (s) = K so that PM = 50◦ . What is Kp ?


(b) Design a lag compensator to increase Kp by a factor of 3 with little effect on the phase
margin.
7.12 Consider the plant transfer function
1
Gp (s) = .
s(s + 1)(s + 2)

(a) Design a compensator Gc (s) = K so that PM = 50◦ . What is Kυ ?


(b) Design a lag compensator to increase Kυ by a factor of 2 with little effect on the phase
margin.
312 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

7.13 Given the plant transfer function

100
Gp (s) = ,
s(s + 5)(s + 10)

design a lag compensator such that Kυ = 10 and PM ≈ 45◦ .


7.14 Given the plant transfer function

100
Gp (s) = ,
(s + 1)(s + 5)(s + 10)

design a lag compensator such that Kp = 10 and PM ≈ 45◦ .


7.15 Consider the plant transfer function

2
Gp (s) = .
s(s + 1)(s + 2)

(a) Find the gain and phase margins and the corresponding crossover frequencies when
Gc (s) = 1.
(b) Let Gc (s) = K, where K > 0. Find the range of K for stability.
(c) Let Gc (s) = 1 and replace G(s) by e−T s G(s), where T > 0. Find the range of T for
stability.
(d) Design Gc (s) = K > 0 to operate at 45◦ phase margin.
(e) Design Gc (s) to operate at 40◦ phase margin and Kυ = 3.
(f) Design Gc (s) to operate at 45◦ phase margin and 1 rad/s crossover frequency.
7.16 Consider the plant transfer function

1
Gp (s) = .
(2s + 1)2

Design a compensator to achieve 50◦ phase margin at 4 rad/s.


7.17 Consider the plant transfer function

1
Gp (s) = .
s(s + 1)(s + 10)

(a) Design a compensator Gc = K to operate at Kυ = 10. What is the phase margin?


(b) Design a compensator Gc = K to operate at 45◦ phase margin. What is Kυ ?
(c) Design a compensator Gc (s) to operate at 45◦ phase margin and 4 rad/s crossover
frequency. What is Kυ ?
(d) Design a compensator Gc (s) to operate at 45◦ phase margin and Kυ = 10.
PROBLEMS 313

7.18 Consider the plant transfer function


50(s + 4)
Gp (s) = .
(s + 1)(s + 10)(s + 20)
(a) Design a lag compensator such that the system operates with a 45◦ phase margin and
Kp = 100.
(b) Design a compensator to meet the following specifications: Phase margin = 45◦ ,
crossover frequency = 40 rad/s, and Kp = 100.
7.19 Consider the plant transfer function
10
Gp (s) = .
s(s + 1)(s + 10)
(a) Find the gain and phase margins and the corresponding crossover frequencies when
Gc = 1.
(b) Design a compensator to operate at crossover frequency ω c = 2 rad/s. What is the phase
margin PM?
(c) Design a compensator to operate at PM = 60◦ and ω c = 2 rad/s. What is Kυ ?
(d) Design a compensator to operate at PM = 55◦ , ω c = 2 rad/s, and Kυ = 10.
7.20 Consider the plant transfer function
1
Gp (s) = .
s(s + 1)(s + 5)
(a) Design a compensator Gc = K to operate at Kυ = 3. What is the phase margin?
(b) Design a compensator Gc = K to operate at 50◦ phase margin. What is Kυ ?
(c) Design a compensator Gc (s) to operate at 45◦ phase margin and 2 rad/s crossover
frequency. What is Kυ ?
(d) Design a compensator Gc (s) to operate at 45◦ phase margin and Kυ = 3.
7.21 Repeat Problem 7.20 for
1
Gp (s) = .
s(s + 2)(s + 6)

7.22 Consider the plant transfer function


10
Gp (s) = .
s(s + 10)
Design a lead-lag compensator to have phase margin ≈ 60◦ , crossover frequency ≈ 20 rad/s,
and loop gain ≥ 100 (40 dB) over the frequency band [0, 0.5] rad/s.
7.23 Repeat Problem 7.22 for
500
Gp (s) = .
s(s + 10)(s + 50)
314 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

7.24 Given the plant transfer function

1
Gp (s) = ,
(s + 1)(s + 2)

design a PI controller such that PM = 60◦ and ω c ≥ 1 rad/s.


7.25 Given the plant transfer function

1
Gp (s) = ,
(s + 1)(s + 10)

design a PI controller such that PM = 50◦ and ω c ≥ 2 rad/s.


7.26 The track-folowing control in optical disc drives locates the laser spot at the center of
a data track [25]. Figure P7.26(a) shows a schematic diagram of the mechanism. A dual-stage
actuator consists of a fine actuator and a coarse actuator. The coarse actuator moves the fine
actuator slowly over the operation range, while the fine actuator’s function is to achieve the
desired tracking. In this problem we consider the design of the fine actuator. Figure P7.26(b)
shows a block diagram of the control system. The transfer function of the fine actuator is
given by
234
P(s) = 2 (meters/volt),
s + 194.18s + 147119
and KPD = 16.986 (volts/meter) is the photodetector gain. The disturbance d is the center
position of the target track, which varies periodically with the disc rotational frequency. To
meet the stability and robustness requirements and attenuate the effect of the disturbance, the
design specifications are taken as:

• Gain margin ≥ 20 dB;

• Phase margin ≥ 60◦ ;

• Loop gain ≥ 50 dB for ω ≤ 100 rad/s;

• Loop gain ≤ −20 dB for ω ≥ 105 rad/s.

Design the compensator Gc (s) to meet these specifications.


7.27 Consider the idle speed control of Problem 3.16 together with the linearized model of
Fig. P3.16. The time delay is modeled by the transfer function H(s) = e−0.04s . Consider the
PID controller  
KI
∆U = KP + + KDs (∆Nr − ∆N) ,
s
where Nr is the desired engine speed and ∆Nr is the change from the nominal value. Design
the PID controller to achieve 60◦ phase margin at 12 rad/s crossover frequency. (Hint: Design
a PD controller first to achive 65◦ phase margin at the desired crossover frequency. Then add
integration such that the phase margin drop is less than five degrees.)
PROBLEMS 315

Rotation Axis xs
Vertical
xc xf Recorded Direction
Layer

Disk
Radial
Direction
Objective
Spindle Motor Laser Spot
Lens

kf
f mf df
dc Fine
Actuator
Optical
PD Element LD

Coarse
Actuator

(a)

0 + e + + eT
∑ G c (s) P(s) ∑ K PD

(b)

Figure P7.26: (a) Track-following mechanism in optical disc drives. Courtesy of IEEE
Transactions on Systems Technology. (b) Feedback control loop for Problem 7.20.

7.28 A process in the pulp and paper industry is modeled by the transfer function [5]

K1 e−τ s
Gp (s) = ,
τ1 s + 1

where nominal values of the parameters are K1 = 1, τ1 = 3 s, and τ = 0.2 s. It is common in


this industry to design the controller using the Internal Model Principle, where the controller
cancels the process dynamics, process poles with controller zeros, and process zeros with
316 CHAPTER 7. FREQUENCY-DOMAIN DESIGN

controller poles. For the given process, a PI controller is taken as


K(τ1 s + 1)
Gc (s) = .
s
(a) Choose K to achieve 60◦ phase margin. What is the gain margin?
(b) Study the effect of ±20% change in each of K1 , τ1 , and τ on the phase and gain margins
and the corresponding crossover frequencies. Take the changes in the parameters one at
a time. The controller parameters are kept at the nominal values.
(c) Comment on the results.
7.29 A process in the pulp and paper industry is modeled by the transfer function [5]
K1 (β s + 1)
Gp (s) = ,
s(τ1 s + 1)
where nominal values of the parameters are K1 = 0.005, τ1 = 20 s, and β = 300 s. It is
common in this industry to design the controller using the Internal Model Principle, where
the controller cancels the process dynamics, process poles with controller zeros, and process
zeros with controller poles. For the given process, a PID controller plus filter is taken as
  
K(τ1 s + 1)(s + z) 1
Gc (s) = .
s βs+1
(a) Choose z and K to have a 60◦ phase margin at ω c = 3 rad/s. What is the gain margin?
(b) Study the effect of ±20% change in each of K1 , τ1 and β on the phase and gain margins
and the corresponding crossover frequencies. Take the changes in the parameters one at
a time. The controller parameters are kept at the nominal values.
(c) Comment on the results.
7.30 A closed-loop insulin pump system is described in Problem 4.30 and Fig. P4.30. The
process is modeled by
Ko
Gp (s) = ,
(τ1 s + 1)(τ2 s + 1)2
where τ1 = 247 (min), τ2 = 17 (min), and Ko = −12000/TDI. A PID controller is taken as
(τ1 s + 1)(τ2 s + 1)
Gc (s) = K
s
where the zeros of Gc (s) are chosen to cancel two poles of Gp (s).
(a) Choose K in terms of Ko to achieve 60◦ phase margin. Determine the crossover
frequency (rad/s).
(b) Study the effect of ±20% change in Ko and ±10% change in each of τ1 and τ2 on
the phase margin and crossover frequency. Take the changes in the parameters one at a
time. The controller parameters are kept at the nominal values.
(c) Comment on the results.
7.31 State three advantages of the frequency-domain approach over the time-domain
approach.
Chapter 8
State-Space Methods
Chapter Contents Objectives
Overview, 318 Upon learning the material presented in this chapter, you
8-1 State-Space Models, 318 should be able to:
8-2 Solution of the State Equation, 327 1. Represent linear systems by state-space models.
8-3 Stability, 330
8-4 Controllability and Observability, 333 2. Derive state-space models of electric circuits,
8-5 Transfer Function of a State-Space mechanical systems, and electromechanical systems.
Model, 340 3. Derive a linear state-space model by linearization of a
8-6 State-Space Model of a Transfer nonlinear model.
Function, 344
8-7 State-Space Design, 352 4. Solve the linear state equation.
Chapter Summary, 367 5. Define and test stability.
Problems, 368
6. Define and test controllability.
7. Define and test observability.
8. Understand the duality between controllability and
observability.
9. Find the transfer function of a state-space model.
10. Find a state-space model of a transfer function.
11. Design state feedback control.
12. Design observer and output feedback control.
13. Design a set-point regulator using feedforward or
integral control.

317
318 CHAPTER 8. STATE-SPACE METHODS

Overview
State-space models present an alternative approach to modeling dynamical systems. They are
well suited to deal with multi-input–multi-output systems as well as nonlinear systems. Even
though we do not cover multi-input–multi-output cases in this book, state-space methods still
provide useful tools for the analysis and design of single-input–single-output linear systems.
They emphasize both the internal behavior of the system, due to non-zero initial conditions,
and the external behavior due to inputs. They also provide new techniques for the design of
feedback control.
This chapter starts by defining state-space models in Section 8-1, together with examples
of how to derive such models for physical systems. The solution of the state equation
is presented in Section 8-2, which is the basis for studying stability in Section 8-3.
Controllability and observability properties of state-space models play important roles in the
design of feedback control. They are presented in Section 8-4.
Because state-space models and transfer functions are two different ways to model
dynamical systems, it is important to understand how they are related. This relationship is
examined in Sections 8-5 and 8-6. Section 8-5 shows how to calculate the transfer function
of a state-space model. Section 8-6 shows how to find a state-space model of a transfer
function. For the same transfer function, several different state-space models can be created.
The section presents three such models: the controllable-canonical-form realization, the
observable-canonical-form realization, and the parallel realization. Section 8-7 presents the
design of feedback control using state-space models.

8-1 State-Space Models


A state-space model of an nth order dynamical system is defined by n coupled first-order
differential equations:
ẋ1 = f1 (x1 , x2 , . . . , xn , u) ,
ẋ2 = f2 (x1 , x2 , . . . , xn , u) ,
.. .
. = ..
ẋn = fn (x1 , x2 , . . . , xn , u) ,
where x1 to xn are the state variables, u is the input variable, ẋi = dxi /dt, t is the time variable,
and f1 to fn are continuous functions of their arguments.1
It is common practice to write this model in a more compact form by using vector notation.
Define the vectors
     
x1 ẋ1 f1 (x1 , x2 , . . . , xn , u)
x2  ẋ2   f2 (x1 , x2 , . . . , xn , u)
     
x =  ..  , ẋ =  ..  , f (x, u) =  .. ,
. .  . 
xn ẋn fn (x1 , x2 , . . . , xn , u)
1 Innonlinear analysis it is usual to require the functions f1 to fn to have stronger properties than continuity.
For example, it is common to require their partial derivatives with respect to their arguments to be continuous.
See, for example, [21].
8-1. STATE-SPACE MODELS 319

and rewrite the state-space model as the vector equation

ẋ = f (x, u) . (8.1)

Equation (8.1) is called the state equation. Together, with the state equation, there is usually
an output equation that defines the output variable y as a function of the state and input
variables:
y = h(x, u) , (8.2)
where h is a continuous function of its arguments. Together, Eqs. (8.1) and (8.2) constitute the
state-space model of the system.
For linear systems, the functions f and h depend linearly on their arguments. This allows
us to write the right-hand side of Eqs. (8.1) and (8.2) as products of matrices and vectors. We
illustrate this for the case n = 3. Let

f1 (x, u) = a11 x1 + a12 x2 + a13 x3 + b1 u ,


f2 (x, u) = a21 x1 + a22 x2 + a23 x3 + b2 u , (8.3)
f3 (x, u) = a31 x1 + a32 x2 + a33 x3 + b3 u ,

where ai j and bi are constant coefficients. Then


      
ẋ1 a11 a12 a13 x1 b1
ẋ2  = a21 a22 a23  x2  + b2  u . (8.4)
ẋ3 a31 a32 a33 x3 b3
| {z } | {z } | {z } | {z }
ẋ A x B

Performing the multiplications Ax and Bu and the addition of these two vectors in Eq. (8.4)
produces Eq. (8.3). The matrices A and B are constructed from the coefficients of Eq. (8.3).
The first row of A and B is taken from the coefficients of f1 , the second row from the
coefficients of f2 , and so on. The coefficient of x1 in f1 is the first element of the first row
of A, the coefficient of x2 is the second element of the first row of A, the coefficient of x3 is the
third element of the first row of A, and the coefficient of u is the first row of B. If any of the
variables is missing from the expression of f1 , its coefficient is set to zero. With the definition
of matrices A and B, Eq. (8.1) can be written as

ẋ = Ax + Bu .

Similarly, for the output equation, if

h = c1 x1 + c2 x2 + c3 x3 + du ,

the equation can be written as


 
y = c1 c2 c3 x + |{z}
d u.
| {z }
C D
320 CHAPTER 8. STATE-SPACE METHODS

In summary, the state-space model for linear systems takes the form
ẋ = Ax + Bu , (8.5a)
y = Cx + Du . (8.5b)
For a single-input–single-output system of order n, the dimensions of the matrices A, B, C and
D are n × n, n × 1, 1 × n, and 1 × 1, respectively.2
State-space models can be obtained from transfer functions, as we shall see in Section 8-6,
or they can be written directly from the physical laws that govern the system. In the latter
approach, the first step for finding a state-space model is to choose the state variables of
the system. For different physical systems there are common choices of state variables. For
electric circuits, the number of state variables is the number of the energy-storing elements:
the capacitors and inductors.3 A typical choice of state variables is the voltage across the
capacitor and the current through the inductor. This choice is convenient because the terminal
relations for the capacitor and inductor are
dvC diL
iC = C and vL = L .
dt dt
Choosing the state variable as xi = vC , the derivative ẋi = iC /C, and iC can be obtained from
the application of Kirchoff’s voltage or current laws. Similarly, for the inductor, taking xi = iL ,
ẋi = vL /L.
For mechanical systems, the equations of motion are obtained by application of Newton’s
second law to each mass or rotating mass. For translational motion, the equation takes the
form
M ÿ = net force.
Setting the state variables as x1 = y and x2 = ẏ, the state equations become readily available
as
net force
ẋ1 = x2 , ẋ2 = .
M
For rotational motion, the equation takes the form
J θ̈ = net torque.
Setting x1 = θ and x2 = θ̇ results in
net torque
ẋ1 = x2 , ẋ2 = .
J
For mechanical systems, the number of state variables is twice the number of degrees of
freedom; that is, twice the number of masses in translational motion or twice the number of
rotating masses in rotational motion.
2 State-space models can be easily written for multi-input–multi-output systems. When there are m inputs and q
outputs, u and y are vectors of dimensions m and q, respectively, and the matrices B, C, and D have the dimensions
n × m, q × n, and q × m. Our discussion in this chapter is limited to single-input–single-output systems.
3 There are special cases where this rule does not apply. For example, if three capacitors are connected in a
delta connection, the voltage of one capacitor is dependent on the voltages of the other two capacitors. In this
case, the delta connection can be represented by only two state variables.
8-1. STATE-SPACE MODELS 321

8-1.1 Examples

Example 8-1: Series RLC Circuit

Consider the electric circuit of Example 2-4. The circuit is shown again in Fig. 8-1. Find a
state-space model with input v and output i.

+ vR (t) − + vL (t) −
i(t) L
R
+
+
v(t) _ C vC (t)

Figure 8-1: Example 8-1.

Solution: The state variables are the current i through the inductor and the voltage vC across
the capacitor; that is,
x1 = i , x2 = vC .
The input and output are
u=v, y=i.
Application of Kirchoff’s voltage law yields
v = Ri + vL + vC .
The state equations are given by
di 1 1 R 1 1
ẋ1 = = vL = (−Ri − vC + v) = − x1 − x2 + u (8.6a)
dt L L L L L
and
dvC 1 1
ẋ2 = = i = x1 . (8.6b)
dt C C
The output equation is given by y = i = x1 . The quadruple {A, B,C, D} that defines the state-
space model is given by
" R # "1#
− L − L1  
A= 1 , B= L , C= 1 0 , D = 0.
C 0 0
322 CHAPTER 8. STATE-SPACE METHODS

Example 8-2: Automobile Suspension

Consider the automobile suspension system of Example 2-11. Find a state-space model with
input s and output ys . The free-body diagram is shown again in Fig. 8-2 with the variables
written in the time domain.

Ms
ys

C s ( ẏ s − ẏ us ) k s ( y s − y us )

M us
y us

k t (y us − s)

Figure 8-2: Free-body diagram of Example 8-2.

Solution: Application of Newton’s second law to the two masses results in

Ms ÿs = −ks (ys − yus ) −Cs (ẏs − ẏus ) (8.7a)


and
Mus ÿus = ks (ys − yus ) +Cs (ẏs − ẏus ) − kt (yus − S) . (8.7b)

Assign the state variables as follows:

x1 = ys , x2 = ẏs , x3 = yus , x4 = ẏus .

The input and output variables are

u = S, y = ys .

The state equations are

ẋ1 = ẏs = x2 ,
8-1. STATE-SPACE MODELS 323

1
ẋ2 = ÿs = [−ks (ys − yus ) −Cs (ẏs − ẏus )]
Ms
ks Cs
= − (x1 − x3 ) − (x2 − x4 ) ,
Ms Ms
ẋ3 = ẏus = x4 ,
and
1
ẋ4 = ÿus = [ks (ys − yus ) +Cs (ẏs − ẏus ) − kt (yus − s)]
Mus
ks Cs kt
= (x1 − x3 ) + (x2 − x4 ) − (x3 − u) .
Mus Mus Mus
The output equation is
y = ys = x1 .
The matrices A, B, C, D are given by
   
0 1 0 0 0
−ks /Ms −Cs /Ms k /M Cs /Ms   0 
A=  0
s s ,
 B=
 0 ,

0 0 1
ks /Mus Cs /Mus −(ks + kt )/Mus −Cs /Mus kt /Mus
 
C= 1 0 0 0 , D = 0.

Example 8-3: dc Motor

Find a state-space model of the armature-controlled dc motor of Section 2-2.3 with input va
and output ω m . Figure 2-29 is reproduced here as Fig. 8-3.

i a (t) Ra La

+ Fixed field
+
Armature
va (t) vb (t)
circuit Tm (t) θm (t)
− Tm (t)
θm (t) Jm

bm

Electrical component Mechanical component

Figure 8-3: Armature-controlled dc motor.


324 CHAPTER 8. STATE-SPACE METHODS

Solution: Application of Kirchoff’s voltage law to the armature circuit yields

dia
va = Ra ia + La + Kb ω m . (8.8a)
dt
Application of Newton’s second law to the mechanical part yields

Jm ω̇ m = −bm ω m + Ktia . (8.8b)

Assign the state variables as follows:

x1 = θm , x2 = θ̇m = ω m , x3 = ia .

The input and output variables are

u = va , y = ωm .

The state equations are

ẋ1 = θ̇m = x2 ,
1 bm Kt
ẋ2 = ω̇ m = [−bm ω m + Kt ia ] = − x2 + x3 ,
Jm Jm Jm
and
dia 1 Kb Ra 1
ẋ3 = = [va − Raia − Kb ω m ] = − x2 − x3 + u.
dt La La La La

The output equation is


y = ω m = x2 .
The quadruple {A, B,C, D} that defines the state-space model is given by
   
0 1 0 0  
A = 0 −bm /Jm Kt /Jm  , B =  0 , C= 0 1 0 , D = 0.
0 −Kb /La −Ra /La 1/La

8-1.2 Linearization
Nonlinear systems can be modeled by linear models in the neighborhood of an equilibrium
point. Linearization of a nonlinear state-space model uses Jacobian matrices, which are
defined as follows. For f (x, u), the Jacobian matrix [∂ f /∂ x] is defined by
 
∂ f1 /∂ x1 ∂ f1 /∂ x2 ··· ∂ f1 /∂ xn
 ∂ f2 /∂ xn 
∂f ∂ f2 /∂ x1 ∂ f2 /∂ x2 ··· 
(x, u) =  .. .. , (8.9)
∂x  . . 
∂ fn /∂ x1 ∂ fn /∂ x2 ··· ∂ fn /∂ xn
8-1. STATE-SPACE MODELS 325

and the Jacobian matrix [∂ f /∂ u](x, u) is defined by


 
∂ f1 /∂ u
∂f ∂ f2 /∂ u
 
(x, u) =  ..  .
∂u  . 
∂ fn /∂ u

For the function h(x, u), the Jacobian matrix [∂ h/∂ x] is defined by
 
∂h ∂h ∂h ∂h
(x, u) = ··· .
∂x ∂ x1 ∂ x2 ∂ xn

Suppose that for a constant input u⋆ , the system ẋ = f (x, u) has an equilibrium point at x⋆ ;
that is,
0 = f (x⋆ , u⋆ ) .
Then, the system can be approximated in the neighborhood of the equilibrium point by the
linear state-space model

ẋδ = Axδ + Buδ , (8.10a)


yδ = Cxδ + Dyδ , (8.10b)

where xδ = x− x⋆ , uδ = u− u⋆ , and yδ = y− h(x⋆ , u⋆ ) are perturbations from their equilibrium


values, and the matrices A, B, C, D are given by

∂f ⋆ ⋆
A= (x , u ), (8.11a)
∂x
∂f ⋆ ⋆
B= (x , u ), (8.11b)
∂u
∂h ⋆ ⋆
C= (x , u ), (8.11c)
∂x
∂h ⋆ ⋆
D= (x , u ). (8.11d)
∂u

Example 8-4: Linearization of the Pendulum Equation

Consider the pendulum equation from Example 2-18, as related to Fig. 8-4, and suppose that
a torque T is applied at the pivot point in the direction of θ . By taking moments about the
pivot point, the equation of motion is given by

ml 2 θ̈ = −mgl sin θ − kl 2 θ̇ + T . (8.12)


326 CHAPTER 8. STATE-SPACE METHODS

mg

Figure 8-4: Pendulum.

Setting x1 = θ and x2 = θ̇ as the state variables, u = T as the input, and y = θ as the output,
the state-space model is given by

 
x2
ẋ = f (x, u) =  g k 1 , y = h(x) = x1 .
− sin x1 − x2 + 2 u
l m ml

The Jacobian matrices are

" # " #
∂f 0 1 ∂f 0 ∂h   ∂h
= g k , = 1 , = 1 0 , = 0.
∂x − cos x1 − ∂u ∂x ∂u
l m ml 2

When u =0, thesystem


  at sin x1 = 0 and x2 = 0. Consider the two equilibrium
has equilibrium
0 π 0
points and . Linearization at results in a linear state-space model with
0 0 0

" # " #
0 1 0  
A= g k , B= 1 , C= 1 0 , D = 0,
− −
l m ml 2

 
π
while linearization at results in a linear state-space model with
0

" # " #
0 1 0  
A= g k , B= 1 , C= 1 0 , D = 0.

l m ml 2
8-2. SOLUTION OF THE STATE EQUATION 327

Example 8-5: Linearization of a dc-to-dc Power Converter

A dc-to-dc power converter can be modeled by the nonlinear state-space model4


 
1
 − x2 + (x2 + k)u 
ẋ =  1 k , y = x2 ,
2
x1 − α x2 − (x1 + α k )u
k
where α and k are positive constants.
• Show that the system has an equilibrium point at x = 0 when u = 0.
• Linearize the system at the equilibrium point.

Solution: Setting u = 0 and ẋ = 0 yields


   
− 1k x2 0
1 = x1 = 0 and x2 = 0,
k x1 − α x2
0
   
∂f 0  − 1k + u 0 − 1k
= 1 = 1 ,
∂ x x=0, u=0 k −u −α x=0, u=0 k −α
   
∂f x2 + k k
= = ,
∂ u x=0, u=0 −(x1 + α k2 ) x=0, u=0 −α k 2
∂h   ∂h
= 0 1 , = 0.
∂x ∂u
The linearized model is given by
   
0 − 1k k  
A= 1 , B= , C= 0 1 , D = 0.
k −α −α k 2

8-2 Solution of the State Equation


Consider the state equation
ẋ(t) = Ax(t) + Bu(t) (8.13)
with given input u(t) and given initial state x(0) = x0 . We use the Laplace transform method
to solve for x(t). This requires us to find X (s) and then to take the inverse Laplace transform
x(t) = L−1 {X (s)}. Taking the Laplace transform of a vector is realized by taking the Laplace
transform of each element of the vector. Properties of the Laplace transform for scalar
variables extend to the Laplace transform of vectors.
Taking the Laplace transform of Eq. (8.13) yields

sX (s) − x(0) = AX (s) + B U (s) ,


4 See Appendix A.5 of [22].
328 CHAPTER 8. STATE-SPACE METHODS

sIX (s) − AX (s) = x0 + B U (s) ,


(sI − A)X (s) = x0 + B U (s) . (8.14)

By multiplying each term, from the left-hand side, by the inverse of (sI − A), we have:

X (s) = (sI − A)−1 x0 + (sI − A)−1 B U (s) ,

whose time-domain equivalent is


 
x(t) = L−1 {X (s)} = L−1 (sI − A)−1 x0 + L−1 (sI − A)−1 B U (s) .

Define the state transition matrix Φ(t) by



Φ(t) = L−1 (sI − A)−1 .

In this definition, the matrix (sI − A)−1 is calculated first, then the inverse Laplace transform
is taken for each element of the matrix
 
L−1 (sI − A)−1 x0 = L−1 (sI − A)−1 x0 = Φ(t) x0 ,
Z t

L−1 (sI − A)−1 B U (s) = Φ(t − τ ) B u(τ ) d τ .
0

Hence,
Z t
x(t) = Φ(t) x0 + Φ(t − τ ) B u(τ ) d τ . (8.15)
0

Substitution of x(t) in the output equation

y(t) = Cx(t) + Du(t)

yields
Z t
y(t) = CΦ(t) x0 + CΦ(t − τ ) B u(τ ) d τ + Du(t) . (8.16)
0

Example 8-6: Computation of the State Transition Matrix

Compute Φ(t) for


 
−1 1
A= .
− 21 −2
8-2. SOLUTION OF THE STATE EQUATION 329

Solution:
 −1  
−1 (s + 1) −1 1 (s + 2) 1
(sI − A) = 1 =
2 (s + 2) 1
(s + 1)(s + 2) + 2 − 21 (s + 1)
"  #
1 s + 23 + 21 2 × 12
= 2  ,
s + 23 + 14 − 21 s + 32 − 21

Hence, "    #
t t
−(3/2)t
cos 2 + sin 2 2 sin 2t
Φ(t) = e    .
− sin 2t cos 2t − sin t
2

Example 8-7: Computation of the State Transition Matrix

Compute Φ(t) for  


−3 1
A= .
−2 0

Solution:
 −1  
(s + 3) −1 1 s 1
(sI − A)−1 = = 2
2 s s + 3s + 2 −2 (s + 3)
 
1 s 1 1 1
= = K1 + K2 ,
(s + 1)(s + 2) −2 (s + 3) s+1 s+2

where
 
−1 1
K1 = (s + 1)(sI − A)−1 = ,
s=−1 −2 2
 
2 −1
K2 = (s + 2)(sI − A)−1 = .
s=−2 2 −1

Therefore,
   
−1 1 −1 1 1 2 −1
(sI − A) = + ,
s + 1 −2 2 s + 2 2 −1
   
−t −1 1 −2t 2 −1
Φ(t) = e +e
−2 2 2 −1
  
−e−t + 2e−2t  e−t − e−2t 
= .
−2e−t + 2e−2t 2e−t − e−2t
330 CHAPTER 8. STATE-SPACE METHODS

Example 8-8: Solution of the State Equation

Compute y(t) for


    

−3 1 0 1
ẋ(t) = x(t) + u(t) , x(0) = ,
−2 0 1 −1
 
y(t) = 1 0 x(t) ,

when u(t) = et .
Solution: Φ(t) was computed in the previous example. Hence,
Z t
y(t) = Cx(t) = CΦ(t) x(0) + CΦ(t − τ )B u(τ ) d τ ,
0
"   # 
 −t
 −e + 2e −2t e−t − e−2t 1
CΦ(t) x(0) = 1 0  
−2e−t + 2e−2t 2e−t − e−2t −1
 
 −t −2t
 −t −2t
 1
= −e + 2e e −e
−1
= −2e−t + 3e−2t ,
"   # 
  −e−t + 2e−2t e−t − e−2t
0
CΦ(t) B = 1 0  
−2e−t + 2e−2t −t
2e − e −2t 1
 
   0
= −e−t + 2e−2t −t
e −e−2t = e−t − e−2t ,
1
Z t Z t
CΦ(t − τ ) B u(τ ) d τ = [e−(t−τ ) − e−2(t−τ )]eτ d τ
0 0
Z t
= [e−t+2τ − e−2t+3τ ] d τ
0
1 t
= 2 e−t+2τ − 13 e−2t+3τ 0
= 1
6 et − 21 e−t + 31 e−2t .

Hence,
 
y(t) = −2e−t + 3e−2t + 1
6 et − 21 e−t + 13 e−2t = 1
6 et − 52 e−t + 10
3 e
−2t
.

8-3 Stability
For a system represented by the transfer function G(s), stability is defined as bounded-input–
bounded-output stability; that is, for every bounded input the output is bounded. For a system
represented by the state-space model

ẋ = Ax + Bu , (8.17a)
8-3. STABILITY 331

y = Cx + Du , (8.17b)

stability deals with the response to the initial state as well as the response to the input.

Definition 8.1 The system characterized by Eqs. (8.17a)–(8.17b) is stable if

(1) the solution of ẋ = Ax, with x(0) = x0 , tends to zero as t tends to infinity, and

(2) the solution of ẋ = Ax + Bu is bounded for every bounded input.

The equation y = Cx + Du states that a stable system will have a bounded output for every
bounded input.
The stability of the system given by Eqs. (8.17a)–(8.17b) is characterized by the
eigenvalues of the matrix A. The eigenvalues of a real matrix A are the roots of

det(sI − A) = 0.

An n × n matrix has n eigenvalues λ1 , λ2 , . . . λn . The eigenvalues of a real matrix can be real


or complex, but complex eigenvalues must exist in conjugate pairs (σ ± jω ).

Theorem 8.1 The system of Eqs. (8.17a)–(8.17b) is stable if and only if all eigenvalues of A
have negative real parts.

Proof: Consider first the special case when the eigenvalues of A are distinct (λi , λ j for all
i, j). It follows that

det(sI − A) = (s − λ1 )(s − λ2 ) . . . (s − λn )
and
1
(sI − A)−1 = Adjoint(sI − A) .
det(sI − A)

By partial fraction expansion,

1 1 1
(sI − A)−1 = R1 + R2 + · · · + Rn
(s − λ1 ) (s − λ2 ) (s − λn )
n
X 1
= Ri ,
(s − λi )
i=1

where the residue matrices R1 to Rn are defined by

Ri = (s − λi )(sI − A)−1 s=λi

and
n
X

Φ(t) = L−1 (sI − A)−1 = eλi t Ri . (8.18)
i
332 CHAPTER 8. STATE-SPACE METHODS

The exponential functions eλi t are called the modes of the system. Then,
Z t
x(t) = Φ(t) x(0) + Φ(t − τ ) B u(τ ) d τ
0
n
X Z tX
n
= eλi t Ri x(0) + eλi (t−τ ) Ri B u(τ ) d τ .
i=1 0 i=1

The system is stable if and only if for every eigenvalue λi ,


lim eλit = 0,
t→∞

and Z t
eλi (t−τ ) f (τ ) d τ is bounded for every bounded function f (t). For
0

λi = σi + jωi |eλi t | = |e(σi + jωi )t | = |eσi t | |e jωit | = eσit ,


lim eσit = 0 σi < 0.
t→∞
Z Z
t
λi (t−τ )
t
k σi t 
For | f (t)| ≤ k, e f (τ ) d τ ≤ eσi (t−τ ) k d τ = e −1 ,
0 0 σi
k σit 
e − 1 is bounded σi < 0.
σi
If A has multiple eigenvalues, the partial fraction expansion of (sI − A)−1 will yield terms
where the power of (s − λi ) in the denominator is higher than one. Therefore, Φ(t) takes the
more general form
X r X mi
Φ(t) = t ℓ−1 eλi t Rik , (8.19)
i=1 ℓ=1
where the integer mi depends on the multiplicity of λi , and r is the number of distinct
eigenvalues of A. A function of the form t k eσ t , with k ≥ 1, does not converge to zero as
t → ∞ if σ ≥ 0. Hence, it is necessary that all the eigenvalues of A have negative real parts.
Now we show that this condition is also sufficient. If Re[λi ] = σi < 0, there are positive
constants α and β such that |t ℓ−1 eλit | ≤ α e−β t . Although the polynomial term t ℓ−1 grows
with t, causing the product |t ℓ−1 eλi t | to grow for small t, eventually the decaying exponential
eλi t dominates. Therefore, there exist positive constants a and b such that
kΦ(t)k ≤ ae−bt .
With this bound, the argument we used for the case of distinct eigenvalues can be repeated
and this completes the proof of the theorem.

Example 8-9: Testing Stability of State-Space Models

For each of the following cases of eigenvalues of the matrix A, determine whether or not the
system is stable.
8-4. CONTROLLABILITY AND OBSERVABILITY 333

(a) −1, −2, 0

(b) −1, −2, 1

(c) −1, −2, −2

(d) −3, −2 ± j

Solution:

(a) Not stable because of the 0 eigenvalue.

(b) Not stable because of the 1 eigenvalue.

(c) Stable.

(d) Stable.

Testing stability of a state-space model requires calculation of the eigenvalues of A. This


can be done by calculating the roots of det(sI − A). In MATLAB, eigenvalues are calculated
using the command “eig”.

8-4 Controllability and Observability


Controllability and observability are properties of the state-space model, which play an
important role in the design of feedback control. We start by presenting controllability in
Section 8-4.1, followed by observability in Section 8-4.2, then we show the duality between
these two properties in Section 8-4.3.

8-4.1 Controllability
Definition 8.2 The system ẋ = Ax + Bu, or the pair (A, B), is controllable if for any initial
state x0 , there is a continuous control u(t) that steers the state of the system to any desired
final state xf over the time period [0,tf ], for some finite tf .

We start with a motivating example.

Example 8-10: Controllability of a Rocket in Vertical Motion

A rocket in vertical motion may be modeled by

ḣ = υ ,
mυ̇ = −mg + f ,
334 CHAPTER 8. STATE-SPACE METHODS

where h is the altitude, υ the velocity, m the mass, and f the thrust force. Let

x1 = h, x2 = υ , u = f /m − g

to obtain the state equation    


0 1 0
ẋ = x+ u.
0 0 1
| {z } |{z}
A B

Can we find a control u(t) over the period [0,tf ] to move the state of the system from a given
initial state x(0) = x0 to a desired final state x(tf ) = xf ?
Solution: The solution of the state equation is
Z tf
x(tf ) = Φ(tf ) x(0) + Φ(tf − τ ) B u(τ ) d τ , (8.20)
0

with
( −1 )    
−1 −1 −1 s −1 −1 1/s 1/s2 1 t
Φ(t) = L {(sI − A) } = L =L =
0 s 0 1/s 0 1
and
    
1 (tf − τ ) 1 tf 1 −τ
Φ(tf − τ ) = = = Φ(tf ) Φ(−τ ) .
0 1 0 1 0 1

We substitute Φ(tf − τ ) = Φ(tf ) Φ(−τ ) in Eq. (8.20), to obtain


Z tf
xf − Φ(tf ) x0 = Φ(tf ) Φ(−τ ) B u(τ ) d τ , (8.21)
0

where Φ(tf ) is taken outside the integral because it is not a function of τ . Let

u(t) = BT ΦT (−t) υ , (8.22)

where υ is a constant vector to be chosen. Substitution of Eq. (8.22) in Eq. (8.21) results in
Z tf
xf − Φ(tf ) x0 = Φ(tf ) Φ(−τ ) BBT ΦT (−τ ) d τ υ . (8.23)
0

Define the matrix W by


Z tf
W= Φ(−τ ) BBT ΦT (−τ ) d τ
0
Z tf  2  " #
τ −τ t 3 /3 −tf2 /2
= dτ = f 2 .
0 −τ 1 −tf /2 tf
8-4. CONTROLLABILITY AND OBSERVABILITY 335

With the definition of W , Eq. (8.23) can be rewritten as


xf − Φ(tf ) x0 = Φ(tf ) W υ . (8.24)
The matrix Φ(tf ) is nonsingular because det Φ(tf ) = 1, and the matrix W is nonsingular
because detW = tf4 /12 , 0. Hence, Eq. (8.24) has a unique solution:
υ = W −1 Φ−1 (tf )[xf − Φ(tf ) x0 ] ,
and a control that moves the state from x0 to xf is given by
u(t) = BT ΦT (−t) υ = BT ΦT (−t) W −1 Φ−1 (tf )[xf − Φ(tf ) x0 ] .

To extend the analysis of this example to the general case, we need to establish a few
properties of the transition matrix Φ.
Lemma 8.1 The transition matrix Φ(t) has the following properties:
(i) Φ(0) = I.
(ii) Φ(t) is nonsingular and its inverse is Φ(−t).
(iii) Φ(t − τ ) = Φ(t) Φ(−τ ).
Proof:
(i) The solution for ẋ = Ax with x(0) = x0 is x(t) = Φ(t) x0 . At t = 0,
x0 = Φ(0) x0 [I − Φ(0)]x0 = 0.
Because this equation holds for any x0 , it must be true that Φ(0) = I.
(ii) Starting from t = 0 and solving the equation ẋ = Ax in forward time to t, we have
x(t) = Φ(t) x0 . Starting at time t from initial state x(t) and solving the equation
backward to t = 0, we have
x(0) = Φ(−t) x(t) = Φ(−t) Φ(t)x0 [I − Φ(−t) Φ(t)]x0 = 0.
Once again, because this equation holds for any x0 , it must be true that Φ(−t) Φ(t) = I.
Hence, both matrices Φ(t) and Φ(−t) are nonsingular and Φ(−t) is the inverse of Φ(t).
(iii) Suppose the system starts at time 0 and moves to time τ and from time τ it moves
to time t. Then x(t) = Φ(t − τ ) x(τ ) = Φ(t − τ ) Φ(τ ) x0 . Alternatively, if the system
moves directly from time 0 to time t, x(t) = Φ(t) x0 . Hence,
Φ(t) x0 = Φ(t − τ ) Φ(τ ) x0 [Φ(t) − Φ(t − τ ) Φ(τ )] x0 = 0
Φ(t) = Φ(t − τ ) Φ(τ ) .
Multiplying from the right by Φ(−τ ) and using Φ(τ ) Φ(−τ ) = I, we arrive at
Φ(t − τ ) = Φ(t) Φ(−τ ) .
336 CHAPTER 8. STATE-SPACE METHODS

Let us now repeat the analysis of Example 8-10 for the general case. The solution of

ẋ = Ax + Bu , x(0) = x0 ,

is Z tf
x(tf ) = Φ(tf ) x0 + Φ(tf − τ ) B u(τ ) d τ .
0

If we set x(tf ) = xf and use Φ(t − τ ) = Φ(t) Φ(−τ ), then


Z tf
xf − Φ(tf ) x0 = Φ(tf ) Φ(−τ ) B u(τ ) d τ .
0

Substitute
u(t) = BT ΦT (−τ ) υ
with a constant vector υ in the preceding equation to obtain
Z tf
xf − Φ(tf ) x0 = Φ(tf ) Φ(−τ ) BBT ΦT (−τ ) d τ υ .
0

Define the matrix W by5


Z tf
W= Φ(−τ ) BBT ΦT (−τ ) d τ .
0

Then,
xf − Φ(tf ) x0 = Φ(tf ) W υ .
We already know that Φ(tf ) is nonsingular. The equation will have a unique solution for υ if
W is nonsingular. The next theorem defines the necessary and sufficient condition for this to
hold.6

Theorem 8.2 The n-dimensional system ẋ = Ax + Bu is controllable if and only if rank


CM = n, where CM is the controllability matrix, defined by
 
CM = B AB A2 B ··· An−1 B . (8.25)

Investigating the controllability of a pair (A, B) is done by forming the controllability


matrix CM and testing its rank. This is performed in MATLAB using the commands “ctrb”
and “rank”:
CM = ctrb(A, B); rank(CM);
5W
is called the “controllability Gramian.”
6 The
proof of the theorem can be found in any graduate-level textbook on linear systems using state-space
models; see, for example, [2] or [32].
8-4. CONTROLLABILITY AND OBSERVABILITY 337

Example 8-11: Testing Controllability of a Pair (A, B)

Investigate controllability of
  
0 1 0 0
A= 0 0 1 , B =  0 .
−1 −2 −3 1

Solution:  
  0 0 1
CM = B AB A2 B =  0 1 −3  ,
1 −3 7
rank CM = 3 (A, B) is controllable.

Example 8-12: Controllability When A is Diagonal

Investigate controllability of
   
λ1 0 0 b1
A= 0 λ2 0 , B =  b2  .
0 0 λ3 b3

Solution:  
b1 λ1 b1 λ12 b1
   
CM = B AB A2 B =  b2 λ2 b2 λ22 b2  .
b3 λ3 b3 λ32 b3
(a) If bi = 0 for some i, then rank CM < 3, because for bi = 0, the ith row is zero.
(b) If λi = λ j for some i , j, then rank CM < 3, because the ith and jth rows will be the
same.
Now we show sufficiency of bi , 0 and λi , λ j for CM to have rank 3. The rank of a
matrix does not change after performing elementary row or column operations. We perform
the following elementary row operations to simplify the structure of CM :
(1) Add to the second row the first row multiplied by −b2 /b1 and add to the third row the
first row multiplied by −b3 /b1 :
 
b1 λ1 b1 λ12 b1
 
 0 (λ2 − λ1 )b2 (λ22 − λ12 )b2  .
0 (λ3 − λ1 )b3 (λ32 − λ12 )b3
338 CHAPTER 8. STATE-SPACE METHODS

(2) Add to the third row the second row multiplied by −(λ3 − λ1 )b3 /[(λ2 − λ1 )b2 ]:
 
b1 λ1 b1 λ12 b1
 
 0 (λ2 − λ1 )b2 (λ22 − λ12 )b2  ,
0 0 ∗

with ∗ given by

(λ3 − λ1 )
∗ = (λ32 − λ12 )b3 − (λ22 − λ12 ) b3
(λ2 − λ1 )
= (λ3 − λ1 )(λ3 − λ2 )b3 .

Hence,  
b1 λ1 b1 λ12 b1
 
CM  0 (λ2 − λ1 )b2 (λ22 − λ12 )b2 .
0 0 (λ3 − λ1 )(λ3 − λ2 )b3

The conditions bi , 0 and λi , λ j imply that the rank is 3. Hence, the pair (A, B) is controllable
if and only if bi , 0 for all i and λi , λ j for all i , j.

8-4.2 Observability
Definition 8.3 The system
ẋ = Ax, y = Cx
or the pair (A,C), is observable if any initial state x(0) = x0 can be uniquely determined from
y(t) over the period [0,tf ], for some finite tf .

We start with a motivating example.

Example 8-13: Observability of a Rocket in Vertical Motion

Consider the rocket system from Example 8-10. Suppose we only measure y = x1 . When
u = 0, the system is given by
 
0 1  
ẋ = x, y= 1 0 x.
0 0 | {z }
| {z } C
A

Can we uniquely determine x(0) = x0 from y(t) over the time period [0,tf ]?
Solution: The output is

y(t) = Cx(t) = CΦ(t) x(0) = CΦ(t) x0 ,


8-4. CONTROLLABILITY AND OBSERVABILITY 339

and the matrix Φ(t) was calculated in Example 8-10. Multiply both sides from the left by
ΦT (t) CT and integrate from 0 to tf :
Z tf Z tf Z tf
ΦT (t) CT y(t) dt = ΦT (t) CTC Φ(t) x0 dt = ΦT (t) CTC Φ(t) dt x0 .
0 0 0

Define
Z tf
M= ΦT (t) CTC Φ(t) dt
0
Z tf     
1 0 1   1 t
= 1 0 dt
0 t 1 0 0 1
" #
Z tf  
tf tf2 /2
1 t
= dt = 2 .
0 t t2 tf /2 tf3 /3

The matrix M is nonsingular because det M = tf4 /12. Hence, the equation
Z tf
ΦT (t) CT y(t) dt = Mx0
0

has a unique solution Z tf


−1
x0 = M ΦT (t) CT y(t) dt .
0

Consider now the general case


ẋ = Ax , y = Cx ,
with x(0) = x0 ,
y(t) = C x(t) = C Φ(t) x(0) = C Φ(t) x0 .
Multiply both sides from the left by ΦT (t) CT and integrate from 0 to tf :
Z tf Z tf Z tf
T T T T
Φ (t) C y(t) dt = Φ (t) C C Φ(t) x0 dt = ΦT (t) CTC Φ(t) dt x0 .
0 0 0

Define the matrix M by7 Z tf


M= ΦT (t) CTC Φ(t) dt .
0
The equation Z tf
ΦT (t) CT y(t) dt = Mx0
0
has a unique solution for x0 if and only if M is nonsingular. The next theorem defines the
necessary and sufficient condition for this to hold.8
7M is called the “observability Gramian.”
8 The proof of the theorem can be found in any graduate-level textbook on linear systems using state-space
models; see, for example, [2] or [32].
340 CHAPTER 8. STATE-SPACE METHODS

Theorem 8.3 The n-dimensional system

ẋ = Ax, y = Cx

or the pair (A,C), is observable if and only if rank OM = n, where OM is the observability
matrix, defined by  
C
 CA 
 
 2 
OM =  CA  . (8.26)
 .. 
 . 
CAn−1

Investigating the observability of a pair (A,C) is conducted by forming the observability


matrix OM and testing its rank. This is performed in MATLAB using the commands “obsv”
and “rank”:
OM = obsv(A,C); rank(OM);

8-4.3 Duality
Duality exists between the controllability and observability properties. The duality follows
from the structure of the controllability and observability matrices and the fact that the
transpose of a matrix has the same rank as the matrix itself:
 
(A, B) controllable rank B AB A2 B · · · An−1 B = n
 
BT
 BT AT 
 
 BT (AT )2 
rank  =n
 .. 
 . 
T
B (A )T n−1

AT , BT observable.

Similarly, observability of (A,C) is equivalent to controllability of AT ,CT .
The duality property is useful in designing algorithms that build on the controllability
and observability properties. Suppose you want to write numerical algorithms to test
controllability and observability. Because of duality, you only need to write an algorithm
to test controllability of the pair (A, B). If you want to test observability of the pair (A,C),
feed the pair (AT ,CT ) to the controllability algorithm. We shall see other uses of duality in
Sections 8-6 and 8-7.

8-5 Transfer Function of a State-Space Model


Our goal here is to find the transfer function of a system represented by the state-space model

ẋ = Ax + Bu , y = Cx + Du .
8-5. TRANSFER FUNCTION OF A STATE-SPACE MODEL 341

Take the Laplace transform of the state equation:


sX (s) − x(0) = AX (s) + BU (s) .
Transfer functions are defined for zero initial conditions; so, set x(0) = 0, which leads to
(sI − A) X (s) = BU (s) .
Multiply from the left by (sI − A)−1 to obtain
X (s) = (sI − A)−1 BU (s) .
Take the Laplace transform of the output equation and substitute for X (s) from the preceding
equation. The result is
Y (s) = CX (s) + DU (s) = C(sI − A)−1 BU (s) + DU (s) = [C(sI − A)−1 B + D] U (s) .
Hence,
G(s) = C(sI − A)−1 B + D . (8.27)

Example 8-14: Computing the Transfer Function of a State-Space Model

Find the transfer function of the system


   
−1 −2 1  
ẋ = x+ u, y= 0 1 x.
−1 −2 −1

Solution:
 
(s + 1) 2
sI − A = ,
1 (s + 2)
 
−1 1 (s + 2) −2
(sI − A) = , ,
(s + 1)(s + 2) − 2 −1 (s + 1)
G(s) = C(sI − A)−1 B
  
  1 (s + 2) −2 1
= 0 1
s(s + 3) −1 (s + 1) −1
−(s + 2)
= .
s(s + 3)

Example 8-15: Series RLC Circuit

Example 8-1 derives a state-space model of the electric circuit of Fig. 8-1. Calculate the
342 CHAPTER 8. STATE-SPACE METHODS

transfer function from the state-space model and compare it with the transfer function derived
in Example 2-4.
Solution:
"  # " #
1 −1
s + RL 1 s − L1
(sI − A)−1 = L
= 1
R
  ,
− C1 s s s + L + CL 1
C s + RL
" #" #
  1 s − L1 1
G(s) = C(sI − A)−1 B = 1 0  1  L
s s + RL + CL 1
C s + RL 0
1
L s
= R 1
.
s2 + L s + CL

G(s) is the same as the one derived in Example 2-4.

Example 8-16: Automobile Suspension

Example 8-2 derives a state-space model of the automobile suspension system. Calculate the
transfer function from the state-space model and compare it with the transfer function derived
in Example 2-11.
Solution:
 
s −1 0 0
 
 ks /Ms (s +Cs /Ms ) −ks /Ms −Cs /Ms 
sI − A = 

,

 0 0 s −1 
−ks /Mus −Cs /Mus (ks + kt )/Mus (s +Cs /Mus )

  
∗ ∗ ∗ Φ14 (s) 0
  ∗ ∗ ∗ ∗   
G(s) = C(sI − A)−1 B = 1 0 0 0    0  = kt Φ14 (s) .
∗ ∗ ∗ ∗   0  Mus
∗ ∗ ∗ ∗ kt /Mus

The only element of (sI − A)−1 that is used in calculating G(s) is the (1,4) element Φ14 . All
other elements are denoted by ∗. Using the rules of calculating the inverse of a matrix, we
have
 
−1 0 0
−1   (Cs /Ms )s + ks /Ms
Φ14 (s) = det (s +Cs /Ms ) −ks /Ms −Cs /Ms  = ,
det(sI − A) det(sI − A)
0 s −1
8-5. TRANSFER FUNCTION OF A STATE-SPACE MODEL 343

where
 
(s +Cs /Ms ) −ks /Ms −Cs /Ms
 
det(sI − A) = s det  0 s −1 
−Cs /Mus (ks + kt )/Mus
(s +Cs /Mus )
 
ks /Ms −ks /Ms −Cs /Ms
 
+ det  0 s −1 
−ks /Mus (ks + kt )/Mus (s +Cs /Mus )
      
Cs Cs (ks + kt ) Cs ks sCs
=s s+ s s+ + − +
Ms Mus Mus Mus Ms Ms
      
ks Cs (ks + kt ) ks ks sCs
+ s s+ + − +
Ms Mus Mus Mus Ms Ms
     
4 Cs Cs 3 (ks + kt ) ks 2 Cs kt ks kt
=s + + s + + s + s+ .
Ms Mus Mus Ms Ms Mus Ms Mus
It can be verified that
1
det(sI − A) = ∆(s) ,
Ms Mus
where
∆(s) = [Ms s2 +Cs s + ks ][Mus s2 +Cs s + (ks + kt )] − (Cs s + ks )2 .
Thus,
 
kt Cs ks
s+
kt M Ms Ms kt (Cs s + ks ) kt (Cs s + ks )
G(s) = Φ14 (s) = us = = .
Mus det(sI − A) Ms Mus det(sI − A) ∆(s)
This is the same expression that is derived in Example 2-11.

Example 8-17: dc Motor

Example 8-3 derives a state-space model of an armature-controlled dc motor. Calculate the


transfer function from the state-space model and compare with the transfer function derived
in Section 2-2.3.
Solution:  
s −1 0
 
sI − A = 0 (s + bm /Jm ) −Kt /Jm 
0 Kb /La (s + Ra/La )
and   
  ∗ ∗ ∗ 0
Φ23 (s)
G(s) = C(sI − A)−1 B = 0 1 0 ∗ ∗ Φ23 (s)  0  = .
∗ ∗ ∗ 1/La La
344 CHAPTER 8. STATE-SPACE METHODS

The only element of (sI − A)−1 that is used in the calculation of G(s) is the (2,3) element Φ23 :

s(Kt /Jm )
Φ23 (s) = ,
det(sI − A)

where    
bm Ra Kb Kt
det(sI − A) = s s+ s+ + .
Jm La La Jm
Thus,
Kt /(Jm La ) Kt
G(s) = = .
(s + bm /Jm ) (s + Ra /La ) + Kb Kt /(La Jm ) (Jm s + bm )(La s + Ra) + Kb Kt

This is the same expression that is derived in Section 2-2.3.

8-6 State-Space Model of a Transfer Function


Given a transfer function G(s), find a state-space model {A, B,C, D} such that

G(s) = C(sI − A)−1 B + D .

The state model is not unique. There are many, actually infinitely many, state-space models
that have the same transfer function G(s). We shall present three of them: the controllable
canonical form, the observable canonical form, and the parallel realization. In all three cases
we will deal with strictly proper transfer functions; that is, G(∞) = 0. In this case, D = 0
because, from the expression of G(s), G(∞) = D. The case G(∞) , 0 is handled as follows:
First, we set D = G(∞), then we subtract G(∞) from G(s) and proceed to find a state-space
model {A, B,C} of the strictly proper transfer function

G(s) − G(∞) .

8-6.1 Controllable Canonical Form


We present the form for the case n = 3. The extension to n > 3 will be straightforward once
we see the structure of the matrices for n = 3. Consider the transfer function
c2 s2 + c1 s + c0 Y (s)
G(s) = = . (8.28)
s + a2 s2 + a1 s + a0
3 U (s)

Represent G(s) as a cascade connection of two transfer functions, as shown in Fig. 8-5. The
equations of these transfer functions are
1
Z(s) = U (s) , (8.29)
s3 + a2 s2 + a1 s + a0
and
Y (s) = c0 Z(s) + c1 s Z(s) + c2 s2 Z(s) . (8.30)
8-6. STATE-SPACE MODEL OF A TRANSFER FUNCTION 345

U(s) 1 Z (s) Y (s)


s3+ a2 s2+ a1 s+ a0 c2 s 2 + c1 s + c0

Figure 8-5: Cascade representation of G(s).

Multiplying Eq. (8.29) by (s3 + a2 s2 + a1 s + a0 ) yields

(s3 + a2 s2 + a1 s + a0 ) Z(s) = U (s) ,

which can be rearranged as

s3 Z(s) = −a0 Z(s) − a1 s Z(s) − a2 s2 Z(s) +U (s) . (8.31)

This equation can be realized by the block diagram shown in Fig. 8-6. Noting that the transfer
function of the integrator is 1/s, we see that with Z as the output of the first integrator from the
right, the input to that integrator is sZ, the input to the second integrator is s2 Z, and the input to
the third integrator is s3 Z. Hence, Eq. (8.31) is realized by the connections shown in Fig. 8-6.
Equation (8.30) shows the output Y as the sum of c0 Z, c1 sZ, and c2 s2 Z. The signals Z, sZ, and
s2 Z are the outputs of the three integrators. Upon multiplying the output of each integrator
by the corresponding coefficient and then adding the three signals together, we obtain Y , as
shown in Fig. 8-6.

c2
c1
U Z Y
∫ ∫ ∫ c0

− a2
− a1

− a0

Figure 8-6: Realization of G(s).

To derive a state-space model, set the state variables as the outputs of the three integrators;
that is,

x1 (t) = z(t), x2 (t) = ż(t), x3 (t) = z̈(t) ,


ẋ1 = x2 ,
346 CHAPTER 8. STATE-SPACE METHODS

ẋ2 = x3 ,
ẋ3 = −a0 x1 − a1 x2 − a2 x3 + u ,
and
y = c0 x1 + c1 x2 + c2 x3 .

From these equations, we write the matrices A, B, and C:


   
0 1 0 0  
A= 0 0 1 , B = 0 , C = c0 c1 c2 .
−a0 −a1 −a2 1

These matrices have a certain pattern that we should note. The transfer function G(s) is
third-order. The dimension of the state-space model is 3. The last row of A is taken from
the coefficients of the denominator polynomial of G(s), starting from the absolute term and
reversing the signs of the coefficients. The other two rows are zeros everywhere except for
ones over the diagonal. The matrix B has 1 in the last row and zeros in the other two rows.
The matrix C comes from the coefficients of the numerator polynomial of G(s), starting from
the absolute term. This pattern is repeated for higher-order transfer functions. For example,
for
c3 s3 + c2 s2 + c1 s + c0
G(s) = 4 .
s + a3 s3 + a2 s2 + a1 s + a0
The A, B, C matrices are
   
0 1 0 0 0
 0 0 1 0  0  
A=  0
, B= 
0 , C = c0 c1 c2 c3 .
0 0 1 
−a0 −a1 −a2 −a3 1

Why is the name “controllable canonical form” associated with this model? To answer
this question, let us calculate the controllability matrix. We do it for the case n = 3:
 
  0 0 1
CM = B AB A2 B = 0 1 −a2  .
1 −a2 (−a1 + a22 )

The rank of this matrix is 3 irrespective of the coefficients of the transfer function. Hence, the
state-space model is always controllable.

Example 8-18: Controllable-Canonical-Form Realization

Find a controllable-canonical-form realization of the transfer function


2s2 + 1
G(s) = .
s3 + 3s2 − s + 1
8-6. STATE-SPACE MODEL OF A TRANSFER FUNCTION 347

Solution:
   
0 1 0 0  
A= 0 0 1 , B = 0 , C= 1 0 2 , D=0.
−1 1 −3 1

Example 8-19: Controllable-Canonical-Form Realization When G(∞) , 0

Find a controllable-canonical-form realization of the transfer function

2s3 + 2s2 + 1
G(s) = .
s3 + 3s2 − s + 1

Solution: The transfer function is not strictly proper because G(∞) = 2. So

D = G(∞) = 2,

and our modified function is

2s3 + 2s2 + 1 − 2[s3 + 3s2 − s + 1] −4s2 + 2s − 1


G(s) − G(∞) = = .
s3 + 3s2 − s + 1 s3 + 3s2 − s + 1
Hence,
   
0 1 0 0  
A= 0 0 1 , B = 0 , C = −1 2 −4 , D = 2.
−1 1 −3 1

8-6.2 Observable Canonical Form


The state-space model in this case should be observable irrespective of the coefficients of the
transfer function. We use duality to derive such a state-space model. Consider the transfer
function
c2 s2 + c1 s + c0
G(s) = 3 ,
s + a2 s2 + a1 s + a0
and let {Ac , Bc ,Cc } be a controllable-canonical-form realization:
   
0 1 0 0  
Ac =  0 0 1 , Bc = 0 , Cc = c0 c1 c2 ,
−a0 −a1 −a2 1

which leads to
G(s) = Cc (sI − Ac )−1 Bc .
348 CHAPTER 8. STATE-SPACE METHODS

Because G(s) is scalar, GT (s) = G(s). That is,

G(s) = GT (s) = [Cc (sI − Ac)−1 Bc ]T


= BTc [(sI − Ac)−1 ]TCcT
= BTc [(sI − Ac)T ]−1CcT
= BTc (sI − ATc )−1CcT
= C(sI − A)−1 B ,

where
   
0 0 −a0 c0  
A = ATc = 1 0 −a1  , B = CcT = c1  , C = BTc = 0 0 1 .
0 1 −a2 c2

By duality, the pair (A,C) is observable irrespective of the coefficients of the transfer function.
There is a pattern for the matrices A, B, C. The last column of A comes from the coefficients
of the denominator polynomial of G(s), starting from the absolute term and reversing the
signs of the coefficients. The other two columns are zeros everywhere except for ones under
the diagonal. The matrix B comes from the coefficients of the numerator polynomial of G(s),
starting from the absolute term. The matrix C has 1 in the last column and zeros in the other
two columns.

Example 8-20: Observable-Canonical-Form Realization

Find an observable-canonical-form realization of the transfer function


2s2 + 1
G(s) = .
s3 + 3s2 − s + 1

Solution:
   
0 0 −1 1  
A = 1 0 1 , B = 0 , C= 0 0 1 , D = 0.
0 1 −3 2

Example 8-21: Observable-Canonical-Form Realization

Find an observable-canonical-form realization of the transfer function


2s2 + 1
G(s) = .
s4 + s3 + 3s2 − s + 1
8-6. STATE-SPACE MODEL OF A TRANSFER FUNCTION 349

Solution:
   
0 0 0 −1 1
1 0 0 1 0  
A=
0
, B= 
2 , C= 0 0 0 1 , D = 0.
1 0 −3
0 0 1 −1 0

8-6.3 Parallel Realization


Consider the parallel connection of Fig. 8-7. Let

ẋa = A1 xa + B1 u , (8.32a)
y1 = C1 xa + D1 u , (8.32b)

be a state-space model of G1 (s) and

ẋb = A2 xb + B2 u , (8.33a)
y2 = C2 xb + D2 u , (8.33b)
 
xa
be a state-space model of G2 (s). Set x = as a state vector for the parallel connection:
xb
      
ẋa A1 0 xa B1
= + u
ẋb 0 A2 xb B2
and
 
  xa
y = y1 + y2 = C1 C2 + (D1 + D2 )u .
xb

Hence, a state-space model of the parallel connection is given by


   
A1 0 B1  
A= , B= , C = C1 C2 , D = D1 + D2 .
0 A2 B2

y1
G 1 (s)
u y

y2
G 2 (s)

Figure 8-7: Parallel connection.


350 CHAPTER 8. STATE-SPACE METHODS

Parallel Realization of G(s)


The procedure for obtaining a parallel realization of a transfer function consists of the
following steps:

Step 1: Factor the denominator polynomial of G(s) as

d(s) = d1 (s) d2 (s) . . . dr (s)

such that
(a) di (s) has real coefficients, and
(b) there are no common factors between di (s) and d j (s) for i , j.
Step 2: Use partial fraction expansion to express G(s) − G(∞) as

G(s) − G(∞) = G1 (s) + G2 (s) + · · · + Gr (s) ,

where Gi (s) is strictly proper and its denominator is di (s).


Step 3: Find a state-space model {Ai , Bi ,Ci } of each Gi (s).
Step 4: Connect the r realizations in parallel. A state-space model of G(s) is then given by
   
A1 B1
 A2   B2 
   
A= ..  , B =  .. 
 .   . 
Ar Br
 
C= C1 C2 · · · Cr , D = G(∞) .
If G(s) is strictly proper and has real distinct poles, partial fraction expansion yields
n
X Ki
G(s) = , where Ki = (s − pi ) G(s)|s=pi .
s − pi
i=1

The first-order transfer function Ki /(s − pi ) can be realized by the state-space model

ẋi = pi xi + u , yi = Ki xi ,

which is a special case of the controllable canonical form, or by

ẋi = pi xi + Kiu , yi = xi ,

which is a special case of the observable canonical form.


There are two cases where partial fraction expansion will produce terms of order higher
than 1. If G(s) has multiple poles, partial fraction expansion will yield terms of the form
Ni (s)
, with k > 1.
(s − pi )k
8-6. STATE-SPACE MODEL OF A TRANSFER FUNCTION 351

The second case is when G(s) has complex poles. The polynomial s2 + 2ζ ωn s + ωn2 , with
ζ < 1, can be factored as (s + σ + jω )(s + σ − jω ). This factorization is not allowed because
all the coefficients of the partial fraction expansion terms must be real because the matrices
A, B, C, are real. Therefore, the second-order polynomial must be kept without factorization.
Such higher-order terms of the partial fraction expansion can be realized by the controllable
canonical form or the observable canonical form.

Example 8-22: Parallel Realization When G(s) Has Distinct Real Poles

Find a parallel realization of the transfer function


1
G(s) = .
(s + 1)(s + 2)(s + 3)

Solution:
K1 K2 K3
G(s) = + + ,
s+1 s+2 s+3
with
1 1
K1 = = ,
(s + 2)(s + 3) s=−1 2
1
K2 = = −1 ,
(s + 1)(s + 3) s=−2
and
1 1
K3 = = ,
(s + 1)(s + 2) s=−3 2
which leads to
1 1
2 −1
G(s) = + + 2 .
s+1 s+2 s+3
The parallel realization is given by
   
−1 0 0 1 1 
A =  0 −2 0  , B = 1 , C= 2 −1 1
2 , D = 0.
0 0 −3 1

Example 8-23: Parallel Realization When G(s) Has Multiple and Complex Poles

Find a parallel realization of the transfer function


5s4 + 19s3 + 30s2 + 24s + 9
G(s) = .
(s + 1)2 (s + 2)(s2 + s + 1)
352 CHAPTER 8. STATE-SPACE METHODS

Solution: Here, G(∞) = 0. Hence,


s+2 3 s+1
G(s) = 2
+ + 2 .
(s + 1) s+2 s +s+1
| {z } | {z } | {z }
G1 (s) G2 (s) G3 (s)

For
s+2 s+2
G1 (s) = = ,
(s + 1)2 s2 + 2s + 1
a controllable-canonical-form realization of G1 (s) is given by
   
0 1 0  
A1 = , B1 = , C1 = 2 1 .
−1 −2 1
Similarly,
3
G2 (s) =
s+2
is realized by
A2 = −2, B2 = 1, C2 = 3,
and for
s+1
G3 (s) = ,
s2 + s + 1
a controllable-canonical-form realization of G3 (s) is given by
   
0 1 0  
A3 = , B3 = , C3 = 1 1 .
−1 −1 1
Thus, a parallel realization of G(s) is given by
   
0 1 0 0 0 0
 −1 −2 0 0 0   1 
   
A= 0 0 −2 0  B= ,
0 ,  1 
 0 0 0 0 1   0 
0 0 0 −1 −1 1
 
C= 2 1 3 1 1 , D = 0.

8-7 State-Space Design


The stability of the n-dimensional system
ẋ = Ax + Bu , y = Cx + Du
and the shape of its transient response are determined by the location of the eigenvalues of A.
If the system is not stable or if it is stable but the transient response does not meet the design
specifications, we can re-assign the eigenvalues by feedback control.
Feedback control is classified into
• State Feedback: All state variables are measured and can be used in feedback.
• Output Feedback: Only the output y is measured and can be used in feedback.
8-7. STATE-SPACE DESIGN 353

8-7.1 State Feedback Control


Consider a control defined by
u = −Kx + v , (8.34)
where K is a 1 × n matrix and v(t) is an additional input. The closed-loop system is given by

ẋ = (A − BK)x + Bv , (8.35a)
y = (C − DK)x + Dv . (8.35b)

The stability and transient response of the closed-loop system are determined by the
eigenvalues of (A − BK), which are called the closed-loop eigenvalues, in contrast to the
open-loop eigenvalues, which are the eigenvalues of A.
There are two issues that we need to address regarding the design of K:
(1) How to choose the closed-loop eigenvalues.
(2) How to compute K.
We start with the second issue.

Computation of K:
Consider a system in the controllable canonical form:
   
0 1 ··· 0 0
 .. .. .. ..   .. 
 .   
A= . . . , B =  . ,
 0 0 ··· 1   0 
−a0 −a1 · · · −an−1 1

and
det(sI − A) = sn + an−1 sn−1 + · · · + a1 s + a0 . (8.36)
Let  
K= k0 k1 ··· kn−1 ,
 
0 1 ··· 0
 .. .. .. .. 
 . . . . 
A − BK =  ,
 0 0 ··· 1 
−(a0 + k0 ) −(a1 + k1 ) ··· −(an−1 + kn−1 )
and

det[sI − (A − BK)] = sn + (an−1 + kn−1 )sn−1 + · · · + (a1 + k1 )s + (a0 + k0 ) . (8.37)

If {λ1 , . . . , λn } are the desired eigenvalues, and are such that those with complex eigenvalues
are in conjugate pairs, then the desired characteristic polynomial is

(s − λ1 ) × · · · × (s − λn ) = sn + fn−1 sn−1 + · · · + f0 .
354 CHAPTER 8. STATE-SPACE METHODS

By specifying ki = fi − ai , for 0 ≤ i ≤ n − 1,
we ensure that the matrix (A − BK) has the desired eigenvalues {λ1 , . . . , λn }.

Example 8-24: Computation of K to Assign the Closed-Loop Eigenvalues

Let    
0 1 0 0
A= 0 0 1 , B =  0 ,
1 0 1 1
and
det(sI − A) = s3 − s2 − 1.
By application of the Routh-Hurwitz criterion or calculating the roots of s3 − s2 − 1, it can
be shown that the system is not stable. Design K to assign the eigenvalues of (A − BK) at
−1, −1 ± j.
Solution: The desired characteristic polynomial is

(s + 1)(s + 1 + j)(s + 1 − j) = s3 + 3s2 + 4s + 2. (8.38)

Comparing the individual terms in Eq. (8.38) with the corresponding terms in Eq. (8.37) leads
to  
K= 3 4 4 .

What if the pair (A, B) is not in the controllable canonical form? We can use the same
procedure but solving for K requires solving n simultaneous equations in n unknowns.

Example 8-25: Computation of K When (A, B) Is Not in the Controllable-


Canonical Form

Let    
−1 0 0 1
A= 0 1 0 , B = 2 .

0 0 −2 1
Design K such that the eigenvalues of (A − BK) are −2, −2 ± j.
Solution:
 
  (−1 − k0 ) −k1 −k2
K = k0 k1 k2 , A − BK =  −2k0 (1 − 2k1 ) −2k2  ,
−k0 −k1 (−2 − k2 )
8-7. STATE-SPACE DESIGN 355
 
(s + 1 + k0 ) k1 k2
sI − (A − BK) =  2k0 (s − 1 + 2k1 ) 2k2 ,
k0 k1 (s + 2 + k2 )
and therefore

det[sI − (A − BK)] = s3 + (k0 + 2k1 + k2 + 2)s2 + (k0 + 6k1 − 1)s + (−2k0 + 4k1 − k2 − 2) .

The desired characteristic polynomial is

(s + 2)(s + 2 + j)(s + 2 − j) = s3 + 6s2 + 13s + 10.

Matching coefficients of like powers of s leads to



k0 + 2k1 + k2 + 2 = 6   
k0 + 6k1 − 1 = 13 K = −1 2.5 0 .

−2k0 + 4k1 − k2 − 2 = 10

Since for general A and B we need to solve n equations in n unknowns, is there a guarantee
these equations will have a solution? The answer is yes if the pair (A, B) is controllable, as
stated in the following theorem.9

Theorem 8.4 Given the n-dimensional controllable pair (A, B), and the set of desired
eigenvalues {λ1 , . . . , λn }, where complex eigenvalues are in conjugate pairs, there is a unique
matrix K that assigns the eigenvalues of (A − BK) at {λ1 , . . . , λn }.

The computation of K in MATLAB is realized using the commands “acker” or “place”:


(1) Define A, B, and p (a vector of desired eigenvalues);
(2) K = acker(A,B,p);
(3) K = place(A,B,p); (does not accept multiple eigenvalues).
Selection of the eigenvalues
The transient response of the closed-loop system

ẋ = (A − BK)x + Bv , (8.39a)
y = (C − DK)x + Dv , (8.39b)

is examined by simulating the step response or the zero input response. The locations of the
eigenvalues are adjusted to meet the design specifications.
9 The proof of the theorem can be found in any graduate-level textbook on linear systems using state-space
models; see, for example, [2] or [32]. It is based on the fact that for a controllable pair (A, B) there is a nonsingular
matrix P such that P−1 AP = Ac and P−1 B = Bc , where the pair (Ac , Bc ) is in the controllable canonical form.
A matrix Kc is designed to assign the eigenvalues of (Ac − Bc Kc ) at the desired eigenvalues. Taking K = Kc P−1
yields (A − BK) = P(Ac − Bc Kc )P−1 . Hence, the eigenvalues of (A − BK) are assigned at the desired eigenvalues
because the similarity transformation P(Ac − Bc Kc )P−1 does not change the eigenvalues.
356 CHAPTER 8. STATE-SPACE METHODS

Guidelines:
(a) The settling time of each mode is Ts = 4/|Re[λi ]|. To achieve a faster response, the
eigenvalues should be moved to the left in the complex plane.
(b) For complex eigenvalues, the response is more oscillatory for smaller values of the
damping ratio ζ .
(c) If the eigenvalues are clustered into slow and fast ones, the slow eigenvalues are
dominant.
Can we make the response arbitrarily fast by moving the eigenvalues far enough to the left?
In theory, yes, but this will require large feedback gains and hence large control magnitude
since u(t) = −Kx(t).
The choice of eigenvalues is a trade-off between the transient response and the control effort.

Example 8-26: Assignment of the Closed-Loop Eigenvalues for a Desired


Settling Time

Let    
0 1 0 0
A= 0 0 1 , B =  0 .
−0.4 −4.2 −2.1 1

The open-loop eigenvalues are −0.1, −1 ± 3 j. Because of the eigenvalue at −0.1, the
settling time is estimated to be 40 s. Design feedback gain K such that the settling time is
≤ 4 s.

Solution: Choose the closed-loop eigenvalues as −2, −2 ± 2 3 j to achieve a settling time
of about 2 s. Hence,  
K = 31.6 19.8 3.9 .
 T
The zero-input response to x(0) = 1 1 1 is shown in Fig. 8-8(a). The settling time
is indeed about 2 s, but the magnitude of the control signal is very large during the initial
transient.
To address this shortcoming, move the real parts of the eigenvalues to −1 to achieve a
settling time of about 4 s, while keeping
√ the damping ratio of the complex eigenvalues the
same. The new choice is −1, −1 ± 3 j and
 
K = 3.6 1.8 0.9 .

In comparison with the previous K, there is now significant reduction in the feedback gain.
 T
Figure 8-8(b) shows the zero-input response to x(0) = 1 1 1 . The control
magnitude at the initial transient has been reduced by a factor close to 10 and the settling
time is about 4 s. This is an example of how the transient response and control effort are
traded off against each other.
8-7. STATE-SPACE DESIGN 357

1.4 1.5
1.2
1
1
0.8
x1 x1
0.6
0.5
0.4
0.2
0 0
0 1 2 3 0 2 4 6

1 1

0.5
0.5
0
x2 –0.5 x2 0

–1 –0.5
–1.5
–1
–2
0 1 2 3 0 2 4 6

1
2

0 0
x3 –2 x3
–1
–4

–6 –2

0 1 2 3 0 2 4 6

10
0 0
–10
–2
–20
u u
–30
–4
–40
–50 –6
–60
0 1 2 3 0 2 4 6
Time Time
(a) (b)

Figure 8-8: (a) Simulation of Example 8-26 with K = [31.6 19.8 3.9]. (b) Simulation of
Example 8-26 with K = [3.6 1.8 0.9].
358 CHAPTER 8. STATE-SPACE METHODS

8-7.2 Observers and Output Feedback Control


Observers
Consider the system

ẋ = Ax + Bu , (8.40a)
y = Cx + Du , (8.40b)

where the initial state x(0) is unknown, but we can measure the output y. We want to estimate
the state x from the available signals u and y; u is available because it is the control that we
implement.
Had x(0) been known, we could have estimated x by solving the equation

x̂˙ = Ax̂ + Bu , x̂(0) = x(0)

and we would have obtained x̂(t) ≡ x(t). This can be seen by defining the estimation error

e = x − x̂ ,

which satisfies the equation

ė = Ax + Bu − Ax̂ − Bu = Ae , e(0) = 0,

whose solution is e(t) ≡ 0.


If x(0) is unknown, we cannot choose x̂(0) = x(0). Hence e(0) , 0 and the estimation error
will be different from zero. Note, however, that if Re[λ (A)] < 0, that is, if all eigenvalues of
A have negative real parts, then
lim e(t) = 0.
t→∞

Hence, we can asymptotically estimate the state x.


What if A has some eigenvalues with nonnegative real parts? Or what if all the eigenvalues
have negative real parts, but convergence is slow? Can we use feedback to stabilize the
observer? What signal can we feedback?
We measure y(t) = Cx(t) + Du(t). If an estimate of the state x̂(t) is available, we can use
it to estimate the output by ŷ(t) = Cx̂(t) + Du(t). Then,

y(t) − ŷ(t) = Cx(t) + Du(t) −Cx̂(t) − Du(t) = Ce(t) . (8.41)

The signal y − ŷ = Ce is the feedback signal to the observer.


Consider the observer (estimator):

x̂˙ = Ax̂ + Bu + L[y − ŷ] = Ax̂ + Bu + L[y −Cx̂ − Du] , (8.42)

where L is the observer gain (an n × 1 matrix). The estimation error e = x − x̂ satisfies the
equation
ė = ẋ − x̂˙ = Ax + Bu − Ax̂ − Bu − L[Cx −Cx̂] = (A − LC)e .
8-7. STATE-SPACE DESIGN 359

We would like to design L such that all the eigenvalues of (A − LC) have negative real parts,
because then limt→∞ e(t) = 0. When is that possible? The design of L to assign the eigenvalues
of (A − LC) is dual to the design of K to assign the eigenvalues of (A − BK). In particular,
(A − LC) and (A − LC)T have the same eigenvalues. Then,

(A − LC)T = AT −CT LT .

Set  = AT , B̂ = CT , K̂ = LT (A − LC)T =  − B̂K̂ .


Thus, the design of L to assign the eigenvalues of (A − LC) can be realized by the design of
K̂ to assign the eigenvalues of (Â − B̂K̂).

Observer design:
Given the pair (A,C) and the set of eigenvalues {λ1 , . . . , λn }, where complex eigenvalues are
in conjugate pairs, design L such that the eigenvalues of (A − LC) are assigned at {λ1 , . . . , λn }.

Design procedure:
Step 1: Specify  = AT and B̂ = CT .
Step 2: Design K̂ to assign the eigenvalues of (Â − B̂K̂) at {λ1 , . . . , λn }.
Step 3: Set L = K̂ T .

We know from Theorem 8.4 that K̂ exists if (Â, B̂) is controllable. By duality, L exists if (A,C)
is observable.

Output feedback control:


Design an output feedback controller to stabilize the system

ẋ = Ax + Bu , y = Cx + Du .

Design procedure:
Step 1: Design a state feedback controller u = −Kx + v such that Re[λ (A − BK)] < 0.
Step 2: Design an observer

x̂˙ = Ax̂ + Bu + L[y −Cx̂ − Du],

where L is chosen such that Re[λ (A − LC)] < 0.


Step 3: Set the output feedback controller as u = −K x̂ + v.
To derive the state equation of the closed-loop system under output feedback, select the state
vector as    
x x
= .
e x − x̂
Then
ẋ = Ax − BK x̂ + Bv = Ax − BK(x − e) + Bv = (A − BK)x + BKe + Bv .
360 CHAPTER 8. STATE-SPACE METHODS

We have already seen that ė = (A − LC)e for any control u. Hence,


      
ẋ (A − BK) BK x B
= + v. (8.43)
ė 0 (A − LC) e 0

The closed-loop matrix is block triangular. Block triangular matrices have the property
that their eigenvalues are the eigenvalues of their diagonal blocks. Hence, the closed-loop
eigenvalues are the eigenvalues of (A − BK) and (A − LC). Since both matrices are designed
to have eigenvalues with negative real parts, the closed-loop system is stable.
It is useful to note that the closed-loop transfer function from v to y is

(C − DK)[sI − (A − BK)]−1B + D ,

which is the same closed-loop transfer function under state feedback. This is so because when
the Laplace transform is taken of the equation ė = (A − LC)e with zero initial condition, it
results in

sE(s) = (A − LC)E(s) [sI − (A − LC)]E(s) = 0 E(s) = 0.

Example 8-27: Output Feedback Stabilization

Design an output feedback controller to stabilize the system

ẋ = Ax + Bu , y = Cx ,

where    
0 1 0  
A= , B= , C= 1 0 .
0 0 1

Solution:
State feedback control: u = −Kx + v
 
  0 1
K= k0 k1 A − BK =
−k0 −k1

det[sI − (A − BK)] = s2 + k1 s + k0 .
Specify the desired eigenvalues to be a pair of complexeigenvalues with ωn = 2 and ζ = 0.5,
which leads to
s2 + 2ζ ωn s + ωn2 = s2 + 2s + 4.
Matching coefficients of like powers of s, we obtain:
 
K= 4 2 .
8-7. STATE-SPACE DESIGN 361

Observer:    
ℓ0 −ℓ0 1
L= A − LC =
ℓ1 −ℓ1 0
and
det[sI − (A − LC)] = s2 + ℓ0 s + ℓ1 .
Specify the desired eigenvalues to be a pair of complex eigenvalues with ωn = 10 and ζ = 0.5,
which yields
s2 + 2ζ ωn s + ωn2 = s2 + 10s + 100.
Matching coefficients of like powers of s, we obtain:
 
10
L= .
100

Output feedback controller:

u = −4x̂1 − 2x̂2 + v ,
x̂˙1 = x̂2 + 10(y − x̂1 ) ,
x̂˙2 = u + 100(y − x̂1 ) .

8-7.3 Set-Point Regulation


Consider the system
ẋ = Ax + Bu , y = Cx .
Design feedback control to:

(a) stabilize the system, and

(b) regulate the output y to a set point r; i.e.,

lim y(t) = r .
t→∞

There are two approaches to design the feedback control: feedforward control and integral
control.

Feedforward Control
We start with the state feedback control:

u = −Kx + v ,

where K is designed such that Re[λ (A − BK)] < 0. The closed-loop system is

ẋ = (A − BK)x + Bv , y = Cx .
362 CHAPTER 8. STATE-SPACE METHODS

The transfer function from v to y is


C[sI − (A − BK)]−1B .
Set v = Nr. The transfer function from r to y is
G(s) = C[sI − (A − BK)]−1BN . (8.44)
How would we choose N to achieve limt→∞ y(t) = r? From the final value theorem of the
Laplace transform
r
lim y(t) = lim sY (s) = lim s G(s) = G(0) r ,
t→∞ s→0 s→0 s
which gives
lim y(t) = −C(A − BK)−1BNr .
t→∞
Here, (A − BK) is nonsingular because all its eigenvalues have negative real parts. Assuming
that C(A − BK)−1B , 0,10 set
1
N =− . (8.45)
C(A − BK)−1B
With this choice of N, the state feedback control is given by
u = −Kx + Nr . (8.46)
For output feedback control, we design an observer to estimate x by x̂ and implement
the state feedback control replacing x by x̂. For the observer, we design L such that
Re[λ (A − LC)] < 0. The output feedback control is given by:

u = −K x̂ + Nr ,
x̂˙ = Ax̂ + Bu + L(y −Cx̂) .

The transfer function from r to y under output feedback is the same as the one under state
feedback. Therefore limt→∞ y(t) = r.

Example 8-28: Set-Point Regulation by Feedforward Control

Consider the system


ẋ1 = x2 , ẋ2 = x1 − x2 + u, y = x1 .
10C(A − BK)−1 B , 0 if and only if  
A B
rank = n + 1.
C 0
This can be shown by performing the following elementary operations:
I (A − BK)−1 B (A − BK)−1 B
       
A B A − BK B I
→ → → .
C 0 C 0 C 0 0 −C(A − BK)−1 B
8-7. STATE-SPACE DESIGN 363

Design an output feedback controller to stabilize the closed-loop system and regulate y to a
set point r.
Solution:    
0 1 0  
A= , B= , C= 1 0 .
1 −1 1
 
Here, (A, B) is controllable and (A,C) is observable. We choose K = 2 1 so as to assign
the eigenvalues of (A − BK) at −1, −1. Hence,
  
−1
  −2 −1 0
C(A − BK) B = 1 0 = −1 N = 1.
1 0 1
 
9
We choose L = so as to assign the eigenvalues of (A − KC) at −5, −5. The output
17
feedback controller is then given by

u = −2x̂1 − x̂2 + r ,
     
0 1 0 9
x̂˙ = x̂ + u+ (y − x̂1 ) .
1 −1 1 17

Integral Control
We augment the system with an integrator driven by the regulation error:

ż = r − y .

The augmented system is described by


        
ẋ A 0 x B 0
= + u+ r.
ż −C 0 z 0 1
       
x A 0 B 0
Set X = , A= , B= , Γ= ,
z −C 0 0 1
to obtain
X˙ = AX + Bu + Γ r .
We design the state feedback control:11
 
  x
u = −KX = −K1 −K2 = −K1 x − K2 z
z

such that
Re[λ (A − BK)] < 0,
11 The existence of K is guaranteed if (A, B) iscontrollable. It can be shown that (A, B) is controllable if and
A B
only if (A, B) is controllable and rank = n + 1.
C 0
364 CHAPTER 8. STATE-SPACE METHODS

which ensures that the closed-loop system

ẋ = Ax − BK1x − BK2 z
ż = r −Cx

is stable. The closed-loop system has an equilibrium point at (x̄, z̄), which satisfies the
equlibrium equations12

0 = Ax̄ − BK1x̄ − BK2z̄ ,


0 = r −Cx̄ .

Because the system is stable, its solution converges to the equilibrium point as t → ∞.
Consequently,
lim y(t) = ȳ = Cx̄ = r .
t→∞

For output feedback control, we design an observer to estimate x by x̂ and implement


the state feedback control replacing x with x̂. For the observer, we design L such that
Re[λ (A − LC)] < 0. We do not need to estimate z because it is available by integrating (r − y).
The output feedback control is given by

u = −K1 x̂ − K2 z ,
ż = r − y ,
x̂˙ = Ax̂ + Bu + L(y −Cx̂) .

The closed-loop system given by

ẋ = (A − BK1)x + BK1 e − BK2z ,


ż = r −Cx ,
and
ė = (A − LC)e ,

is stable and its solution converges to the equilibrium point (x = x̄, z = z̄, e = 0). Therefore,

lim y(t) = ȳ = Cx̄ = r .


t→∞

The main advantage of integral control is its robustness to parameters perturbation and
constant disturbances. Such perturbation and disturbance may change the equilibrium point
but at equilibrium, it is always true that ȳ = r. Regulation is achieved for all parameter
perturbations for which the closed-loop system remains stable.
 
12 The A B
condition rank = n + 1 ensures there there is a unique equilibrium point.
C 0
8-7. STATE-SPACE DESIGN 365

Example 8-29: Set-Point Regulation by Integral Control

Reconsider the regulation problem of Example 8-28 and design the output feedback controller
using integral control.
Solution:
   
  0 1 0   0
A 0  B
A= = 1 −1 0 , B= =  1 .
−C 0 0
−1 0 0 0
 
Vector K = 6 3 −2 assigns the eigenvalues at −1, −1, −2. We use the same observer
as in Example 8-28. The output feedback controller is given by

u = −6x̂1 − 3x̂2 + 2z , ż = r − y .

The unit step responses of the closed-loop system under integral control and feedforward
control are shown in Fig. 8-9. Parts (a) and (b) of the figure show the output and control
signals for nominal parameters, and parts (c) and (d) show them when the control coefficient
is perturbed from 1 to 1.5. For nominal parameters both controllers regulate the output to
the set point, with the response of the integral control slightly slower than the response of
the feedforward control. When the control coefficient is perturbed, the integral control still
regulates the output to the set point but the feedforward control fails to do so.
366 CHAPTER 8. STATE-SPACE METHODS

1 1

0.5

y 0.5 u 0

–0.5

0 –1
0 5 10 0 5 10
Time Time
(a) y(t) with control coefficient = 1 (b) u(t) with control coefficient = 1

1 1

0.5

y 0.5 u 0

–0.5

0 –1
0 5 10 0 5 10
Time Time
(c) y(t) with control coefficient = 1.5 (d) u(t) with control coefficient = 1.5

Figure 8-9: Simulation of Example 8-29.


8-7. STATE-SPACE DESIGN 367

Summary
Concepts
• A state-space model captures both the internal behavior due to initial conditions
and the external behavior due to inputs.
• State-space models are well suited to represent multi-input–multi-output and
nonlinear systems.
• In deriving state-space models of electric circuits, a typical choice of state variables
is the voltages across capacitors and the currents through inductors.
• In deriving state-space models of mechanical systems, a typical choice of state
variables is positions and velocities.
• The solution of the state equation is expressed in terms of the state transition
matrix.
• The system is stable if its natural response converges to zeros as time tends to
infinity and its forced response is bounded for every bounded input. The system is
stable if and only if all the eigenvalues of A have negative real parts.
• The system is controllable if there is a continuous control that moves the state of
the system from any initial state to any desired final state over a finite time period.
The system is controllable if and only if the controllability matrix has full rank.
• The system is observable if the initial state can be uniquely determined by
observing the output over a finite time period. The system is observable if and
only if the observability matrix has full rank.
• The transfer function of a state-space model is given by an algebraic expression.
• There are many state-space models for a given transfer function. They include
the controllable canonical form, the observable canonical form, and the parallel
realizations.
• The closed-loop eigenvalues can be arbitrarily assigned by state feedback if the
system is controllable.
• The observable eigenvalues can be arbitrarily assigned if the system is observable.
• The closed-loop eigenvalues under observer-based output feedback control are the
eigenvalues under state feedback and the observer eigenvalues.
• Set-point regulation can be achieved by design of a feedforward gain or by
augmenting an integrator driven by the tracking error. The integral control design
is robust to parameter perturbations that do not destroy the stability of the system.
368 CHAPTER 8. STATE-SPACE METHODS

Mathematical Models

State transition matrix: Φ(t) = L−1 (sI − A)−1
Z t
Solution of the state equation: x(t) = Φ(t) x0 + Φ(t − τ ) B u(τ ) d τ
0
Characteristic equation of A: det(sI − A) = 0
 
Controllability matrix of (A, B): CM = B AB A2 B ··· An−1 B
 
C
 CA 
 
 CA2 
Observability matrix of (A,C): OM =  
 .. 
 . 
CAn−1
Transfer function of {A, B,C, D}: G(s) = C(sI − A)−1 B + D

Important Terms Provide definitions or explain the meaning of the following


terms:
closed-loop eigenvalues linearization parallel realization
controllability observability set-point regulation
controllable canonical form observable canonical form stability
duality observer state equation
eigenvalues open-loop eigenvalues state feedback control
feedforward control output equation state-space model
integral control output feedback control state transition matrix

PROBLEMS
8.1 Find a state-space model of each of the electric circuits shown in the following figures
from Chapter 2. In each case, take the input and output as described in Chapter 2. For example
if the transfer function of the circuit is described as V /W , take w to be the input and v to be
the output.
(a) Fig. 2-3 (b) Fig. 2-10 (c) Fig. P2.4(a)
(d) Fig. P2.4(b) (e) Fig. P2.7 (f) Fig. P2.9(a)
(g) Fig. P2.9(b) (h) Fig. P2.10(a) (i) Fig. P2.10(b)

8.2 Find a state-space model of each of the mechanical shown in the following figures from
Chapter 2. In each case, take the input and output as described in Chapter 2. For example if
the transfer function of the system is described as V /W , take w to be the input and v to be the
output.
PROBLEMS 369

(a) Fig. 2-15 (b) Fig. 2-16 (c) Fig. 2-21


(d) Fig. 2-22 (e) Fig. 2-24 (f) Fig. 2-27
(g) Fig. P2.11 (h) Fig. P2.12 (i) Fig. P2.13
(j) Fig. P2.14 (k) Fig. P2.15 (l) Fig. P2.17
(m) Fig. P2.18 (n) Fig. P2.19 (o) Fig. P2.20
(p) Fig. P2.21 (q) Fig. P2.22

8.3 For each of the following systems,

(i) determine if the system is stable;

(ii) find the transition matrix;

(iii) find the transfer function.

(a)
   
0 1 0  
ẋ = x+ u, y= 0 1 x+u
1 0 1

(b)
   
−1 0 1  
ẋ = x+ u, y= 1 0 x
1 −1 1

(c)
   
0 1 0  
ẋ = x+ u, y= 1 1 x
−1 0 1

(d)
   
0 1 0  
ẋ = x+ u, y= 1 0 x+u
−1 −2 1

(e)
   
−1 1 1  
ẋ = x+ u, y= 1 2 x+u
−4 −1 1

(f)
   
0 1 0 0  
ẋ = 0 −1 1  x + B = 0 u , y= 0 1 0 x
0 −4 −1 1
370 CHAPTER 8. STATE-SPACE METHODS

8.4 For each of the following transfer functions, find

(i) a controllable-canonical-form realization;

(ii) an observable-canonical-form realization;

(iii) a parallel realization.

(a)
s3 + s + 2
G(s) =
s3 + 3s2 + 3s + 2

(b)
1
G(s) =
s(s2 + 1)

(c)
2s3 + 2s + 1
G(s) =
s3 + 6s2 + 11s + 6

(d)
s2 + 1
G(s) =
s3 + 2s2 + 3s + 4

(e)
3s3 + s + 1
G(s) =
s3 + 6s2 + 12s + 8

(f)
2s3 + 2s + 1
G(s) =
s3 + 2s2 + 3s + 4

8.5 For each of the systems in Problem 8.3, design state feedback control u = −Kx to
assign the closed-loop eigenvalues at the desired locations shown below. Do your calculations
without using MATLAB.
(a) λ = −1, −1
(b) λ = −4, −5
(c) λ = −1, −2
(d) λ = −3, −3
(e) λ = −2 ± 2 j
(f) λ = −1, −1 ± 2 j
PROBLEMS 371

8.6 Consider the system


   
0 1 1  
ẋ = x+ u, y= 1 1 x+u .
−2 −3 1

(a) Find the transition matrix.


(b) Is the system stable? Is it controllable? Is it observable?
(c) Find the transfer function.
 
1
(d) Find y(t) when x(0) = and u(t) = 0.
0
(e) Find y(t) when x(0) = 0 and u(t) is the unit step input.
 
1
(f) Find y(t) when x(0) = and u(t) is the unit step input.
0
8.7 Repeat Problem 8.6 for the system
    
−1 0 1   1
ẋ = x+ u, y= 2 1 x. Take x(0) = .
0 −2 1 −1

8.8 Repeat Problem 8.6 for the system


     
−1 0 0 1   1
ẋ =  0 −2 0  x + 1 u , y= 3 2 1 x. Take x(0) = 1 .
0 0 −3 1 0

8.9 Repeat Problem 8.6 for the system


     
10 3 −1   1
ẋ = x+ u, y= 4 1 x + u. Take x(0) = .
−37 −11 4 1

8.10 Repeat Problem 8.6 for the system


     
−3 0 0 2   1
ẋ =  0 0 1  x + 0 u , y= 0 1 x. Take x(0) = 1 .
0 −2 −3 1 0

8.11 Consider the position control of a dc motor whose state model is


   
0 1 0  
ẋ = x+ k u , y = 1 0 x ,
0 − τ1 τ

where x1 = θ , x2 = ω , and u is the voltage input.


(a) Is the system stable? Find the transition matrix and the transfer function.
372 CHAPTER 8. STATE-SPACE METHODS

 
(b) Find K = k1 k2 to assign the eigenvalues of (A − BK) at the roots of s2 + 2ζ ωn s+ ωn2
with ζ = 0.5. Choose ωn such that the settling time ≤ 0.4 s.
(c) Let u = −k1 x1 − k2 x2 + k1 θr . Find the transition matrix and transfer function of the
closed-loop system with input θr and output θ . What is the steady-state output to a unit
step input?
(d) Design an observer whose settling time is less than 0.1 s. Implement the controller of
part (c) using output feedback.
(e) Let k = 2 rad/s/V and τ = 0.2 s. Simulate the step response of the closed-loop system
under output feedback control.
8.12 It is shown in Example 8-5 that a linearized model of a dc-to-dc power converter is
given by    
0 − 1k k  
A= 1 , B= 2 , C= 0 1 , D = 0,
k −α −α k
where α and k are positive constants. Assume α < 2/k.
(a) Is the system stable? Is it controllable? Is it observable?
(b) Find the transition matrix.
(c) Find the transfer function.
For the rest of this problem, set α = 0.1 and k = 2.
(d) Find the open-loop eigenvalues. Estimate the settling time of the open-loop response.
(e) Design state feedback control to assign the closed-loop eigenvalues at the roots of
s2 + 2ζ ωn s + ωn2 with ζ = 0.5. Choose ωn such that the settling time of the closed-
loop response is 10 times smaller than the settling time of the open-loop response.
 T
(f) Simulate the open-loop and closed-loop responses for x(0) = 1 1 .
8.13 Figure P8.13 shows a schematic diagram of a magnetic levitation system, where a ball
of magnetic material is suspended by means of electromagnet whose current is controlled by

Controller

m
Light
source

Figure P8.13: Magnetic levitation system.


PROBLEMS 373

feedback from the optically measured ball position. This system has the basic ingredients of
systems constructed to levitate mass, used in gyroscopes, accelerometers, and fast trains. The
system can be modeled by the nonlinear state equation13

ẋ1 = x2 ,
4x23
ẋ2 = 1 − ,
(1 + x1 )2
 
0.2(1 + x1 ) 2x2 x3
ẋ3 = −x3 + u + ,
1 + 0.6x1 (1 + x1 )2

where x1 is a normalized position of the ball and x3 is a normalized electric current of the
electromagnet.
(a) Find the steady-state control uss that maintains the system at an equilibrium point x̄ with
x̄1 = 1.
(b) Linearize the state equation at (x = x̄, u = uss ). Let xδ = x − x̄ and uδ = u − uss .
(c) Is the linear state equation stable? Is it controllable?
(d) Design state feedback control uδ = −Kxδ that assigns the closed-loop eigenvalues at
− 41 , − 14 ± 41 j.
(e) If the only measured signal is the output y = x1 − x̄1 . Is the system observable?
(f) Design an observer to estimate xδ , with the observer eigenvalues located at −1, −1 ± j.
(g) Combine the state feedback and observer to obtain an output feedback controller that
stabilizes the system. Simulate the response of the system with the initial conditions
 T
xδ (0) = 1 0 0 .
8.14 Consider the automobile suspension system of Examples 2-11 and 8-2. In active
suspension systems a force actuator is mouned between the sprung and unsprung mases,
applying equal and opposite forces to theses two masses. The equations of motion are given
by

Ms ÿs = −ks (ys − yus ) −Cs (ẏs − ẏus ) + u


Mus ÿus = ks (ys − yus ) +Cs(ẏs − ẏus ) − kt (yus − S) − u ,

where u is the force applied by the actuator.


(a) Find the state-space model with

x1 = ys − yus , x2 = yus − S, x3 = ẏs , x4 = ẏus

as the state variables, u as the control input, and Ṡ as a disturbance input.


For the rest of this problem, the parameters of the system are taken as [13] Ms = 973 kg,
Mus = 114 kg, ks = 42720 N/m, kt = 101115 N/m, and Cs = 1095 N s/m.
13 See Appendix A.8 of [22].
374 CHAPTER 8. STATE-SPACE METHODS

(b) Is the system stable? Is it controllable?


(c) Is the system observable if the output is ÿs ?
(d) Is the system observable if the output is ys − yus ?
Consider the state feedback control u = −Kx, where K is given by [13]
 
K = 103 × 1.3308 3.9564 −5.5819 0.5438

(e) Find the closed-loop eigenvalues and compare them with the open-loop eigenvalues.
(f) Compare the responses of the closed-loop and open-loop systems to an isolated bump
in an otherwise smooth surface. The road displacement is defined by
 A
S(t) = 2 [1 − cos(2πυ t/L)] if 0 ≤ t ≤ L/υ ,
0 if t > L/υ ,
where A and L are the height and length of the bump and υ is the forward speed of
the automobile. Assume A = 0.06 m, L = 5 m, and υ = 30 m/s. For the comparison,
plot the responses of the body accelleration ÿs and the suspension stroke ys − yus . Take
x(0) = 0 in your simulation.
(g) If the measured output is ÿs , build an observer to implement the state feedback control.
(h) Repeat (g) if the measued output is ys − yus .
8.15 Consider the inverted pendulum on a cart of Fig. P8.15. The pivot of the pendulum is
mounted on a cart that can move in a horizontal direction. The cart is driven by a motor that
exerts a horizontal force F. The system can be modeled by the equations [22]
J θ̈ = −mL2 θ̈ + mgL sin θ − mLÿ cos θ ,
M ÿ = F − m(ÿ + Lθ̈ cos θ − Lθ̇ 2 sin θ ) − kẏ ,
where θ is the angular rotation of the pendulum (measured clockwise from the vertical
position), y the displacement of the cart, m the mass of the pendulum, M the mass of the

Pendulum
V
θ
mg
y
Cart F H

Figure P8.15: Inverted pendulum on a cart.


PROBLEMS 375

cart, L the distance from the center of gravity to the pivot, J the moment of inertia of the
pendulum with respect to the center of gravity, k a friction coefficient, and g the acceleration
due to gravity.
When F = 0, the system has equilibrium with the pendulum at the vertical position.
Linearization of the equations of motion at the equilibrium point yields

J θ̈ = −mL2 θ̈ + mgLθ − mLÿ ,


M ÿ = F − m(ÿ + Lθ̈ ) − kẏ .

(a) Find the state equation of the system with x1 = θ , x2 = θ̇ , x3 = y, and x4 = ẏ as the
state variables and u = F as the control input.
(b) Show that the system is unstable.
For the rest of this problem, let m = 0.1 kg, M = 1 kg, k = 0.1 kg·m/s2 , J = 0.008 kg·m2 ,
g = 9.81 m/s2 , and L = 0.5 m.
(c) Verify that the system is controllable.
(d) Design state feedback control u = −Kx to stabilize the system.
 T
(e) Plot the state variables of the closed-loop system when x(0) = 1 0 0 0 .
8.16 Under certain assumptions, a satellite in circular orbit is modeled by
 2
d2r dϕ ω02 r03 Fr
= r − + ,
dt 2 dt r2 m
   
d2ϕ dϕ dr 1 Fϕ
2
= −2 + ,
dt dt dt r mr

where r is the distance from the earth center to the satellite, ϕ the orbit angle of the satellite,
m the mass of the satellite, Fr the radial force, Fϕ the tangential force, t the time in seconds,
and r0 and ω0 are constants.
(a) Verify that when Fr = Fϕ = 0, the circular orbit {r(t) = r0 , ϕ (t) = ω0 t} satisfies the
equations of motion.
(b) Show that, with
r − r0 1 dr 1 dϕ
x1 = , x2 = , x3 = ϕ − ω0t , x4 = −1
r0 ω0 r0 dt ω0 dt

as the state variables, u1 = Fr /(mr0 ω02 ) and u2 = Fϕ /(mr0 ω02 ) as the control inputs, and
the change of the time variable from t to τ = ω0 t, the state equation is given by

ẋ1 = x2 , (8.47)
1
ẋ2 = (x1 + 1)(x4 + 1)2 − + u1 , (8.48)
(x1 + 1)2
ẋ3 = x4 , (8.49)
376 CHAPTER 8. STATE-SPACE METHODS

2(x4 + 1)x2 u2
ẋ4 = − + , (8.50)
x1 + 1 x1 + 1
where ẋi = dxi /d τ .
(c) Verify that when u1 = u2 = 0, the system has an equilibrium point at x = 0 and
linearization at the equilibrium point yields the linear state equation
     
0 1 0 0 0 0
3 0 0 2 1 0
ẋ =    
0 0 0 1 x + 0 u1 + 0 u2 .
 

0 −2 0 0 0 1

(d) Show that the system is unstable.


(e) Investigate controllability from u1 .
(f)Investigate controllability from u2 .
(g) Invetigate observability if the measured output is x1 .
(h) Invetigate observability if the measured output is x3 .
(i)Using one of the two control inputs, design a state feedback controller to stabilize the
system.
(j) Using one of the two control inputs and one of the two measured outputs x1 and x3 ,
design an output feedback controller to stabilize the system.14

14 Using both control inputs or both measured outputs will turn the problem into multi-input–multi-output,
which is beyond the discussion in this chapter.
Chapter 9
Digital Control
Chapter Contents Objectives

Overview, 378 Upon learning the material presented in this chapter, you
9-1 Digital Control Systems, 378 should be able to:
9-2 Discrete-Time Systems, 381
9-3 Discrete-Time Equivalent of Digital 1. Understand why the controller is implemented
Control System, 387 digitally.
9-4 Stability of Digital Control
2. Recognize the basic components of a digital control
Systems, 393
system.
9-5 Steady-State Error, 403
9-6 Sample-Frequency Selection, 405 3. Review discrete-time systems and the z-transform.
9-7 Design by Emulation, 411
4. Derive the discrete-time equivalent of a continuous-
9-8 Discrete-Time Design, 416
time transfer function preceded by zero-order hold.
9-9 Quantization, 422
Chapter Summary, 430 5. Represent the closed-loop control system in discrete
Problems, 432 time.
6. Study the stability of digital control systems.
7. Select the sampling frequency.
8. Design a digital controller by converting a continuous-
time controller.
9. Design a digital controller in the discrete-time
domain.
10. Study the effect of quantization on the performance of
the digital control system.

377
378 CHAPTER 9. DIGITAL CONTROL

Overview
Controllers can be implemented using analog circuits, similar to the ones shown earlier in
Fig. 5-7, or they can be implemented using digital computers. There are several advantages
to implementing the controllers digitally:

(a) Flexibility in control implementation. Modification of analog controllers requires


rewiring and changing circuit components, while modification of a digital controller
is realized by changing a computer program.

(b) Higher control accuracy. The control accuracy in analog control is limited by the
accuracy of the devices, temperature drift and other factors.

(c) Cost-effectiveness due to the rapid development of VLSI technology.

(d) Improved user interface because information can be displayed graphically on a monitor.

(e) The digital control mode can avoid the distortion and interference of spurious signals
associated with the transmission of analog signals.

Section 9-1 describes digital control systems. Digital signals are discrete-time signals
whose values are quantized because of the finite wordlength of digital computers. It is
standard practice in the analysis and design of digital systems to ignore quantization and
to treat the digital signals as if they were discrete-time signals whose values are defined
continuously. Therefore, the digital system is modeled as a discrete-time system. Section 9-2
reviews discrete-time systems. Section 9-3 derives the discrete-time equivalent of digital
control systems. Sections 9-4 and 9-5 discuss stability and the steady-state error of discrete-
time feedback systems. Section 9-6 demonstrates how the sampling frequency is chosen and
Sections 9-7 and 9-8 discuss the design of digital controllers. In Section 9-7 the controller is
designed in continuous time, then discretized, a process known as emulation, while in Section
9-8 the controller is designed in discrete time entirely. Section 9-9 shows how to analyze the
effect of quantization on the performance of the control system.

9-1 Digital Control Systems


The inputs and outputs of an analog system are analog signals, while the inputs and outputs of
a digital system are digital signals. An analog signal x(t) is defined for all time instants t over a
given time interval and x can assume any value in a certain interval. In other words, the signal
is continuous in time and continuous in value. Physical signals, such as temperature, humidity,
velocity, etc., are analog signals. Digital signals, on the other hand, are discrete in time and
discrete in value. They are discrete in time because they are defined only at discrete instants of
time, usually synchronized with a clock. They are discrete in value because numbers in digital
computers are represented by words of finite wordlength. For example, in a digital system in
which the magnitude of a number is represented by 7 bits, there are only 27 = 128 values the
number can take. Other values will have to be rounded off to the nearest one of those 128
values. This process is known as quantization.
9-1. DIGITAL CONTROL SYSTEMS 379

r(t) + e(t) S/ e(kT ) Digital u(kT ) DAC u(t) y(t)


∑ ZOH ADC computer ZOH
Plant

Figure 9-1: Digital control system.

r(kT ) + e(kT ) Digital u(kT ) DAC u(t) y(t)


∑ computer ZOH Plant

y(kT ) S/
ADC ZOH

Figure 9-2: Digital control system.

When a digital computer is used to control an analog system, it is necessary to use an


analog-to-digital interface between the analog and digital systems. Figure 9-1 shows the
basic components of a typical digital control system, and Fig. 9-2 shows a slightly different
configuration of Fig. 9-1. The basic components of the system are :

(a) Sample/Zero-Order Hold (S/ZOH)

(b) Analog-to-Digital Converter (ADC)

(c) Digital computer

(d) Digital-to-Analog Converter with Zero-Order Hold (DAC/ZOH)

(e) Plant

• The S/ZOH samples the continuous-time signal to produce a discrete-time signal. The
samples are taken at points that are uniformly spaced with sampling period T , as shown
in Fig. 9-3. The samples are held constant over the sampling period, producing a
staircase continuous-time function. Holding the sample constant over the sampling
period is called zero-order hold (ZOH).1
1 Digitalcontrol books, e.g., [4, 9, 12, 31], discuss other types of hold, especially first-order hold where two
consecutive samples are connected by a straight line. However, zero-order hold is typical in practical digital control
systems.
380 CHAPTER 9. DIGITAL CONTROL

Figure 9-3: Sample/zero-order hold.

• The ADC receives the samples from the S/ZOH and quantizes their values to produce
the digital signal that is fed to the computer. The quantization is usually done by
rounding off numbers to the nearest quantization level. In a binary system with
ℓ magnitude bits, the difference between two quantization levels is q = 2−ℓ . The
maximum quantization error is q/2 = 2−(ℓ+1) . In Fig. 9-1, the S/ZOH and ADC are
boxed together in a dashed box to indicate that these two blocks are usually combined
into one device (chip).

• The digital computer implements the control algorithm, which is usually represented
by difference equations.

• The DAC converts the digital signal coming out of the computer into an analog signal
in the form of a staircase continuous-time function, and that is why it is said that the
ADC is combined with zero-order hold.

• The plant is the system to be controlled. It is modeled by a continuous-time transfer


function, which includes the models of the actuator and sensor.2

The progression of signals in Fig. 9-1 goes as follows. The analog output y(t) is fed back
and subtracted from the analog reference r(t) to produce the analog error e(t). The error e(t)
is converted into the digital error e(kT ), which is fed to the computer. The output of the
computer is the digital control u(kT ), which is converted by the ADC into the analog control
u(t), which takes the form of a staircase continuous-time function.
In Fig. 9-2, the analog output y(t) is converted into a digital signal y(kT ) and then
subtracted from the digital reference r(kT ) to produce the digital error e(kT ). The summation
2 The model could also be a state-space model but we will not consider state-space models in this chapter.
9-2. DISCRETE-TIME SYSTEMS 381

node and the computer are boxed together in a dashed box to indicate that the calculation
e(kT ) = r(kT )− y(kT ) is usually performed in the same computer that implements the control
algorithm.
In the analysis and design of digital control systems, the effect of quantization is ignored.
Digital signals are treated as discrete-time signals whose values are defined continuously. The
effect of quantization can be accounted for by treating it as a perturbation of the system’s
coefficients and by the noise that corrupts the signals. An example of such an examination is
given in Section 9-9.

9-2 Discrete-Time Systems


A discrete-time system is a system whose inputs and outputs are discrete-time signals. A
linear Single-Input–Single-Output (SISO) discrete-time system is modeled by the difference
equation
y(k + n) = −an−1 y(k + n − 1) − an−2 y(k + n − 2) − · · · − a0 y(k)
+ bn u(k + n) + bn−1 u(k + n − 1) + · · · + b0 u(k) , (9.1)
where u is the input, y is the output, and k is the time variable (k = 0, 1, 2, . . .). The present
output y(k + n) is a linear combination of the n past outputs, y(k + n − 1) to y(k), the present
input u(k + n), and the n past inputs, u(k + n − 1) to u(k). The equation is said to be of
order n. The system can be represented by a transfer function using the z-transform, which
plays a role for discrete-time systems analogous to the role played by the Laplace transform
for continuous-time systems.

z-Transform
For the discrete-time signal x(k), k = 0, 1, 2, . . ., the z-transform is defined by

X
X (z) = Z{x(k)} = x(k) z−k , (9.2)
k=0

where z is a complex variable. The infinite series is convergent over a region of the form
|z| ≥ r0 (region of convergence).

Properties of the z-transform


(a) Linearity:
Z{a1 x1 (k) + a2 x2 (k)} = a1 X1 (z) + a2 X2 (z) . (9.3)

(b) Time Shift by n: " #


n−1
X
Z{x(k + n)} = zn X (z) − x(i) z−i . (9.4)
i=0
Also, if x(i) = 0 for 0 ≤ i ≤ n − 1, Z{x(k + n)} = zn X (z) ,
and if x(i) = 0 for i < 0, Z{x(k − n)} = z−n X (z) .
382 CHAPTER 9. DIGITAL CONTROL

(c) Scaling in the z-domain:


Z{a−k x(k)} = X (az) . (9.5)

(d) Convolution: ( ∞ )
X
Z x1 (ℓ) x2 (k − ℓ) = X1 (z) X2 (z) . (9.6)
ℓ=0

(e) Final Value Theorem: If all poles of (z − 1) X (z) are inside the unit circle, then

lim x(k) = lim(z − 1) X (z) . (9.7)


k→∞ z→1

Example 9-1: z-Transform of an Exponential Function

Find the z-transform of x(k) = aλ k , where λ is a complex number.


Solution:

X ∞  k
X
k −k λ a az
X (z) = aλ z =a = = , if |z| > |λ | .
z 1 − (λ /z) z − λ
k=0 k=0

Transfer functions
The transfer function of a discrete-time system is the ratio of the z-transform of the output to
the z-transform of the input, assuming zero initial conditions. Let u(k) and y(k) be the input
and output, respectively. Then,

U (z) = Z{u(k)}, Y (z) = Z{y(k)} .

The transfer function G(z) is defined by

Y (z) = G(z) U (z) .

Consider the system

y(k + n) = −an−1 y(k + n − 1) − an−2 y(k + n − 2) − · · · − a0 y(k)


+ bn u(k + n) + bn−1 u(k + n − 1) + · · · + b0 u(k) .

Take the z-transform of both sides assuming zero initial conditions:

znY (z) = −an−1 zn−1Y (z) − an−2 zn−2Y (z) − · · · − a0Y (z)
+ bn znU (z) + bn−1 zn−1 U (z) + · · · + b0 U (z) ,
9-2. DISCRETE-TIME SYSTEMS 383

which can be rewritten as

(zn + an−1 zn−1 + an−2 zn−2 + · · · + a0 ) Y (z) = (bn zn + bn−1 zn−1 + · · · + b0 ) U (z) ,

leading to the transfer function

Y (z) bn zn + bn−1 zn−1 + · · · + b0


G(z) = = n . (9.8)
U (z) z + an−1 zn−1 + an−2 zn−2 + · · · + a0
The transfer function can be written from the difference equation by inspection, and vice
versa.

Example 9-2: Finding the Transfer Function from the Difference-Equation Model

Find the transfer function of a system represented by the difference equation


1
y(k + 2) = 2 y(k + 1) − 41 y(k) + u(k + 1) .

Solution: Rewrite the equation as

y(k + 2) − 21 y(k + 1) + 41 y(k) = u(k + 1) ,

which gives
z
G(z) = .
1
z2 − z + 41
2

Example 9-3: Finding the Difference-Equation Model from the Transfer Function

Find the difference-equation model of a system represented by the transfer function


0.96z + 0.92
G(z) = .
z2 − 0.9z + 0.81

Solution:
Y (z) 0.96z + 0.92
= G(z) = 2 ,
U (z) z − 0.9z + 0.81
which can be rearranged as

(z2 − 0.9z + 0.81) Y (z) = (0.96z + 0.92) U (z) ,

and then inverse z-transformed into

y(k + 2) − 0.9 y(k + 1) + 0.81 y(k) = 0.96 u(k + 1) + 0.92 u(k) .


384 CHAPTER 9. DIGITAL CONTROL

Impulse response
Taking the inverse z-transform of Y (z) = G(z) U (z) yields the convolution summation

X
y(k) = g(ℓ) u(k − ℓ) ,
ℓ=0

where
u(k) = Z −1 {U (z)}, y(k) = Z −1 {Y (z)}, g(k) = Z −1 {G(z)} .
Consider the impulse input:

1, k=0
u(k) = δ (k) = y(k) = g(k) .
0, k>0

The function g(k) is called the impulse response.

Poles and zeros


For the rational transfer function G(z) = N(z)
D(z) , the roots of N(z) = 0 are the zeros of G(z) and
the roots of D(z) = 0 are the poles of G(z).

Stability
The system is stable if for every bounded input, the output is bounded.

Theorem 9.1 A discrete-time system represented by a rational proper transfer function G(z)
is stable if and only if all
Ppoles of G(z) are inside the unit circle; that is, |pi | < 1 for i = 1, . . . , n,
which is equivalent to ∞ k=0 |g(k)| < ∞, where g(k) = Z −1 {G(z)}.

Proof of sufficiency for the special case when G(z) has distinct poles:3
G(z) G(z)
Write G(z) = z z and expand z using partial-fraction expansion:

X ki z n
k1 z kn z
G(z) = + ··· + = . (9.9)
z − p1 z − pn z − pi
i=1

Take the inverse z-transform using Example 9-1:


( n ) n
X ki z X
g(k) = Z −1 {G(z)} = Z −1 = ki pki ,
z − pi
i=1 i=1


X ∞ X
X n n
X ∞
X
|g(k)| = ki pki ≤ |ki | |pi |k ,
k=0 k=0 i=1 i=1 k=0

3A complete proof can be carried out by steps analogous to the proofs of Theorem 3.1 and 3.2.
9-2. DISCRETE-TIME SYSTEMS 385


X ∞
X
1
|pi | < 1 |pi |k = <∞ |g(k)| < ∞ .
1 − |pi |
k=0 k=0
P∞
The output y(k) is given by y(k) = ℓ=0 g(ℓ) u(k − ℓ). For a bounded input, |u(k − ℓ)| ≤ Ku .
Therefore,

X ∞
X ∞
X
|y(k)| = g(ℓ) u(k − ℓ) ≤ |g(ℓ)| |u(k − ℓ)| ≤ Ku |g(ℓ)| ,
ℓ=0 ℓ=0 ℓ=0

which shows that the output is bounded.

Steady-state output to step inputs


Let G(z) be a stable transfer function and

r, k ≥ 0,
u(k) = r 1(k) =
0, k < 0,

where 1(k) is the unit step function. In the z-domain,


rz rz
U (z) = Y (z) = G(z) .
z−1 z−1

All poles of (z − 1)Y (z) = rz G(z) are inside the unit circle. By the final value theorem,

def
yss = lim y(k) = lim(z − 1) Y (z) = lim rz G(z) = G(1) r .
k→∞ z→1 z→1

The function G(1) is called the dc gain.

Example 9-4: Steady-State Output to a Step Input

Show that
0.96z + 0.92
G(z) =
z2 − 0.9z + 0.81
is stable and find the steady-state output to a unit step input.
Solution:
z2 − 0.9z + 0.81 = 0 p1,2 = 0.45 ± j0.7794,

|p1,2 | = 0.9 G(z) is stable,


yss = G(1) = 2.0659.
386 CHAPTER 9. DIGITAL CONTROL

Frequency response
Let G(z) be a stable transfer function and, for convenience, assume that its poles p1 , . . . , pn are
distinct. Let u(k) = A cos(kω T ), where 2π /(ω T ) is an integer; u(k) is a sinusoidal function
of k with period 2π /(ω T ):
A  jkω T 
u(k) = e + e− jkω T ,
2
 
A z z
U (z) = + ,
2 z − e jω T z − e− jω T
and
 
A z z
Y (z) = G(z) U (z) = G(z) + .
2 z − e jω T z − e− jω T
By partial-fraction expansion,
X ki z n
A  z A  z
Y (z) = G e jω T j ω T
+ G e− jω T − j ω T
+ ,
2 z−e 2 z−e z − pi
i=1

which translates into


n
A   X k
y(k) = G e jω T e jkω T + G(e− jω T )e− jkω T + ki pi .
2
i=1
jω T
  
Write G e = Me jψ , where M = G e jω T and ψ = ∠G e jω T . It can be shown that
G e− jω T = Me− jψ , and
A    A h i
G e jω T e jkω T + G e− jω T e− jkω T = M e j(kω T +ψ ) + e−( jkω T +ψ )
2 2
= AM cos(kω T + ψ ) .
Hence,
n
X
y(k) = AM cos(kω T + ψ ) + ki pki ,
i=1
n
X
|pi | < 1 lim ki pki = 0 lim [y(k) − AM cos(kω T + ψ )] = 0.
k→∞ k→∞
i=1
The steady-state output to a sinusoidal input is a sinusoidal signal of the same
 frequency with
the magnitude and phase modified by the magnitude and phase of G e jω T :

G e jω T = G(z)|z=e jω T is the frequency response of G(z).

Here, G e jω T is a periodic function of ω with period 2π /T . Therefore, the frequency
response of discrete-time systems is applicable only for
π π
− ≤ω ≤ .
T T
9-3. DIGITAL CONTROL SYSTEMS 387

9-3 Discrete-Time Equivalent of Digital Control System


A digital control system consists of the interconnection of continuous-time components and
discrete-time components. To analyze and design such a system, we derive a discrete-time
equivalent of the system in which all signals are defined in discrete time. Thus, continuous-
time signals are represented by their samples at the sampling points.
The starting point is to derive a discrete-time equivalent of a continuous-time system
preceded by zero-order hold. Figure 9-4 shows a typical setup where a digital computer
computes the discrete-time control signal u(kT ), which is defined at the sampling points kT ,
for k = 0, 1, 2, . . .. The control signal u(kT ) is converted by the analog-to-digital converter
into a continuous-time control signal u(t), defined by
u(t) = u(kT ), kT ≤ t < (k + 1)T .
The signal u(t) is a staircase continuous-time function where u(t) is kept constant over the
sampling period at its value at the beginning of the period; that is why the analog-to-digital
converter is said to be zero-order hold. Given the transfer function G̃(s) of the continuous-
time system, the goal is to derive a discrete-time transfer function G(z) that shows how the
discrete-time samples of the output, y(kT ), are produced by the input u(kT ).

u(kT ) DAC u(t) Continuous-time y(t)


Computer
ZOH system

u(kT ) Discrete-time y(kT )


equivalent

Figure 9-4: Discrete-time equivalent of continuous-time system preceded by ZOH.

The derivation starts by finding a mathematical model of how a staircase continuous-time


function is related to the sampled continuous-time function. Let f (t) be a continuous-time
function and f¯(t) be the staircase continuous-time function defined by
f¯(t) = f (kT ), kT ≤ t < (k + 1)T, k = 0, 1, 2, . . .
The function f¯(t) is generated from f (t) by sampling and zero-order hold, as shown in
Fig. 9-5. We plan to find a mathematical model of the block Sample/ZOH in the figure. We
start by taking the Laplace transform of f¯(t):
Z ∞
¯
F̄(s) = L{ f (t)} = f¯(t) e−st dt
0
X Z kT +T
∞ ∞
X Z kT +T
−st
= f (kT )e dt = f (kT ) e−st dt . (9.10)
k=0 kT k=0 kT
388 CHAPTER 9. DIGITAL CONTROL

f (t) Sample ¯f (t)


ZOH

Figure 9-5: Sample/ZOH.

By computing the integral


Z kT +T   t=kT +T
−st 1 e−kT s (1 − e−T s )
e dt = − e−st =
kT s t=kT s

and substituting the result in the expression for F̄(s), we obtain


X ∞
e−kT s (1 − e−T s ) (1 − e−T s ) X
F̄(s) = f (kT ) = f (kT )e−kT s .
s s
k=0 k=0

Next, we define

X
(1 − e−T s ) ⋆
GZOH (s) = , F (s) = f (kT )e−kT s ,
s
k=0

and rewrite the expression for F̄(s) as

F̄(s) = GZOH (s) F ⋆ (s) .

This equation represents a continuous-time system whose transfer function is GZOH (s) with
input F ⋆ (s) and output F̄(s). Transfer function GZOH (s) is called the transfer function of the
zero-order hold. We already know that F̄(s) is the Laplace transform of f¯(t). What is f ⋆ (t)
whose Laplace transform is F ⋆ (s)?
The inverse Laplace transform of F ⋆ is given by
( ∞ )
X
f ⋆ (t) = L−1 {F ⋆ (s)} = L−1 f (kT )e−kT s
k=0

X ∞
X
−1
 −kT s
= f (kT ) L e = f (kT ) δ (t − kT ) . (9.11)
k=0 k=0

The time-domain function f ⋆ (t) consists of a train of impulses at the sampling points. The
strength of the impulse at kT is f (kT ). Next, we define an ideal sampler that generates f ⋆ (t)
from f (t).
9-3. DIGITAL CONTROL SYSTEMS 389

f (t) f (t)
T
Figure 9-6: Ideal (Impulse) sampler.

f (t)
f (t) GZOH (s) ¯f (t)
T

Figure 9-7: Representation of Sample/ZOH by ideal sampler followed by GZOH (s).

Ideal (or impulse) sampler:


Figure 9-6 shows the block diagram symbol for an (artificial) process that generates f ⋆ (t)
from f (t). With this definition of the ideal sampler, the (physical) Sample/Zero-Order Hold
process can be represented (mathematically) by the block diagram of Fig. 9-7.
Now, the output y(t) of a continuous-time transfer function G̃(s), preceded by zero-order
hold, is represented by the block diagram of Fig. 9-8.

u (t) ū(t)
u(t) GZOH (s) G̃(s) y(t)
T

Figure 9-8: Mathematical representation of y(t).

Let P(s) = G̃(s)GZOH (s), which leads to



X ∞
X
⋆ −ℓT s
Y (s) = P(s) U (s) = P(s) u(ℓT ) e = u(ℓT ) P(s)e−ℓT s (9.12a)
ℓ=0 ℓ=0
and

X
−1

y(t) = L {Y (s)} = u(ℓT )L−1 P(s)e−ℓT s . (9.12b)
ℓ=0

Next, we let p(t) = L−1 {P(s)}, which means that



p(t − ℓT ) = L−1 P(s) e−ℓT s
and
390 CHAPTER 9. DIGITAL CONTROL


X
y(t) = u(ℓT ) p(t − ℓT ) .
ℓ=0

The samples y(kT ) of y(t) are given by



X
y(kT ) = u(ℓT ) p(kT − ℓT ) .
ℓ=0

The right-hand side of this equation is a convolution summation of the discrete-time signals
u(kT ) and p(kT ). Taking the z-transform and using the property that the z-transform of the
convolution summation of two signals is the product of their z-transforms, we obtain

Y (z) = G(z) U (z), where G(z) = Z{p(kT )} .

G(z) is the transfer function of the discrete-time equivalent of G̃(s) preceded by ZOH.
The calculation of G(z) can be simplified as follows:
 
1 − e−T s G̃(s) G̃(s)
P(s) = G̃(s) GZOH (s) = G̃(s) = − e−T s .
s s s
Next, set  
−1 G̃(s)
q(t) = L ,
s
which leads to

p(t) = L−1 {P(s)} = q(t) − q(t − T ) p(kT ) = q(kT ) − q(kT − T ) .

Let Q(z) = Z{q(kT )} G(z) = Q(z) − z−1 Q(z) = (1 − z−1 ) Q(z) .


The calculation of G(z) is summarized by the process

G̃(s) L−1 T Z
q(t) q(kT ) Q(z) (9.13a)
s
and
G(z) = (1 − z−1 ) Q(z) . (9.13b)
Let us introduce the notation

H(z) = Z L−1 {H(s)} ,

which
 −1combines taking the inverse Laplace transform and the z transform. The notation
Z L {(H(s)} says that we first take the inverse Laplace transform of H(s) to obtain
h(t), then sample h(t) at the sampling points to obtain h(kT ), and follow up by taking the
z-transform of h(kT ). This calculation is facilitated by a combined Laplace/z-transform table
whose first column is H(s), its second column is h(kT ), and the third column is H(z); see
Appendix C. The second and third hcolumns provide a z-transform table.
9-3. DIGITAL CONTROL SYSTEMS 391

With this notation, the calculation of the discrete-time equivalent G(z) of the continuous-
time G̃(s), preceded by zero-order hold, is summarized by

    
z−1 −1 G̃(s)
G(z) = Z L . (9.14)
z s

Example 9-5: Discrete-Time Equivalent of a Continuous-Time Transfer


Function Preceded by Zero-Order Hold

For each of the following transfer functions G̃(s), preceded by zero-order hold, find the
equivalent transfer function G(z).
1
(a) G̃(s) =
s2
a
(b) G̃(s) =
s+a

Solution:
(a)
1 G̃(s) 1
G̃(s) = , = 3 ,
s2 s s
1 z(z + 1)T 2
,
s3 2(z − 1)3
 
z−1 z(z + 1)T 2 T 2 (z + 1)
G(z) = = .
z 2(z − 1)3 2(z − 1)2
G̃(s) has two poles at s = 0; G(z) has two poles at z = 1. The poles of G(z) are mapped
from the poles of G̃(s) using z = esT .
(b)
a G̃(s) a
G̃(s) = , = ,
s+a s s(s + a)
a (1 − e−aT )z
,
s(s + a) (z − 1)(z − e−aT )
 
z−1 (1 − e−aT )z (1 − e−aT )
G(z) = = .
z (z − 1)(z − e−aT ) z − e−aT
The pole s = −a of G̃(s) maps into the pole z = e−aT of G(z). The mapping function is
z = esT .
392 CHAPTER 9. DIGITAL CONTROL

The observations made in the example about the poles mapping are true in general.

◮ The transfer functions G̃(s) and G(z) have the same number of poles. The poles of
G̃(s) map into the poles of G(z) using the mapping function z = esT . ◭

The calculation of G(z) from G̃(s) is done in MATLAB using the command “c2d”. If G1
is the MATLAB name for G̃ and T is the sampling period, then
G = c2d(G1,T,’zoh’) .

r(t ) + e(t) S/ZOH e(kT ) u(kT ) DAC u– (t) y(t)


∑ G c (z ) G̃p (s)
ADC ZOH

Figure 9-9: Digital feedback control system.

Consider the digital feedback control system of Fig. 9-9. The plant is represented by the
continuous-time transfer function G̃p (s). The controller is represented by the discrete-time
transfer function Gc (z). The input-output relationship of the controller is
U (z) = Gc (z) E(z) .
The error signal e(t) is given by
e(t) = r(t) − y(t) e(kT ) = r(kT ) − y(kT )
E(z) = R(z) −Y (z)
and
    
z−1 −1 G̃p (s)
Gp (z) = Z L .
z s
The discrete-time equivalent is shown in Fig. 9-10. The closed-loop transfer function is
Y (z) Gp (z) Gc (z)
= . (9.15)
R(z) 1 + Gp (z) Gc (z)

Example 9-6: Closed-Loop Transfer Function of the Discrete-Time Equivalent


System

A digital control system has the plant transfer function


a
G̃p (s) =
s+a
9-4. STABILITY OF DIGITAL CONTROL SYSTEMS 393

r (kT ) + e(kT ) u(kT ) y(kT )


∑ Gc (z ) G p (z )

Figure 9-10: Discrete-time equivalent of the system of Fig. 9-9.

and the controller transfer function Gc (z) = K. Find the closed-loop transfer function
Y (z)/R(z).
Solution: From Example 9-5,
(1 − e−aT )
Gp (z) =
z − e−aT
and
Y (z) Gp (z) Gc (z)
=
R(z) 1 + Gp (z) Gc (z)
(1 − e−aT )
K K(1 − e−aT )
= z − e−aT = .
(1 − e−aT ) z − e−aT + K(1 − e−aT )
1+K
z − e−aT

9-4 Stability of Digital Control Systems


Consider the feedback control system of Fig. 9-10. The system is stable if all poles of the
closed-loop transfer function
Gp (z) Gc (z)
1 + Gp (z) Gc (z)
are inside the unit circle; that is, the absolute value of all poles is less than one. The poles of
the closed-loop transfer function are the roots of the characteristic equation
1 + Gp (z) Gc (z) = 0.

Methods for the determination of stability:


(a) Calculation of the closed-loop poles.
(b) Root locus method.
(c) Routh-Hurwitz criterion (using the bilinear transformation).
(d) Nyquist criterion.
(e) Jury test (not covered).4
4 see Section 5.4 of [9].
394 CHAPTER 9. DIGITAL CONTROL

9-4.1 Calculation of the Closed-Loop Poles


The closed-loop poles can be determined by manually calculating the roots of the
characteristic equation or by using the MATLAB commands “pole” or “roots”.

Example 9-7: Determination of Stability by Calculation of the Closed-Loop Poles

Determine the stability of a digital control system where the continuous-time plant G̃p (s) and
the discrete-time PI controller Gc (z) are given by
1 0.1
G̃p (s) = , Gc (z) = 1 + .
s+1 z−1
The sampling period is T = 0.01 s.
Solution:
    
z−1 G̃(s) 1 − e−T 1 − e−0.01
Gp (z) = Z L−1 = −T
=
z s z−e z − e−0.01
and
0.1 z − 0.9
Gc (z) = 1 + = .
z−1 z−1
Find the roots of
(1 − e−0.01 )(z − 0.9)
1+ = 0,
(z − e−0.01 )(z − 1)
(z − e−0.01 )(z − 1) + (1 − e−0.01 )(z − 0.9) = 0,
z2 − 2e−0.01 z + 1.9e−0.01 − 0.9 = 0 z = 0.99 ± j0.0299,
|z| = 0.9905 < 1 the system is stable.

9-4.2 Root Locus Method


Let Gp (z)Gc (z) = KL(z). Construct the locus of the roots of 1 + KL(z) = 0 in the z-plane, as
K changes from zero to infinity, and determine the range of K for which the locus is inside
the unit circle. The rules for constructing the root locus are the same as those used in Section
4-2.

Example 9-8: Determination of Stability from the Root Locus: First-Order Case

Determine the stability of a digital control system where the discrete-time equivalent of the
plant Gp (z) and the discrete-time controller Gc (z) are given by
1−a
Gp (z) = , 0 < a < 1, Gc (z) = K ≥ 0.
z−a
9-4. STABILITY OF DIGITAL CONTROL SYSTEMS 395

Solution:
K(1 − a) (1 − a)
Gp (z) Gc (z) = = KL(z), where L(z) = .
z−a z−a
There is one branch of the root locus that starts at z = a < 1 and moves along the real axis
towards −∞. The root locus crosses the unit circle at z = −1. Hence,
Kmax |L(z)|z=−1 = 1,
Kmax (1 − a) 1+a
=1 Kmax = .
| − 1 − a| 1−a
The system is stable for K < Kmax .

Example 9-9: Determination of Stability from the Root Locus: Second-Order


Case

Determine the stability of a digital control system where the discrete-time equivalent of the
plant Gp (z) and the discrete-time controller Gc (z) are given by
1 − e−1 K(z − 0.9)
Gp (z) = , Gc (z) = , K ≥ 0.
z − e−1 z−1
Solution:
K(1 − e−1 )(z − 0.9) (1 − e−1 )(z − 0.9)
Gp (z) Gc (z) = = KL(z) , where L(z) = .
(z − e−1 )(z − 1) (z − e−1 )(z − 1)
L(z) has two poles at z = e−1 and z = 1 and one zero at z = 0.9. The zero is located between
the two poles because e−1 = 0.368 < 0.9. There are two branches of the root locus, the first
branch starts at z = 1 and terminates at z = 0.9 and the second branch starts at z = e−1 and
moves along the real axis towards −∞. Because at K = 0 there is a root at z = 1, K must be
positive for stability. The second branch crosses the unit circle at z = −1. Hence,
Kmax |L(z)|z=−1 = 1.
Kmax (1 − e−1 )(−1 − 0.9) 2(1 + e−1 )
=1 Kmax = = 2.2778.
(−1 − e−1 )(−1 − 1) 1.9(1 − e−1 )
The system is stable for 0 < K < 2.2778.

Example 9-10: Determination of Stability from the Root Locus: Second-Order


Case

Determine the stability of a digital control system where the discrete-time equivalent of the
plant Gp (z) and the discrete-time controller Gc (z) are given by
1 − e−1 K(z + 1)
Gp (z) = , Gc (z) = , K ≥ 0.
z − e−1 z−1
396 CHAPTER 9. DIGITAL CONTROL

Solution:
K(1 − e−1 )(z + 1)
Gp (z) Gc (z) = .
(z − e−1 )(z − 1)
The MATLAB-constructed root locus is shown in Fig. 9-11. The root locus crosses the unit
circle at K = 1.01. The system is stable for 0 < K < 1.01.
Imaginary Axis

– – – – – –

Figure 9-11: Root locus of Example 9-10.

Bilinear transformation:
The bilinear transformation allows us to map stability determination and frequency-response
analysis from the discrete-time domain (z-plane) to a continuous-time domain (w-plane),
where  
z−1 1 + w/c
w=c , c>0 z= ,
z+1 1 − w/c
 2 2
1 + σc + j υc 2 1 + σc + υc
w = σ + jυ z=  |z| = 2 2 ,
1 − σc − j υc 1 − σc + υc
σ =0 |z| = 1,
σ <0 |z| < 1.
9-4. STABILITY OF DIGITAL CONTROL SYSTEMS 397

The bilinear transformation maps the unit circle in the z-plane into the imaginary axis in the
w-plane and maps the interior of the unit circle in the z-plane into the left half of the w-plane.

Frequency response in the z-plane:


π π
z = e jω T , − ≤ω ≤ ,
T T
Frequency response in the w-plane:
w = jυ , −∞ ≤ υ ≤ ∞ ,
1 + j υc υ 
w = jυ z= ∠z = 2 tan−1 ,
1 − j υc c
υ 
z = e jω T ∠z = ω T ω T = 2 tan−1 ,
c
 
ωT
υ = c tan ,
2
 
2 2 ωT ωT
c= υ = tan , ≪1 υ ≈ω .
T T 2 2

• For stability analysis, set c = 1.


• For mapping the frequency response, set c = 2/T .

9-4.3 Routh-Hurwitz Criterion


To determine whether or not the roots of a polynomial equation F(z) = 0 are inside the unit
circle, apply the Routh-Hurwitz criterion to determine if the roots of

F(z)|z=(1+w)/(1−w) = 0

are in the left-half plane.

Example 9-11: Determination of Stability by the Routh-Hurwitz Criterion

Determine the stability of a digital control system where the discrete-time equivalent of the
plant Gp (z) and the discrete-time controller Gc (z) are given by

1 − e−0.01 K(z − 0.9)


Gp (z) = , Gc (z) = .
z − e−0.01 z−1

Solution:
K(1 − e−0.01 )(z − 0.9)
1+ = 0,
(z − e−0.01 )(z − 1)
398 CHAPTER 9. DIGITAL CONTROL

(z − e−0.01 )(z − 1) + K(1 − e−0.01 )(z − 0.9) = 0,


1+w
z ,
1−w
    
1+w −0.01 1+w −0.01
 1+w
−e −1 +K 1−e − 0.9 = 0,
1−w 1−w 1−w
  
2w (1 + e−0.01 )w + 1 − e−0.01 + K 1 − e−0.01 (1 − w)(1.9w + 0.1) = 0,
(3.9801 − 0.0189K)w2 + (0.0199 + 0.0179K)w + 0.001K = 0.
By the Routh-Hurwitz criterion, all coefficients must have the same sign. Since K ≥ 0, the
system is stable for
3.9801
0<K< = 210.6.
0.0189

9-4.4 Nyquist Criterion


The Nyquist criterion is derived using Cauchy’s principle of the argument. Let

Gp (z) Gc (z) = KG(z) , K > 0.

Draw a clockwise contour in the z-plane that encircles the outside of the unit circle.
Figure 9-12 shows how this contour is constructed. Starting at z = 1 where ω = 0, move
counter clockwise along the upper half of the unit circle until you reach the point z = −1
where ω = π /T . Move along a horizontal line infinitesimally close to the real axis until you
reach a circle of radius R; this will be at the point z = −R. Complete one clockwise revolution
around this circle until you come back to the point z = −R. Move along a horizontal line
infinitesimally close to the real axis until you reach the point z = −1. Finally move clockwise
along the lower half of the unit circle until you reach the stating point z = 1. Now let R → ∞ so
that the contour encircles the outside of the unit circle clockwise. This is the Nyquist contour.
If G(z) has a pole at z = 1, make an infinitesimally small indentation (outside the unit
circle) around z = 15 :
π π
z = 1 + ε e jφ , ε → 0, φ :− →0→ .
2 2

Map the Nyquist contour into the G-plane. This is the Nyquist plot. The important part
of the Nyquist plot is mapping the motion on the unit circle, which is the frequency response
of G(e jω T ) as ω changes from 0 to π /T . The frequency response as ω changes form −π /T
to 0 is the mirror image of the frequency response from 0 to π /T . The frequency response
can be calculated and plotted by the MATLAB command “nyquist”. The infinite-radius circle
maps into a single point, which is the origin when G(z) is strictly proper. The motions on the
horizontal lines from z = −1 to −∞ and back map into segments of the Nyquist plot on the
real axis that reach the origin. These segments do not interfere with counting the number of
5 Small indentations should also be made around any pole on the unit circle, but we shall not encounter such
cases.
9-4. STABILITY OF DIGITAL CONTROL SYSTEMS 399

z -plane

R →∞

R
π
ω= T
ω=0

π ω = 0−
ω= − T
Unit
circle

Figure 9-12: Clockwise contour that encircles the outside of the unit circle.

encirclements of the critical point. Therefore, we do not pay attention to them. If there is a
small infinitesimal indentation around z = 1, it maps into an infinite-radius arc that closes the
Nyquist plot.
Let:
P = number of poles of G(z) outside the unit circle,
Z = number of zeros of 1 + KG(z) outside the unit circle, and
N = number of counterclockwise encirclements of the point − K1 + 0 j by the Nyquist plot.
The system is stable when Z = 0.

Nyquist criterion: Z = P−N

Example 9-12: Determination of Stability by the Nyquist Criterion

Determine the stability of a digital control system where the continuous-time plant G̃p (s) and
400 CHAPTER 9. DIGITAL CONTROL

the discrete-time controller Gc (z) are given by


1
G̃p (s) = , Gc (z) = K ≥ 0.
(s + 1)(s + 2)(s + 3)
The sampling period is T = 0.01 s.
Solution: Using MATLAB, the discrete-time equivalent of the plant is
1.6419 × 10−7 (z + 0.264)(z + 3.677)
Gp (z) = ,
(z − 0.99)(z − 0.9802)(z − 0.9704)
and the Nyquist plot of Gp (z) is shown in Fig. 9-13. Zooming on the intersection with the real
axis, it is determined that the Nyquist plot intersects the real axis at −0.0169. Because Gp (z)
has no poles outside the unit circle; that is, P = 0, the system is stable when N = 0. This is
the case if
1 1 1
− < −0.0169 > 0.0169 K< = 59.17.
K K 0.0169
The system is stable for K < 59.17.

Nyquist Diagram –3 Nyquist Diagram


10
4
0.1
Imaginary Axis

Imaginary Axis

0 0

–2
–0.1
–4
–0.1 0 0.1 0.2 –0.02 –0.01 0
Real Axis Real Axis

Figure 9-13: Nyquist plot of Example 9-12.

Example 9-13: Determination of Stability by the Nyquist Criterion: A Case


with a Pole at z = 1

Determine the stability of a digital control system where the continuous-time plant G̃p (s) and
the discrete-time controller Gc (z) are given by
1
G̃p (s) = , Gc (z) = K ≥ 0 .
s(s + 1)
9-4. STABILITY OF DIGITAL CONTROL SYSTEMS 401

The sampling period is T = 0.1 s.

Solution: Using MATLAB, the discrete-time equivalent of the plant is

0.0048374(z + 0.9672)
Gp (z) = ,
(z − 1)(z − 0.9048)

and the frequency response part of the Nyquist plot of Gp (z) is shown in Fig. 9-14.

Indentation around z = 1:
π π
z = 1 + ε e jφ , ε → 0, φ :− →0→ ,
2 2

0.0048374(1 + ε e jφ + 0.9672) 0.0048374 × 1.9672e− jφ


Gp (z) = ≈ ,
(1 + ε e jφ − 1)(1 + ε e jφ − 0.9048) 0.0952ε

π π
|Gp | → ∞ , −φ : →0→− .
2 2
The mapping of the indentation is a clockwise infinite-radius arc that closes the Nyquist plot
on the right side. Zooming on the intersection with the real axis, it is determined that the
Nyquist plot intersects the real axis at −0.0493. Because Gp (z) has no poles outside the unit
circle, that is, P = 0, the system is stable when N = 0. This is the case if

1 1 1
− < −0.00493 > 0.0493 K< = 20.28.
K K 0.0493

The system is stable for 0 < K < 20.28.

Nyquist Diagram 10 –3 Nyquist Diagram


20
1
Imaginary Axis

Imaginary Axis

10

0 0

–10
–1
–20
–1 –0.5 0 –0.051 –0.05 –0.049 –0.048 –0.047
Real Axis Real Axis

Figure 9-14: Nyquist plot of Example 9-13.


402 CHAPTER 9. DIGITAL CONTROL

Stability margins
The gain and phase margins are defined as in the continuous-time case.
• The Gain Margin is the gain increase that makes the system marginally stable.
• The Phase Margin is the phase decrease that makes the system marginally stable.
They can be calculated using the MATLAB command “margin”.

Example 9-14: Stability Margins for a Digital Control System

Find the gain and phase margins of the systems of Example 9-13 when K = 5.
Solution: The MATLAB statement

margin(5*Gp)

produces Fig. 9-15.

Bode Diagram
GM = 12.2 dB (at 4.44 rad/s), PM = 19.1° (at 2.12 rad/s)
50
Magnitude (dB)

–50

–100

–90
Phase (deg)

–135

–180

–225

–270
10 –2 10 –1 10 0 10 1 10 2
Frequency (rad/s)

Figure 9-15: Gain and phase margins of Example 9-14.


9-5. STEADY-STATE ERROR 403

9-5 Steady-State Error


Consider the feedback control system of Fig. 9-10. Suppose the closed-loop system is stable.
Set G(z) = Gp (z) Gc (z). The z-transform of the tracking error is given by:

1
E(z) = R(z) . (9.16)
1 + G(z)

Type of feedback system:


The system is type N ≥ 0 if G(z) has N poles at z = 1.

Step input
Az
r(kT ) = A1(k) = A for k ≥ 0, R(z) = ,
z−1
 
Az
e(∞) = lim e(k) = lim[(z − 1) E(z)] = lim (z − 1) ,
k→∞ z→1 z→1 [1 + G(z)](z − 1)
or (
A
1+G(1) if N = 0,
e(∞) =
0 if N ≥ 1,
For N = 0,
def
Kp = G(1) , (position error constant)
A
e(∞) = .
1 + Kp

Ramp input
A Tz
r(kT ) = A kT for k ≥ 0, R(z) = ,
(z − 1)2
 
A Tz
e(∞) = lim e(k) = lim[(z − 1) E(z)] = lim (z − 1) ,
k→∞ z→1 z→1 [1 + G(z)](z − 1)2
or 

 ∞ if N = 0
 AT
e(∞) = if N = 1

 (z − 1)G(z)|z=1

0 if N ≥ 2.
For N = 1,
def 1
Kυ = (z − 1) G(z)|z=1 , (velocity error constant)
T
A
e(∞) = .

404 CHAPTER 9. DIGITAL CONTROL

Example 9-15: Steady-State Error

Consider a digital control system where the discrete-time equivalent of the plant Gp (z) and
the discrete-time controller Gc (z) are given by
1−a
Gp (z) = , 0 < a < 1, Gc (z) = K ≥ 0.
z−a
Find the steady-state error to a unit step input. Can we make the error arbitrarily small by
choosing K large enough? If the answer is NO, how would you make the error arbitrarily
small?
Solution: Determine the range of K for stability. The characteristic equation is
K(1 − a)
1+ =0 z − a + K(1 − a) = 0.
(z − a)
There is one closed-loop pole at z = a − K(1 − a). For stability
1+a
−1 < z < 1 − 1 < a − K(1 − a) < 1 −1 < K < .
1−a
1+a
The lower bound on K is satisfied because K ≥ 0. Hence, the system is stable for K < 1−a .
Find the steady-state error to a unit step input:
K(1 − a)
G(z) = Gp (z) Gc (z) = , (Type Zero)
z−a
1
Kp = G(1) = K e(∞) = .
1+K
The error cannot be made arbitrarily small by choosing a large value for K because K is
limited by K < (1 + a)/(1 − a) for stability. The error can be reduced by using a PI controller.
The transfer function of the PI controller is:
 
b
Gc (z) = K 1 + , K > 0, b > 0.
z−1
Hence,
K(z − 1 + b)(1 − a)
G(z) = Gp (z) Gc (z) = . (Type One)
(z − 1)(z − a)
Design K and b such that the system is stable. The steady-state error to a unit step input is
zero. We can calculate the steady-state error to a ramp input:
1 1 K(z − 1)(z − 1 + b)(1 − a)
Kυ = (z − 1) G(z)|z=1 = ,
T T (z − 1)(z − a) z=1
9-6. SAMPLE-FREQUENCY SELECTION 405

Kb
Kυ = .
T

The steady-state error to a unit ramp input is given by

1 T
e(∞) = = .
Kυ Kb

9-6 Sample-Frequency Selection


An important step in the design of digital control systems is the choice of the sampling period
or the sampling frequency, which are defined as follows:

T = sampling period (s),


1
fs = = sampling frequency in Hz,
T

ωs = = sampling frequency in rad/s.
T

The choice of the sampling frequency is a compromise between performance and cost. To
achieve the performance of an analog controller, T should be as small as possible, but reducing
T increases the cost because we need a faster computer with a larger wordlength (more bits).
To see the need for more bits when T is small, consider the analog PI controller
Gc (s) = Kp + (KI /s), which can be implemented digitally as Gc (z) = Kp + KI (T z/z − 1). As
T decreases, more bits are needed to represent the coefficient KI T ; otherwise it would be
rounded off to zero.

9-6.1 Sampling Theory


A fundamental result in digital signal processing is the sampling theory, which we summarize
here.

(a) Spectrum of a sampled signal:

Let f (t) be a continuous-time signal and F(ω ) be its Fourier Transform:


Z ∞
F(ω ) = F[ f (t)] = f (t) e− jω t dt .
−∞

Pass f (t) through an ideal sampler to obtain


X
f ∗ (t) = f (kT ) δ (t − kT ) .
k=−∞
406 CHAPTER 9. DIGITAL CONTROL

Compute the Fourier transform of f ⋆ (t):


Z ∞ ∞
X
F ∗ (ω ) = F[ f ∗ (t)] = f (kT ) δ (t − kT ) e− jω t dt
−∞ k=−∞
Z ∞ ∞
X
= f (t) δ (t − kT ) e− jω t dt
−∞ k=−∞
Z ∞ ∞
X
= f (t) δ (t − kT ) e− jω t dt .
−∞ k=−∞
P∞
Here, k=−∞ δ (t − kT ) is a periodic signal of period T . It can be represented by its Fourier
series:

X ∞
X 2π
δ (t − kT ) = cℓ e jω s ℓt , ωs = ,
T
k=−∞ ℓ=−∞

where Z ∞
1 T /2 X 1
cℓ = δ (t − kT ) e− jω s ℓt dt = .
T −T /2 k=−∞ T

Hence,

X ∞
1 X jω s ℓt
δ (t − kT ) = e .
T
k=−∞ ℓ=−∞

Substitution of this expression in F ⋆ (ω ) yields


Z ∞


1 X jω s ℓt − jω t
F (ω ) = f (t) e e dt ,
−∞ T
ℓ=−∞

X Z ∞
1
= f (t) e− j(ω −ω sℓ)t dt ,
T
ℓ=−∞ | −∞ {z }
F(ω −ω sℓ)

X
1
= F(ω − ω s ℓ) . (9.17)
T
ℓ=−∞

When a continuous-time signal f (t) is ideally sampled, the frequency spectrum of the sampled
signal f ⋆ (t) is a periodic repetition of the spectrum of f (t), multiplied by the factor 1/T . The
period of the periodic repetition in the frequency domain is the sampling frequency ω s . This
is illustrated in Fig. 9-16. The figure shows the phenomenon of aliasing, where the repeated
components of the spectrum overlap. Aliasing distorts information because the spectrum of
the original signal cannot be recovered from the spectrum of the sampled signal.
If f (t) is a band-limited signal, that is,

|F(ω )| = 0, for |ω | > ω max ,


9-6. SAMPLE-FREQUENCY SELECTION 407

Figure 9-16: (a) Sketch of the amplitude of F(ω ). (b) Sketch of the amplitude F ⋆ (ω ), multiplied
by T .

choosing ω s > 2ωmax ensures that there is no aliasing in the spectrum of the sampled signal.
Then, the original signal can be recovered by passing the sampled signal through an ideal
low-pass filter with a cutoff frequency of ω s /2.

(b) Shannon’s sampling theorem:

A band-limited signal with maximum frequency ω max can be uniquely determined from its
samples if ω s > 2 ω max .

9-6.2 Antialiasing Filter (Prefilter)


Physical signals are not band-limited. However, in many cases the energy (information)
content of a signal is concentrated within a limited frequency range. In such cases, we may
treat the signal as band-limited. To reduce the error due to aliasing, the signal is pre-filtered
(before sampling) by a low-pass filter having a cutoff frequency ω s /2. Figure 9-17 shows the
effect of the antialiasing filter in eliminating aliasing.
408 CHAPTER 9. DIGITAL CONTROL

Figure 9-17: (a) Sketch of the amplitude of F(ω ) after passing through an antialiasing filter.
(b) Sketch of the amplitude of F ⋆ (ω ), multiplied by T .

The sampling theorem requires that ω s > 2 ω max , but what is ω max for a control system?
It is usually set to be the bandwidth of the closed-loop transfer function, ω BW , because for
a well-designed control system, ω BW will cover the bandwidth of the reference signal and
will be adequate to ensure good dynamic response. Hence, the sampling theorem requirement
becomes ω s > 2ω BW . This choice, however, is usually not adequate. We need to choose ω s
much higher than 2ω BW to achieve acceptable performance.

9-6.3 Methods for Choosing ω s


(a) Effect of sampling on smoothness of the transient response.

(b) Effect of ZOH delay on stability.

(c) Effect of ZOH delay on tracking and disturbance rejection.


9-6. SAMPLE-FREQUENCY SELECTION 409

Smoothness of transient response


Fit 5 to 10 samples within the rise time of the step response:

Tr
5≤ ≤ 10.
T
What is the relationship to ω BW ? From the relations of Fig. 6-39, we have

2.16ζ + 0.6
Tr ≈ , ω BW ≈ (1.83 − 1.16ζ )ω n ,
ωn
Tr ω BW ≈ (2.16ζ + 0.6)(1.83 − 1.16ζ ) ,
Tr ω s (2.16ζ + 0.6)(1.83 − 1.16ζ )
≈ × .
T 2π ω BW

For 0.3 ≤ ζ ≤ 0.75,


(2.16ζ + 0.6)(1.83 − 1.16ζ ) 1
≈ .
2π 3
Hence,
Tr ωs
≈ ,
T 3 ω BW
and
Tr ωs
5≤ ≤ 10 15 ≤ ≤ 30.
T ω BW

Delay Due to ZOH


The effect of sampling and zero order hold on the analog control system can be approximated
by the transfer function (1 − e−sT )/(sT ), as shown in Fig. 9-18. The transfer function of ZOH
is (1 − e−sT )/s and the factor 1/T is due to sampling.

+ ∑ G c (s) 1− e− T s G p (s)
sT

Figure 9-18: Representation of sample/ZOH in an analog control system.

For a sufficiently small sampling period T , the transfer function (1 − e−sT )/(sT ) can be
approximated by a time delay equal to T /2 because

1 − e−sT 1 − (1 − sT + s2 T 2 /2 − · · · ) sT
= ≈ 1−
sT sT 2
410 CHAPTER 9. DIGITAL CONTROL

and
sT 1 − e−sT
e−sT /2 ≈ 1 − ≈ e−sT /2 .
2 sT
Time delay undermines stability because it reduces the phase margin:

T ω c 180
Reduction in PM = × (deg),
2 π
where ω c is the crossover frequency. For 5◦ to 10◦ reduction in PM, T should satisfy

0.175 ≤ T ω c ≤ 0.35.

What is the relationship to ω BW ?

2π ω BW
ω BW ≈ 1.6 ω c T ωc ≈ × .
ωs 1.6

Therefore,
ωs
11.25 ≤ ≤ 22.5.
ω BW

Effect of ZOH delay on tracking and disturbance rejection


Holding the control signal constant over the sampling period limits the system’s ability to
react to changes in the reference or disturbance signals. Numerical investigation show that the
sampling frequency should satisfy6

ω s ≥ 20ω BW

in order to preserve the tracking and disturbance rejection properties of the analog control
system.

Example 9-16: Sample Period Selection

A feedback control system is expected to have a settling time of no more than 100 ms and an
overshoot of no more than 20%.

(a) What is the sampling period T if the reduction in the phase margin is to be no more
than 10◦ ?

(b) What is the sampling period T if there are to be 10 samples per rise time?
6 See [12].
9-7. DESIGN BY EMULATION 411

Solution: For 20% overshoot, set ζ = 0.5. Hence,

4
Ts = = 0.1 ω n = 80 rad/s,
ζ ωn
2.16ζ + 0.6
Tr ≈ = 0.021 s,
ωn
and
(3.35 − 2ζ )ω n
ωc ≈ = 62.67 rad/s.
3
(a)
T 180
× ωc × = 10,
2 π
10 × 2 × π
T= = 0.0056 s = 5.6 ms.
180 × 62.67

(b)
Tr 0.021
T= = = 2.1 ms.
10 10

9-7 Design by Emulation


The controller is designed in continuous time and converted into a discrete-time controller by
approximation.

Design steps:
(1) Design a continuous-time controller G̃c (s) to meet the design specifications.

(2) Choose the sampling period.

(3) Approximate the continuous-time controller G̃c (s) by a discrete-time controller Gc (z).

(4) Evaluate the performance of the digital controller by analysis and/or simulation of the
discrete-time equivalent of the closed-loop system.

Common approximations of continuous-time transfer functions


• Forward Difference Method (FDM)

Gc (z) = G̃c (s) s=(z−1)/T


.

• Backward Difference Method (BDF)

Gc (z) = G̃c (s) s=(z−1)/(T z)


.
412 CHAPTER 9. DIGITAL CONTROL

• Tustin (Trapezoidal or Bilinear Transformation (BT)) Method

Gc (z) = G̃c (s) s=(2/T )(z−1)/(z+1)


.

• ZOH Method     
z−1 −1 G̃c (s)
Gc (z) = Z L .
z s

The ZOH method is based on approximating the input by a staircase continuous-time function
that is constant in-between the sampling points. The other three methods are derived from
numerical integration methods. Consider the integral
Z
y(t) = x(τ ) d τ ,

whose Laplace transform is


1
Y (s) =X (s) .
s
Integration over one sampling period is given by
Z (k+1)T
y[(k + 1)T ] = y(kT ) + x(τ ) d τ .
kT

FDM:
x(τ ) ≈ x(kT ) .
y[(k + 1)T ] = y(kT ) + T x(kT ) .
Taking the z-transform yields
T
(z − 1) Y (z) = T X (z) Y (z) = X (z) .
z−1
Comparison of the s- and z-transfer functions shows that
1 T z−1
7→ s 7→ .
s z−1 T
BDM:
x(τ ) ≈ x[(k + 1)T ] ,
y[(k + 1)T ] = y(kT ) + T x[(k + 1)T ] .
Take the z-transform:
Tz
(z − 1) Y (z) = T z X (z) Y (z) = X (z) ,
z−1
1 Tz z−1
7→ s 7→ .
s z−1 Tz
9-7. DESIGN BY EMULATION 413

Tustin:
1
x(τ ) ≈ {x(kT ) + x[(k + 1)T ]} ,
2
T
y[(k + 1)T ] = y(kT ) + {x(kT ) + x[(k + 1)T ]]} .
2
Take the z-transform.
 
T T z+1
(z − 1) Y (z) = (z + 1) X (z) Y (z) = X (z) ,
2 2 z−1
   
1 T z+1 2 z−1
7→ s 7→ .
s 2 z−1 T z+1
The Tustin and ZOH conversions can be calculated using the MATLAB command “c2d”.
If G1 is the MATLAB name for G̃c (s), G2 is the MATLAB name for Gc (z), and T is the
sampling period, then

• G2 = c2d(G1,T,’tustin’) provides the Tustin approximation, and

• G2 = c2d(G1,T,’zoh’) provides the ZOH approximation.

Note that the use of ZOH conversion here is different from our earlier use. Earlier we used
the ZOH conversion to find the discrete-time equivalent of the continuous-time plant driven
by the staircase continuous-time control signal coming from DAC/ZOH. That calculation was
exact. In the current case, the continuous-time controller is driven by the error signal, which
is not a staircase continuous-time function. Therefore, the use of the ZOH conversion is based
on approximating the error signal by a staircase continuous-time function.

Example 9-17: Design by Emulation

Given the plant transfer function

0.2
G̃p (s) = ,
(s + 1)(s + 0.2)

design a discrete-time controller to meet the specifications:

• Steady-state error to step inputs ≤ 1%,

• Overshoot ≤ 20%, and

• Settling time < 10 s.


414 CHAPTER 9. DIGITAL CONTROL

Solution: We start with the design of a continuous-time controller G̃c (s), which we take to be
a PI controller:
KI (s + b) KI
G̃c (s) = Kp + = Kp , b= .
s s Kp
The PI controller increases the type of the system to Type 1; hence, the steady-state error to
step inputs is zero. Take b = 0.2 to cancel the pole at −0.2. The compensated system has
poles at 0 and −1. Hence, the complex part of the root locus is a vertical line at s = −0.5. For
a pair of complex poles,
4 4
ζ ω n = 0.5 =
Ts = = 8 s < 10 s.
ζ ω n 0.5

For 20% overshoot, set ζ = 0.5. The desired poles are − 21 ± j 21 3. Apply the magnitude
criterion to find Kp .

0.2Kp
1= √
Kp = 5,
s(s + 1) s=−(1/2)+ j(1/2) 3

5(s + 0.2) 1
G̃c (s) = = 5+ .
s s
The closed-loop system has the following properties:
• Step response: Tr = 1.639 s, Ts = 8.0759 s, PO = 16.3%.
• Stability margins: GM = ∞, PM = 51.8◦ at ω c = 0.786 rad/s.
Choice of T :
Tr
Tr = 1.639 s, 5≤ ≤ 10 0.1639 ≤ T ≤ 0.328 s .
T
Try T = 0.2 s and T = 0.3 s. We use the Tustin method to convert the continuous-time
controller into a discrete-time controller:
   
1 T z+1
Gc (z) = 5 + = 5+ .
s s=(2/T )(z−1)/(z+1) 2 z−1

The discrete-time equivalent of the plant is


    
z−1 −1 G̃p (s)
Gp (z) = Z L
z s
    
z−1 −1 0.2
= Z L .
z s(s + 1)(s + 0.2)
For T = 0.2 s,
0.0036959(z + 0.9231) 5.1(z − 0.9608)
Gp (z) = and Gc (z) = .
(z − 0.9608)(z − 0.8187) (z − 1)
9-7. DESIGN BY EMULATION 415

For T = 0.3 s
0.0079989(z + 0.887) 5.15(z − 0.9417)
Gp (z) = and Gc (z) = .
(z − 0.9418)(z − 0.7408) (z − 1)
Figure 9-19 compares the step response of the digital control system with the step
response of the analog control systems, and Table 9-1 compares properties of the two systems.
As expected, the performance of the digital controller is closer to the performance of the
analog controller for smaller T .

Step Response
1.5
Amplitude

Continuous
0.5 Discrete T = 0.2

0
0 2 4 6 8 10 12

1.5
Amplitude

Continuous
Discrete T = 0.3
0.5

0
0 2 4 6 8 10 12 14
Time (seconds)

Figure 9-19: Comparison of the step responses of the analog and digital control systems of
Example 9-17.

Table 9-1: Comparison of analog control and digital control properties of Example 9-17.
Property Analog Digital (T = 0.2 s) Digital (T = 0.3 s)
Tr (s) 1.639 1.6 1.5
Ts (s) 8.0759 8.4 8.7
PO 16.3% 20.58% 22.94%
GM (dB) ∞ 20.4 17
PM (deg) 51.8 47.4 45.2
416 CHAPTER 9. DIGITAL CONTROL

9-8 Discrete-Time Design


The controller is designed in the discrete-time domain.

Design steps:
(1) Choose T based on the design specifications (larger T relative to the emulation method).

(2) Find the discrete-time equivalent of the plant


    
z−1 −1 G̃p (s)
Gp (z) = Z L .
z s

(3) Design the controller Gc (z) to meet the design specifications.

(4) Evaluate the performance of the digital controller by analysis and/or simulation.

We shall consider a time-domain design using the root locus method and a frequency-domain
design using Bode plots.

9-8.1 Root Locus Design


Design procedure:

Step 1: Construct the root locus of Gp (z) Gc (z) = KL(z) as K varies from zero to infinity.
Step 2: Choose a point on the root locus that meets the design specifications.
Step 3: Find K at the chosen point by using the MATLAB plot of the root locus or by applying
the magnitude criterion
|KL(z)|at desired root = 1.

Design Specifications:
• Steady-state error: Requirement on the steady-state error or the error constant (Kp , Kυ ,
etc.).

• Transient response: Choose a pair of dominant poles in the s-plane that meet the
requirements of the transient response. Map the poles into the z-plane using z = esT .

p
s = −ζ ω n ± j ω d , ζ < 1, ωd = ωn 1−ζ2 ,
z = e(−ζ ω n ± jω d )T = e−ζ ω n T e± jω d T ,
z = re± jθ r = e−ζ ω n T , θ = ω dT .
9-8. DISCRETE-TIME DESIGN 417

Compensation:
Design Gc (z) to reshape the root locus.
• Use a lead compensator to stabilize the system or improve the transient response by
shifting the root locus to the left.
• Use a lag or PI compensator to increase the error constant (Kp , Kυ , . . .) or increase the
type of the feedback system; hence reducing the steady-state error.
K(z − a)
Gc (z) = , −1 ≤ a, b ≤ 1,
(z − b)
a>b lead, a<b lag, b=1 PI.

Example 9-18: Root Locus Design

Given the plant transfer function


0.2
G̃p (s) = ,
(s + 1)(s + 0.2)
design a discrete-time controller to meet the specifications:
• Steady-state error to step inputs ≤ 1%,
• Overshoot ≤ 20%, and
• Settling time < 10 s.

Solution: For 20% overshoot, set ζ = 0.5.


4 4 4
Ts = = < 10 ωn > = 0.8 rad/s.
ζ ω n 0.5ω n 0.5 × 10
Design for ω n = 1 rad/s.
2.16ζ + 0.6
Tr = = 1.68 s,
ωn
Tr
5≤ ≤ 10 0.187 ≤ T ≤ 0.336.
T
Set T = 0.3 s.
0.0079989(z + 0.887)
Gp (z) = .
(z − 0.9418)(z − 0.7408)
Use a PI controller (zero steady-state error):
(z − a)
Gc (z) = K .
(z − 1)
418 CHAPTER 9. DIGITAL CONTROL

Imaginary Axis




– – –

Figure 9-20: Root locus of Example 9-18.

Take a = 0.9418 to cancel the pole at 0.9418. Construct the root locus of
 
z − 0.9418 0.0079989(z + 0.887)
K Gp (z) = K .
z−1 (z − 1)(z − 0.7408)

The root locus is shown in Fig. 9-20. The point on the root locus that corresponds to ζ = 0.497
has gain 4.04 ≈ 4. Thus, the controller is given by

4(z − 0.9418)
Gc (z) = .
(z − 1)

The properties of the discrete-time design are compared with the properties of the emulation
designs of Example 9-17 in Table 9-2. For the same sampling period T = 0.3 s, the discrete-
time design has smaller overshoot and larger stability margins compared with the emulation
design, while satisfying the settling time requirement.

Table 9-2: Comparison of the discrete-time design of Example 9-18 with the emulation
designs of Example 9-17.

Property Analog Emulation Emulation Discrete design


T = 0.2 s T = 0.3 s T = 0.3 s
Tr (s) 1.639 1.6 1.5 2.1
Ts (s) 8.0759 8.4 8.7 9.3
PO 16.3% 20.58% 22.94% 16.3%
GM (dB) ∞ 20.4 17 19.2
PM (deg) 51.8 47.4 45.2 51.5
9-8. DISCRETE-TIME DESIGN 419

9-8.2 Frequency-Domain Design


The frequency response of G(e jω T ) is not a rational function of ω . Design using Bode
plots will be more complicated than the continuous-time case. Therefore, we use the bilinear
transformation to convert the discrete-time design into a continuous-time design.

Bilinear Transformation:
 
2 z−1 1 + Tw/2
w= z= ,
T z+1 1 − Tw/2
Frequency υ in the w-domain: w = jυ ,
Frequency ω in the z-domain: z = e jω T ,
 
2 ωT
v = tan .
T 2

Bode plot design procedure:


(1) Choose T based on the design specifications.

(2) Find the discrete-time equivalent of the plant.


    
z−1 −1 G̃p (s)
Gp (z) = Z L .
z s

(3) Transform the plant to the w-domain.

G′p (w) = Gp (z) z=(1+Tw/2)/(1−Tw/2)


.

(4) Design a controller G′c (w) in the (continuous-time) w-domain to meet the design
specifications. Make sure to map frequencies (e.g., crossover frequency) using the
mapping v = (2/T ) tan(ω T /2).

(5) Transform the controller to the (discrete-time) z-domain.

Gc (z) = G′c (w) w=(2/T )(z−1)/(z+1)

(6) Evaluate the performance of the digital controller by analysis and/or simulation.

The transfer function transformations are done in MATLAB as follows:

G̃p (s) → Gp (z) : Gp = c2d(tildeGp,T,’zoh’) ,


Gp (z) → G′p (w) : primeGp = d2c(Gp,’tustin’) .
G′c (w) → Gc (z) : Gc = c2d(primeGc,T,’tustin’) .
420 CHAPTER 9. DIGITAL CONTROL

Example 9-19: Bode Plot Design for Desired PM and ω c

Given the plant transfer function


0.2
G̃p (s) = ,
s(0.4s + 1)

design a discrete-time controller to have PM = 50◦ at ω c ≈ 6 rad/s.


Solution: Choose T to limit the loss in the phase margin to 5◦ .
T ω c 180 2π × 5
× =5 T= = 0.029 ≈ 0.03,
2 π 6 × 180
0.00021948(z + 0.9753)
Gp (z) = ,
(z − 1)(z − 0.9277)
0.2(1 − 0.015w)(1 + 1.8748 × 10−4 w)
G′p (w) = .
w(1 + 0.4w)
Map crossover frequency:
 
2 6 × 0.03
υc = tan = 6.016 ≈ 6.
0.03 2

Design for PM = 50◦ at 6 rad/s.

∠G′p ( j6) = − tan−1 (0.015 × 6) + tan−1 (1.8748 × 10−4 × 6) − 90◦ − tan−1 (0.4 × 6)
= −162.46◦ .

Uncompensated phase margin at 6 rad/s = 180 − 162.46 = 17.54◦ .


Use a lead compensator:
1 + τw
G′c (w) = K , β < 1,
1 + β τw
1 − sin φmax 1
β= , ω max = p ,
1 + sin φmax τ β
1 − sin 32.46
φmax = 50 − 17.54 = 32.46◦ β= ≈ 0.3,
1 + sin 32.46
1 1
p =6 τ= √ ≈ 0.3.
τ β 6 0.3
Choose K such that |G′p (w) G′c (w)|w= j6 = 1:

(1 + j0.3 × 6)0.2(1 − j0.015 × 6)(1 + j1.8748 × 10−4 × 6)


K = 1,
(1 + j0.09 × 6) j6(1 + j0.4 × 6)
9-8. DISCRETE-TIME DESIGN 421

42.88(1 + 0.3w)
K ≈ 42.88 G′c (w) = ,
1 + 0.09w
128.64(z − 0.9048)
Gc (z) = .
(z − 0.7143)
MATLAB check: PM = 50.1◦ at ω c = 5.98 rad/s.

Example 9-20: Bode Plot Design for Desired PM, ω c , and Kυ

Given the plant transfer function

0.2
G̃p (s) = ,
s(0.4s + 1)

design a discrete-time controller to meet the design specifications:

• PM = 45◦ at ω c ≈ 6 rad/s and

• Kυ ≥ 20.

Solution: Based on the previous example calculations, set T = 0.03 s.


Anticipating the use of a lag compensator to increase Kυ , design for PM = 50◦ at υc ≈ 6 rad/s.

0.00021948(z + 0.9753)
Gp (z) = ,
(z − 1)(z − 0.9277)

0.2(1 − 0.015w)(1 + 1.8748 × 10−4 w)


G′p (w) = .
w(1 + 0.4w)
Use the same lead compensator of the previous example to increase the phase margin to 50◦ .

42.88(1 + 0.3w)
G′c (w) = ,
1 + 0.09w

Kυ = w G′c (w) G′p (w) w=0


= 42.88 × 0.2 ≈ 8.576 < 20.
Use a lag compensator to increase Kυ by the factor 20/8.576 = 2.33.

K1 α (τ1 w + 1)
G′c2 (w) = , α > 1.
ατ1 w + 1
Take
1 1
= 0.1υc τ1 = = 1.6667,
τ1 0.1 × 6
α ≥ 2.33; take α = 2.5.
422 CHAPTER 9. DIGITAL CONTROL

Take K1 = 1. Lead-Lag compensator:


42.88(1 + 0.3w) 2.5(1 + 1.6667w)
G′c (w) = × ,
1 + 0.09w 1 + 2.5 × 1.6667w
129.33(z − 0.9048)(z − 0.9822)
Gc (z) = .
(z − 0.7143)(z − 0.9928)
MATLAB Check: PM = 46.6◦ at 6 rad/s.
1
Kυ = (z − 1) Gp (z) Gc (z) z=1
= 21.2957 > 20.
T

9-9 Quantization
Numbers in digital computers are represented by a finite number of bits; so, there is only a
finite number of values that a number can take. Other values are rounded off to the nearest
available values. This process is known as quantization. Quantization affects digital control
systems in two ways:
• coefficient quantization, and
• signal quantization.
The effect of coefficient quantization can be studied by analysis and/or simulation of the
closed-loop control system after all the coefficients of the controller are quantized.
Signal quantization is studied by treating quantization as noise and studying the effect of
the noise on the performance of the control system. This is the subject of this section. Let x
be a real number and xq be its quantized value. xq can be represented as xq = x + e, as shown
below, where e is quantization noise.


x ✲ +❧ ✲ xq

We study signal quantization under the following assumptions:


• |x| ≤ 1.
• Fixed-point, twos-complement number system.
• One sign bit plus ℓ magnitude bits. Wordlength = ℓ + 1. The distance between quanti-
zation levels q = 2−ℓ .
• Round-off: x is approximated by the nearest quantization level:
q
|x − xq | ≤ = 2−(ℓ+1)
2
• No overflow.
9-9. PROBLEMS 423

Signal Quantization Analysis


• Identify points of signal quantization:

(1) ADC: Quantization takes place when an analog signal is converted into a digital
signal.
(2) Coefficient multiplication nodes: When two numbers, each represented by ℓ
magnitude bits plus a sign bit, are multiplied, the product will have 2ℓ magnitude
bits, which is rounded off to a number with ℓ magnitude bits.

• At each point, introduce quantization noise ei .

• Find the transfer function Hi (z) from ei to y.

Example 9-21: Analysis of Quantization Noise

Consider the digital control system of Fig. 9-9, where the controller transfer function is
 
K(z − a) α
Gc (z) = = K 1+ , where α = b − a .
(z − b) (z − b)

Suppose the controller is implemented by the difference equation

η (k + 1) = bη (k) + e(k), u(k) = K[α η (k) + e(k)] ,

η (k + 1) = bη (k) + e(k) zη = bη + E η = z−1 (bη + E) ,

u(k) = K[α η (k) + e(k)] U = K(αη + E) .

The foregoing equations define the arithmetic operations that take place in the computer:
addition, multiplication, and delay by one cycle. A schematic diagram of the controller is
shown in Fig. 9-21, together with four sources of quantization noise. The first noise is added
after the ADC converter, which is at the input of the controller. The other three noise signals
are introduced at the outputs of the gains b, α , and K, since the output of each gain is the
multiplication of the input signal by the gain.
Compute the transfer function from each noise input to the controller output u.

η = z−1 (E + E1 + E2 + bη ) ,
(1 − bz−1 )η = z−1 (E + E1 + E2 ) ,
1
η= (E + E1 + E2 ) ,
(z − b)
424 CHAPTER 9. DIGITAL CONTROL

e1

e η u
z−1 α K

e3 e4
b

e2

Figure 9-21: Schematic diagram of the controller of Example 9-19.

U = E4 + K(E + E1 + E3 + αη )

= E4 + K(E + E1 + E3 ) + (E + E1 + E2 )
z−b
 
α Kα
= K 1+ (E + E1 ) + E2 + KE3 + E4
z−b z−b
| {z }
Gc (z)


= Gc (z) (E + E1 ) + E2 + KE3 + E4 .
z−b
Now put the controller inside the feedback control system, as shown in Fig. 9-22, and
compute the transfer function from each noise input to the output y. Notice the scaling factor
Vmax in the block diagram. We assumed that numbers inside the computer are limited to ±1.
If the voltage signals at the input of the ADC and the output of the DAC are limited to ±Vmax ,
we multiply the signal by 1/Vmax as it enters the computer and multiply it by Vmax as it leaves
the computer.
The transfer function from each input ei to the output y is given by the transfer function
of the forward path from ei to y, divided by [1 + Gp (z) Gc (z)].
Y Vmax Gp Gc Y Vmax Gp Kα
H1 = = , H2 = = · ,
E1 1 + Gp Gc E2 1 + Gp Gc (z − b)
Y KVmax Gp Y Vmax Gp
H3 = = , H4 = = .
E3 1 + Gp Gc E4 1 + Gp Gc

Output error due to round-off:


Assume the closed-loop system is stable. There are two approaches to calculate the output
error:
9-9. PROBLEMS 425

r + 1 y
∑ V max Gc (z ) Vmax G p (z )

e1 e4
K

Kα e3
z− b

e2

Figure 9-22: Closed-loop system of Example 9-19.

• worst-case analysis, and

• stochastic analysis.

Worst-case analysis (maximum error):


The maximum round-off error is q/2 = 2−(ℓ+1) .

Yi (z) = Hi (z) Ei (z) ,



X
yi (k) = hi (ℓ) ei (k − ℓ), where hi (k) = Z −1 [Hi (z)] ,
ℓ=0

X ∞
q X
|yi (k)| ≤ |hi (ℓ)| |ei (k − ℓ)| ≤ |hi (ℓ)| ,
2
ℓ=0 ℓ=0

" ∞ ∞
#
q X X
|y(k)| ≤ |y1 | + |y2 | + · · · ≤ |h1 (ℓ)| + |h2 (ℓ)| + · · · .
2
ℓ=0 ℓ=0

Stochastic analysis (root-mean-square error):


Model the round-off error e as a random variable, uniformly distributed over [−q/2, q/2]:

q2
Mean value of e = E{e} = 0, variance of e = .
12
426 CHAPTER 9. DIGITAL CONTROL

Model e(k), for k = 0, 1, 2, . . . , as a sequence of independent identically distributed random


variables:

X
yi (k) = hi (ℓ) ei (k − ℓ) ,
ℓ=0

X
E{yi (k)} = hi (ℓ) E{ei (k − ℓ)} = 0 ,
| {z }
ℓ=0 0

σi2 = variance of yi (k) = E{y2i (k)}


( ∞ ∞
)
X X
=E hi (ℓ) ei (k − ℓ) hi (m) ei (k − m)
ℓ=0 m=0

XX ∞
= hi (ℓ) hi (m)E{ei (k − ℓ) ei (k − m)} ,
ℓ=0 m=0

q2 /12 for ℓ = m ,
E{ei (k − ℓ) ei (k − m)}
0 otherwise ,

q2 X 2
σi2 = hi (ℓ) .
12
ℓ=0

Assuming e1 , e2 , . . . are independent,


" ∞ ∞
#
2 2 q2 X 2 X
2
σ = E{y (k)} = h1 (ℓ) + h2 (ℓ) + · · · .
12
ℓ=0 ℓ=0

σ is the root mean square (rms) of y.


P∞ P∞ 2
Calculation of i=0 |h(i)| and i=0 h (i) using MATLAB:
• Define the discrete-time transfer function H(z).

• Calculate the impulse response using

h = impulse(H) .

• Calculate the L1 and L2 norms of h using

L1 = norm(h,1), L2 = norm(h,2).



X ∞
X
|h(i)| = L1 , h2 (i) = L22 .
i=0 i=0
9-9. PROBLEMS 427

Example 9-22: Output Error Due to Quantization

Consider a digital control system where the plant transfer function is


20 2(z − 0.9)
G̃p (s) = , the digital controller is Gc (z) = ,
s(s + 2) (z − 0.6)
and the sampling period T = 0.05 s. Assume the controller is implemented as
η (k + 1) = 0.6[η (k) − e(k)] , u(k) = η (k) + 2e(k) .
(a) Verify the stability of the system.
(b) Draw a block diagram of the discrete-time closed-loop system and show all sources of
quantization noise.
(c) Find the transfer function from each quantization-noise input to the output.
(d) Find the maximum and rms output error due to round-off. Assume 16-bit wordlength,
Vmax = 10 V, and no overflow.

Solution:
(a)   
z−1 −1 20 0.024187(z + 0.9672)
Gp (z) = Z L = .
z s2 (s + 2) (z − 1)(z − 0.9048)
Characteristic equation:
1 + Gp (z) Gc (z) = 0 ,
z3 − 2.4564z2 + 2.0509z − 0.5850 = 0.
The roots are 0.8975 and 0.7794 ± 0.2103 j (absolute value 0.8073). All roots are inside
the unit circle. The system is stable.
(b) The realization of the controller and the noise inputs are shown in Fig. 9-23. No noise
input is added after the gain 2 (why?).
η = z−1 [E2 + 0.6(η − E − E1 )] ,
(1 − 0.6z−1 )η = z−1 [E2 − 0.6E − 0.6E1 ] ,
1
η= [−0.6E − 0.6E1 + E2 ] ,
z − 0.6
1
U = η + 2(E + E1 ) = [−0.6E − 0.6E1 + E2 ] + 2(E + E1 )
z − 0.6
 
0.6 1
= 2− (E + E1 ) + E2
z − 0.6 z − 0.6
1
= Gc (z) (E + E1 ) + E2 .
z − 0.6
The closed-loop block diagram is shown in Fig. 9-24.
428 CHAPTER 9. DIGITAL CONTROL

2
+
E + − + η+ U
∑ ∑ 0.6 ∑ z−1 ∑
+ + +
E1 E2

Figure 9-23: The controller of Example 9-22.

R + 1 + + Y
∑ ∑ G c (z ) ∑ 10 G p (z )
− 10 + +
E1
1
z − 0.6

E2

Figure 9-24: The closed-loop block diagram of Example 9-22.

(c)

Y 10Gp Gc 0.48374(z − 0.9)(z + 0.9672)


H1 = = = ,
E1 1 + Gp Gc (z − 0.8975)(z2 − 1.559z + 0.6518)
 
Y 1 10Gp 0.24187(z + 0.9672)
H2 = = = .
E2 z − 0.6 1 + Gp Gc (z − 0.8975)(z2 − 1.559z + 0.6518)

(d) q = 2−15 .
q
Maximum error = [L1 norm of (h1 ) + L1 norm of (h2 )] = 0.0189,
2
r
q2 n o
RMS error = [L2 norm of (h1 )]2 + [L2 norm of (h2 )]2 = 0.002.
12
9-9. PROBLEMS 429

Summary
Concepts
• Digital control allows for flexibility in implementation, higher accuracy, cost-
effectiveness, improved user interface, and reduction of signal distortion.
• The basic components of a digital control system are: sample, ZOH (zero-order
hold), ADC (analog to digital converter), digital computer, DAC (digital to analog
converter), and plant.
• The z-transform has properties analogous to the Laplace transform.
• A discrete-time transfer function is stable if and only if all its poles are strictly
inside the unit circle of the complex plane.
• When a continuous-time transfer function is preceded by zero-order hold, the
samples of the output and input are related by a discrete-time transfer function,
called the discrete-time equivalent.
• A digital control system is stable when all closed-loop poles are strictly inside the
unit circle of the complex plane.
• Stability of the digital control system can be determined by calculating the
roots of the characteristic equation, application of the Routh-Hurwitz criterion
after transforming the characteristic equation into a continuous-time domain,
application of the Nyquist criterion in the discrete-time domain, or drawing the
root locus in the z-plane.
• Gain and phase margins are defined analogous to their definitions for continuous-
time control systems.
• Steady-state errors to step and ramp references are expressed in terms of the error
constants K p and Kv , respectively.
• Sampling frequency needs to be much higher than twice the maximum frequency,
which is suggested by the sampling theorem.
• Sampling frequency is chosen to smooth the transient response, reduce the phase
margin loss due to zero-order-hold delay, or reduce the effect of zero-order-hold
delay on tracking and disturbance rejection.
• The frequency spectrum of a sampled signal exhibits aliasing due to overlap of the
repeated components of the spectrum of the continuous-time signal.
• An anti-aliasing filter is used to reduce the error due to aliasing.
• A controller can be designed in the continuous-time domain and converted into
a discrete-time controller by one of several approximation methods; the process is
called emulation. The approximation requires the sampling period to be sufficiently
small.
• A digital controller can be designed in the discrete-time domain either by the root
locus method in the z-plane or Bode plots in the w-domain.
• Effect of quantization can be studied by inserting quantization noise at points of
signal quantization.
430 CHAPTER 9. DIGITAL CONTROL

Mathematical Models
Frequency response of G(z): G(e jω T )
dc-gain of G(z): G(1)
    
z−1 −1 G̃(s)
Discrete-time equivalent of G̃(s): G(z) = Z L
z s
Bilinear transformation: w = c(z − 1)/(z + 1), c>0
z = (1 + w/c)/(1 − w/c)
Frequency mapping for c = 2/T : v = (2/T ) tan (ω T /2)
Nyquist criterion: Z = P−N
Position error constant: Kp = G(1)
Velocity error constant: Kυ = (1/T ) (z − 1) G(z)|z=1
Sampling period for smooth response: 5 ≤ Tr /T ≤ 10
Phase margin loss due to ZOH delay: (T ω c /2) × (180/π ) deg
Compensator: Gc (z) = K(z − a)/(z − b) ,
−1 ≤ a, b ≤ 1
Lead: a>b
Lag: a<b
PI: b=1
Distance between quantization level: q = 2−ℓ , ℓ = number of magnitude bits
Wordlength: ℓ+1
Impulse response of Hi (z): hi (k)
" ∞ ∞
#
q X X
Maximum error due to quantization: |h1 (ℓ)| + |h2 (ℓ)| + · · ·
2
ℓ=0 ℓ=0
" ∞ ∞
#
q2 X X
Mean square error due to quantization: h21 (ℓ) + h22 (ℓ) + · · ·
12
ℓ=0 ℓ=0
PROBLEMS 431

Important Terms Provide definitions or explain the meaning of the following


terms:
ADC ideal sampler sampling frequency
aliasing impulse response sampling period
antialiasing filter impulse sampler sampling theorem
BDM lag compensator signal quantization
bilinear transformation lead compensator spectrum of sampled signal
Bode plots maximum error stability
characteristic equation Nyquist contour staircase function
coefficient quantization Nyquist criterion stochastic analysis
DAC Nyquist plot transfer function
dc gain phase margin Tustin method
difference equation PI controller type of feedback system
discrete-time equivalent poles unit step function
emulation quantization worst-case analysis
error constant root locus method zeros
FDM root-mean-square error ZOH
frequency response roundoff z-transform
gain margin sampling

PROBLEMS

9.1 For each of the following discrete-time systems with input u and output y:
(i) Find the transfer function.
(ii) Find the impulse response.
(iii) Determine if the system is stable.
(iv) Find the steady-state output to a unit step input.
(v) Find the steady-state output when u(k) = cos(kπ /4) for all k ≥ 0.
(vi) By solving the difference equation recursively, find y(k) for k ≥ 0 when the input is a
unit step and y(k) = 0 for k ≤ 0.
(a) y(k + 1) = 0.5y(k) + u(k)
(b) y(k + 2) = 1.5y(k + 1) − 0.54y(k) + 1.4u(k + 1) + u(k)
(c) y(k + 3) = 14 y(k + 2) + 41 y(k + 1) − 16
1
y(k) + u(k + 3) + 12 u(k + 2) − 91 u(k + 1)
1 1 1
(d) y(k + 3) = 2 y(k + 2) + 16 y(k + 1) − 32 y(k) + u(k + 2) + 21 u(k + 1) − 14 u(k)

9.2 For each of the following cases:


(i) Compute by hand and table look-up the discrete transfer function G(z) when the given
continuous transfer function G̃(s) is preceded by ZOH. Set T = 0.1 s.
(ii) Verify your answer using MATLAB. (Use the command “c2d” with“zoh”).
432 CHAPTER 9. DIGITAL CONTROL

(iii) Find the poles of G(z) and show how they are related to the poles of G̃(s).
10 5(s + 1) s+1
(a) G̃(s) = , (b) G̃(s) = , (c) G̃(s) = ,
(s + 2) s+2 s(s + 2)
5 6(s + 1) 2(s + 1)
(d) G̃(s) = , (e) G̃(s) = , (f) G̃(s) = .
(s + 4) s+3 s(s + 3)

9.3 Consider a digital control system with continuous plant G̃p (s), discrete controller Gc (z),
and sampling period T = 0.01 s, where
20
G̃p (s) = and Gc (z) = K ≥ 0.
s + 10

(a) Find the discrete transfer function Gp (z).


(b) Sketch the root locus in the z-plane as K varies from zero to infinity.
(c) Find the range of K for stability.
(d) Calculate the steady-state error to a unit step input, as function K.
9.4 Consider a digital control system where the the discrete-time equivalent of the plant is
Gp (z) and the controller is Gc (z) = K ≥ 0. For each of the following cases of Gp (z):
(i) Sketch the root locus as K varies from zero to infinity.
(ii) From the root locus, determine the range of K for stability.
(iii) Using the Routh-Hurwitz criterion, determine the range of K for stability.
(iv) Determine the type of the feedback system and the corresponding error constant.
1
(a) Gp (z) =
z−1
a
(b) Gp (z) = , a>0
z−1
a(z − c)
(c) Gp (z) = , a > 0, 0 < b < 1, and 0 < c < b
z(z − b)
z − 0.7
(d) Gp (z) =
z(z − 0.9)

9.5 For each of the following digital control systems with continuous plant G̃p (s), discrete
controller Gc (z) = K ≥ 0, and sampling period T = 0.1 s:
(i) Determine the range of K for stability using the Nyquist criterion.
(ii) Find the gain and phase margins and the corresponding crossover frequencies when
K = 1.
10
(a) G̃p (s) =
s(s + 1)(s + 10)
10
(b) G̃p (s) =
s(s + 2)(s + 10)
PROBLEMS 433

10
(c) G̃p (s) =
(s + 1)(s + 2)(s + 4)
9.6 Consider a digital control system where
z − 0.8
Gp (z) = and Gc (z) = K > 0.
(z − 1)(z − 1.2)
Use the Nyquist criterion to find the range of K for stability.
9.7 Consider the digital control system of a dc motor where the motor’s transfer function
from the input voltage to the speed is given by
20
(0.1s + 1)
and a PI controller is implemented digitally by the transfer function
 
2T z
0.1 .
z−1
The sampling period is T = 0.01 s.
(a) Find the discrete transfer function of the closed-loop system.
(b) Is the system stable?
(c) Find the type of the feedback system and the corresponding error constant.
(d) Find the steady-state error to a unit step input.
9.8 A block diagram of a typical motion control system [33] is shown in Fig. P9.8.

Digital
Position controller DAC Amplifier Motor
command + E U V I Kt θ
∑ G c (z ) K dac Ka
(count) Js 2

Sensor
Position feedback
Ks
(count)

Figure P9.8: A typical motion control system.

The motor position θ is measured by optical encoder whose output is binary. The binary
output of the sensor is subtracted from the position command, which is also binary. The
position error is fed into a digital computer that implements the control algorithm. The binary
output of the computer is fed into a digital-to-analog converter (DAC) whose output is a
voltage signal. The voltage signal is fed into a current source amplifier that generates the
electric current that runs the motor.
434 CHAPTER 9. DIGITAL CONTROL

The amplifier’s gain Ka = 2 A/V. The motor’s torque constant Kt = 0.1 Nm/A and its total
moment of inertial J = 2 × 10−4 kg · m2 . The position sensor is an absolute encoder with 12
bits of binary output. The sensor output changes between 0 and 212 − 1 = 4095. Thus, the
sensor gain is Ks = 4096/(2π ) = 652 counts/rad. The sampling period is 1 ms.
The digital controller, with input e and output u, implements the difference equations

f (k) = 0.15e(k) + f (k − 1) ,
u(k) = 20e(k) + 200[e(k) − e(k − 1)] + f (k) ,

which realize a PID controller.


The DAC has 14-bit resolution and its output signal ranges between −10 V and 10 V.
Noting that the DAC input varies over the range ±8192 counts and its output varies over the
range ±10 V, the DAC gain is Kdac = 10/8192 = 1.22 × 10−3 V/count.
(a) Find the discrete-time equivalent of the system.
(b) Assuming that the controller is multiplied by a gain K, draw the root locus in the z-plane
as K varies from 0 to ∞. Show that the system is stable for K1 < K < K2 and find K1
and K2 .
(c) Find the phase margin and the corresponding crossover frequency.
9.9 Consider a digital control system with continuous plant G̃p (s), discrete controller Gc (z),
and sampling period T = 0.1 s, where

1
G̃p (s) = and Gc (z) = K ≥ 0.
s

(a) Compute by hand and lookup table the discrete transfer function Gp (z).
(b) Sketch the root locus in the z-plane as K varies from zero to infinity.
(c) Find the range of K for stability.
(d) Calculate the steady-state error to a unit step input, as function K.
9.10 Consider a digital control system where

z+1
Gp (z) = , Gc (z) = K ≥ 0,
(z − 1)(z − 0.6)

and T = 0.1 s. Use the Nyquist criterion to find the range of K for stability.
9.11 What is the antialiasing filter and why is it used?
9.12 A feedback control system is expected to have a settling time of no more than 100 ms
and an overshoot of no more than 5%.
(a) What is the sampling period T if the reduction in the phase margin is to be no more
than 5◦ ?
(b) What is the sampling period T if there are to be 10 samples per rise time?
PROBLEMS 435

9.13 A dc motor is modeled by

200
G̃p (s) = .
s(s + 10)

(a) Using the Bode plot method in the s-plane, design an analog compensator such that the
phase margin is 60◦ at 10 rad/s.
(b) Choose the sampling period such that the phase-margin drop is limited to 10◦ .
(c) Convert the analog compensator into a digital one using the Tustin method. Check the
design specifications in the z-domain.
9.14 A dc motor is modeled by

500
G̃p (s) = .
s(s + 12.5)

(a) Using the root locus method in the s-plane, design an analog compensator such that the
step response has 5% overshoot and 0.4 s settling time.
(b) Choose the sampling period to fit 10 samples within the rise time of the step response.
(c) Convert the analog compensator into a digital one using the Tustin method. Check the
design specifications in the z-domain.
9.15 An analog control system with the controller

8(s + 1)
G̃c (s) =
s+4
has the step-response characteristics shown in the table below:

Rise time Settling time Overshoot Undershoot Peak Peak time


0.7597 2.1082 4.3210 0 1.0432 1.5658

(a) Choose the sampling period.


(b) Convert the analog controller into a digital controller using the Tustin Method.

9.16 A continuous-time plant is modeled by

1
G̃p (s) = .
s(s + 1)

(a) Using the root locus method in the s-plane, design an analog controller such that the
step response has 5% overshoot and 1 s settling time.
(b) Choose the sampling period.
(c) Convert the analog controller into a digital controller using the Tustin Method.
(d) Find the overshoot and settling time of the step response of the digital control system.
436 CHAPTER 9. DIGITAL CONTROL

9.17 In a digital control system, the discrete-time equivalent of the plant is


0.1(z + 1)
Gp (z) =
z(z − 1)
and the controller is Gc (z) = K.
(a) Draw the root locus of the system as K varies from 0 to ∞.
(b) Choose K such that the closed-loop poles have damping ratio ζ ≈ 0.7.
(c) Design a compensator such that the closed-loop poles have ζ ≈ 0.7 and natural fre-
quency ω n ≈ 0.4π /T .
9.18 Consider the digital control of a dc motor, modeled by
10
G̃p (s) = .
s(s + 10)
The sampling period is T = 0.01 s.
(a) Using the root locus method in the z-plane, design a digital compensator such that the
step response has 20% overshoot and 0.4 s settling time.
(b) Using the w-plane method, design a digital compensator to achieve 50-degree phase
margin at 16 rad/s.
9.19 In a digital control system, the discrete transfer function of the plant is given by
10−3 (z + 0.966)
Gp (z) = .
(z − 1)(z − 0.9)
Using the root locus method, design a compensator Gc (z) such that the closed-loop system
has a pair of dominant complex poles at z = 0.9 ± j 0.1.
9.20
(a) What is the difference between a discrete-time signal and a digital signal?
(b) In fixed-point quantization analysis, why do we not add quantization noise after
addition of two signals?
(c) What is the maximum quantization round-off error for a system where the wordlength
is: (i) 16 bits, (ii) 32 bits, (iii) 64 bits?
(d) Why do we not need to add quantization noise after multiplication by a coefficient that
is a power of 2?
(e) In the quantization analysis of a feedback control system, why do we pre-multiply the
controller by 1/Vmax and post-multiply by Vmax ? What is Vmax ?
9.21 In a digital control system, the discrete-time equivalent of the plant is
1
Gp (z) =
z − 0.4
and the controller is
0.2
Gc (z) = .
z−1
PROBLEMS 437

(a) Verify the stability of the closed-loop system.


(b) Draw a block diagram of the closed-loop system and show all sources of quantization
noise.
(c) Find the transfer function from each quantization-noise input to the output.
(d) Find the maximum and rms output errors due to round-off. Assume 32-bit wordlength,
Vmax = 15, and no overflow.
9.22 Consider a digital control system where the plant transfer function is
10
G̃p (s) = ,
s+1

the sampling period T is chosen such that e−T = 0.9, and the digital controller is implemented
by
η (k + 1) = η (k) + 12 e(k) , u(k) = η (k) + e(k) .

(a) Verify the stability of the system.


(b) Draw a block diagram of the discrete-time closed-loop system and show all sources of
quantization noise.
(c) Find the transfer function from each quantization noise input to the output.
(d) Find the maximum and rms output errors due to round-off assuming 8-bit wordlength,
Vmax = 15 V, and no overflow.

9.23 Repeat Problem 9.22 if the plant is


10
G̃p (s) =
s(s + 2)

and the controller is

η (k + 1) = 0.7η (k) − 0.6e(k) , u(k) = η (k) + 3e(k) .

In part (d), assume 16-bit wordlength and Vmax = 10 V.


9.24 Repeat Problem 9.22 if the plant is
1
G̃p (s) = ,
s(s + 1)

the controller is

η (k + 1) = 0.6η (k) − 0.4e(k) , u(k) = η (k) + 2e(k) ,

and T = 0.1 s. In part (d), assume 16-bit wordlength and Vmax = 10 V.


438 APPENDIX A. REVIEW OF LAPLACE TRANSFORM

Appendix A
Review of Laplace Transform
The (one-sided) Laplace transform of f (t) is defined by
Z ∞
F(s) = L{ f (t)} = f (t) e−st dt ,
0−

where s is a complex variable. The integral is defined from 0− ; that is, just before t = 0, to
include the impulse function δ (t). The Laplace transform exists if the integral exists. If f (t)
does not grow faster that an exponential function, that is, | f (t)| ≤ Keα t , for some positive
constants K and α , then, for s = σ + jω ,
Z ∞ Z ∞
−st
f (t) e dt ≤ Ke−(σ −α )t dt < ∞, for σ > α .
0− 0

In general, the Laplace transform exists over a region of convergence of the form Re[s] ≥ σ0 .

Properties of the Laplace transform


• Linearity:
L{α1 f1 (t) + α2 f2 (t)} = α1 F1 (s) + α2 F2 (s)

• Time delay:
L{ f (t − τ )} = e−sτ F(s)

• Time scaling:
1 s
L{ f (at)} = F
a a
• Frequency shift:
L{e−at f (t)} = F(s + a)

• Differentiation:
 
df
L = sF(s) − f (0− ) ,
dt
 n  Xn
d f
L = sn
F(s) − sn−k f (k−1) (0− )
dt n
k=1

• Integration: Z 
t
1
L f (τ ) d τ = F(s)
0− s
439

• Convolution: Z 
t
L f1 (τ ) f2 (t − τ ) d τ = F1 (s) F2 (s)
0

• Final value theorem: If all the poles of sF(s) have negative real parts,

lim f (t) = lim s F(s) .


t→∞ s→0

• Initial value theorem: If f (t) is continuous or has step discontinuity at t = 0,

f (0+ ) = lim s F(s).


s→∞

Inverse Laplace transform using partial fraction expansion


Pairs of functions f (t) and their Laplace transforms F(s) are listed in Laplace transform
tables. The table can be used to find the inverse Laplace transform of a function F(s).
However, the table has a limited number of pairs. To find the inverse Laplace transform of a
function F(s), which does not exist in the table, we use partial fraction expansion to represent
F(s) as the sum of terms that are available in the table. The process is illustrated by the
following examples.

Example A-1:

Find the inverse Laplace transform of


1
F(s) = .
s3 + 12s2 + 44s + 48

Solution:
1 K1 K2 K3
F(s) = = + + .
(s + 2)(s + 4)(s + 6) s + 2 s + 4 s + 6

1
K1 = (s + 2) F(s)|s=−2 = ,
8
−1
K2 = (s + 4) F(s)|s=−4 = ,
4
1
K3 = (s + 6) F(s)|s=−6 = ,
8
 
1 1 2 1
F(s) = − + ,
8 s+2 s+4 s+6
1 −2t 
f (t) = L−1 {F(s)} = e − 2e−4t + e−6t , t ≥ 0.
8
440 APPENDIX A. REVIEW OF LAPLACE TRANSFORM

Example A-2:

Find the inverse Laplace transform of

1
F(s) = .
s3 + 2s2 + 2s + 1

Solution:
1 K1 K2 s + K3
F(s) = 2
= + 2 ,
(s + 1)(s + s + 1) s + 1 s + s + 1
K1 = (s + 1) F(s)|s=−1 = 1,

K1 (s2 + s + 1) + (K2s + K3 )(s + 1) = 1,


Coefficient of s2 = K1 + K2 = 0 K2 = −1,
Coefficient of s0 = K1 + K3 = 1 K3 = 0,
√ 
√1 3
1 s 1 s + 12 2 3
F(s) = − 2 = − + ,
s+1 s +s+1 s+1 (s + 21 )2 + 34
1
(s + 2 ) + 34
2

√ ! √ !
3 1 3
f (t) = L−1 {F(s)} = e−t − e−t/2 cos t + √ e−t/2 sin t , t ≥ 0.
2 3 2

The partial fraction expansion can be computed using the “residue” command of
MATLAB.

Solution of differential equations


Steps:

• Compute the Laplace transform of both sides of the equation.

• Compute the Laplace transform of the solution from the algebraic equation that results
from the previous step.

• Compute the inverse Laplace transform of the solution.

Example A-3:

Solve the differential equation

ÿ + 3ẏ + 2y = 1(t), y(0) = −1, ẏ(0) = 1.


441

Solution:
1
s2 Y (s) − sy(0) − ẏ(0) + 3[s Y (s) − y(0)] + 2Y (s) = ,
s
1
(s2 + 3s + 2) Y (s) + s − 1 + 3 = ,
s
−s2 − 2s + 1 K1 K2 K3
Y (s) = = + + ,
s(s + 1)(s + 2) s s+1 s+2

1
K1 = s Y (s)|s=0 = ,
2
K2 = (s + 1) Y (s)|s=−1 = −2 ,
1
K3 = (s + 2) Y (s)|s=−2 = ,
2
1 1
2
2
Y (s) = + 2 ,

s s+1 s+2
1 1
y(t) = L−1 {Y (s)} = − 2e−t + e−2t , t ≥ 0.
2 2
442 APPENDIX B. ELEMENTS OF MATRIX ANALYSIS

Appendix B
Elements of Matrix Analysis
It is assumed that the reader is familiar with the definition of matrices, their addition,
multiplication and transposition, diagonal, triangular, square and identity matrices, and the
determinant of a matrix.
An n-dimensional column vector is defined by
 
x1
x2 
 
υ =  ..  ,
.
xn

where x1 to xn are real variables, and its transpose υ T is a row vector.

Linear independence and rank:


A group of vector υ1 , . . . , υk are linearly independent if no vector in the group can be
represented as a linear combination of the other vectors. This is equivalent to saying that
Pk
i=1 ai υi = 0 if and only if ai = 0 for i = 1, . . . k. For an n × m matrix M,

rank(M) = r M has r linearly indepedent columns,


M has r linearly indepedent rows.

The rank of a matrix is invariant to elementary row or elementary column operations.


Elementary row operations are:
• Exchange any two rows.
• Multiply any row by a non-zero constant.
• Add a multiple of one row to another row.
Elementary column operations are defined similarly. The rank of a matrix can be computed in
MATLAB using the command “rank”.

Nonsingular matrix:
An n×n matrix M is nonsingular if there is an n×n matrix M −1 such that MM −1 = M −1 M = I.

An n × n matrix M is nonsingular rank(M) = n det(M) , 0.

The inverse matrix is given by


1
M −1 = adjoint(M) .
det(M)
443

The adjoint of a square matrix A is the transpose of the cofactor matrix, which is a square
matrix whose (i, j)th entry is defined by

ci j = (−1)i+ j det(Ai j ) ,

where Ai j is the submatrix of A obtained from A by removing the ith row and jth column. For
a 2 × 2 matrix,  −1  
a b 1 d −b
= .
c d (ad − bc) −c a
In MATLAB, the inverse of a matrix is computed using the command “inv”.
If A, B, and C are square matrices of the same dimension, A = BC, and A is nonsingular,
then both B and C are nonsingular because det(A) = det(B) det(C).

Eigenvalues and eigenvectors:


For an n × n square matrix A, the n-dimensional vector υ and the scalar λ are the eigenvector
and eigenvalue of A, respectively, if
Aυ = λ υ .
This equation can be rewritten as
(λ I − A)υ = 0 ,
which shows that the columns of (λ I − A) are linearly dependent because a linear combination
of them equals zero. Therefore,
det(λ I − A) = 0.
This is a polynomial equation of degree n, called the characteristic equation of A. It has n
roots, which are the eigenvalues of A. The eigenvalues of a real matrix could be complex, but
complex eigenvalues will be in conjugate pairs because the polynomial det(λ I − A) has real
coefficients.
In MATLAB, the eigenvalues and eigenvector of a matrix are computed using the
command “eig”.
444 APPENDIX C. LAPLACE AND z-TRANSFORM TABLES

Appendix C
Laplace and z-Transform Tables

Table C.1: Laplace transform table.

f (t), t ≥ 0 F(s)
δ (t) 1
1
1(t)
s
1
t
s2
m!
tm
sm+1
1
e−at
(s + a)
ω
sin ω t 2
s + ω2
s
cos ω t
s + ω2
2

The entries of the table can be extended using the properties of the Laplace transform. For
example, using the frequency-shift property,
1
L{te−at } = ,
(s + a)2
ω
L{e−at sin(ω t)} = .
(s + a)2 + ω 2
445

Table C.2: Combined Laplace transform–z-transform table.

Laplace
transform Discrete time z-transform

1 zT
1(kT )
s z−1
1 zT
kT
s2 (z − 1)2
1 1 z(z + 1)T 2
(kT )2
s3 2 2(z − 1)3
1 z
e−akT
(s + a) (z − e−aT )
1 e−aT zT
kTe−akT
(s + a)2 (z − e−aT )2
a (1 − e−aT )z
1 − e−akT
s(s + a) (z − 1)(z − e−aT )
a 1 zT (1 − e−aT )z
kT − (1 − e−akT ) −
2
s (s + a) a (z − 1)2 a(z − 1)(z − e−at )
ω sin(ω T )z
sin(ω kT )
s2 + ω 2 z2 − 2 cos(ω T )z + 1
s z[z − cos(ω T )]
cos(ω kT )
s2 + ω 2 z2 − 2 cos(ω T )z + 1
446 APPENDIX D.

Appendix D
MATLAB Tutorial
This appendix gives a brief MATLAB tutorial on how MATLAB can be used to do the
computations that we encounter throughout the book. We assume that the reader is familiar
with the basics of MATLAB and the tutorial targets commands that are available in the control
system toolbox. It is highly recommended that the readers consult one of the available online
tutorials for control system analysis using MATLAB.1

D-1 Transfer Function Definition and Manipulation


% Define transfer functions.
% There are two ways to define a transfer function.
% Let G(s) = 4(s + 2)/[(s + 1)(s + 3)(s + 5)] = (4s + 8)/(s3 + 9s2 + 23s + 15).
G = tf([4 8],[1 9 23 15]);
H = zpk(-2,[-1 -3 -5],4);
% Find poles, zeros, and DC gain of a transfer function.
pole(G)
zero(G)
dcgain(G)
% Find the roots of a polynomial; example: s3 + 9s2 + 23s + 15.
roots([1 9 23 15])
% Calculate the series, parallel, or feedback connection of two transfer functions.
H1 = tf(1,[1 1]), H2 = tf(4,[1 2]);
% Series Connection
Hs = H1*H2;
% Parallel Connection
Hp = H1+H2;
% Feedback Connection
Hf = feedback(H1,H2);
% Calculate and plot the step response.
wn=5; zeta=0.5; G = tf(wn∧ 2 ,[1 2*zeta*wn wn∧ 2]);
step(G)
% The response appears in the graphics window.
stepinfo(G)
% The characteristics of the response are displayed.
% Calculate and plot the response to other inputs.
% The input is a ramp signal in this example.
t = 0:0.01:1; u = 2*t;
y = lsim(G,u,t);
plot(t,u,t,y,’r’),xlabel(’Time’),ylabel(’Output’),legend(’Input’,’Output’)
1 See, for example, https://ctms.engin.umich.edu/CTMS/index.php?aux=Home
MATLAB Tutorial 447

% The time delay transfer function e−T s is defined as follows.


G = tf(1,1,’InputDelay’,T);

D-2 Root Locus Analysis


Plotting the root locus requires the commands “rlocus” and “rlcofind” from the control system
toolbox. The use of “rlocus” of a given transfer function opens the graphics window with
the root locus plot. Clicking on a point on the root locus opens a box that lists the value
of K and the poles at the chosen point. For a pair of complex poles, it gives the damping
ratio ζ and the p natural frequency ω n , for which the pair of complex poles are represented
as −ζ ω n ± jω n 1 − ζ 2 . It also
p gives the percentage overshoot corresponding to ζ , which is
calculated as 100×exp(−ζ π / 1 − ζ 2 ). This formula gives the exact overshoot for a second-
order transfer function with no zero, but it is not the overshoot for other transfer functions.
Another method to find K and the poles for a point on the root locus is to use the command
“rlocfind”, which allows you to select a point on the root locus using a pointer that appears
in the window. When you select a point on the locus, MATLAB displays the value of K and
all the corresponding closed-loop poles. The selected point appears as a red plus sign. Even if
the selected point is not exactly on the locus, MATLAB selects the closest point on the locus.
Another command that is useful in design is the “sgrid” command. In design calculations
it is sometimes required to choose a point on the complex part of the root locus that has a
desired value of ζ or ω n . The “sgrid” command generates a grid of curves of points that have
the same ζ or ω n . Points in the complex plan that have the same ζ form a line originating at
the origin that makes an angle φ with the negative real axis where cos φ = ζ . For the angle
that appears in the grid to be equal to the physical angle, the two axes of the root locus must
have the same scale. This can be done by using the command “axis equal”.
G = zpk([ ],[-1 -2 -3],1);
rlocus(G)
% The root locus appears in the graphics window.
[K,poles] = rlocfind(G)
Select a point in the graphics window
% K and the poles are displayed.

D-3 Error Constants


% Calculation of K p .
G0 = tf(12,[1 6 11 6]);
Kp = dcgain(G0);
% Calculation of Kv .
G1 =zpk([ ],[0 -1 -2],10);
% to calculate Kv, multiply G1 by s then apply minreal to the
% product to perform pole-zero cancelation of s. Finally calculate
% the dc gain of the product.
H = zpk(0,[ ],1);
G1m = minreal(H*G1);
448 APPENDIX D.

Kv = dcgain(G1m);
% Calculation of Ka .
G2 = zpk([ ],[0 0 -2],6);
% Calculation of Ka is similar to calculation of Kv except that we multiply by s2 .
H2 = zpk([0 0],[ ],1);
G2m = minreal(H2*G2);
Ka = dcgain(G2m);

D-4 Frequency Response


The polar plot of a transfer function can be computed using the command “nyquist”. The plot
appears in the graphics window. The bode plots are generated by the command “bode” and a
grid is added with the command “grid”. You can use “bode” to compute the magnitude and
phase of a transfer function and plot them yourself. This is useful when you want to do more
with the plots, like overlaying the asymptotic plots over the exact plots. Finally, the command
“margin” is used compute the gain and phase margins and their corresponding frequencies.
The result appears in the graphics window.
G = zpk([ ],[-1 -10 -100],10000);
% Polar plot
nyquist(G)
% Bode plots
bode(G)
grid
% In the following lines it is shown how to compute the
% magnitude and phase curves and plot them yourself.
% The calculation is done from 0.01 rad/s to 10000 rad/s.
[M,P,w] = bode(G,0.01,10000);
Magnitude = 20*log10(squeeze(M(1,:,:)));
Phase = squeeze(P(1,:,:));
subplot(2,1,1)
semilogx(w,Magnitude)
subplot(2,1,2)
semilogx(w,Phase)
% Stability margins
margin(G)

D-5 State-Space Calculations


% Define the state-space model.
A = [0 1 0;1 0 0;0 0 -2]; B = [0;1;1];
C = [1 0 1]; D = 0;
% Check stability.
eig(A)
MATLAB Tutorial 449

% Test controllability and observability.


CM = ctrb(A,B); rank(CM)
OM = obsv(A,C); rank(OM)
% Find the transfer function.
[num,den] = ss2tf(A,B,C,D);
G = tf(num,den);
% Find a state-space model of G.
[AA,BB,CC,DD] = tf2ss(num,den);
% The model {AA,BB,CC,DD} could be different from {A,B,C,D}
% Recall that the state-space model is not unique.
% Compute K to assign the eigenvalues of (A-BK) at -3, -2 + j, -2 -j.
p = [-3;-2+i;-2-i];
% You can use one of the following two commands.
K = acker(A,B,p);
K = place(A,B,p);
% Design observer gain with observer eigenvalues at -10, -10, -10.
p = [-10;-10;-10];
L = (acker(A’,C’,p))’;
% Feedforward gain.
N = - 1/(C*inv(A-B*K)*B);
% Construct the closed-loop system.
Acl = [A-B*K, B*K; zeros(3,3), A-L*C];
Bcl = [B*N;zeros(3,1)]; Ccl = [C,zeros(1,3)]; Dcl = D;
% Closed-loop transfer function.
[Num,Den] = ss2tf(Acl,Bcl,Ccl,Dcl);
Gcl = tf(Num,Den);

D-6 Digital Control


% Define a discrete-time transfer function.
T = 1;
G=tf([0 1 0],[1 -1/2 1/4],T);
% Find poles, zero, and dcgain.
pole(G)
zero(G)
dcgain(G)
% Check stability.
abs(pole(G))
% Discrete equivalent of continuous plant preceded by ZOH.
T = 0.1;
TildeGp = tf(1,[1 1]);
Gp = c2d(TildeGp,T,’zoh’);
% Define a discrete controller.
Gc = tf([1 -0.9],[1 -1],T);
450 APPENDIX D.

% Closed-loop transfer function


Gcl = feedback(Gp*Gc,1);
% Root locus.
rlocus(Gp*Gc)
% Frequency response.
nyquist(Gp*Gc)
bode(Gp*Gc)
margin(Gp*Gc)
% Design by emulation.
% Define a continuous controller.
TildeGc = zpk(-0.2,0,5);
T = 0.2;
% Convert the continuous controller into a discrete controller
% using one of two methods.
Gc = c2d(TildeGc,T,’tustin’);
Gc = c2d(TildeGc,T,’zoh’);
% Design in the w-domain requires three transformations.
Gp = c2d(TildeGp,T,’zoh’);
primeGp = d2c(Gp,’tustin’);
Gc = c2d(primeGc,T,’tustin’);
% Quantization noise; see Example 9.22.
T = 0.05;
q = 2∧ (-15);
H1 = zpk([0.9 -0.9672],0.8975,0.48374,T)*tf(1,[1 -1.559 0.6518],T);
H2 = zpk(-0.9672,0.8975,0.24187,T)*tf(1,[1 -1.559 0.6518],T);
h1 = impulse(H1); h2 = impulse(H2);
L11 = norm(h1,1);L12 = norm(h2,1);
L21 = norm(h1,2);L22 = norm(h2,2);
MaximumError = (q/2)*(L11+L12);
rmsError = sqrt((q∧ 2/12)*(L21∧ 2 + L22∧ 2));
451

Appendix E
Symbols
≡ identically equal
≈ approximately equal
def
= defined as
< (>) less (greater) than
≤ (≥) less (greater) than or equal to
≪ (≫) much less (greater) than
∀ for all
→ tends to
implies
P equivalent to, if and only if
Q summation
product
|a| the absolute value of a scalar a
kxk the norm of a vector x
kAk the induced norm of a matrix A
det(A) or |A| determinant of a matrix A
AT (xT ) the transpose of a matrix A (a vector x)
∠θ angle of θ
max maximum
min minimum

j −1
Re[z] the real part of a complex variable z
Im[z] the imaginary part of a complex variable z
∂f
∂x the Jacobian matrix
ẏ the first derivative of y with respect to time
...ÿ the second derivative of y with respect to time
y the third derivative of y with respect to time
y(i) the ith derivative of y with respect to time
[xx] see reference number xx in the bibliography
452 SYMBOLS

1(t) unit step function


1(k) discrete-time unit step function
ζ damping ratio
ωn undamped natural frequency
ωd damped natural frequency
Tr rise time of the step response
Tp peak time of the step response
Ts settling time of the step response
PO percent overshoot of the step response
ωp peak frequency of the frequency response
Mpω ratio of the peak of the frequency response to the dc gain
ω BW bandwidth of the frequency response
GM gain margin
PM phase margin
ωc crossover frequency
ω pc phase crossover frequency
φmax maximum phase of the lead compensator
ω max frequency at which the phase of the lead compensator is maximum
Kp position error constant
Kυ velocity error constant
Ka acceleration error constant
Bibliography

[1] T. Andersson, N. Persson, A. Fattouh, and M. C. Ekstrom. A loop shaping method for
stabilising a riderless bicycle. In European Conference on Mobile Robots, pages 1–6,
2019.

[2] P. J. Anstaklis and A. N. Michel. Linear Systems Primer. Birkhäuser, Boston, 2007.

[3] K. J. Astrom and T. Hagglund. PID control. In W. S. Levine, editor, The Control
Handbook, pages 198–209. CRC Press, Boca Raton, FL, 1996.

[4] K. J. Astrom and B. Wittenmark. Computer-Controlled Systems. Prentice-Hall, Upper


Saddle River, NJ, third edition, 1997.

[5] W. L. Bialkowski. Control of pulp and paper making procss. In W. S. Levine, editor,
The Control Handbook, pages 1219–1242. CRC Press, Boca Raton, FL, 1996.

[6] A. Cinar. Artificial pancreas systems: An introduction to the special issue. Control
Systems Magazine, 38:26–29, 2018.

[7] J. A. Cook, J. W. Grizzle, and J. Sun. Engine control. In W. S. Levine, editor, The
Control Handbook, pages 1261–1274. CRC Press, Boca Raton, FL, 1996.

[8] R. C. Dorf and R. H. Bishop. Modern Control Systems. Pearson, Boboken, NJ, thirteenth
edition, 2017.

[9] M. S. Fadali and A. Visioli. Digital Control Engineering: Analysis and Design. Elsevier,
Boston, third edition, 2019.

[10] A. Ferrante. A simple proof of the Routh test. IEEE Trans. Automat. Contr., 44:1306–
1309, 1999.

[11] G. F. Franklin, J. D. Powell, and A. Emami-Naeini. Feedback Control of Dynamic


Systems. Pearson, Upper Saddle River, NJ, sixth edition, 2010.

[12] G. F. Franklin, J. D. Powell, and M. L. Workman. Digital Control of Dynamic Systems.


Addison Wesley, Reading, MA, third edition, 1990.

[13] H. Gao, W. Sun, and P. Shi. Robust sampled-data h∞ control for vehicle active
suspension systems. IEEE Trans. Contr. Syst. Tech., 18:238–245, 2010.

453
454 BIBLIOGRAPHY

[14] E. Garone, S. Di Cairano, and I. V. Kolmanovsky. Reference and command governors


for systems with constraints: A survey of their theory and applications. Automatica,
75:306–328, 2017.
[15] M. Green and D. J. N. Limebeer. Linear Robust Control. Prentice Hall, Englewood
Cliffs, NJ, 1995.
[16] D. W. Gu, P. H. Petkov, and M. M. Konstantinov. Robust Control Design with MATLAB.
Springer, London, 2013.
[17] T. Hagglund and K. J. Astrom. Automatic tuning of PID controllers. In W. S. Levine,
editor, The Control Handbook, pages 817–826. CRC Press, Boca Raton, FL, 1996.
[18] T. Hu and Z. Lin. Control Systems with Actuator Saturation: Analysis and Design.
Springer, New York, 2001.
[19] L. M. Huyett, E. Gassau, H. C. Zisser, and F. J. Doyle III. Design and evaluation of a
robust PID controller for a fully implantable artificial pancreas. Ind. Eng. Chem. Res.,
54:10311–10321, 2015.
[20] K. Keesman. System Identification: An Introduction. Springer, London, second edition,
2011.
[21] H. K. Khalil. Nonlinear Systems. Prentice Hall, Upper Saddle River, NJ, third edition,
2002.
[22] H. K. Khalil. Nonlinear Control. Pearson, Boston, 2015.
[23] H. Kwakernaak and R. Sivan. Linear Optimal Control Systems. Wiley-Interscience,
New York, 1972.
[24] F. L. Lewis, D. L. Vrabie, and V. L. Syrmos. Optimal Control. Wiley, Hoboken, NJ,
2012.
[25] J. S. Lim, J. R. Ryoo, Y. I. Lee, and S. Y. Son. Design of a fixed-order controller for the
track following control of optical disc drives. IEEE Trans. Contr. Syst. Tech., 20:205–
213, 2012.
[26] L. Ljung. System Identification: Theory for the User. Printice-Hall, Upper Saddle River,
NJ, second edition, 1999.
[27] G. Meinsma. Elementary proof of the Routh-Hurwitz test. Syst. Contr. Lett., 25:237–
242, 1995.
[28] N. S. Nise. Control Systems Engineering. Wiley, Hoboken, NJ, eighth edition, 2019.
[29] K. Ogata. Modern Control Engineering. Pearson, Boboken, NJ, fifth edition, 2010.
[30] M. A. Pai. Power System Stability Analysis by the Direct Method of Lyapunov. North-
Holland, Amsterdam, 1981.
BIBLIOGRAPHY 455

[31] C. L. Philips, H. T. Nagle, and A. Chakrabortty. Digital Control Systems: Analysis and
Design. Pearson, Upper Saddle River, NJ, fourth edition, 2014.

[32] W. J. Rugh. Linear System Theory. Prentice-Hall, Upper Saddle River, NJ, second
edition, 1996.

[33] J. Tal. Motion control systems. In W. S. Levine, editor, The Control Handbook, pages
1382–1386. CRC Press, Boca Raton, FL, 1996.

[34] K. van Heusden, E. Gassau, H. C. Zisser, D. E. Seborg, and F. J. Doyle III. Control
relevant models for glucose control using a priori patient characteristics. IEEE Trans.
Biomed. Eng., 59:1839–1849, 2012.

[35] K. Zhou and J. C. Doyle. Essential of Robust Control. Prentice Hall, Englewood Cliffs,
NJ, 1998.

[36] K. Zhou, J. C. Doyle, and K. Glover. Robust and Optimal Control. Prentice Hall, Upper
Saddle River, NJ, 1996.
Index

Note: Page numbers in italics refer to characteristic equation of closed-loop sys-


occurrences in the end-of-chapter problems. tem, 109
circuit realization of compensators, 163
acceleration error constant, 128 closed-loop eigenvalues, 353
ADC, 379 combined Laplace transform–z-transform
admittance, 18 table, 445
aliasing, 406 component with memory, 15
analog-to-digital converter, 379 contour mapping, 234
angle criterion, 110 control constraints, 140
anti-windup scheme, 194, 199 control system
antialiasing filter, 407 closed-loop, 2
approximation of continuous-time transfer features of a well-designed, 6
functions, 411 open-loop, 2
asymptotic Bode plots, 220 controllability, 333
automobile suspension, 29, 322, 342, 373 controllability Gramian, 336
active, 373 controllability matrix, 336
controllable canonical form, 344
backward difference method (BDF), 411 corner frequency, 220
band-limited signal, 406 critically damped, 83, 84
bandwidth, 256 crossover frequency, 251
bilinear transformation, 396, 419 cruise control, 3
bilinear transformation (BT) method, 412 cruise control system, 149
Bode plot design, discrete-time systems, current source, 15
419
Bode plots, 217 DAC, 379
error constants, 231 damped natural frequency, 85
second-order transfer function, 228 damping ratio, 85
bounded signal, 65 dc gain of the transfer function, 79
bounded-input–bounded-output stability, 66 dc gain, discrete-time, 385
break frequency, 220 dc motor, 38, 109, 124, 138, 323, 343, 371,
break-in point, 116 433, 435
breakaway point, 116 dc-to-dc power converter, 327, 372
design by emulation, 411
capacitor, 14 design by gain adjustment, 156, 280
Cauchy’s principle of the argument, 235 design specifications
characteristic equation of a matrix, 443 frequency domain, 278

456
INDEX 457

time-domain, 155 impedance, 18


difference equation, 381 impulse response, 65, 384
digital control, 377 impulse sampler, 389
digital control system, 378 inductor, 14
basic components, 379 insulin pump, 152, 316
stability of, 393 integral control, 363
digital-to-analog converter, 379 integrator windup, 198
discrete-time design, 415 Internal Model Principle, 151
discrete-time equivalent, 387 Internal Model Principle, 151, 315, 316
discrete-time system, 381 inverted pendulum on a cart, 374
disturbance effect, 133
duality, 340 Jacobian matrix, 324
dynamic component, 15 jury test, 393
Dynamic response
Kirchhoff’s current law, 15
periodic input, 81
Kirchhoff’s voltage law, 15
dynamic response, 78
sinusoidal input, 80 lag compensator, 179, 295
step input, 79 Laplace transform, 327, 438
Laplace transform table, 444
eigenvalues, 331, 443
lead compensator, 165, 287
selection of, 355
phase relations, 289
eigenvectors, 443
lead-lag compensator, 187, 302
elementary column operations, 442
linear independence, 442
elementary row operations, 442
linearization, 50, 324
estimator, 358
magnetic levitation system, 372
feedforward control, 361
magnitude criterion, 110
forced response, 78
marginally stable transfer function, 68
forward difference method (FDM), 411
mass, 25
free-body diagram, 25
MATLAB tutorial, 446
frequency response, 80
measurement noise, 139
discrete-time systems, 386
memoryless component, 15
frequency-domain approach, advantages of,
minimum-phase system, 91
306
modes, 332
frequency-domain design, 277
monic polynomial, 110
discrete-time systems, 419
motion control system, 433
gain margin, 250
natural response, 78
discrete-time systems, 402
Newton’s second law, 25, 31
gear, 35
non-minimum-phase system, 92
gear ratio, 35
non-unity feedback system, 131
Hook’s law, 24 nonsingular matrix, 442
Nyqist plot, 239
ideal sampler, 389 Nyquist contour, 238
idle speed control, 150, 314 Nyquist criterion, 234
458 INDEX

discrete-time systems, 398 proper transfer function, 12


gain adjustment, 240 proportional controller, 156
poles on the imaginary axis, 243 proportional derivative (PD) controller, 173
Nyquist stability criterion, 240 proportional-integral (PI) controller, 181
proportional-integral-derivative (PID) con-
observability, 338 troller, 190
observability Gramian, 339 pulp and paper industry, 151, 315, 316
observability matrix, 340
Observable Canonical Form, 347 quantization, 422
observer, 358 Quarter Amplitude Delay Method, 195
Ohm’s law, 14
op-amp, 21 rank of a matrix, 442
open-loop eigenvalues, 353 relative stability, 249
open-loop transfer function, 110 resistor, 14
operational amplifier, 21 riderless bicycle, 150, 275
optical disc drive, 314 rise time, 82, 87
output equation, 319 rocket, 333, 338
output error due to quantization root locus design, discrete-time systems,
stochastic analysis, 425 416
worst-case analysis, 425 root locus method, 110
output feedback, 352 discrete-time systems, 394
output feedback control, 359 rotating mass, 31
overdamped, 83 rotational mechanical system, 31
overshoot, 87 Routh-Hurwitz criterion, 70
discrete-time systems, 397
Padé approximation, 13
parallel realization, 349, 350 sample, 379
parameter uncertainty, 136 sampling frequency, 405
peak frequency, 256 sampling frequency, methods for choosing,
peak of the frequency response, 256 408
peak time, 87 sampling period, 379
pendulum, 51 sampling theorem, 407
percent overshoot, 87 satellite, 375
phase criterion, 110 sensitivity transfer function, 137
phase crossover frequency, 251 set point, 126
phase margin, 251 set-point regulation, 361
discrete-time systems, 402 set-point weighting, 177, 185, 194
PI (Proportional-Integral), 109 settling time, 82, 87
PI controller, 299 spectrum of a sampled signal, 405
PID controller, tuning, 194 spring, 24
polar plot, 211 stability margins, 250, 251
poles and zeros, discrete-time, 384 discrete-time systems, 402
poles, closed-loop, 109 stability margins from Bode plots, 251
position error constant, 127 stability of digital control systems, 393
discrete-time systems, 403 stability of transfer functions, 66
INDEX 459

stability, discrete-time systems, 384 undamped natural frequency, 85


stability, state-space models, 330 underdamped, 83, 85
staircase continuous-time function, 379 unit step function, 65
state equation, 319 discrete-time, 385
solution of, 327 unity feedback system, 127
state feedback, 352
state feedback control, 353 velocity error constant, 128
state-space design, 352 discrete-time systems, 404
state-space model of a transfer function, 344 viscous damper, 24, 31
state-space model, linear, 320 voltage source, 15
state-space models, 318
z-transform, 381
static component, 15
z-transform table, 445
steady-state error, 126
zero-order hold, 379
steady-state output to step inputs, discrete-
transfer function of, 388
time systems, 385
ZOH, 379
steady-state response, 79
ZOH method, 412
step response, 81
effect of zeros, 90
first-order transfer function, 81
second-order transfer function, 83
strictly proper transfer function, 12
superposition principle, 81

three-term controller, 194


time delay, 13, 65
time-delay systems, 233
time-domain–frequency-domain relations, 256,
260
torsional spring, 31
transfer function, 11
discrete-time, 382
transfer function of a state-space model, 340
transfer functions, approximation of higher-
order, 93
transient response, 79
transition matrix, 328
properties of, 335
translational mechanical system, 24
trapezoidal method, 412
Tustin method, 412
type of feedback control system, 128
type of feedback system, discrete-time, 403

unbounded signal, 65
uncompensated system, 165
Books International Lithocase: 8 by 10 cover with 0.922 spine for 468 pages on 620ppi paper
HASSAN K.
CONTROL SYSTEMS: AN INTRODUCTION
Blue area is actual cover, make sure background bleed covers the pink as well.
KHALIL

Professor Hassan K. Khalil is Distinguished Universi-

CONTROL SYSTEMS: AN INTRODUCTION


Before exporting, mask out this background to ensure that no ink variations occur in your design.
ty Professor Emeritus of Electrical and Computer
Engineering at Michigan State University. He joined
MSU in 1978, shortly after completing a Ph.D.
degree in electrical engineering at the University of
Dimensions: Use the measuring tool for areas/margins.
Illinois, which was preceded by B.S. and M.S.
Page is 19.05 x 12.00 in. degrees, also in electrical engineering, from Cairo
University in Egypt. Professor Khalil has consulted
for General Motors and Delco Products and has
published over 120 journal papers on singular
perturbation methods and nonlinear control. He is
also the author of several highly cited books, includ-
ing High-Gain Observers in Nonlinear Feedback Con-
trol (SIAM 2017), Nonlinear Control (Pearson 2015),
and Nonlinear Systems (Macmillan 1992; Prentice
Hall 1996 &amp; 2002), and a coauthor of Singular
Perturbation Methods in Control: Analysis and Design
(Academic Press 1986; SIAM 1999).

Professor Khalil was named IEEE Fellow in 1989 and IFAC Fellow in 2007, and has received
numerous international honors and awards, including the 1989 IEEE-CSS George S. Axelby
+
Outstanding Paper Award, the 2000 AACC Ragazzini Education Award, the 2002 IFAC ∑
Control Engineering Textbook Prize, the 2004 AACC O. Hugo Schuck Best Paper Award,
and the 2015 IEEE-CSS Bode Lecture Prize. At MSU he received the 1995 Distinguished
Faculty Award and the 2020 Withrow Teaching Excellence Award. He has served as Associ-
ate Editor of the IEEE Transactions on Automatic Control, Automatica, and Neural Networks,
and as Editor of Automatica for nonlinear systems and control. He was Program Chair of
the 1988 ACC, and General Chair of the 1994 ACC.

ISBN 978-1-60785-826-3

9 781607 858263
HASSAN K. KHALIL

You might also like