Control Systems
Control Systems
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.
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
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).
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
F
W
θ mg
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 = .
b̂
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 .
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
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
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
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.
in which inputs are applied to the system and the outputs are measured. A mathematical model
is obtained from the input–output data.1
• 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 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.
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
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.
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
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
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
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(∞).
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
4s2 − 52
G(s) = 2 + .
s3 + 6s2 + 11s + 6
sn + an−1 sn−1 + · · · + a1 s + a0 ,
2-1. LINEAR SYSTEMS 13
can be factored as
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.
y(t) = u(t − τ ) .
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
1 − τ s/2
e−τ s ≈ . (2.8a)
1 + τ s/2
• 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
−
− − − −
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
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 .
Find the transfer function V /I of the circuit in Fig. 2-3. Assume v(t) = 0 for t < 0.
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
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)
−
−
Solution: The current through all components is the same. Application of Kirchhoff’s voltage
law yields
Differentiating this equation with respect to time and dividing by L, we arrive at the equation
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
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.
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
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,
I(s) 1
Y (s) = = . (2.16)
V (s) Z(s)
2-2. EXAMPLES 19
V
+ V1 − + V2 − Z1 Z2
+ V −
Z = Z1 + Z2 1 1 1
−
Z = Z1 + Z2
Z1Z2
Z = Z1+ Z2
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
Vi
Vo = Z2 I = Z2
Z1 + Z2
Vo Z2
= . (2.18)
Vi Z1 + Z2
Z 1 (s)
+ R1 + + +
Vi R2 Vo Vi Z 2 (s) Vo
− − − −
(a) (b)
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+ +
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.
Z 2 ( s) Z 2 (s )
V− V−
− Vo Vi Z 1(s ) − Vo
V+ V+
Vi + +
Z 1 ( s)
(a) (b)
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
C2
R2
−
Vo
Vi +
R1
C1
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
C2 C4
C1 R2 R4
C3
Vi −
R1
V1 R3
−
+ Vo
+
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
K b
Spring Viscous damper Mass
f (t) = Kx (t) f (t) = b ẋ (t) M ẍ (t) = f (t)
K
M f (t)
b
M f (t)
(a) (b)
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,
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)
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
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
b K b ẋ (t) Kx (t)
M M
x (t)
f (t) Mg f (t)
(a) (b)
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
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.
x1 x2
K1 K2
M1 M2 f (t )
b1 b2
X1 X2
K1 X1 K 2 (X 1 − X 2 )
M1 M2 F
b1 sX 1 b2 s ( X 1 − X 2 )
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) .
Hence,
X2 M1 s2 + (b1 + b2 )s + (K1 + K2 )
= .
F ∆(s)
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 )
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 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
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
bs θ(s)
(a) (b)
which yields
θ 1 1/J
= 2 = . (2.27)
T Js + bs + K b K
s2 + s +
J J
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)
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 J2
where
∆(s) = (J1 s2 + b1 s + K)(J2 s2 + b2 s + K) − K 2 .
b3
T θ1 θ2 θ3
K1 K2
J1 J2 J3
b1 b2 b4
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
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
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)
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.
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
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
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 ,
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
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 )
i a (t) Ra La
+ Fixed field
+
Armature
va (t) vb (t)
circuit Tm (t) θm (t)
− Tm (t)
θm (t) Jm
−
bm
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
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
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
ω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
U Y
G(s)
U
U1 + U1 − U2 + U3
∑
− U U
U2 +
U3
U
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
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
which leads to
G1 (s)
Y= U. (2.36)
1 + G1 (s) G2 (s)
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)
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
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
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)
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)
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
U + + Y
G 1 (s) ∑ G 2 (s) ∑ G 3 (s) G 6 (s)
− −
G 4 (s)
G 5 (s)
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
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)
U + + + + Y
∑ G 1 (s) ∑ G 2 (s) ∑ G 4 (s)
− − −
G 3 (s)
G 5 (s)
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,
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)
G 5 (s)
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
mg
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.
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.
R2
I L + I +
R1 R
V + C R3 Vo V + C L Vo
− −
− −
(a) (b)
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)
2.7 Find the transfer function I/V of the circuit in Fig. P2.7.
R2 R3
I
+ IC
V R1 L C
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
C2
R2 R1
C1
− Vi −
Vo Vo
Vi + +
(a) R2 (b)
R1 C1
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
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
2.13 Find the transfer function X2 /F of the mechanical system of Fig. P2.13.
X1 X2
K1
K2
F M1 M2
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
2.15 Find the transfer function X2 /F of the mechanical system of Fig. P2.15.
b1 K1
M1
X1
b2 K2
M2
X2
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
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
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
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
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
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
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)
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)
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)
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
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.
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
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
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
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.
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
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)!
◮ 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
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 Ω , ω .
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.
s4 + a3 s3 + a2 s2 + a1 s + a0 ,
3-2 ROUTH-HURWITZ CRITERION 71
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,
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].
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
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.
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)
−
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.
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.
Y 6(KP s + KI )
= 4 .
R s + 6s + 11s2 + 6(1 + KP )s + 6KI
3
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
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.
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
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
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.
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.
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.
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
◮ 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ω )
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
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.
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
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):
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
Underdamped
Critically damped
Overdamped
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
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
ss p
r p s
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
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
ζ
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
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 .
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.
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.
a = 0.5
1
0.5
0
0 1 2 3 4 5 6 7 8
Time (seconds)
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.
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)
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 )
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
Step Response
1
Amplitude
0.5
0
0 1 2 3 4 5 6 7 8
Time (seconds)
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 + α )
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 )
(s + z)
(s2 + s + 1)(s + 1)
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.
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)
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
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
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)
s+2
G(s) = .
s2 + 2s + 4
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.
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)
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)
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
∆ 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
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 δ
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)
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.
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 ,
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 ,
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
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.
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
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
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,
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
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.
n−m 1 2 3 4
Angles 180◦ ±90◦ ±60◦ , 180◦ ±45◦ , ±135◦
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
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
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
Solution:
• Open-loop poles: 0, −1
• Open-loop zeros: −2
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
Solution:
• Open-loop zeros: −1
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
Solution:
• Open-loop zeros: −1 ± j
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
Rule #5: Use the Routh-Hurwitz criterion to determine the crossing points of the
imaginary axis.
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)
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.
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.
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
Reference
Output
Time
2 The 1
factor 2 is included so that R(s) = A/s3 .
4-3. STEADY-STATE ERROR 127
provided the limit exists. We calculate e(∞) using the final value theorem of the Laplace
transform:
e(∞) = lim sE(s) ,
s→0
Kp = lim G(s) .
s→0
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
A
e(∞) = .
Kυ
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
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
With this definition, the foregoing results are summarized in Table 4-2.
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)
K 1 6
Kp = G(0) = e(∞) = = .
6 1 + Kp 6 + K
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
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.
Gc (s) = KP + KI /s .
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
s3 1 6
s2 5 KP
s (30 − KP )/5
1 KP
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)
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)
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.
10
H(s) = .
s + 10
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.
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
−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)
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
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
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)
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
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
∆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 )
∆T ∆Gp Gc 1 + Gp Gc 1 ∆Gp
= ′
× = ′
.
T (1 + Gp Gc )(1 + Gp Gc ) Gp Gc 1 + Gp Gc Gp
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
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
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
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.
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
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.
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
D (s)
Controller Plant
+
R(s) U(s) + Y (s)
Go (s) ∑ G p (s)
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
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
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
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
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.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
(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
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
(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
(τ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.
(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)
• 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).
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.
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.
(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)
1
Gp (s) = ,
(s + 1)(s + 3)
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
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
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
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.
Table 5-1: Example 5-4: comparison of the step response parameters for three gains.
–
– – – – –
Real Axis (seconds–1)
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.
C2
C4
C1 R2
C3 R4
Vi −
R1
−
V1 R3
+ Vo
+
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.
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.
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
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
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
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
Example 5-7: Lead Compensator Design for Desired Overshoot and Peak Time
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
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
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
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.
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.
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.
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)
− −
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
Uncompensated Compensated
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.
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
0.5
Gp (s) = ,
s(s + 2.5)
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
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.
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
R +∑ +∑ U Y
b KD s Gp (s)
− +
+
∑ KP
−
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
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
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.
Reconsider the previous example and implement the PD controller with set-point weighting
b = 0.
5.5(s + 11.64)
T (s) = ,
s2 + 8s + 64
64
T (s) = .
s2 + 8s + 64
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
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
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 .
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
Step Response
1.2
0.8
Amplitude
Uncompensated
0.6
Compensated
0.4
0.2
0
0 5 10 15 20 25
Time (seconds)
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.
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 .
s = −1 + √3 j
θ3 θ2 θ1
x θ4 o x x
−3 −z −1
θ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
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
−
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
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)
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
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
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.
(s + 7)
Gp (s) = ,
(s + 2)(s + 5)(s + 10)
1. PO ≤ 20%;
2. Tp ≤ 0.2 s;
–
– – – – –
Real Axis (seconds–1)
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
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
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)
+∑
b KP
−
+
R +∑ KI +∑ U Y
Gp (s)
s
− +
+∑
c KD s
−
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
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.
Table 5-8: Effect of changing the three gains of the PDI controller on the step response.
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.
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)
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)
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)
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
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)
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
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
K(s + 3)
G(s) = .
s(s + 1)
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 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
(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)
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]
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
Pendulum
V
θ
mg
y
Cart F H
(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
(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
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)
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.
Im[G]
G( jω 4 ) Re[G]
o
o G( jω 3 )
o G( jω 2 )
o G( jω 1 )
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
Im
ω ω
Re
ω ω
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.
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:
ω Im
Re
ω
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 ,
The sketch is shown in Fig. 6-5. At ω = 0, the plot starts at ( 16 , 0) on the real axis. As ω
Im
ω ω
Re
ω
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
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)
Example 6-4: Bode Plots of a Transfer Function with One Pole at the Origin
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
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
–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
G(s) = K(τ s + 1) .
Solution:
p
G( jω ) = K(1 + jωτ ), |G| = K 1 + ω 2τ 2 , ∠[G] = tan−1 (ωτ ) .
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◦ ,
τ
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
Example 6-7: Asymptotic Bode Plots of a Transfer Function with Three Poles
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
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
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
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.
ω n2 ω n2
G(s) = , ζ < 1, G( jω ) = .
s2 + 2ζ ω n s + ω n2 ω n2 − ω 2 + j2ζ ω n ω
ω 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
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
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)
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
y(t) = u(t − τ ) .
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.
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
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
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
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,
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
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
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.
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]
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
Then,
Z = P−N .
The system is stable when Z = 0.
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.
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.
Example 6-14: Checking Stability by the Nyquist Criterion for All Values of a
Positive Gain
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
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
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.
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
Example 6-16: Application of the Nyquist Criterion When GH(s) Has a Pole
at the Origin
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:
(c) Segment d-e → the mirror image of the polar plot of a-b.
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]
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 .
10
5
Imaginary Axis
−5
−10
−10 −5 0 5 10 15
Real Axis
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
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:
(c) Segment d-e → the mirror image of the polar plot of a-b.
ε 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 .
−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 .
3π
(2) As ω → ∞, Re[GH] → 0, Im[GH] → 0, and ∠[GH] → 2 ≡ − π2 ;
10
4
Imaginary Axis
−2
−4
−6
−8
−10
−10 −9 −8 −7 −6 −5 −4 −3 −2 −1 0 1
Real Axis
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
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
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.
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.
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
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)
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
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
✛ ✲
(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)
−
pω
ωp ωBW
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
ω 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 .
ω 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 .
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
ζ ζ
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(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
ζ ζ
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
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
Table 6-1: The effect of changing ζ and ω n on the frequency and time responses.
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)
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)
ω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
50
Magnitude (dB)
–50
–100
–150
–90
–135
Phase (deg)
–180
–225
–270
10–1 100 101 102 103
Frequency (rad/s)
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.
ω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
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)
10(s + 3)(s + 4)
G(s) = .
s(s + 2)(s + 5)
10
G(s) = .
s(s + 1)(s + 10)
10(s + 5)
G(s) = .
(s + 1)(s + 10)(s + 50)
104
G(s) = .
(s + 1)(s + 10)(s + 100)
K(s + 1)
G(s) = , K > 0.
s(s − 1)(s + 5)
K
G(s) = , K > 0.
s2 (s + 1)
5K(s + 1)
G(s) = , K > 0.
s(s − 1)(s + 3)
K
G(s) = , K > 0.
s(s − 2)(s + 8)
K
G(s) = , K > 0.
(s + 1)(s + 3)(s + 5)
K(s + 5)
G(s) = , K > 0.
s(s + 10)(s + 100)
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)
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)
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)
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)
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)
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)
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
(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
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.
Controller Plant
R (s) + Y (s)
∑ G c (s) G p (s)
−
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)
∑ +
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
(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.
ω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 .
ωc des
0
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.
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 .
• 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
ωc
ωc
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 .
Let
K
G(s) = .
(s + 1)(5s + 1)
(1) Find K such that ω c = 1 rad/s.
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.
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
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
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.
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
(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
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
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 ω
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
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,
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.
φ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
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 3: Calculate β :
1 − sin φmax
β= .
1 + sin φmax
7-3. LEAD COMPENSATION 291
50
–50
ωc
10 –1 10 0 10 1 10 2
–50
–100
–150
–1 0 1 2
10 10 10 10
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.
Example 7-4: Increasing the Phase Margin without Changing the Low-
Frequency Gain
(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
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
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
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
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
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.
–125
–180
10 –2 10 –1 10 0 10 1
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
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
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
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
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.
20
Gp (s) = ,
(s + 0.2)(s + 1)(s + 100)
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
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◦ .
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
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
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:
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 .
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:
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.
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
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
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
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)
7.4 Let G(s) = K Ĝ(s). The Bode plots of Ĝ(s) are shown in Fig. P7.4.
310 CHAPTER 7. FREQUENCY-DOMAIN DESIGN
0
Magnitude (dB)
–50
–100
–150
0
Phase (deg)
–90
–180
–270
10–2 10–1 100 101 102 103
Frequency (rad/s)
(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)
100
Gp (s) = ,
s(s + 5)(s + 10)
100
Gp (s) = ,
(s + 1)(s + 5)(s + 10)
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
1
Gp (s) = .
s(s + 1)(s + 10)
1
Gp (s) = ,
(s + 1)(s + 2)
1
Gp (s) = ,
(s + 1)(s + 10)
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
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.
ẋ = 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
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 .
h = c1 x1 + c2 x2 + c3 x3 + du ,
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
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)
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
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)
u = S, y = ys .
ẋ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.
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
dia
va = Ra ia + La + Kb ω m . (8.8a)
dt
Application of Newton’s second law to the mechanical part yields
x1 = θm , x2 = θ̇m = ω m , x3 = ia .
u = va , y = ωm .
ẋ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
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
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
∂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
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
mg
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
" # " #
∂f 0 1 ∂f 0 ∂h ∂h
= g k , = 1 , = 1 0 , = 0.
∂x − cos x1 − ∂u ∂x ∂u
l m ml 2
" # " #
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
By multiplying each term, from the left-hand side, by the inverse of (sI − A), we have:
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
yields
Z t
y(t) = CΦ(t) x0 + CΦ(t − τ ) B u(τ ) d τ + Du(t) . (8.16)
0
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
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
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.
(1) the solution of ẋ = Ax, with x(0) = x0 , tends to zero as t tends to infinity, and
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.
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)
1 1 1
(sI − A)−1 = R1 + R2 + · · · + Rn
(s − λ1 ) (s − λ2 ) (s − λn )
n
X 1
= Ri ,
(s − λi )
i=1
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
and Z t
eλi (t−τ ) f (τ ) d τ is bounded for every bounded function f (t). For
0
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
(d) −3, −2 ± j
Solution:
(c) Stable.
(d) Stable.
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 .
ḣ = υ ,
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
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
where Φ(tf ) is taken outside the integral because it is not a function of τ . Let
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
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
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
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
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.
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 .
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
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
ẋ = 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
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.
ẋ = Ax + Bu , y = Cx + Du .
8-5. TRANSFER FUNCTION OF A STATE-SPACE MODEL 341
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-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
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.
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
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(∞) .
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
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
To derive a state-space model, set the state variables as the outputs of the three integrators;
that is,
ẋ2 = x3 ,
ẋ3 = −a0 x1 − a1 x2 − a2 x3 + u ,
and
y = c0 x1 + c1 x2 + c2 x3 .
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.
Solution:
0 1 0 0
A= 0 0 1 , B = 0 , C= 1 0 2 , D=0.
−1 1 −3 1
2s3 + 2s2 + 1
G(s) = .
s3 + 3s2 − s + 1
D = G(∞) = 2,
which leads to
G(s) = Cc (sI − Ac )−1 Bc .
348 CHAPTER 8. STATE-SPACE METHODS
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.
Solution:
0 0 −1 1
A = 1 0 1 , B = 0 , C= 0 0 1 , D = 0.
0 1 −3 2
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
ẋa = A1 xa + B1 u , (8.32a)
y1 = C1 xa + D1 u , (8.32b)
ẋ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
y1
G 1 (s)
u y
y2
G 2 (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
The first-order transfer function Ki /(s − pi ) can be realized by the state-space model
ẋi = pi xi + u , yi = Ki xi ,
ẋi = pi xi + Kiu , yi = xi ,
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
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
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.
ẋ = (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
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 }.
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
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.
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) .
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 }.
ẋ = (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.
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
ẋ = 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
and we would have obtained x̂(t) ≡ x(t). This can be seen by defining the estimation error
e = x − x̂ ,
ė = Ax + Bu − Ax̂ − Bu = Ae , e(0) = 0,
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 .
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.
ẋ = 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
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
ẋ = 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
u = −4x̂1 − 2x̂2 + v ,
x̂˙1 = x̂2 + 10(y − x̂1 ) ,
x̂˙2 = u + 100(y − x̂1 ) .
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
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.
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 .
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
ẋ = Ax − BK1x − BK2 z
ż = r −Cx
is stable. The closed-loop system has an equilibrium point at (x̄, z̄), which satisfies the
equlibrium equations12
Because the system is stable, its solution converges to the equilibrium point as t → ∞.
Consequently,
lim y(t) = ȳ = Cx̄ = r .
t→∞
u = −K1 x̂ − K2 z ,
ż = r − y ,
x̂˙ = Ax̂ + Bu + L(y −Cx̂) .
is stable and its solution converges to the equilibrium point (x = x̄, z = z̄, e = 0). Therefore,
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
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
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
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)
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
(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
(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
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
(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
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
(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
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:
(b) Higher control accuracy. The control accuracy in analog control is limited by the
accuracy of the devices, temperature drift and other factors.
(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.
y(kT ) S/
ADC 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
• 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 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.
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).
(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
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,
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
(zn + an−1 zn−1 + an−2 zn−2 + · · · + a0 ) Y (z) = (bn zn + bn−1 zn−1 + · · · + b0 ) U (z) ,
Example 9-2: Finding the Transfer Function from the Difference-Equation Model
which gives
z
G(z) = .
1
z2 − z + 41
2
Example 9-3: Finding the Difference-Equation Model from the Transfer Function
Solution:
Y (z) 0.96z + 0.92
= G(z) = 2 ,
U (z) z − 0.9z + 0.81
which can be rearranged as
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
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
∞
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
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
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,
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
∞
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
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
u (t) ū(t)
u(t) GZOH (s) G̃(s) y(t)
T
∞
X
y(t) = u(ℓT ) p(t − ℓ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
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
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
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’) .
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)
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
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.
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 .
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.
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
– – – – – –
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.
F(z)|z=(1+w)/(1−w) = 0
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
Solution:
K(1 − e−0.01 )(z − 0.9)
1+ = 0,
(z − e−0.01 )(z − 1)
398 CHAPTER 9. DIGITAL CONTROL
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.
Determine the stability of a digital control system where the continuous-time plant G̃p (s) and
400 CHAPTER 9. DIGITAL CONTROL
Imaginary Axis
0 0
–2
–0.1
–4
–0.1 0 0.1 0.2 –0.02 –0.01 0
Real Axis Real Axis
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
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
π π
|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
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
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”.
Find the gain and phase margins of the systems of Example 9-13 when K = 5.
Solution: The MATLAB statement
margin(5*Gp)
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)
1
E(z) = R(z) . (9.16)
1 + G(z)
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(∞) = .
Kυ
404 CHAPTER 9. DIGITAL CONTROL
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
1 T
e(∞) = = .
Kυ Kb
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.
∞
X
f ∗ (t) = f (kT ) δ (t − kT ) .
k=−∞
406 CHAPTER 9. DIGITAL CONTROL
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=−∞ ℓ=−∞
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,
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.
A band-limited signal with maximum frequency ω max can be uniquely determined from its
samples if ω s > 2 ω max .
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.
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
+ ∑ G c (s) 1− e− T s G p (s)
sT
−
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.
2π ω BW
ω BW ≈ 1.6 ω c T ωc ≈ × .
ωs 1.6
Therefore,
ωs
11.25 ≤ ≤ 22.5.
ω BW
ω s ≥ 20ω BW
in order to preserve the tracking and disturbance rejection properties of the analog control
system.
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
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
Design steps:
(1) Design a continuous-time controller G̃c (s) to meet the design specifications.
(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.
• 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 τ ,
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
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.
0.2
G̃p (s) = ,
(s + 1)(s + 0.2)
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
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
Design steps:
(1) Choose T based on the design specifications (larger T relative to the emulation method).
(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.
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.
Imaginary Axis
–
–
–
– – –
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.
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
(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).
(6) Evaluate the performance of the digital controller by analysis and/or simulation.
∠G′p ( j6) = − tan−1 (0.015 × 6) + tan−1 (1.8748 × 10−4 × 6) − 90◦ − tan−1 (0.4 × 6)
= −162.46◦ .
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.
0.2
G̃p (s) = ,
s(0.4s + 1)
• Kυ ≥ 20.
0.00021948(z + 0.9753)
Gp (z) = ,
(z − 1)(z − 0.9277)
42.88(1 + 0.3w)
G′c (w) = ,
1 + 0.09w
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
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
(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.
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)
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
U = E4 + K(E + E1 + E3 + αη )
Kα
= 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)
Kα
= 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
r + 1 y
∑ V max Gc (z ) Vmax G p (z )
−
e1 e4
K
Kα e3
z− b
e2
• stochastic analysis.
" ∞ ∞
#
q X X
|y(k)| ≤ |y1 | + |y2 | + · · · ≤ |h1 (ℓ)| + |h2 (ℓ)| + · · · .
2
ℓ=0 ℓ=0
q2
Mean value of e = E{e} = 0, variance of e = .
12
426 CHAPTER 9. DIGITAL CONTROL
h = impulse(H) .
L1 = norm(h,1), L2 = norm(h,2).
•
∞
X ∞
X
|h(i)| = L1 , h2 (i) = L22 .
i=0 i=0
9-9. PROBLEMS 427
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
R + 1 + + Y
∑ ∑ G c (z ) ∑ 10 G p (z )
− 10 + +
E1
1
z − 0.6
E2
(c)
(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
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)
(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
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)
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) ,
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
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:
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
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) .
the controller is
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 .
• 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,
Example A-1:
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:
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,
√ ! √ !
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.
• Compute the Laplace transform of the solution from the algebraic equation that results
from the previous step.
Example A-3:
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
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.
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).
Appendix C
Laplace and z-Transform Tables
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
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
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);
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. 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.
[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.
[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
[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
456
INDEX 457
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 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