Professional Documents
Culture Documents
Ramprasad Potluri
Preface ix
Notation xiii
I Preliminaries 1
1 Introduction to the course 3
1.1 About the title of the course . . . . . . . . . . . . . . . . . . . . . 3
1.2 Definition of negative feedback control . . . . . . . . . . . . . . 3
1.3 Examples of control systems . . . . . . . . . . . . . . . . . . . . . 4
1.4 Videos of control systems . . . . . . . . . . . . . . . . . . . . . . 5
1.5 Appendix: History of control systems . . . . . . . . . . . . . . . 6
2 Dynamic systems 7
2.1 Definition of dynamic system . . . . . . . . . . . . . . . . . . . . 7
2.2 An example dynamic system: PMDC motor . . . . . . . . . . . . 7
2.3 A glimpse into the Laplace transform and transfer functions . . 10
iii
EE250 (Control Systems Analysis) IITK Lecture Notes
II Bode Plots 41
9 Frequency response 43
9.1 Definition of Frequency Response . . . . . . . . . . . . . . . . . . 43
9.2 Problem statement . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
9.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.5 Caution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.6 Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
These lecture notes present the minimum set of topics that I have found nec-
essary to practically build and operate a simple control system based on an
approximately 40-hour lecture course. These notes evolved as I taught over
the past 8 years an introductory course on the analysis and design of control
systems first at the Indian Institute of Technology (IIT) Delhi and then at IIT
Kanpur, in the Electrical Engineering departments.
These notes, along with some tutorial sessions on Matlab or GNU Octave1 ,
and with a background acquired in a basic electrical engineering course on
motors, are adequate to design and operate, for example, a permanent magnet
dc motor control system.
The background expected of the reader to understand these lectures is a
comfort with (i) ordinary differential equations, and (ii) the Laplace transform
and the convolution integral. The first is acquired through a course on calculus
and the second is obtained through a course on signals and systems.
The subject of these lectures is classical control engineering. This subject
was born approximately in the 1930’s with the works of Nyquist, Bode, and
Black, and matured by the 1950’s with the works of Ziegler, Nichols, and Evans.
Since then, though many developments have taken place in this subject, the
set of techniques taught in an introductory course on this subject has largely
remained constant in most countries at what these authors developed.
A reader already has the choice of many excellent textbooks that are avail-
able in the market on the topic of classical control engineering. Books such as
those by Nagrath and Gopal, Gopal, Kuo, Ogata, Franklin and Powell, Nice,
and Dorf and Bishop already provide enough material for the said introduc-
tory course and more. Why then another book on this topic?
The present lecture notes are indeed based on these textbooks as well as
other books. These notes are mainly aimed at anyone who is a beginner in
the area of feedback control theory, and wishes to learn a minimum set of
practically applicable techniques through self-study. Being a beginnner, he/she
would not know which topics to read from these books, in which sequence,
and at what depth, in spite of the guidlelines in the prefaces of these books.
For the same reason, these notes will also be useful to a beginning teacher of
control systems.
These notes go beyond providing a set of lectures for a first course based on
the said textbooks. Listed below are the topics that are treated differently from
1 Matlab is an engineering software for numerical computation, and is sold by Math-
ix
EE250 (Control Systems Analysis) IITK Lecture Notes
voted to this transfer function is not easy to find in the textbooks. In the present
notes, this transfer function is discussed only in the contexts in which it is used.
Three contexts are identified. The first is sketching Bode plots. The second is
loop-shaping, in developing a relation between phase margin of the open loop
system and the peak overshoot in the step response of the closed loop system.
The third is root locus-based design. Indeed, Matlab’s root locus tools gener-
ate graphs where the grid is a polar one specifically meant for working with a
second order transfer function.
In many textbooks, Nyquist plots are sketched using convenient points on
the s-plane contour. In the present notes, on the other hand, the Nyquist plot
is sketched by first sketching the Bode plot. This technique is much quicker
and easier than the first one for nearly all the transfer functions that the reader
encounters in an introductory course.
In these notes, the lectures on Bode plots-based design emphasize on the
end user being able to apply the technique quickly with reasonable approxi-
mations, and on fine-tuning the redesign by seeing its effect on the results of
simulation. On the other hand, the popular textbooks provide techniques to
exactly achieve, for example, a desired phase margin. Such exactness is neither
needed in practice, nor is useful; practical systems have nonlinearities that are
not accounted for at the design stage. So, a technique that focuses on accuracy
will slow the process of redesign of the controller.
These lecture notes carefully examine the background of many of the topics
discussed. For example, a counter example is provided to show that what
some of the textbooks provide as the reason for why certain transfer functions
are called minimum phase is actually incorrect. The correct reason is provided
through an example. Similarly, it is shown that the treatment of the Nyquist
stability criterion for the closed loop system 1+GGH is incorrect in many of the
textbooks. The correct treatment is provided.
Those in the business of applying feedback control theory to practice may
be able to suggest a different or more appropriate set of topics for these notes.
I welcome, and will be thankful for, such suggestions and others that will help
improve these lecture notes.
Where needed, the appropriate literature is cited. The appendices of these
Table 1: How the topics of this course are organized. The reader progresses
through the course from top to bottom along this table.
Background Negative feedback, LTI dynamic systems, Laplace transforms,
transfer functions, state-space equations, block diagram algebra,
signal flow graph algebra, Mason’s gain formula, virtues of a neg-
ative feedback control system, frequency response, Bode plots
Theory of stabil- How the location of poles and zeros in the s-plane determines
ity the nature of response of a system, BIBO stability of LTI systems,
Cauchy’s theorem of argument, Nyquist stability criterion
Analysis and de- Loop-shaping, performance specifications, lead and lag compen-
sign using Bode sators, error constants, system type, examples of design using
plots semilog graph papers
Analysis and de- Rules for sketching root loci, simple examples of design using
sign using root root loci, standard second order model, MATLAB’s sisotool and
locus rlocus, effect of additional zero and additional pole
notes shed more light on their respective lectures. These appendices usually
contain material that may be slightly advanced for the course or of only special
interest, and are not discussed in the lectures. Each lecture also contains some
problems for practice. These problems are not discussed in lectures, and are in
addition to the problems that the students see in the tutorials.
In these notes, the primary software used to perform numerical compu-
tations and to generate plots is GNU Octave, which is helpful for most tasks
that are encountered in applying in practice the techniques described in these
notes. However, Matlab has certain tools such as SISOTOOL and Simulink the
equivalents of which are absent in GNU Octave. Except where SISOTOOL or
Simulink are used, the example codes have been written such that they execute
both in GNU Octave and in Matlab.
The topics of this course are organized as shown in Table 1. The reader may
visit this table occasionally to navigate through the course.
xiii
EE250 (Control Systems Analysis) IITK Lecture Notes
Preliminaries
1
Lecture 1
This lecture begins with an overview of the syllabus and the preface.
3
EE250 (Control Systems Analysis) IITK Lecture Notes
Open-loop CS Closed-loop CS
(E.g., Household fan) (also known as feedback CS)
Human-in-the-loop CS
Automatic CS (E.g., driver and automobile)
input, we say that y is fed back. The operation of taking −y is called negative
feedback. The act of using the error e = yref − y to apply an input u to the plant
so that e is reduced is called negative feedback control. A control system built
using the concept of negative feedback control is called negative feedback control
system.
The element represented by the shaded circle is called summator or sum-
mer or summing element. If its inputs are a and b, then its output is the sum
a + b. given that the summator performs the operation of summation, the sys-
tem of Figure 1.3 may be called a positive feedback control system if y were to
be fed back without a minus sign, that is, if e = yref + y were the output of the
summator.
Feedback action can be contrasted with feedforward action. This distinction
is explained in lectures 6 and 7.
1. The read head of hard disc drive needs to be positioned at a desired track,
or needs to remain at the track in spite of any mechanical shocks that the
PC/laptop may receive.
zref u z
Plant
Figure 1.2: Plant and goal. We have a plant whose input is u and output is z.
We want z to follow, as closely as possible, a quantity zref that is dimensionally
consistent with z.
Dynamic systems
In this course, we work with dynamic systems described only by linear time-
invariant differential equations.
with the motion and equilibrium of bodies and the action of forces, and includes kinematics, dy-
namics, and statics. Now often distinguished as classical mechanics (as opposed to quantum me-
chanics).
7
EE250 (Control Systems Analysis) IITK Lecture Notes
Dynamic system
Dynamic Kinematic
equations equations
+
V −
N
Figure 2.2: Illustration for a conductor in a magnetic field. The applied EMF
V drives a current i through the conductor. The conductor turns about its axis
due to the interaction of i and the field.
force. The direction of this force relative to the directions of the field and cur-
rent is given by Fleming’s left hand rule which says that if the first finger, second
finger, and thumb were to be held mutually perpendicular, and the direction
of the field (from north pole to south pole is) indicated by the first finger, and
the direction of the current is indicated by the second finger, then the direction
of the thrust is indicated by the thumb:
field first finger
current second finger
thrust thumb
This phenomenon is utilized in motors: the current carrying conductor is
mounted on an axis and the thrust that the conductor experiences works as
a turning force (torque) that makes it rotate around the axis (Figure 2.2). If the
field is variable (as, for example, when using an electromagnet), then we can
write the torque as follows:
T (t) = K f Φi (t)
where K f is a constant of proportionality, i (t) is the current in the conductor
and Φ is the flux. If a permanent magnet is used to provide the field, then the
field will be constant, and the motor’s torque can be written as
T ( t ) = Kt i ( t ) (2.1)
Another phenomenon comes into play. When the conductor turns in the
field, it cuts through the field, and an EMF is induced in it that is, by Faraday’s
law, directly proportional to the rate of change of flux linkage (which in turn is
proportional to the flux Φ and the angular velocity of the conductor ω):
E(t) = Ke Φω (t)
If Φ is a constant, as when produced by permanent magnets, then
E ( t ) = Kb ω ( t ) (2.2)
By Lenz’s law, the direction of this induced EMF is such that it tends to oppose
the flux change causing it. So, the current that eventually flows through the
conductor is the result of the net EMF V − E, where V is the voltage applied to
the ends of the conductor as shown in Figure 2.2. This current causes a voltage
drop across the inductance L a and the resistance R a of the conductor:
di
V (t) − E(t) = L a + Ra i (2.3)
dt
In the present lecture, we are interested in dc motors. Equations (2.1), (2.2),
(2.3) describe the operations of dc motors. A dc motor has not just one turn of
wire for a conductor, but many turns of wires, all distributed evenly around a
cylindrical core. This set of wires is called armature. The core is mounted on
an axis. The entire rotating component (core plus conductors) of the motor is
called rotor. The L a and R a in Equation (2.3) are in fact the net inductance and
the net resistance of the armature, not of a single conductor.
In order for the rotor to spin, the torque T generated by any motor (ac or
dc) has to overcome any externally applied disturbance torques (TL ), the mo-
ment of inertia (J, assumed constant, although can be variable too) of the motor
(which matters when there is a change in angular velocity ω), and the friction
in the bearings as well as due to wind (summed up in B, the coefficient of vis-
cous friction), summarized by the fundamental torque equation:
dω
T = TL + J + Bω
dt
In the case of the dc motor that we have been discussing, this equation can be
written as follows:
dω
T (t) − TL (t) = J + Bω (2.4)
dt
In case a load is mounted on the rotor shaft, then the moment of inertia
and the coefficient of viscous friction of the motor rotor-load combination will
be different from J and B mentioned above and will be equal to some b J and B b
which are called respectively equivalent moment of inertia (of the rotor-load combi-
nation) referred to the rotor shaft and equivalent coefficient of viscous friction (of the
rotor-load combination) referred to the rotor shaft.
Table 2.1 summarizes the equations of a dc motor. Four of these equations
describe a permanent magnet dc (PMDC) motor.
Problem 2.1
Identify the algebraic and dynamic equations in Table 2.1.
Equation Explanation
di
V (t) = L a dt + Ra i + The voltage applied to the armature pushes a current
E(t) through the armature. A part of this voltage drops
across the resistance R and inductance L. The balance
of this voltage overcomes the back emf E(t) that is in-
duced by the rotation of the rotor.
T ( t ) = K f Φ ( t )i ( t ) In a dc motor, the interaction between the current i
flowing through the conductors of the motor’s arma-
ture and the magnetic flux Φ produces torque T.
T ( t ) = Kt i ( t ) In a PMDC motor Φ is constant, resulting in K f Φ being
a constant denoted Kt .
T (t) − TL (t) − The torque T accelerates the rotor after overcoming any
Bω = J dω
dt
load or disturbance torques TL that may act on the mo-
tor shaft and the torque Bω due to viscous friction. B is
known as the coefficient of viscous friction.
E ( t ) = Ke Φ ( t ) ω ( t ) In a dc motor, the armature’s motion through the field
induces an EMF in the conductors of the armature.
E ( t ) = Kb ω ( t ) In a PMDC motor, as Φ is constant, Ke Φ is a constant
denoted Kb .
Classical control theory uses the Laplace transform to represent LTI dynamic
sytems through transfer functions and block diagrams. The student has seen these
topics in an earlier course on signals and systems. This lecture recaps these
topics.
This lecture also provides a brief overview of state-space theory. In this the-
ory, ordinary differential equations (ODEs) are written as state-space equations.
4. how closely the output tracks the input once the transient phase of the re-
sponse is over, measured by the steady-state error ess to a unit step input,
and
5. the robustness of the above properties, that is, the approximate constancy of
these properties even if the plant’s parameters change.
For LTI systems modeled by ODEs, the satisfaction of these properties by the
system is independent of ICs []. As classical control theory restricts itself to
such systems, there is no loss in ignoring ICs. On the other hand, for nonlinear
systems, these properties are in general IC-dependant. Classical control theory
is inadequate here.
Additional interesting observations about TFs can be found in [14, Page 42].
13
EE250 (Control Systems Analysis) IITK Lecture Notes
dn y d n −1 y dy
an n
+ a n − 1 n − 1
+ · · · + a1 + a0 y =
dt dt dt (3.1)
dm u d m −1 u du
bm m + bm−1 m−1 + · · · + b1 + b0 u,
dt dt dt
and by LTI algebraic equations. An example is the model of the PMDC motor
seen in Lecture 2.
Note that apart from LTI ODEs such as that of Equation (3.1), classical con-
trol theory also works with LTI ODEs containing time delay elements.
Consider the following examples.
In such cases, y(t) is a time-shifted version of x (t) as shown in Figure 3.1. This
behavior is summarized by the equation y(t) = x (t − td )1(t − td ). Applying
the Laplace transform on both sides of this equation gives Y (s) = X (s)e−td s .
Problem 3.1
Write the ODE corresponding to the TF Y (s)/U (s) = (s + a)e−td s /(s + b).
Problem 3.3
x (t)
t
y(t)
td t
Figure 3.1: Illustration for time delay. y(t) is a delayed version of x (t).
TL (s)
V (s) + 1 I (s) T (s) + − 1 ω (s)
Kt
− sL a + RΣ Js + B
E(s) Kb
Table 2.2 shows the four elemental TFs of a PMDC motor. Work out the
composite TF of this motor from the input V (t) to the output ω (t).
Problem 3.4
Draw a block diagram of a PMDC motor to include the initial conditions.
Do you see any advantages in such an inclusion?
+ G (s)
Y2 (s)
Figure 3.3: Only two blocks appear in the block diagrams of systems modeled
by LTI ODEs and by LTI algebraic equations. These are the summator and the
gain block. Figure 3.2 shows a sample block diagram.
Thus, we may wonder why we did not apply it to the nonlinear element
K
TM (t) = K f Φ(t)i (t), obtain the s-domain expression TM (s) = 2πjf Φ(s) ∗ I (s),
and somehow incorporate this term in the block diagram of Figure 3.2. Note
that, once included in the block diagram, we may wonder how to work with
such a term.
As we see in the remainder of the course, even working with systems whose
block diagrams have only summators and gain blocks is sufficiently challeng-
ing. Thus, classical control theory restricts itself to these systems.
Problem 3.5
Prove, starting from the definition of linearity, that the equation T (t) =
K f Φ(t)i (t), representing a system with inputs Φ and i and output T, is a non-
linear one.
d2 y dy
2
+ a1 + a0 y = u. (4.1)
dt dt
This equation is a linear time invariant (LTI) second order ordinary differential
equation in one variable (y). This equation models a certain plant. Denoting
y1 := y and y2 := ẏ1 = ẏ, we write this differential equation equivalently as
ẏ1 = y2 ,
ẏ2 + a1 y2 + a0 y1 = u,
which is a system of first order differential equations in two variables (y1 and
y2 ). This system is written as
" # " #" # " # " #
ẏ1 0 1 y1 0 h i y
1
= + u, y = 1 0 .
ẏ2 − a0 − a1 y2 1 y2
The vector z = [y1 y2 ]| is called the state vector of the plant that this second
order ODE models. Thus,
17
EE250 (Control Systems Analysis) IITK Lecture Notes
we have
ż = Âz + Byref , y = Cz, (4.4)
where  = ( A − Bk).
Thus, the state feedback control of Equation (4.3) helps us replace the input-
output behavior given by Equation (4.2) with the input-output behavior given
by Equation (4.4). As A is 2 × 2 and B is 2 × 1, k is 1 × 2. With k = [k0 k1 ], we
have " #
0 1
 = .
−( a0 + k0 ) −( a1 + k1 )
With this Â, the state-space model of Equation (4.4) is equivalent to the LTI
ODE
d2 y dy
+ ( a1 + k 1 ) + ( a0 + k 0 ) = u
dt2 dt
This k can be constructed algebraically without solving any ODEs or state-
space equations.
d2 y dy
2
+ 2ζωn + ωn 2 = ωn 2 u, (4.5)
dt dt
which is more general than Equation (4.1), we know that, for a given ωn , the
larger the value of ζ, the less the overshoot and oscillations in the unit step
response√of Equation (4.5). In the present example, ωn = 1, and ζ = 0.025.
ζ = 1/ 2 with ωn = 1 give us an adequately damped response, that is, one
which has an overshoot of not more than about 10 − 15% and has only about
3 – 5 overshoots and undershoots before it settles to within about 95% of the
1.8
1.6
1.4
1.2
y(t)
0.8
0.6
0.4
0.2
0
0 50 100 150 200 250
Time (sec)
Figure 4.1: The unit step response of the plant of Equation (4.1) with a0 = 1
and a1 = 0.05. This response is poorly damped as seen from the fact that it has
large overshoot and is very oscillatory.
desired value of 1, as shown in Figure 4.2. ζ is called the damping ratio and ωn
is called the natural frequency of Equation (4.1).
√
We use this prior experience to decide that √ we want a1 + k1 = 2 and
a0 + k0 = 1. Thus, we obtain k0 = 0 and k1 = 2 − 1.
In the initial stages of developing this experience, we may need to go fre-
quently from the design in the state-space domain to solving the resulting
state-space equation in the time domain, and back, to see how well the design
performs in practice. With experience, however, the design can be performed
without needing to see how the resulting system performs in the time domain.
Problem 4.1
Develop the state-space model of the PMDC motor.
Problem 4.2
Paste the following code at the command prompt of either MATLAB or
GNU Octave, and hit the enter key.
2 2
Unit step response of d y/dt + 1.414 dy/dt + y = u
1.4
1.2
0.8
y(t)
0.6
0.4
0.2
0
0 1 2 3 4 5 6 7 8 9 10
Time (sec)
Figure√4.2: The unit step response of the plant of Equation (4.1) with a0 = 1 and
a1 = 2. This response is well-damped as seen from the fact that its overshoot
is low and it has very few overshoots and undershoots.
Without exiting the software, paste the following code at the command prompt
and hit the enter key.
Observe the results. Modify the code to obtain the responses shown in fig-
ures 4.1 and 4.2.
Figure 4.3: Block diagram of the proposed control system that we wish to de-
sign in the classical control domain.
Y (s) c1 s + c0
= 2 (4.6)
Yref (s) s + ( a1 + c1 ) s + ( a0 + c0 )
We can plot the unit step response of this TF in GNU Octave or MATLAB
using the code
Through trial and error using this code, we determine that for the given
value of a0 = 1 and a1 = 0.05, the values c0 = 30 and c1 = 10 provide us a
response that is satisfactory in the sense described in Section 4.2. This response
is shown in Figure 4.4.
Classical control theory says that if the zero of this TF s = −c0 /c1 is deep
in the left half plane in comparison to the poles of this TF, then the effect of this
zero will be negligible on the response of this TF to an input, and the nature of
the response will be determined by only the poles of this TF. Let us see if the
zero is much deeper than the poles with the above-selected values of c1 and c0 .
The following code provides us the values of these zero and poles.
We see that the zero is at s = −3 and the poles are at −5.0250 + j2.3978 and
−5.0250 − j2.3978. We see that even though the poles are deeper than the zeros,
the response is still to our satisfaction. We explore the answer to this behavior
in the lectures on root locus.
Step Response
1.4
1.2
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 (sec)
Figure 4.4: The unit step response of the closed-loop system of Equation (4.6)
with a1 = 0.05, a1 = 1, c0 = 30, and c1 = 10. This response is well-damped as
seen from the fact that its overshoot is low and it has very few overshoots and
undershoots.
TF or Analysis
LTI
LTI ODE LTI SS &
ODE
form Design
Simulation
simulation Yes
Exit
No successful?
Figure 4.5: Illustration for the similarities between classical control theory and
LTI state-space control theory.
5.2 Examples
Example 5.1
An example of block diagram manipulation.
25
EE250 (Control Systems Analysis) IITK Lecture Notes
Example 5.2
Example 5.3
We can quickly understand the block diagram algebra through just a few
more examples. Note that this algebra was possible because we have restricted
our attention to systems that are LTI.
The difficulty in manipulating this block diagram arises from the fact that
we may be forced to move the summators through the branches that are to
their right. See Rules 10 in table 1-3 of Lecture 4 about transfer of a summator
into branches.
For a block diagram that looks complicated, we can determine the input-
output gain by first drawing a signal flow graph (SFG) that is equivalent to
this block diagram, and then applying a formula that has come to be known as
Mason’s gain formula (MGF). We see SFGs in this lecture and MGF in the next
one.
5.4 Definitions
Consider the SFG of Figure 5.2
Here are definitions of the various parts of this SFG.
Nodes represent signals. For example, x1 , x2 , x3 , x4 .
Transmittances / gains represent signal multipliers. For example, a, b, c, d.
Branches are directed line segments, each of which joins two nodes. Arrow
on a branch shows direction of signal flow. E.g. x1 to x2 , x2 to x3 , x4 to x3 , x3 to
x2 , x3 to x3 .
Input node / source has only outgoing branches. For example, x1 , x4 .
Output node / sink has only incoming branches. For example, x3 .
Mixed node has both incoming and outgoing branches. For example, x2 , x3 .
A mixed node can be converted into an output node by adding an outgoing
branch with a gain equal to 1.
A path is the traversal of connected branches in the direction of the arrows.
An open path is a path in which no node is crossed more than once. For
example, x1 − x2 − x3 , x4 − x3 , x1 − x2 , x4 − x3 − x2 .
A closed path is a path that ends at same node where it began and doesn’t
cross any other node more than once. For example, x2 − x3 − x2 , x3 − x2 − x3 .
A path that is neither open nor closed crosses some node more than once but
ends at a different node from which it began. For example, x1 − x2 − x3 − x2 ,
x4 − x3 − x2 − x3 , etc.
A loop is a closed path. For example, x2 − x3 − x2 , x3 − x2 − x3 .
Loop gain is the product of branch gains of a loop. For example, bc.
Nontouching loops do not possess common node. We don’t have any in this
example.
Forward path is a path from input node to output node that does not cross
any node more than once. For example, x1 − x2 − x3 − x3 , x4 − x3 − x3 .
Forward path gain is the product of branch gains of a forward path. For
example, ab, d, dc.
Example 5.5
Draw an SFG that is equivalent to the following block diagram.
Answer:
From Example 5, we see that a node may either represent a signal or the
sum of two or more signals. In this example, we have the nodes corresponding
to the signals C and R, the node corresponding to the sum E1 of signals N and
GE, and the node corresponding to the sum E of signals R and − HC.
Samuel J. Mason of MIT published a paper each in the years 1953 and 1956 that
resulted in “Mason’s gain formula”. Mason developed his formula for signal
flow graphs (SFG).
Here,
• ∆ is called “graph determinant” of the given SFG, and is given by the fol-
lowing expression:
• ∆k is the ∆ for that part of the SFG that doesn’t touch the kth forward path.
31
EE250 (Control Systems Analysis) IITK Lecture Notes
Figure 6.1: A sample signal flow graph for which to find the gain.
Example 6.1
Find x5 /x1 for the SFG of Figure 6.1.
N
x5 1
x1
=
∆ ∑ Pk ∆k
k =1
with
N=2
∆ = 1 − ( G23 G32 + G23 G34 G42 + G23 G34 G45 G52 + G23 G32 G44 + G23 G35 G52 G44 )
+ ( G23 G32 × G44 + G23 G35 G52 × G44 )
P1 = G12 G23 G34 G45
P2 = G12 G23 G35
∆1 = 1−0 = 1
∆2 = 1 − G44
Figure 6.2: A block diagram and the corresponding signal flow graph.
• Disturbance rejection
• Noise filtering
• Low sensitivity to parameter variations
Here, C and P are gains for amplification factors of the controller, plant, sensor
respectively. The goal is to minimize the effect of η on y. Let us see if the
feedback scheme shown achieves this goal.
Example 7.2
Disturbance feedforward.
35
EE250 (Control Systems Analysis) IITK Lecture Notes
In Example 1, we see that η will need to be inside the control loop for it to
be attenuated. That is, it will need to be sent around the loop, and it will need
to create the error e between yd and y before its effect can be minimized. Is it
possible to reject the effect of η without needing to first create an error? In those
cases, where η is measurable (by a sensor), we can reduce its effect as follows:
Gff η
+ Plant
+
yd y
C P
+
That is,
Y (s) = (1 + PCGff )η (s) + PCYd (s)
We want Y (s) = Yd (s). We may choose Gff such that PCGff = −1, that is,
Gff = −1/( PC ). This is useful when the disturbance η may be sensed almost
as quickly as it hits the plant.
System
agree that the forward path is from input to output, and redraw the block dia-
gram in Example 2 thus
η
Gff
+ Plant
+
yd y
C P
+ +
then, it is clear that the disturbance input is being injected along an alternative
forward path into that system. On the other hand, in Example 1, the output
was being fed back into the input channel.
=1 (utOL
rOL (t)y-
OL ) (t)
-
τs + 1 yOL (t) = (1 − e−t/τ )1(t)
y-
ru-
CL ((t1)(pt()tt))
eCL
CL
−
+̀ yCL (t) =
- -K
τs6 +1 τ
K
1+ K 1 − e−t/ 1+K 1(t)
37
EE250 (Control Systems Analysis) IITK Lecture Notes
Apparently, the CL system provides faster settling time at the small cost of
a steady-state error ess , limt→∞ e(t) equal to 1+1 K . But how is the CL system
achieving this? Let us compare the control effort in the OL and CL cases.
While, uOL (t) = 1(t), uCL (t) can be obtained as follows:
UCL (s) K
=
RCL (s) 1 + τsK+1
K (τs + 1) 1
uCL (t) = L−1 { }
τs + 1 + K s
This gives
K τ
uCL (t) = 1 + Ke−t/ K+1 1(t)
1+K
We see that, at t = 0+ , uCL = K, and at t = ∞, uCL = K
1+ K . As we can see from
the following figure,
K
u CL
1 uOL
K
L
1+ K
C
y
yOL
yC dy
p+ p Y (s) (C + C2 ) P
-
-
-−
- P
+̀
+̀ 21? = 1
6 Yd (s) 1 + PC1
In the above scheme, we can use command feedforward to alter the zeros of
(C +C ) P
the TF from yd (t) to y(t). For this, we can modify the numerator of 11+ PC2 to
1
obtain certain desirable properties of the response y to input yd (for example,
rise time). In the chapter on performance analysis of control systems, we will
see what effect the zeros of a TF have on its response.
Let us compare through an example the command feed-forward (CFF)
structure with the negative feedback (NFB) structure.
We saw that the NFB structure helps achieve a good speed of response. In
the following figure,
y-
ruCL
e-(−(1tp()t()tt))
CL
CL
- - K
+̀
τs 6 +1
K τ
yCL (t) = 1 − e−t/ 1+K 1(t)
1+K
Thus, while the plant by itself has a speed of response governed by its time
constant τ, the closed-loop structure has a time constant τ/(1 + K ), and thus
is faster by 1 + K times.
However, the steady-state value of yCL (t) is yss = K/(1 + K ), and is not
equal to 1.
On the other hand, the CFF scheme below
has the TF
Y K + C2 1
=
Yd τ s + 1+τ K
and, for yd (t) = 1(t), this gives
K + C2 τ
y(t) = 1 − e−t/ 1+K 1(t)
K+1
This scheme, while allowing us to have the same speed of response as in the
case of the NFB configuration, allows us, for C2 = 1, to have yss = 1. That is,
this scheme also improves the steady-state error.
This is not the only advantage of the CFF structure. Note that, real-world
plants do not respond if their stimuli are not strong enough. That is, these
plants are said to have “dead zone” nonlinearities. For example, a DC motor’s
shaft will not turn unless the voltage applied to its armature is larger than a
certain minimum value. When the value is below this minimum, the power
supplied to the motor is not enough to help the shaft overcome the friction in
the bearings, and to overcome the losses in the electric and magnetic circuit
of the motor. The adjacent figure illustrates two nonlinearities that we find in
Output
Saturation
n
io
eg
rr
ea
n
Li
Dead zone
0 Input
Bode Plots
41
Lecture 9
Frequency response
is given by
yss (t) = | G ( jω )| A sin (ωt + ∠G ( jω ))
G ( jω ) is called “sinusoidal TF” of the system
G ( jω ) = G (s)|s= jω (9.1)
9.3 Solution
We study systems modeled by LTI differential equations of the form of Equa-
tion (3.1) including a dead time component. As these differential equations
represent practical systems, they have real coefficients.
A corollary of the fundamental theorem of algebra is that every polynomial
with real coefficients can be expressed as the product of polynomials with real
coefficients of degrees 1 or 2.
The above two paragraphs mean that the TFs that we study in this course
are of the form
n n 2 2
∏i=1 0 (s + zi ) ∏k=
2
0 ( s ± ζ k ωnk s + ωnk )
G (s) = a d d
e−td s (9.2)
∏i=1 0 (s + pi ) ∏k=
2 2 2
0 ( s ± 2ξ k ωdk s + ωdk )
43
EE250 (Control Systems Analysis) IITK Lecture Notes
Steps
Aω
1. R(s) = .
s2 + ω 2
2. Y (s) = G (s) R(s) can be written as follows:
Aω
Y (s) = G (s) · (9.3)
(s + jω )(s − jω )
where Ψ( G (s)) represents all the partial fractions that G (s) generates.
Aω γ1 γ2
G (s) = Ψ( G (s)) + +
(s + jω )(s − jω ) s + jω s − jω
Therefore,
G (− jω ) Aω G (+ jω ) Aω
γ1 = , γ2 = .
−2jω +2jω
Problem 9.1
Evaluate yss (t) assuming that e−td s is also present.
9.4 Conclusion
We have proved that the S.S. response of G (s) to an input r (t) = A sin ωt is
fully characterizes the S.S. response of the stable TF G (s) to a sine input.
So, the output sine from G (s) is r (t) amplified | G ( jω )| times and shifted
ahead by a phase of ∠G ( jω ).
9.5 Caution
Y (s)
While G ( jω ) can be written as in Equation (9.1), and though G (s) = R(s)
,
Y (s) Y ( jω )
G ( jω ) 6= =
R(s) s= jω
R( jω )
9.6 Appendix
FR is developed in most books. My derivation is based on [14]. But, I have
taken care to avoid Ogata’s errors.
Note that, as per Section 9.1, FR exists only for stable systems. We develop
the machinery of Bode plots on the basis of FR. However, Bode plots are drawn
for unstable systems too. I have not seen that the standard textbooks explain
this anomaly. Indeed, they do not even mention it.
| G ( jω )|
20 log10 | G ( jω )|
linear scale
linear scale
[dB]
0 ω, [rad/s] 0 ω, [rad/s]
linear scale log scale
6 G ( jω ) 6 G ( jω )
[rad] [rad]
linear scale
linear scale
0 ω, [rad/s] ω, [rad/s]
linear scale log scale
47
EE250 (Control Systems Analysis) IITK Lecture Notes
20 log10 | G1 ( jω )|
20 log10 | G2 ( jω )|
linear scale
linear scale
[dB]
[dB]
10 ω, [rad/s] 100 ω, [rad/s]
log scale log scale
Note that this rough description does not try to explain why the system is
able to work fast, input energy fast, and process a fast sinousoid. Thus, for
example, this description does not try to explain why some systems are capable
of processing fast sinusoids, but not slow sinusoids. Such systems are called
high pass filters. To explain the why part, the physics of the system needs to be
examined.
The speed of response of a system is measured in the time domain through
such quantities as time constant, rise time, settling time. For example, in Lec-
ture 8, we see that the open loop system has a slower response than the closed
loop system. In the real world, all physical quantities evolve in the time do-
main, and we tend to think of speed of response of a system in the time do-
main. It may not seem very intuitive to think in the frequency domain. But,
the frequency domain does have conveniences that we exploit in this course.
For example, the frequency-domain quantity “bandwidth” is roughly the in-
verse of the time-domain quantity “time-constant” of a system. Thus, in order
to make a system faster, we need to increase its bandwidth.
Here is how the frequency response of a system can be determined in prac-
tice. If it is an electrical circuit, input a sine voltage of a fixed amplitude from
a function generator. Sweep the frequencies from 0 to some large value, say, 20
kHz or upto the frequency that the function generator supports. Take readings
of the amplitude of the output sinusoid. Also, take readings of the phase of
the output sinusoid with respect to the input sinusoid by observing both on
an oscilloscope. Overall, take about 10 – 15 readings of the amplitudes and
the corresponding phases. Plot the amplitude versus frequency, and the phase
versus frequency. This is the frequency response plot.
Spacing the readings logarithmically helps examine the behavior of the sys-
tem over a much wider range of frequencies than if the readings were spaced
linearly. Bode plots help display the frequency response logarithmically.
Consider the general form of the transfer function of Equation (9.2). The fre-
quency response of the system whose transfer function G (s) is is given by the
sinusoidal transfer function
n n2 2 2
∏i=1 0 ( jω + zi ) ∏k=
0 ( jω ) ± 2ζ k ωnk jω + ωnk
G ( jω ) = a d d
e−td jω
∏i=1 0 ( jω + pi ) ∏k=
2 2 2
0 (( jω ) ± 2ξ k ωdk jω + ωdk )
The magnitude of G ( jω ) is
q
n 2
+ zi ∏nk=
p
∏i=1 0 ω2 2
(ωnk 2 − ω 2 ) + (2ζ k ωnk ω )2
2
0
| G ( jω )| = a q
d p d2 2
∏i=1 0 ω 2 + pi 2 ∏k= 0 (ωdk 2 − ω 2 ) + (2ξ k ωdk ω )2
The phase of G ( jω ) is
n1 n2 .
∑ ∑ ωnk 2 − ω 2 ± j2ζ k ωnk ω − td ω −
G ( jω ) = jω + zi +
i =0 k =0
d1 d2 .
∑ ∑ ωdk 2 − ω 2 ± j2ξ k ωdk ω
jω + pi −
i =0 k =0
1. ∠ (ωk + jω ) can be in the interval [0, 2π ] rad. This restriction does not apply
to the exponential term e− jωtd ; here the angle is −ωtd in radians.
Example 10.1
Determine ∠G ( jω ) given that
(s + z1 )(−s − z2 )e−td s
G (s) =
(s + p1 )(s − p2 )(−s + p2 )
Note that all the coefficients in the transfer function are positive1 .
1 We talk of positiveness or negativeness of only real numbers, and not of complex numbers.
π
6 (z1 + jω0 ) 4
π
6 (−z2 − jω0 ) π+
6
π
6 ( p1 + jω0 )
3
π
6 (− p2 + jω0 ) π−
4
π
6 ( p3 − jω0 ) 2π −
4
Then,
π π π π π
∠G ( jω0 ) = + π+ − ( t d ω0 ) − − π − − 2π − rad
4 6 3 4 4
The ABP is a straight line approximation to BP. The (A)BP has two compo-
nents: (A)BMP and (A)BPP.
atan2 Takes into account the quadrant. However, the solution, similar to
MATHEMATICA’s arctan, is in the range [−π, +π ]. So, for example,
atan2(-10,-10)*180/pi returns −135, whereas for the purposes of plotting
BPPs, we would like to obtain the answer as +225.
angle Takes into account the quadrant in which the complex number lies. For
example, angle(-10-j*10)*180/pi gives −135. That is, angle returns the
angle in the range [−π, +π ].
which x + jy lies.
My guess is that when x + jy is in the first and second quadrants, GNU Oc-
tave 3.2.4’s bode calculates its angle in keeping with the convention of Sec-
tion 10.2, while if the complex number is in the third and the fourth quad-
rants, a different convention is used.
Figures 10.3 and 10.4 show the result generated by the first line of commands
in GNU Octave 3.2.4 and MATLAB respectively. Figures 10.5 and 10.6 show
the result of the second line of commands generated by GNU Octave 3.2.4 and
MATLAB respectively.
-20
-40
Gain in dB
-60
-80
-100
-120
-50
-100
Phase in deg
-150
-200
-250
Bode Diagram
0
Magnitude (dB)
−50
−100
−150
0
−90
Phase (deg)
−180
−270
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
50
0
Gain in dB
-50
-100
140
120
100
80
Phase in deg
60
40
20
-20
-40
Bode Diagram
200
150
100
Magnitude (dB)
50
−50
−100
−150
−200
−180
−270
Phase (deg)
−360
−450
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
Step 1 First convert G (s) into what we shall call in this course the “Bode form”:
k/ω0
G (s) = s
ω0 + 1
Table 11.1: Table to populate to build the Bode plot of G (s) = k (s + ω0 ) .
ω0 ω0 ω0
ω, [rad/s] 100 10 2 ω0 2ω0 10ω0 100ω0
dB-gain, [dB]
∠G ( jω ), [rad]
55
EE250 (Control Systems Analysis) IITK Lecture Notes
20 log10 |G(jω)|
linear scale
[dB]
0 ω, [rad/s], if log scale
³ ´
ω
log10 ω0 , [decades], if linear scale
Figure 11.1: Setting up the axes on the graph paper on which we sketch the
Bode plot.
Step 4 To construct the ABMP, note that taking the logarithm of a product re-
sults in a sum, and that a sum is easier to sketch than a product. Thus, we
can sketch the ABMP of G ( jω ) as the sum of the ABMP corresponding to C1
with that corresponding to C2.
Let us consider C2. We note the following about C2:
s (
2 ω
ω 0, ω0 1 (i.e., when ω / ω0 /10)
−20 log10 +1 =
ω0 −20 log10 ωω0 , ωω0 1 (i.e., when ω ' 10ω0 )
Figure 11.2: A 2-cycle semilog grid. The ordinate is graduated linearly. The
abscissa is graduated logarithmically meaning that within each cycle on the
abscicca from the left, the marks corresponding to 1, 2, 3, . . . , 10 are respectively
at log10 1 = 0, log10 2 = 0.30103, log10 3 = 0.47712, . . . , 1 units.
C1
20 log10 |G(jω)|, [dB]
20
C2-1
ω
0 − 10 ω0 −10ω0
−20
y = −20x
0 1 2 3 4 x
−20
−40
−60
ABMP C1
20 log10 | G ( jω )|, [dB]
of
k
s+
20 ω0
C2-1
0 − 10
ω
ω0 −10ω0
−20
Figure 11.5: The final asymptotic Bode magnitude plot of k (s + ω0 )
Bode Diagram
0
−5
−10 3 dB
Magnitude (dB)
−15
−20
−20 dB/dec
−25
−30
−35
−40
0
o −45
5.7
Phase (deg)
deg/dec
−45
−90
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
Figure 11.6: Bode plot and asymptotic bode plot of G (s) = 1 (s + 1) . The
straight line plot in the thick solid line is the asymptotic plot, while the smooth
line plot in the thin solid line is the Bode plot. The maximum difference be-
tween these plots is at the corner frequencies. The maximum error between
the magnitude plots is 3 dB, while that between the phase plots is 5.7◦ .
Step 1 The shape of the ABMP is visualized first in terms of the slopes of its
various sections, and the corner frequencies. This step fixes the horizontal
location of the ABMP.
Step 2 The vertical position of the ABMP can be fixed by working out the value
of the dB-gain at any one frequency.
Thus, to sketch the ABMP of k (s + ω0 ) , we note that the ABMP of this TF
has the shape 0 dB/dec, −20 dB/dec. The corner frequency is at ω = ω0 . One
61
EE250 (Control Systems Analysis) IITK Lecture Notes
.√
ω0 /10 , 20 log10 k 1.01ω0 , which is only 0.04 dB below the point on
the ABMP ω0 /10, 20 log10 (k /ω0 ) .
Indeed, to fix the ABMP, it is convenient to use not just points from the low-
frequency section, but any points that are at least one decade away from their
closest corner frequency.
Example 13.1
Construct the Bode phase plots of the following transfer functions as sums
1−sτ1
of elemental phase plots: G1 (s) = 11+ sτ1 1+sτ1
+sτ2 , G2 ( s ) = 1+sτ2 , G3 ( s ) = 1−sτ2 , G4 (s ) =
1−sτ1
1−sτ2 .
Example 13.2
63
EE250 (Control Systems Analysis) IITK Lecture Notes
Construct the polar plots of the sinusoidal version of the transfer functions
of Example 1.
Example 13.3
Construct the polar plot of the sinusoidal version of the transfer function
( s − 1) s2 .
Explanation 1 Of all the transfer functions that have no open RHP poles and that
have the same Bode magnitude plot, the one that has the phase plot spread over the
narrowest interval of phases is said to be minimum-phase transfer function.
The phase plot of the former lies in the interval [0◦ , −90◦ ], while the phase plot
of the latter lies in the interval [−180◦ , −90◦ ]. Thus, the phase plots of both the
transfer functions are equally narrow. Therefore, the former transfer function
seems to be a counter example to Explanation 1.
A more plausible explanation is provided by [20, pages 332-333] and is pre-
sented in Section 14.1.2.
65
EE250 (Control Systems Analysis) IITK Lecture Notes
where, D (s) has no open RHP zeros or poles, and the real parts of the ai ’s are
positive. That is, the ai ’s are the open RHP zeros of L(s).
Let L(s) be written in the form Lm (s) A(s), where,
and
(s − a1 )(s − a2 ) . . . (s − an )
A(s) =
(s + a1 )(s + a2 ) . . . (s + an )
is the transfer function of a so-called all pass filter.
Complete this discussion on the lines of the discussion that preceded this
example in Section 14.1.2 to conclude that Lm (s) is a minimum phase lag trans-
fer function.
Problem 14.2
value is ∆L greater than ∆Lm ? Is this value the same as the value calculated
earlier in this section? If not, why not? If yes, is it expected to be the same?
1. There are differences in whether transfer functions with RHP poles are in-
cluded in the class of minimum phase transfer functions. For example, [19,
page 77] includes functions with RHP poles into this class, while [20, page
332 – 333] excludes functions with RHP poles from this class.
2. “A minimum-phase system (all zeros in the LHP) with a given magnitude
curve will produce the smallest net change in the associated phase . . . com-
pared with what the nonminimum-phase system will produce” [22, page
265].
This means that the ABMP has the slopes 0 dB/dec, −40 dB/dec, and that the
corner frequency is at ω = ωn .
While the ABMP of the second order TF is convenient, the difference be-
tween the BMP and the ABMP can be significant for values of ζ much smaller
than 1 as Figure 15.1 shows.
Problem 15.1
Write a MATLAB code to plot the BMP of the second order TF for various
values of ζ, and to mark the locus of the maxima of these BMPs.
69
EE250 (Control Systems Analysis) IITK Lecture Notes
20
ζ=0
10 ζ=0.15713
ζ=0.31427
ζ=0.4714
0 ζ=0.62854
dB gain of 2nd order TF
ζ=0.78567
ζ=0.94281
ζ=1.0999
−10 ζ=1.2571
ζ=1.4142
−20
−30
−40
−1 0 1
10 10 10
r = ω/ωn
Figure 15.1: Bode magnitude plots of the second order transfer func-
tion ωn 2 s2 + 2ζωn s + ωn 2 . This figure is generated using the m-file
order2tf.m.
2. dB-gain at ω = ωd is 20 log10 √1 .
2ζ 1− ζ 2
√ √
3. At ζ = 1/ 2, dB-gain equals zero at ω = ωd . For ζ < 1/ 2, dB-gain at
ωd is greater
√ than zero. That is, a hump begins to appear in the BMP for
ζ < 1/ 2.
√ √
1/ 2, | G ( jωn )| = 1/(2ζ ) = 1/ 2.√Therefore, dB-gain at ω = ωn for
4. At ζ = √
ζ = 1/ 2 is −3 dB. Therefore, for ζ = 1/ 2, ω = ωn is the 3-dB frequency.
Problem 15.3
Run the m-file order2bp.m in MATLAB and modify it suitably if necessary
to plot a figure that reproduces the salient information provided by Figure 15.2.
40
20
dB-gain 0
−20
−40
−60
−80
−100
10−2 10−1 100 101 102
0
−20
−40
−60
degrees
−80
−100
−120
−140
−160
−180
10−2 10−1 100 101 102
ω, rad/s
Figure 15.2: √The BP of the second order TF for values of the damping ratio ζ
going from 2 to close to 0. The smaller the value of ζ, the more pronounced
the hump in the BMP, and the more abrupt the transition from 0◦ to −180◦ .
for i = 1:nzeta
for j = 1:nr
dBgain(j,i) = -10*log10((1-r(j)^2)^2 + (2*zeta(i)*r(j))^2);
% What this is meant to generate is a matix of dB gains
% where each column corresponds to a given value of zeta and
% each row corresponds to a given value of r.
end
end
% Next, show on the same plot, the locus of the peaks of each
% Bode magnitude plot:
zeta1 = linspace(sqrt(2),0,5*nzeta);
r = sqrt(1-2*zeta1.^2);
dBmax = -20*log10(2.*zeta1.*sqrt(1-zeta1.^2));
semilogx(r,dBmax,’-.r’)
nzeta = 10;
zeta = linspace(sqrt(2),0.001,nzeta)
wn = 1;
w = logspace(log10(wn/100),log10(100*wn),500);
for i = 1:nzeta
[mag(i,:),ph(i,:),w] = bode(tf(wn^2,[1,2*zeta(:,i)*wn,wn^2]),w);
end
subplot(2,1,1), semilogx(w,20*log10(mag(:,:)));grid;
ylabel(’dB-gain’);
subplot(2,1,2), semilogx(w,ph(:,:));grid,
axis([1/100,100,-180,0]);
ylabel(’degrees’); xlabel(’\omega, rad/s’);
Stability Theory
75
Lecture 16
causal R∞ causal R∞
δ(t) g(t) r (t)=
0 r (τ )δ(t−τ )dτ y(t)=
0 r (τ ) g(t−τ )dτ
−−−→ LTI −−−→ =⇒ −−−−−−−−−−−−−−
→ LTI −−−−−−−−−−−−−−→
plant plant
77
EE250 (Control Systems Analysis) IITK Lecture Notes
R∞
integral 0 r (τ ) g(t − τ )dτ does not need to be evaluated for all τ ≥ 0, but
only for 0 ≤ τ ≤ t. Therefore,
Z ∞ Z t
r (τ ) g(t − τ )dτ = r (τ ) g(t − τ )dτ
0 0
Theorem 1 In a causal LTI system, forRa BIM input r (t), the corresponding response
∞
y(t) of the system is BIM if and only if 0 | g(τ )| dτ < ∞.
Therefore, Z t Z t
|y(t)| ≤ M | g(t − τ )| dτ = M | g(θ )| dθ
0 0
Thus, for y(t) to be bounded for a bounded r (t), for all t ∈ [0, ∞), it is
Rt
sufficient that 0 | g(τ )| dτ be bounded for all t ∈ [0, ∞). That is,
R∞
For all t ∈ [0, ∞), for a BIM r (t), y(t) is BIM if 0 | g(τ )| dτ < ∞.
R ∞ Next, to show that for y(t) to be BIM given r (t) is BIM it is necessary that
0 | g ( τ )| dτ < ∞, we
R∞
only need to show an example where y(t) is not BIM for
a BIM r (t) because 0 | g(τ )| dτ 6< ∞.
Consider, for example, the bounded input
r (τ ) = sgn ( g(t − τ ))
Then,
Z t Z t Z t
y(t) = r (τ ) g(t − τ )dτ = | g(t − τ )| dτ = | g(θ )| dθ
0 0 0
Rt
Thus, in this case, we see that if 0 | g(τ )| dτ 6< ∞, then y(t) 6< ∞. Thus, we
have a situation where, even though the input to the system is BIM, the output
is not. Thus, for y(t) to be BIM for a BIM r (t), for all t ∈ [0, ∞), it is necessary
Rt
that 0 | g(τ )| dτ be bounded for all t ∈ [0, ∞). That is,
R∞
For all t ∈ [0, ∞), for a BIM r (t), y(t) is BIM only if 0 | g(τ )| dτ < ∞.
Therefore, Z t Z t
|y(t)| ≤ M | g(t − τ )| dτ = M | g(θ )| dθ
0 0
Thus, for y(t) to be bounded for a bounded r (t), for all t ∈ [0, ∞), it is
Rt
sufficient that 0 | g(τ )| dτ be bounded for all t ∈ [0, ∞). That is,
R∞
For all t ∈ [0, ∞), for a BIM r (t), y(t) is BIM if 0 | g(τ )| dτ < ∞.
R∞
Next, to show that if 0 | g(τ )| dτ 6< ∞, then the sytem is not BIBO stable,
we need to show that exist some BIM signals for which the output is not BIM.
Consider, for example, the bounded input
r (τ ) = sgn ( g(t − τ ))
where the signum function sgn is defined as follows:
+1, x > 0
sgn ( x ) = 0, x=0 (16.2)
−1, x < 0
Then,
Z t Z t Z t
y(t) = r (τ ) g(t − τ )dτ = | g(t − τ )| dτ = | g(θ )| dθ
0 0 0
Rt
Thus, in this case, we see that if 0 | g(τ )| dτ 6< ∞, then y(t) 6< ∞. Thus, we
have a situation where, even though the input to the system is BIM, the output
Rt
is not. Thus, we have shown that when 0 | g(τ )| dτ 6< ∞, there may be BIM
inputs for which the output is not BIM.
2
We may wonder why Question 1 does not ask about the effect of e−td s on
the BIBO stability of G (s). The following example answers our question.
Example 17.1
Problem 1 of Section 3.4 stated that y(t) being a delayed-in-time version of
x (t) can be summarized by the equation
y ( t ) = x ( t − t d )1( t − t d ),
and taking LT on both sides of this equation gives Y (s) = X (s)e−td s . So, e−td s
represents a time-delay. What is the effect of e−td s on the BIBO stability of G (s)?
Note that we can redraw the block diagram
r (t) y(t)
−−−→ G (s) −−−→
R(s) Y (s)
as follows:
n n 2 2
r (t) ∏i=1 0 (s + zi ) ∏k=
2
0 ( s + 2ζ k ωnk s + ωnk ) z(t) y(t)
−−−→ d
−−−→ e−td s −−−→
R(s) ∏i=1 0 (s + pi ) ∏dk=
2
0 (s
2 + 2ξ k ωdk s + ωdk 2 ) Z (s) Y (s)
The time delay element only delays z(t). It does not change the nature of z(t)
in any other manner. Thus, if z(t) is BIM, then y(t) is also BIM, and if z(t) is not
BIM, y(t) is not BIM. That is, e−td s has no effect on the BIBO stability of G (s).
Problem 17.1
Can we not express the fact that y(t) is a delayed-in-time version of x (t) as
either y(t) = x (t − td ) or y(t) = x (t)1(t − td )?
81
EE250 (Control Systems Analysis) IITK Lecture Notes
Table 17.1: Case of unrepeated poles. Impulse response of each term of G (s)
depending on the location of the poles of this term in the s-plane.
A1 s + B1 c1
G1 (s) = G2 (s) =
(s + a1 )2 + b12 s + d1
g1 (t) = Ae− a1 t cos(b1 t + φ1 ) g2 ( t ) = c 1 e − d 1 t
Poles g1 ( t ) g2 ( t )
a1 > 0 d1 > 0
in left
half (LH) R∞ 0 t R∞
0 | g1 (τ )|dτ < ∞ 0 | g1 (τ )|dτ < ∞ 0 t
s-plane
g1 ( t ) g2 ( t )
a1 = 0 d1 = 0
Poles on
jω-axis R∞ 0 t R∞
0 | g1 (τ )|dτ 6< ∞ 0 | g1 (τ )|dτ 6< ∞ 0 t
g1 ( t )
Poles g2 ( t )
a1 < 0 d1 < 0
in right
half (RH) R∞ 0 t R∞
0 | g1 (τ )|dτ 6< ∞ 0 | g1 (τ )|dτ 6< ∞ 0 t
s-plane
Example 1 showed why we may safely ignore any time delay elements in
G (s) in studying its BIBO stability.
To study Question 1, we considered 2 cases: case of G (s) containing unre-
peated poles, and case of G (s) containing repeated poles. In each of these two
cases, G (s) can be written as follows (ignoring the td part):
Case of unrepeated poles: We assume that the number of distinct real poles
is q and that the number of pairs of distinct complex conjugate poles is r.
A1 s + B1 Ar s + Br c1 cq
G (s) = 2
+···+ 2
+ +···+
( s + a1 )2 + b1 ( s + ar )2 + br s + d1 s + dq
Table 17.1 shows the form of the impulse response of each term of G (s)
depending on the location of the poles of this term in the s-plane:
Case of repeated poles: For convenience, we shall assume that we have one
real pole and one pair of complex conjugate poles, and that the real pole is re-
peated k times, while the second is complex conjugate pole is repeated r times.
Then,
Table 17.2: Case of repeated poles. Impulse response of each term of H1 (s) and
H2 (s) of G (s) depending on the location of the poles of this term in the s-plane.
Table 17.2 shows the form of the impulse response of H1 (s) and H2 (s) of G (s)
depending on the location of the poles of this term in the s-plane:
17.2 Conclusions
R∞
1. When a TF has poles in the left half s-plane (LHP), 0 | g(τ )|dτ < ∞, and
the TF is BIBO stable.
2. When a TF has poles R∞in the right half s-plane (RHP) or has repeated poles
on the jω-axis, then 0 | g(τ )|dτ 6< ∞, and the TF is unstable.
R∞
3. When a TF has unrepeated poles on the jω-axis, then 0 | g(τ )|dτ 6< ∞, and
the TF is not BIBO stable. However, the TF’s response to signals excluding
only the following is BIM:
3.1. In the case of an unrepeated complex conjugate pole pair, if r (t) is a
sinusoid whose frequency coincides with that of the pole pair, then y(t)
is unbounded.
sin (ω0 t), then, using the information from Table 17.2, the output is
E1 cos (ω0 t + φ1 ) + E2 t cos (ω0 t + φ2 ).
3.2. In the case of a pole at the origin, if r (t) is of the form ti 1(t), where i ≥ 0
and integer, then y(t) is unbounded.
That is, a system with unrepeated poles on the jω-axis is BIBO unstable for
a narrow class of signals. For this reason, a system with unrepeated poles
on the jω-axis is called marginally stable. Marginal stability is the boundary
between stability and instability. We do not attach any more meaning to it
in this course.
Yes, it does. This fact is an additional pointer to the fact that Theorem 2 is
all that we need to prove.
“Nyquist’s original analysis was fairly complicated, but his main result had a
lasting value. It was later pointed out by MacColl [27] that the result can in fact
be easily obtained from a theorem of Cauchy or from the Argument Principle
of complex analysis” [28].
85
EE250 (Control Systems Analysis) IITK Lecture Notes
2. Suppose some closed contour1 Γs in the s-plane encloses − p and −z, as shown
in the following figure.
jω
s-plane
Γs
−p −z σ
Enclosing − p and −z means that the contour does not pass through − p and
−z.
3. Take a point s on Γs and consider the angles θz and θ p made by the vectors
s + z and s + p.
jω
s-plane
s
Γs
θp θz
−p −z σ
Then,
∠Q(s) = ∠(s + z) − ∠(s + p) = θz − θ p
5. On the other hand, if Γs encloses only the zero and not the pole, as shown
below,
1 In this context, by closed we mean that the contour starts and ends at the same point.
jω
s-plane
s
Γs
θp θz
−p −z σ
∏in=0 (s + zi )
G (s) =
∏id=0 (s + pi )
then for one clockwise traversal of Γs , the change in the angle of G (s) is
ΓG
Γs
−p −z 0 σ 0 Re { G (s)}
G (s)-plane
For one complete clockwise traversal of Γs , ΓG encircles the origin of the G (s)-
plane N = Z − P times in the clockwise direction. For example, in the above
figure, N = 2.
Problem 18.1
Given the manner in which Γs has been constructed, can it be a contour that
is not closed?
G (s)
GCL (s) =
1 + G (s)
The stability of GCL (s) is decided by the location of its poles. We wish to deter-
mine if GCL (s) has any poles in the closed RHP.
NSC helps determine if there are any poles of GCL (s) in the open RHP using
only knowledge of G (s). The following two theorems are useful in the discus-
sion.
Theorem 3 The set of poles of GCL (s) equals the set of zeros of 1 + G (s).
Proof: 2
Theorem 4 The set of poles of 1 + G (s) equals the set of poles of G (s).
Proof: 2
Theorem 3 allows us to convert the problem of examining the poles of
GCL (s) into a problem of examining the zeros of 1 + G (s).
NSC involves the following procedure.
Construct an s-plane contour that encloses the entire closed RHP (i.e., the
RHP including the jω-axis) while passing infinitesimally to the right of any
poles of 1 + G (s) that are on the jω-axis.
Construct the (1 + G (s))-plane contour corresponding to this s-plane con-
tour.
For one clockwise traversal of the s-plane contour, the (1 + G (s))-plane con-
tour encircles the origin N = Z − P times in the clockwise direction. Here, Z is
89
EE250 (Control Systems Analysis) IITK Lecture Notes
the number of zeros, and P is the number of poles, of 1 + G (s) enclosed by the
s-plane contour.
Alternatively, this means that the G (s)-plane contour encircles the point
−1 + j0 in the clockwise direction N = Z − P times.
Therefore, by knowing P and N, we can determine Z. From Theorem 4 we
know P as the number of poles of G (s) enclosed by the s-plane contour.
19.2 Discussion
Theorems 3 and 4 may seem obvious and needing no proof. Then, why state
them and invoke them?
NSC was published in 1932. More than half a decade later since then, I find
that the literature seems to have taken the NSC so much for granted that it
is stated rather imprecisely. Occassionally, this imprecision may lead us into
difficulties as is illustrated by Example 1.
Example 19.1
In the previous lecture, I made one of the following statements
(I don’t re-
call which) about the closed-loop system GCL (s) = G (s) (1 + G (s) H (s)) :
1. The poles of GCL (s) are the zeros of 1 + GH,
2. The zeros of 1 + GH are the poles of GCL (s).
My intention was to claim that, to discuss the stability of GCL (s), it is adequate
to examine the zeros of 1 + GH. If the first statement were true, then it would
be appropriate for our purpose.
However, Anurag Dash (Y9115) showed that for G = 1/(s + 5) and H =
(s + 5)/(s − 5) the closed-loop poles are −5 and +4, while the only zero of
1 + GH is +4. So, the first statement is not true.
Siddharth Sharma (Y9584) showed that for G = (s − 2)/(s − 4) and H =
s/(s − 2), there are no closed-loop poles, while the only zero of 1 + GH is +2.
So, neither the first nor the second statement is true.
Yet, as seen in Table 19.1, certain famous textbooks do claim to the effect
that for closed-loop stability, all roots of 1 + GH must lie in the LHP.
We apply the Nyquist stability criterion (NSC) to three sample unity feedback
closed-loop systems.
The TF of the closed-loop system is GCL (s) = G (s) (1 + G (s)) . For G (s)
we consider K/s, K/(s + 1), and K (s + 10)2 s3 .
1. Mark on the s-plane the poles of G (s) that are in the closed RHP. In this case,
G (s) has only one pole in the closed RHP, and this pole is at the origin.
2. Draw the s-plane contour as shown in Figure 20.1. Note that, for the contour
to not pass through the poles on the jω-axis, it makes slight detours around
these poles at an infinitesimally small distance away from them. In the fig-
ure, the section of the s-plane contour near the origin has taken a detour to
the right of the pole. In practice, it can also take a detour to the left of the
pole.
3. Use the Bode plot (BP) of G (s) to map section C1 to the G (s)-plane.
Note that several textbooks map the jω-axis to the G (s)-plane using a few
points taken from this axis. The reader may verify that this way of mapping
is tedious in comparison to the BP way of mapping.
4. The section at infinity of the s-plane contour maps via G (s) into an infinites-
imally small area around the origin of the G (s)-plane. As this area does not
affect the count of the encirclements, we say that “the section at infinity of
the s-plane contour of G (s) maps into the origin of the G (s)-plane.”
5. The section of the s-plane contour around the origin maps into the section at
infinity of the G (s)-plane contour (same as NP of G (s)). We can sketch this
contour with just 1 – 2 points.
93
EE250 (Control Systems Analysis) IITK Lecture Notes
jω
s-plane
C2
C1
jφ
C6 ρe jθ
Re
σ
C5
ρ→0
R → ∞ Γs
C4
C3
Figure 20.1: The s-plane contour for G (s) = K/s. This contour has six sections
of interest, C1 — C6. Note that, by construction, the s-plane contours for any
G (s) are symmetric about the real axis. In this figure, the section of the s-plane
contour near the origin has taken a detour to the right of the pole, making
P = 0. If it had taken a detour to the left of the pole, then P = 1. To estimate the
location of the image of C6 under G (s), we select a convenient point, marked
◦
by •, which, in this case is ρe j45 .
6. Here is another fact that simplifies sketching NPs. As the s-plane contour is
symmetric about the σ-axis (i.e., Re{s}-axis), then the NP too is symmetric
about the Re{ G (s)}-axis.
The reason for this fact is that for the TFs of the form (9.2), G (s) = ( G (s∗ ))∗ ,
where x ∗ denotes the complex conjugate of x.
Im { G (s)}
G (s)-plane
C50
C40
Ke
− jφ
ρ
C30
−1 + j0 C20 Re { G (s)}
C10 ΓG
C60
Figure 20.2: The Nyquist plot (NP) (also know as “G (s)-plane contour”) for
G (s) = K/s. This contour has six sections of interest, C10 — C60 . Note that
the G (s)-plane contours are symmetric about the real axis. In this figure, the
sections C20 and C30 are at the origin. The • on section C60 is the image of the
• on section C6 in Figure 20.1. In our procedure, the section C10 is constructed
first. This section is the polar plot of G (s), and for convenience is shown thicker
than the other sections. We note that the NP of K/s does not encircle −1 + j0.
Therefore, N = 0, and, consequently, Z = N + P = 0. This means that the
unity feedback closed-loop system built around K/s does not have any open
RHP poles for an K ≥ 0.
20.3 Example: G (s) = K (s + 1)
Example: G (s) = K (s + 10)2 s3
20.4
Problem 20.1
Sketch the NP of the TFs
K s
; ;
s2 ( s2 + 2) s + 1
K ∏m
j =1 ( s + z i )
e−td s
s ∏in=1 (s + pi )
The PM of this TF is the angle through which the polar plot needs to be
rotated in the clockwise direction before G ( jω g ) passes through −1 + j0. ω g is
known as the gain crossover frequency of this TF. From this definition, it follows
that
PM = G ( jω g ) − (−180◦ ).
It has been found for many systems that GM 1 and PM > 30◦ help keep
the CL system stable in the face of parameter variations.
The GM is also expressed in logarithmic terms as 20 log10 ( GM), in dB, as
shown in Figure 21.2.
97
EE250 (Control Systems Analysis) IITK Lecture Notes
Figure 21.1: Nyquist plots for which concepts of GM and PM are relevant.
Note that the transfer functions (TFs) corresponding to these NPs usually have
K ∏m j =1 ( s + z i ) − t d s
simple forms such as s ∏in=1 (s+ pi )
e , where K, td , pi and zi are real.
plot((-1:0.01:1),sqrt(1-(-1:0.01:1).^2),’-r’)
hold, plot((-1:0.01:1),-sqrt(1-(-1:0.01:1).^2),’-r’)
nyquist(tf(conv(85*[1,1],[1,2,43.25]),conv([1,2,82,0,0],[1,2,101])))
axis([-2,1,-1.5,1.5],"square")
We see that the multiple intersections of the polar plot with the unit circle
make it difficult to determine the PM of this transfer function.
When the NP has multiple crossings of the unit circle or of the −180◦ axis,
then we may not be able to convey much information by talking in terms of
GM and PM.
Other examples of situations where it is better to view the Nyquist plot as
a whole instead of discussing relative stability through GM and PM are the
G ( jω p )
ωp 20 log10 | G ( jω )|
0
−1 + j0 ωg ωp
φ 0 dB
20 log10 G ( jω p )
ωg
−90◦
6 G ( jω g )
−180◦
6 G ( jω )
−270◦
Figure 21.2: Illustration for the concepts of PM and GM. The left subfigure
shows the NP of a certain minimum phase TF, while the right figure shows
the approximate BP of the same TF. We see from the NP that, for the stability
of this closed-loop system, φ = −180◦ − ∠G ( jω g ) > 0 and 1 G jω p >
1 are desirable. φ is the PM. From the BP, we see that, while the PM is still
expressed as −180◦ − ∠G ( jω g ), the GM is expressed in dB. Specifically, the
GM is 0 − 20 log10 G ( jω p ) dB. In this figure, the GM in absolute terms works
out to a value greater than 1, and to a positive value in dB terms.
following TFs:
K ( s + 1) K (s + 10)2
s ; .
s ( − 1) s3
10
0.5
Im( G(jw) )
-0.5
-1
-1.5
-2 -1.5 -1 -0.5 0 0.5 1
Re( G(jw) )
Figure 21.3: An example of a complicated Nyquist plot. The red circle is the
unit circle centered at the origin. Of the Nyquist plot, only the polar plot
(shown by the thin solid blue line) and its mirror image (shown by the ‘+’
line) are shown. The multiple intersections of the polar plot with the unit cir-
cle make it difficult to determine the PM of this transfer function. This TF is
85(s+1)(s2 +2s+43.25)
s2 (s2 +2s+82)(s2 +2s+101)
.
GSSpecifyingDelays.html#2.
101
EE250 (Control Systems Analysis) IITK Lecture Notes
The following code generates the Nyquist plots of these TFs in MATLAB
and GNU Octave. Figures 22.2 and 22.3 show the output of this code.
subplot(2,2,1), nyquist(tf([1,-1],[1,-10,0])),
xlim([-0.2,0.05]), ylim([-1,1]);
title(’(s-1)/(s(s-10))’);
subplot(2,2,2), nyquist(tf([1,-1],[1,10,0])),
xlim([-0.1,0.2]), ylim([-0.5,0.5]);
title(’(s-1)/(s(s+10))’);
subplot(2,2,3), nyquist(tf([1,20,100],[1,0,0])),
title(’(s+10)^2/s^2’);
subplot(2,2,4), nyquist(tf([1,20,100],[1,0,0,0])),
xlim([-1.5,0.1]), ylim([-0.5,0.5]);
title(’(s+10)^2/s^3’);
(s−1)/(s(s−10)) (s−1)/(s(s+10))
1 0.5
Imaginary Axis
Imaginary Axis
0.5
0 0
−0.5
−1 −0.5
−0.2 −0.15 −0.1 −0.05 0 0.05 −0.1 0 0.1 0.2
Real Axis Real Axis
(s+10)2/s2 (s+10)2/s3
50 0.5
Imaginary Axis
Imaginary Axis
0 0
−50 −0.5
−600 −400 −200 0 200 −1.5 −1 −0.5 0
Real Axis Real Axis
Figure 22.2: Nyquist plots of sample values of G (s) of Figure 22.1 generated by
MATLAB.
We see that in the name of Nyquist plots, we only have the polar plots and
their mirror images about the real axis. This picture may not seem enough to
talk about encirclements of the critical point. We may wonder how to use this
picture.
To use this picture, we need to perform one additional step. We need to
sketch the sections at infinity of the Nyquist plots.
(s-1)/(s(s-10)) (s-1)/(s(s+10))
1
+w +w
-w 0.4 -w
0.5
0.2
Im( G(jw) )
Im( G(jw) )
0 0
-0.2
-0.5
-0.4
-1
-0.2 -0.15 -0.1 -0.05 0 0.05 -0.1 -0.05 0 0.05 0.1 0.15 0.2
Re( G(jw) ) Re( G(jw) )
(s+10)2/s2 (s+10)2/s3
20 +w +w
-w 0.4 -w
15
10
0.2
5
Im( G(jw) )
Im( G(jw) )
0 0
-5
-0.2
-10
-15
-0.4
-20
-100 -80 -60 -40 -20 0 -1.4 -1.2 -1 -0.8 -0.6 -0.4 -0.2 0
Re( G(jw) ) Re( G(jw) )
Figure 22.3: Nyquist plots of sample values of G (s) of Figure 22.1 generated by
GNU Octave.
22.7 Discussion
For those TFs that have one or more poles at the origin, the section at infinity of
the s-plane contour (this section is also known as the D-section) maps into an
infinitisimally small section of a circle around the origin of the Nyquist plane.
This section does not affect the count of the encirclements. So, we can safely
assume that the D-section maps into the origin of the Nyquist plane in this
case.
When the OL TF does not have a pole at the origin, the D-section does not
map into the origin any more.
The Nyquist plane is also known as the G (s)-plane.
107
Lecture 23
NST (concluded),
Loop-shaping (Part 1)
Example 23.2
Sketch the NP of K/(s2 + 1) and discuss the stability of the unity feedback
closed-loop system formed around this TF.
1. be stable,
3. demonstrate desired performance (such as fast rise time (tr ), limited over-
shoot (M p ), fast settling time (ts ), and small steady-state error (ess )), and
109
EE250 (Control Systems Analysis) IITK Lecture Notes
D (s)
+
R(s) E(s) + Y (s)
+ GOL (s)
− + N (s)
+
Figure 23.1: A unity feedback closed-loop system formed around the open-
loop transfer function GOL (s).
Slope:
−20 dB/dec
1 decade
0◦ 1
−90◦
2
−180◦
3
−270◦
Figure 23.4: The signal flow graph equivalent of the block diagram of Fig-
ure 23.1.
Loop-shaping (Part 2)
1. Stability,
3. Robustness to disturbances,
2. Draw the ABMP of the desired OL TF (GOL ) on the same semilog graph
paper
3. Subtract the first ABMP from the second. This gives the ABMP of the con-
troller.
113
EE250 (Control Systems Analysis) IITK Lecture Notes
24.3 Stability
For minimum-phase TFs with simple-looking Nyquist plots (NPs), we saw that
gain margin (GM) and phase margin (PM) were adequate measures of how far
the NP was from encircling the −1 + j0 point. Thus, PM and GM are adequate
measures of stability.
For minimum-phase TFs that do not have second order elements, taking
care of PM takes care of CL stability.
Problem 24.1
Cook up a minimum-phase TF that includes a second order component
such that the unity-feedback closed-loop system built around this TF has BP
and NP that show adequate PM but not adequate GM.
GOL (s)
GCL (s) =
1 + GOL (s)
Slope:
−20 dB/dec
1 decade
1
2
0◦
−90◦
−180◦
−270◦
Figure 24.1: If a section of the BMP persists with a slope of −20 dB/dec for
less than a decade, then in the middle of that section, the phase is appropri-
ately away from −90◦ . This figure shows the ABMPs in contrast to Figure 23.3,
which showed the BMP. Note that if a section of the BMP has to persist for a
decade with a slope of, for example, −20 dB/dec, then the same section on the
ABMP needs to persist for more than a decade with a slope of −20 dB/dec.
ABMP 1 of this figure corresponds to the BMP of Figure 23.3. Note that the
PM shown by phase plot 1 is +90◦ , while that shown by phase plot 2 is about
+50◦ .
GOL
dB-gain
PM = 45◦
0 dB GCL ωg
ω
PM = 90◦ (log scale)
Low ω Mid ω Hi ω
Example 24.1
We have
GOL ( jω )
GCL ( jω ) =
1 + GOL ( jω )
Note that GOL ( jω g ) = 1. Thus, we only need to evaluate 1 + GOL ( jω g ).
The following figure shows 1 + GOL ( jω ) graphically for the case of PM =
90◦ (left subfigure) and PM = 45◦ (right subfigure).
G (s)-plane
G (s)-plane
0 1
0 1 )
g
( jω
GOL ( jω g )
1+
1+
L
GO
GO
G OL
L
(j
ωg
( jω g
)
)
1 + GOL ( jω g ) = 2 1 + GOL ( jω g ) ≈ 0.75
√
⇒ GCL ( jω g ) = 1/ 2 = 0.7 ⇒ GCL ( jω g ) = 1/0.75 = 1.33
More accurately, 1 + GOL ( jω g ) =
r
2 2
√1 + 1 − √1 ≈ 0.77
2 2
Loop-shaping (Part 3)
• Settling time ts is the time taken by the system to enter the x% tube with the
intention of remaining in it. Here, x% of y(∞) is the radius of the tube. The
tube is centered about the steady-state value y(∞) of the unit step response.
• Steady state error ess = 1 − y(∞) is a measure of the steady-state accuracy
of the control system. For example, in a position control system, if, after the
transients die out, the position achieved is different from what was needed
to be achieved, we say that this control system has a non-zero ess .
• Rise time tr .
How do loop-shaping techniques help meet these performance specs? The
following subsections answer this question.
117
EE250 (Control Systems Analysis) IITK Lecture Notes
y(t)
1
y(∞)
Diameter = 2x%
ess x% tube
0 tr tp ts t
Figure 25.1: The unit step response of a control system. First order response
and second order responses are special cases of this response.
1 1 1
E(s) = R(s) − D (s) − N (s)
1 + GOL (s) 1 + GOL (s) 1 + GOL (s)
When R(s) = 1/s (that is, r (t) is unit step), we can write the following using
final value theorem:
1 1 1
ess , lim e(t) = lim sE(s) = lim s =
t→∞ s →0 s →0 1 + GOL (s) s 1 + GOL (0)
Therefore, GOL (0) ≈ 1/ess . Therefore, to reduce ess , increase the LF value of
| GOL |. We can define klf , 20 log10 | GOL (0)|. Then, klf can define the LF forbid-
den zone seen in the earlier figure.
x 1 2 5 10
ts 4.6τ 3.9τ 3τ 2.3τ
From the table, we can say that transients in a first order system die out in
approximately 5τ, that is, in five time constants. Therefore, for a first order
system, ts ≈ 5τ.
For a first order system, the TF τs1+1 shows that ωb = 1/τ. Therefore,
ωb ≈ 5/ts .
We can carry this approximation to higher order systems too, and say that
transients in any system die out — if they die out — in approximately five
times the largest time constant τmax . Then, assuming that ωb ≈ 1/τmax , the
bandwidth of any system can be defined roughly as being related to the sys-
tem’s ts as ωb ≈ 5/ts .
The inequality ω g ≤ ωb ≤ 2ω g , implies that ω g ≈ ωb . Therefore, in order
to provide the desired ts , we need to set ω g ≈ 5/ts .
25.1.3 Overshoot
The rule of thumb is, “the closer the system is to instability, the more oscillatory
its step response becomes, and the more will be its overshoot.” Of course, this
statement may not be applicable to a first order system. But, most practical
systems are not purely first order. If they are modeled as of first order, then
that may be because their higher order dynamics have been neglected.
To limit the value of M p , provide suitable PM. We will see soon the relation
between the desired maximum M p and the appropriate PM.
The measures we adopted in subsections 24.3 and 24.4 and are also ade-
quate to limit M p .
This equation shows that, to keep the initial spike in u(t) within limits, keep
20 log10 |C ( jω )| small at the appropriate frequencies. What are these appropri-
ate frequencies? Section 25.3 provides an answer to this question.
2. The initial value theorem relates the high-frequency section of the loop-gain
to the area of the step response that is near t = 0+
x (t)
xd
20 log10 | Gdes ( jω )|
M p of x (t) and ωu
magnitude of ux ωl ωg ω
u(0+). Here
u x = u. t
C (∞−)
u(0+) =
1 + C (∞−) G (∞−)
assuming R(s) = 1/s. So, making |C (∞−)| small will make |u(0+)| small.
Note that, the choice of ωu and ωl itself involves trial and error in practice.
2. To reduce M p (that occurs at t = 0 + +) of x reduce | Gdes ( jω ) in the region
much below high frequencies, but above the low frequency region, as shown
in the above figure.
This can be seen using the above-mentioned conjecture as follows:
C (s) G (s)
lim y(t) ≈ lim
t→0++ s→∞−− 1 + C ( s ) G ( s )
assuming R(s) = 1/s. So, making |C (∞ − −)| small will make M p small.
3. To reduce ts of x, we have two options:
3.1. Increase ω g .
3.2. Decrease M p as mentioned in item 2 above.
Loop-shaping (Part 4)
121
EE250 (Control Systems Analysis) IITK Lecture Notes
klf
LF forbidden
HF forbidden zone
zone
ωu ωn
ωd ωl ωg
khf −20 dB/dec
Figure 26.1: Summary of loop-shaping. The width of the −20 dB/dec section
centered at ω g accounts for the CL properties of stability, robustness to distur-
bance rejection. This width, and, consequently, these properties are related to
the phase margin (PM). The height of the low frequency (LF) forbidden zone
accounts for steady-state accuracy of tracking an input signal, and for rejecting
disturbances. The right side boundary of this zone is at a frequency ωd that is
sufficiently small in comparison to ωb (the closed-loop bandwidth), and, conse-
quently, to ω g . This way, disturbances are tackled quickly. The high frequency
(HF) forbidden zone accounts for sensor noise. The lower level of this zone is
at a value of khf dB; the amplification of the sensor noise does not rise above
this level.
26.4.2 Solution
1
ess ≤ 0.05 implies that klf = 20 log10 | GOL (0)| & 20 log10 = 26 dB.
ess
5
ts = 5 s for a 2% tube can be achieved with ω g ≈ ≈ 1 rad/s.
ts
◦
M p ≤ 30% can be achieved with a PM ≈ 60 . This translates into a −20
dB/dec section that is approximately one decade wide centered at ω g .
Next, we will use MATLAB to generate a BMP that will have these three
features.
2. We type the word magshape at the command prompt. This launches the GUI
tool MAGSHAPE. Note that MAGSHAPE presents us a semilog grid where
the x-axis represents frequencies in rad/s, and y-axis represents dB-gain.
3. In MAGSHAPE —
4.1. Converts the filter generated by MAGSHAPE into a TF form using the
function ltitf provided by MATLAB.
4.2. Plots this filter’s BP.
4.3. Plots the unit step response of the CL system corresponding to this filter.
5. If the step response does not satisfy the problem’s specs, then repeat the
entire exercise beginning with step 3.
26.4.4 Results
A few trials of the above algorithm gave us the filter shown in the MAGSHAPE
window of Figure 26.2. Figure 26.3 shows the Bode plot of GOL (s). Figure 26.4
shows the unit step response of the unity-feedback CL system built around
GOL (s). The step response approximately satisfies the three specs given by the
problem.
[num,den]=ltitf(test);
[n,d]=cleanup(num,den);
gol=tf(n,d);
gcl=feedback(gol,1,-1);
Figure 26.2: Snapshot of MAGSHAPE showing the BMP of GOL that gives the desired CL response.
t = linspace(0,18,200);
%
% The above line was absent in the a.m
% mailed to the students immediately after the
% lecture. I addded it later because I found
% that the step reponse plotted by MATLAB was
% jagged. Jagged responses are not natural.
% Adding the above line gives a smooth response.
%
step(gcl,t), grid
print -depsc step.eps
% figure,
% bode(gcl), grid, title(’BP of Gcl’)
figure,
bode(gol), grid, title(’BP of Gol’)
print -depsc OLbode.eps
% cleanup.m
function [n,d]=cleanup(num,den)
numerr = 0.0001;
denerr = 0.0001;
% In future, we can specify the values of
% numerr \& denerr based on various factors
% such as the orders of the numerator and
% denominator, and maybe others that I am
% not seeing at the moment.
for i=1:size(num,2)
if abs(num(i))/abs(max(den)) < numerr
num(i) = 0;
end
end
for j=1:size(den,2)
if abs(den(j))/abs(max(den)) < denerr
den(j) = 0;
end
end
n = num; d = den;
Problem 26.2
Construct an ordinary differential equation of the smallest order possible
so that the solution of this differential equation to a unit step forcing function
has the form shown in Figure 25.1. Assume M p ≈ 30%, ess ≈ 0.04, ts ≈ 1
BP of Gol
50
0
Magnitude (dB)
−50
−100
−150
0
−45
Phase (deg)
−90
−135
−180
−3 −2 −1 0 1 2 3 4
10 10 10 10 10 10 10 10
Frequency (rad/sec)
Figure 26.3: BP of GOL . The PM is what we expected based on the width of the
section of slope −20 dB/dec centered at ω g .
s. The permitted tolerance for your solution is 5%. Multiple overshoots and
undershoots are not mandatory.
Step Response
1.4
1.2
1
Amplitude
0.8
0.6
0.4
0.2
0
0 2 4 6 8 10 12 14 16 18
Time (sec)
Figure 26.4: Unit step response of the CL system. The step response approxi-
mately satisfies the three specs given by the problem.
27.1 Background
We are interested in designing a controller C (s) for the cascade combination
shown in Figure 23.2. Figure 27.1 shows the steps, which are involved in the
design and deployment of a controller.
In the flow chart, Step7 involves tuning. Tuning is required because the
controller may have been designed for an idealized model of the plant. The
model may have ignored nonlinearties and certain dynamics of the plant. So,
the controller may not work right unless it is tuned. The fewer the number of
parameters to be tuned in practice, the easier the tuning, as we can track the
effect of each parameter on the control system.
The simplest controller is a proportional controller. But, a proportional con-
troller is limited in what it can help the closed-loop system achieve. When a
controller is more than a proportional controller, we call it a compensator. A
transfer function (TF) that does not contain terms in s is called a static TF. A TF
that has terms in s is called a dynamic TF. A compensator contains terms in s;
so it is dynamic. Some of the simplest controllers are shown in Table 27.1
In this lecture, we study lead and lag controllers. We look at the PID con-
troller and its special cases (that is, PI and PD) after the second midsemester
exam.
129
EE250 (Control Systems Analysis) IITK Lecture Notes
Start
Exit
Step1
Mathematically
YES
model the plant
as LTI ODE
Step4
Convert design
goals into loop- Step7
shaping spec-s Tune the controller
such as PM, ω g , so that CL system
forbidden zones behaves as desired
Step5
Step6
Design & simulate
Program the con-
controller until sat-
troller in µC / DSP
isfactory on paper
Proportional kp
Proportional plus derivative (PD) k p + kd s
Proportional plus integral (PI) k p + k I /s
Proportional plus integral plus derivative (PID) k p + k d s + k I /s
Ts + 1
Lead K , α<1
αTs + 1
Ts + 1
Lag K , α>1
αTs + 1
Figure 27.2: Bode plots of lead and lag controllers. The lead controller provides
a positive phase, while the lag controller provides a negative phase.
quencies of the controller through the steps shown in Figure 27.3. See Sec-
tion 27.4 for details.
Table 27.2 tabulates the required DD (∆) between the corner frequencies
of the lead (or lag) controller and the corresponding Φmax (or Φmin ) that the
controller needs to provide for certain commonly occuring values of Φmax (or
Φmin ).
Determine ∆ as a Determine ∆ as
function of Φmax a function of α
Figure 27.3: Steps in the development of the relation between the decade dis-
tance (DD, ∆) and Φmax . See Section 27.4 for details.
Table 27.2: The required DD (∆) between the corner frequencies of the lead (or
lag) controller and the corresponding Φmax (or Φmin ) that the controller needs
to provide for certain commonly occuring values of Φmax (or Φmin ). Note that
the DD is the same on the BMP and the AMBP.
Φmax (Φmin ) needed 90◦ (−90◦ ) 60◦ (−60◦ ) 45◦ (−45◦ ) 30◦ (−30◦ )
DD between corner ∞ 1.1439 0.76555 0.47712
freq-s of BP in decades ≈ 1.144 ≈ 0.766 ≈ 0.477
A plot of ∆ versus PM can be generated using the code shown in Figure 27.4
and is shown in Figure 27.5. This code uses Equation 27.1.
Example 27.1
Design using loop-shaping techniques on the 5-cycle semilog paper pro-
vided a controller of the minimum order possible to control the speed of a mo-
ω (s)
tor with the transfer function (TF) V (s) = s100
+20 for the following time domain
specifications: steady-state error to a step input ess ≤ 2%, settling time ts ≈ 0.5
s, peak overshoot M p ≤ 20%.
Label your axes appropriately. Show how the specifications are reflected in
your loop-shaping construction. Mark ω g suitably.
The solution is shown in Figure 27.6.
4.5
3.5
Decade Distance (in decades)
2.5
1.5
0.5
0
0 10 20 30 40 50 60 70 80 90
PM (in degrees)
Figure 27.5: Decade distance (DD) versus phase margin (PM). We note that
the DD is fairly proportional to the PM upto about 60◦ with a relationship of
DD = PM/60.
Ts + 1
C (s) = K , α<1 Ts + 1
αTs + 1 C (s) = K , α>1
αTs + 1
K s + T1
= K s + T1
1
α s + αT = 1
α s + αT
jωT + 1
C ( jω ) = K jωT + 1
jωαT + 1 C ( jω ) = K
jωαT + 1
In this lecture, for the closed-loop (CL) system of Figure 23.2, we see the rela-
tion between the desired overshoot M p in the system’s unit step response and
the phase margin (PM) that would provide this M p . For this purpose, we de-
velop this relationship for a second order system, and assume this relationship
as being approximately valid for systems of higher order.
ωn 2
G (s) = (28.1)
s(s + 2ζωn )
Sample Bode and polar plots that correspond to this standard second order
TF, for ωn = 1 rad/s and ζ = 0.5, plotted using the m-file ord2.m included
in this lecture note are shown in figures 28.1 and 28.2 respectively. We show
these plots so that the PM of this TF is clear. The CL system is, of course, a
unity-feedback one.
Let us work out the PM of this TF. For this, we first determine the gain
crossover frequency ω g by setting the magnitude of G ( jω ) = 1 at ω g .
ωn 2
G ( jω g ) =
−ω g 2 + j2ζωn ω g = 1
This gives
rq
ω g = ωn 4ζ 4 + 1 − 2ζ 2
As
π ω
∠G ( jω ) = − − arctan
2 2ζωn
137
EE250 (Control Systems Analysis) IITK Lecture Notes
Bode Diagram
50
0
Magnitude (dB)
−50
−100
−90
Phase (deg)
−135
PM
−180
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
Figure 28.1: Bode plot of the standard open-loop second order system G (s) =
ωn 2
s(s+2ζωn )
. The item of interest in this plot is the phase margin of this open-loop
system.
90
4
120 60
3
150 2 30
180 0
210 330
240 300
270
Figure 28.2: Polar plot of the standard open-loop second order system G (s) =
ωn 2
s(s+2ζωn )
. The item of interest in this plot is the phase margin of this open-loop
system.
we have
π ωg
∠G ( jω g ) = − − arctan
2 2ζωn
The familiar expression
PM = π + ∠G ( jω g ).
π
gives us, using the fact that 2 − arctan x = arctan 1x ,
2ζ
PM = arctan qp (28.2)
4ζ 4 + 1 − 2ζ 2
ωn 2
G (s) = .
s2 + 2ζωn s + ωn 2
that corresponds to the above OL TF.
Problem 28.1
Show that, for the second order unity-feedback CL system built around the
TF of (28.1), M p is given by the expression:
√−πζ
Mp = e 1− ζ 2 × 100% (28.3)
100
PM (in °)
Mp (in %)
90
PM∼ (in °)
80
70
60
PM, Mp, PM∼
50
40
30
20
10
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
ξ
Figure 28.3: Relationship between M p and ζ and PM and ζ. Note that the
approximation shown by PM∼ is only valid for 0 ≤ ζ . 0.707.
100
PM
PM∼
90
80
70
PM, PM∼ (in degrees)
60
50
40
30
20
10
0
0 10 20 30 40 50 60 70 80 90 100
M_p (in \%)
Figure 28.4: Relationship between M p and PM. Note that the PM∼ versus M p
relationship is only valid for PM between 0 and 70◦ .
2
∆
PM/100
1.8
1.6
DD (in decades) & PM (in degrees)
1.4
1.2
0.8
0.6
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100
Peak overshoot M (in %)
p
Figure 28.5: Plot of DD versus M p constructed from figures 28.3 and 28.4. Also
reproduced is the information from Figure 28.4 of PM versus M p .
clear all;
close all;
clc;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% pmmp.m: m-file to see the relationship
% between PM of the second order system
% $\frac{{\omega_n}^2}{s(s+2\xi\omega_n)}$,
% and the peak overshoot $M_p$ of the unit
% step response of the corresponding
% closed-loop system.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
xi = linspace(0,1,40);
% Declare an array of values of xi at which to
% evaluate
pm = atan(2*xi./sqrt(sqrt(4*xi.^4+1)-2*xi.^2));
mp = exp(-pi*xi./sqrt(1-xi.^2))*100;
% This gives the peak overshoot in percent
% Peak overshoot is defined as
% $M_p = \frac{y(t_p)-y(\infty)}{y(\infty)}\times 100\%$.
pmapprox = 100*xi;
plot(xi,pm,xi,mp,xi,pmapprox)
xlabel(’\xi’); ylabel(’PM, M_p, PM\sim’)
legend(’PM (in \circ)’,’M_p (in %)’,’PM\sim (in \circ)’)
grid
figure
plot(mp,pm,mp,pmapprox)
xlabel(’M_p (in \%)’); ylabel(’PM, PM\sim (in degrees)’);
legend(’PM’,’PM\sim’); grid
print -depsc mppm.eps
Problem 28.3
If necessary, edit ord2.m and pmmp.m so that these files run successfully in
GNU Octave, giving the same results that they gave in MATLAB.
29.1 Problem
Consider the control system of Figure 29.1. We wish to design a compensator
D (s) that satisfies the following design specifications:
(a) Kv = 100.
(b) PM ≈ 60◦ .
(d) Sinusoidal inputs with a frequency of greater than 100 rad/sec to be atten-
uated at the output to ≤ 5% of their input value.
3. What is the decade distance needed between the corner frequencies ωl and
ωh for the desired Bode plot of Figure 29.2?
5. On the semilog grid provided, draw the ABMPs of the desired D (s) G (s)
and of G (s). Your figure must contain all the necessary labels.
6. On the semilog grid provided, show the ABMP of the resulting D (s). Write
the TF of D (s).
7. For the resulting CL system, given that ωB ∈ [ωmin , ωmax ], where ωB is the
bandwidth, what are the values of ωmin and ωmax ?
145
EE250 (Control Systems Analysis) IITK Lecture Notes
20 log10 (K1 )
ωg
ω1 ωl ωh ω2
−20
dB/dec
20 log10 (K2 )
29.2 Solution
We first translate the specifications into actionable information.
(a) Kv = 100.
At this point in the course, we have not yet seen the concept of Kv . We will
do so soon. In the meanwhile, it suffices to know that for a unity-feedback
control system built around the TF GOL (s) that contains a single integrator,
Kv is the frequency where the left-most asymptote of the ABMP of GOL (s)
has a value of 0 dB. Kv has the units of rad/s.
In this problem, Kv = 100 implies that the left most asymptote of the BMP
of D (s) G (s) has a slope of −20 dB/decade and passes through the point
(b) PM ≈ 60◦ .
This specification can give us the decade distance (DD) between the ωl and
ωh of Figure 29.2. Table 27.2 says that a DD of 1.144 decades between ωl
and ωh with a −20 dB/decade decline between them implies PM ≈ 60◦ .
E(s) 1
Ge (s) , =
R(s) 1 + D (s) G (s)
1
⇒ Ge ( jω ) =
1 + D ( jω ) G ( jω )
Let us define e(t) , r (t) − y(t). For an input sinusoid r (t) = A sin ωt,
the steady-state value of e(t) is ess (t) = | Ge ( jω )| A sin(ωt + ∠Ge ( jω )). It
is given that ess (t) ≤ 2% when r (t) is upto 1 rad/s in frequency. Is this
a specification for the magnitude and phase of ess (t), or is it only for the
phase of ess (t)? Note that, the frequency responses of even ideal filters are
defined as having phases changing linearly with frequency. So, most likely,
we are not being asked to constrain the phase as well as magnitude of a
practical filter within 2%. This guess is verified by looking at specification
(d). So, the 2% specification can only be on the magnitude of ess (t). So,
we shall constrain the magnitude of ess (t) within 2%. This can be done as
follows:
1
| Ge ( jω )| = ≤ 2%,
|1 + D ( jω ) G ( jω )|
∀ω ≤ 1 rad/s.
⇒ | D ( jω ) G ( jω )| ' 50, ∀ω ≤ 1 rad/s.
(d) Sinusoidal inputs with a frequency of greater than 100 rad/sec to be atten-
uated at the output to ≤ 5% of their input value.
K1 = 50, K2 = 0.05
3. What is the decade distance needed between the corner frequencies ωl and
ωh for the desired Bode plot of Figure 29.2?
1.144 decades.
Both.
5. On the semilog grid provided, draw the ABMPs of the desired D (s) G (s)
and of G (s). Your figure must contain all the necessary labels.
5.1. From the values of K1 , K2 and ω1 , ω2 we get the forbidden regions. The
BMP of D (s) G (s) cannot lie in this region.
5.2. Draw the left-most asymptote of the BMP of D (s) G (s). For this, using
Kv = 100, draw a straight line at a slope of −20 dB/decade and passing
through 100 rad/sec at 0 dB.
5.3. As no data is given to fix ω g , we choose ω g to be approximately equidis-
√
tant, on logarithmic scale, from ω1 and ω2 . That is, ω g ≈ ω1 ω2 . This
gives ω g = 10 rad/sec.
5.4. We draw a 1.144 decade-wide −20 dB/decade straight line centered at
ωg .
5.5. We connect the left end of this −20 dB/decade section to the asymptote
of step 5.2 via a straight line while being careful that this line does not
intersect the LF forbidden region.
This line will need to have a slope that is integer multiple of −20
dB/decade. We get this slope as −60 dB /dec in our case.
5.6. From the right end of the −20 dB/decline (of step 5), we draw a straight
line at a slope of −40 dB/dec (integral multiple of 20), that passes below
the HF forbidden zone.
The ABMP of the desired D (s) G (s) is shown in the graph of Figure 29.3.
Also shown on the same graph is the ABMP of G (s).
6. On the semilog grid provided, show the ABMP of the resulting D (s). Write
the TF of D (s).
6.1. Subtract the ABMP of G (s) from that of D (s) G (s) to obtain the ABMP
of D (s) as shown on the graph.
6.2. The TF of D(s) is
s 2 s
10 +1 +1
D (s) = 2.5 2 10 .
s s
+1 +1
0.7 40
7. For the resulting CL system, given that ωb ∈ [ωmin , ωmax ], where ωb is the
bandwidth, what are the values of ωmin and ωmax ?
Since ω g ≤ ωb ≤ 2ω g , we have ωmin = ω g = 10 rad/s, and ωmax = 2ω g =
20 rad/s.
s 2 s
10 +1 +1
Figure 29.3: Solution to the problem. D (s) = 2.5 2 10 .
s s
+1 +1
0.7 40
Consider the closed-loop system of Figure 23.1. Assuming that d(t) and n(t)
are absent,
the error in tracking a reference input R(s) is given by E(s) =
R(s) (1 + G (s)).
How accurately a control system tracks, for example, a step or a ramp input
is of interest in the design. More generally, test signals of the form r (t) =
tn 1(t) n! may be used to evaluate the performance of a control system. Note
that L− { tm m!} = 1 sm+1 . So, R(s) = 1 sm+1 . See Section 30.4 for the
definition of L− {·}.
The steady-state error ess is a measure of this accuracy, and is defined as
We can use the final value theorem (FVT) to calculate ess as follows:
1
ess = lim e(t) = lim sE(s) = lim s R(s)
t→∞ s →0 s →0 1 + G (s)
Note that the FVT works only if ess to a given input r (t) exists and is finite.
Equivalently, FVT requires all poles of sE(s) to be in the open left half s-plane.
Problem 30.1
In practice, where is a step or a ramp used as a test signal for a control
system?
The TFs that we study in this course are of the form shown in (9.2). Assume
that G (s) of (9.2) is minimum-phase. This means that all the constants in G (s)
are non-negative, and that G (s) is rational. In the remainder of this lecture, we
151
EE250 (Control Systems Analysis) IITK Lecture Notes
study the concepts of error constants and system type, which are used to discuss
the steady-state accuracy of minimum-phase systems.
Example 30.1
Evaluate ess for the case of a minimum-phase G (s) having 2 poles at the
origin and the CL system tracking a parabolic input.
Note that, though G (s) has 2 poles at the origin, if we wish to apply
FVT, then G (s) is not permitted 2
m + 1
2 to be, for example, of the form 1/s . For
R(s) = 1 s , G (s) = 1 s would result in sE(s) having a pair of com-
plex conjugate poles on the jω-axis, disqualifying this sE(s) for FVT. In the rest
of this example, we assume that G (s) is such that sE(s) is amenable to FVT.
1 1 1 1
ess = lim s 3
= lim 2 2
=
s →0 1 + G (s) s s →0 s + s G ( s ) lims→0 s2 G (s)
As G (s) has exactly two poles at the origin and is minimum-phase, s2 G (s) will
have all poles and zeros in the open left half s-plane. Therefore, lims→0 s2 G (s)
is a positive finite constant.
Table 30.1: Calculations of the steady-state error (ess ) in tracking step, ramp,
and parabolic inputs by a unity-feedback closed-loop system whose loop gain
has upto 2 poles at the origin.
Number of poles of G (s) at origin
0 1 2
lims→0 s 1+G1 (s) 1s =
1
1+lims→0 G (s)
. Here,
0 < lim G (s) < ∞ Here, Here,
1 s →0 lim G (s) = ∞. lim G (s) = ∞.
s ∵ G (s) is s →0 s →0
minimum-phase. ∴ ess = 0. ∴ ess = 0.
Denote it by K p .
Then, ess = 1+1K p .
Cannot use FVT
lims→0 s 1+G1 (s) s12 =
to evalute ess
1 Here,
(∵ sE(s) has 1 pole .
Here,
R(s)
lims→0 sG (s)
1
at origin). Deter- 0 < lim sG (s) < lim sG (s) = ∞.
s2 s →0 s →0
mine y(t). Then, ∴ ess = 0.
∞. Denote it by Kv .
e(t) = r (t) − y(t)
Then, ess = K1v .
gives ess = ∞.
lims→0 s 1+G1 (s) s13 =
Cannot use FVT to Cannot use FVT to
1
evalute ess . Deter- evalute ess . Deter- lims→0 s2 G (s)
. Here,
1
s3
mine y(t). Then, mine y(t). Then, 0 < lim s2 G (s) <
e(t) = r (t) − y(t) e(t) = r (t) − y(t) s →0
∞. Denote it by Ka .
gives ess = ∞. gives ess = ∞.
Then, ess = K1a .
Ramprasad Potluri
sion of G (s) of (9.2) using Table 30.1
OL TF has no If a unit step isinput to the CL system, then On the BMP of G (s), the equation
poles or zeros we say ess = 1 (1 + K p ) , where
n n
!
2
at the origin ∏i=1 0 (zi ) ∏k=
2
0 ( ωnk )
n n 2 dB-gain = 20 log10
∏i=1 0 (zi ) ∏k=
2
0 ( ωnk ) d d
∏i=1 0 ( pi ) ∏k=
2 2
K p = G (0) = d d 0 ( ωdk )
∏i=1 0 ( pi ) ∏k=
2 2
0 ( ωdk )
describes the left-most asymptote. This observation helps in reading K p off
the BMP as equal to G (0).
OL TF has ex- If a unit ramp is input to the CL system, then On the BMP of G (s), the equation
actly one pole we say ess = 1 /Kv , where
n n2
!
2
at the origin 1 ∏i=1 0 (zi ) ∏k= 0 ( ωnk )
n n2
∏ 1 ( zi ) ∏ k = 2 dB-gain = 20 log10
0 ( ωnk ) ω ∏d1 ( pi ) ∏d2 (ωdk 2 )
154 of 224
Kv = lim sG (s) = di=0 d i =1 k =0
s →0 ∏i=1 1 ( pi ) ∏k=
2 2
0 ( ωdk )
describes the left-most asymptote. This asymptote intersects the ω-axis at
EE250 (Control Systems Analysis) IITK
n n 2
∏i=1 0 (zi ) ∏k=
2
0 ( ωnk )
ω= d d
,
∏i=1 1 ( pi ) ∏k=
2 2
0 ( ωdk )
that is, at ω = Kv .
OL TF has ex- If a unit parabola is input to the CL system, On the BMP of G (s), the equation
actly two poles then we say ess = 1 /Ka , where
n n
!
2
at the origin 1 ∏i=1 0 (zi ) ∏k=2
0 ( ωnk )
20 log10 K p
−20 −40
√
ω Kv ω Ka ω
But, we will not use this in our course because we will work with signals that
are zero always but abruptly acquire non-zero value at some point in time,
and this value of time can be arbitrarily chosen as t = 0. So, one-sided LT is
appropriate in this case.
Even when the signals may have non-zero values before t = 0, we assume
that we know their effect upto either t = 0− (immediately before t = 0), or
t = 0, or t = 0+ (immediately after t = 0) in the form of initial conditions of
differential equations at these time instants. So, one-sided LT is appropriate in
this case too.
Distinction between the three definitions of one-sided LT is needed when
an impulse is involved at the origin [22, page 62]. So, in the next section, we
will recap our knowledge of the unit impulse function.
1. δ(τ − t) = 0, ∀τ 6= t [31].
Z ∞ [24]
F− (s) = L− { f (t)} , f (t)e−st dt
0−
Z c+ j∞
1
L− 1
− { F− ( s )} , F− (s)est ds = f (t) , t > 0−
2πj c− j∞
Z ∞
F (s) = L{ f (t)} , f (t)e−st dt
0
Z c+ j∞
1
L−1 { F (s)} , F (s)est ds = f (t) , t > 0
2πj c− j∞
Z ∞ [24]
F+ (s) = L+ { f (t)} , f (t)e−st dt
0+
Z c+ j∞
1
L− 1
+ { F+ ( s )} , F+ (s)est ds = f (t) , t > 0+
2πj c− j∞
d1(t)
2. δ(t) = dt , where 1(t) is a unit step function, a.k.a., Heaviside function,
(
0 t<0
1( t ) =
1 t>0
The unit impulse function is not a function in the classical sense. For a
classical function r (t) that is defined as zero everywhere except at finitely many
0
t τ
f
0
t τ
f ×δ
0
t τ
R +∞
points, the integral −∞ r (t)dt evaluates to zero. Functions such as δ are called
generalized functions and are studied in the theory of distributions or measure
theory (see, for example, [31]).
An example of application of
loop-shaping in automobile
control
159
EE250 (Control Systems Analysis) IITK Lecture Notes
Digital implementation of
controllers
161
Lecture 32
Y (s) a s + a0
G (s) = = 2 1
U (s) s + b1 s + b0
We wish to find a state space model whose input and output are u(t) and y(t)
respectively, and whose TF is G (s). The following is one way to accomplish
this goal:
2. Let
X (s) 1 Y (s)
= 2 and = a1 s + a0
U (s) s + b1 s + b0 X (s)
4. Using this last step, we can construct the simulation diagram of Figure 32.1.
Note that here, the block containing the 1/s represents integration opera-
tion. Books show either of the two equivalent blocks shown in Figure 32.2.
The 1/s is more appropriate
R when the block diagram is in the Laplace Trans-
form domain, while the is more appropriate when the block diagram is in
time domain.
163
EE250 (Control Systems Analysis) IITK Lecture Notes
a1
+
U (s) s2 X ( s ) 1 sX (s) 1 X (s) Y (s)
s s
a0
+ +
− −
b1
b0
1
R
s =
Figure 32.2: The two equivalent blocks that represent an integrator. The 1/s is
more appropriate
R when the block diagram is in the Laplace Transform domain,
while the is more appropriate when the block diagram is in time domain.
a1
+
U (s) s2 X ( s ) 1 sX (s) 1 X (s) Y (s)
s s
a0
u(t) + ẋ2 x2 = ẋ1 x1 + y(t)
− −
b1
b0
Figure 32.3: Writing in the time-domain quantities into the simulation diagram
of Figure 32.1.
a1
+
U (s) s2 X ( s ) 1 sX (s) 1 X (s) Y (s)
s s
a0
u(t) + ẋ1 x1 = ẋ2 x2 + y(t)
− −
b1
b0
5. In the block diagram, write the time-domain quantities u(t) and y(t) as
shown in Figure 32.3.
Also, assign a state variable to the output of each integrator block. In the
above case, we started the assignment at the output of the right-most inte-
grator block, going left.
ẋ1 = x2
ẋ2 = −b0 x1 − b1 x2 + u
y = a0 x1 + a1 x2
This system of first order differential equations gives us the state-space (SS)
model " # " # " #
0 1 0 x1
ẋ = x+ u with x =
−b0 −b1 1 x2
Problem 32.1
Assign a state variable to the output of each integrator block starting from
the left-most integrator, going right as shown in Figure 32.4.
Verify that the SS model is as follows:
" # " # " #
−b1 −b0 1 x1
ẋ = x+ u, with x =
0 1 0 x2
Desired output
−
+ −
+ −
+
DC motor
Signal inversion
Tachogenerator
or potentiometer
−
+
ẋ = Ax + Bu
y = Cx + Du
Example 32.1
Which of the following two definitions of a derivative do we use in our
differential equations, and why?
that in a digital implementation of the derivative action, using the left deriva-
tive may not give the same result as does using the right derivative.
Now let us return to the SS model. Euler’s approximation of the derivative
is
x (t + ∆t) − x (t)
ẋ ≈ , for small ∆t.
∆t
Using Euler’s approximation, we can write the state space model as
x (t + ∆t) − x (t)
≈ Ax (t) + Bu(t), for small ∆t.
∆t
y(t) = Cx (t) + Du(t)
We denote by x (k) the state at the k-th instant. The k-th instant is the time k∆t
starting from t = 0. Then the state at the instant (k + 1)∆t is x (k + 1). Using
this notation, the SS model can be written as follows:
x (k + 1) = ( A∆t + I ) x (k ) + B∆tu(k ),
y(k) = Cx (k) + Du(k)
169
Lecture 33
As an example that illustrates the above three steps, consider the control
system we designed in Section 29.2.
Example 33.1
The plant TF was
10
G (s) = s
s +1
10
and the controller TF was
s 2 s
10 +1 +1
D (s) = 2.5 2 10
s s
+1 +1
0.7 40
We wish to see if the following two design specs are satisfied by our design:
171
EE250 (Control Systems Analysis) IITK Lecture Notes
The m-file simul.m — that uses the m-file cleanup.m (that we used earlier in
Lecture 24) — implements the three steps that we listed above. We see from
figures 33.1 and 33.2 that both the specs are satisfied.
Problem 33.1
Peform the minimum needed modifications in the m-file simul.m so that
this file executes successfully in GNU Octave.
Problem 33.2
Which of the two methods of realization that we saw in this lecture does
the MATLAB function tf2ss perform?
1.5
y
u
0.5
−0.5
−1
−1.5
0 1 2 3 4 5 6 7 8 9 10
Figure 33.1: Results for Example 1: Response y of the control system designed
in Lecture 27 to a sinusoidal input u with ω = 1 rad/s, T = 0.001 s, N = 10000.
1
y
u
0.8
0.6
0.4
0.2
−0.2
−0.4
−0.6
−0.8
−1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Figure 33.2: Results for Example 1: Response y of the control system designed
in Lecture 27 to a sinusoidal input u with ω = 100 rad/s, T = 0.001 s, N =
1000.
s = tf(’s’);
2.5
1.5
y(t)
0.5
tsa tse
Figure 33.3: The unit step response of the standard second order TF. tsa and tse
are respectively the actual settling time of the response and the settling time of
the envelope of the response.
[n,d] = cleanup(num,den);
close all
clear all
zeta = 0.1;
omegad = 20;
tau = 1/(zeta*omegad);
timelen = 6*tau;
numsteps= 1000;
t = linspace(0.001,timelen,numsteps);
y = 1 - exp(-zeta*omegad*t).*sin(omegad*t+acos(zeta))/sqrt(1-zeta^2);
yel = 1 - exp(-zeta*omegad*t)/sqrt(1-zeta^2);
plot(t,y,t,yeu,t,yel,t,xl,’--’,t,xu,’--’), grid
xlabel(’t’); ylabel(’y(t)’);
The m-file addzero.m plots the responses due to the additional zeros in the
second-order transfer function. This file calculates the derivative dy/dt using
the five point numerical differentiation method given by the expression1
− f ( x + 2h) + 8 f ( x + h) − 8 f ( x − h) + f ( x − 2h)
f 0 (x) ≈
12h
1 See wikipedia.org.
177
EE250 (Control Systems Analysis) IITK Lecture Notes
100
tr*omegan
50
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
100
tp*omegan
50
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
1
Mp
0.5
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
4000
ts*omegan
2000
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
2
ess*omegan
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
xi
Figure 34.1: Plot of the formulae developed for the unit step response of the
standard second order system.
Note that addzero.m implements this formula without using a FOR loop.
Problem 34.1
Figure 34.2 shows the results from executing addzero.m. Identify the vari-
ous curves in this figure.
−2
−4
0 0.5 1 1.5 2 2.5 3
Figure 34.2: Results from executing addzero.m. Can you identify each curve?
Problem 34.2
In the example discussed in Section 4.3, we see that even though the poles
are deeper in the left half s-plane than the zero, the response is to our satisfac-
tion. We intended to revisit this example in our lectures on root locus. Here,
we revisit this example.
Are there an contradications or errors in that section?
close all
clear all
zeta = linspace(0.001,0.999,1000);
%Rise time:
tromn = (pi-acos(zeta))./sqrt(1-zeta.^2);
%tromn is the product of tr and omega_n.
% Peak time:
tpomn = pi./sqrt(1-zeta.^2);
% Peak overshoot:
Mp = exp(-pi*zeta./sqrt(1-zeta.^2));
subplot(5,1,1),
plot(zeta,tromn), ylabel(’t_r*omega_n’), grid
subplot(5,1,2),
plot(zeta,tpomn), ylabel(’t_p*omega_n’), grid
subplot(5,1,3),
plot(zeta,Mp), ylabel(’Mp’), grid
subplot(5,1,4),
plot(zeta,tsomn), ylabel(’t_s*omega_n|env’),
grid,
subplot(5,1,5),
plot(zeta,essomnr), xlabel(’zeta’),
ylabel(’ess*omega_n|ramp’), grid
clear all
close all
alpha = -5;
zeta = 0.2;
wn = 10;
tau = 1/(zeta*wn);
steps = 2500;
t = linspace(0,6*tau,steps);
% 6*tau because the transient will die out in about 4-5 tau.
yleftleft = [0,0,y(1,1:size(y,2)-2)];
yleft = [0,y(1,1:size(y,2)-1)];
yright = [y(1,2:size(y,2)),0];
yrightright = [y(1,3:size(y,2)),0,0];
h = t(1,2)-t(1,1);
dybydt = (yleftleft - 8*yleft + 8*yright - yrightright)/(12*h);
tnet = t(1,3:size(t,2)-2);
ynet = y(1,3:size(y,2)-2);
yelnet = yel(1,3:size(yel,2)-2);
yehnet = yeh(1,3:size(yeh,2)-2);
dybydtnet = dybydt(1,3:size(dybydt,2)-2);
yaznet = ynet+dybydtnet/alpha;
realpartofcomplexpole = -zeta*wn
realzero = -alpha
% The default grid created by GNU Octave may not be dense enough
% for our purpose. We can have control over the location of the
% xticks and yticks as shown by the following code. If these
% commands do not work in MATLAB, then they can be commented out
% and analogous commands can be written for MATLAB.
% set(gca(),"xtick", (linspace(min(tnet),max(tnet),10)));
% all = [ynet,yelnet,yehnet,yaznet];
% set(gca(),"ytick", linspace(min(all),max(all),10));
% How can we achieve a similar control over the xticks and yticks
% in MATLAB?
% set(gca,"linewidth",1)
%
% This command is returning the message:
% warning: set: invalid property ‘linewidth’
% Maybe "linewidth" has not yet been implemented in Octave.
185
EE250 (Control Systems Analysis) IITK Lecture Notes
The m-file addpole.m helps us verify the assertions made in this section.
+
G (s) +
− K G (s)
−
K
Figure 35.1: Two block diagrams for which exist software support for the de-
termination of root loci.
wn = 10;
alpha = 1;
zeta = 0.2;
Gap = tf(wn^2*alpha,conv([1,alpha],[1,2*zeta*wn,wn^2]));
realpartofcomplexpole = -zeta*wn
realpole = -alpha
[gap,tap] = step(Gap);
[g,t] = step(tf(wn^2,[1,2*zeta*wn,wn^2]));
For
∏im=1 (s + zi )
G (s) = , where m ≤ n,
∏in=1 (s + pi )
the equation that describes the root locus is the characteristic equation
∏im=1 (s + zi )
1+K =0 (36.1)
∏in=1 (s + pi )
Root Locus Rule 2 The RL starts at K = 0 at the poles and ends at K = ∞ on the m
zeros, and n − m of its branches end at ∞.
Root Locus Rule 3 On the real axis, the RL exists only on those segments to the
right of which the sum of the number of poles and the number of zeros is odd.
189
EE250 (Control Systems Analysis) IITK Lecture Notes
Rewrite (36.1) as
∏im=1 (s + zi ) 1
n =−
∏ i =1 ( s + p i ) K
We see that when K = ∞, the roots of (36.1) are at the open-loop zeros.
This way seems to be more convincing than simply saying that Rule 2 fol-
lows from (36.1).
Root Locus Rule 6 The angles that these rays form with the real axis are
±180◦ (2q+1)
n−m , q = 0, 1, 2, . . ..
191
EE250 (Control Systems Analysis) IITK Lecture Notes
Root Locus Rule 7 The roots of multiplicity greater than one occur on the RL where
s satisfies dG/ds = 0, or, equivalently, dK/ds = 0.
193
EE250 (Control Systems Analysis) IITK Lecture Notes
Root Locus
2
1.5
Break in point
0.5
Imaginary Axis
−0.5
−1
−1.5
−2
−9 −8 −7 −6 −5 −4 −3 −2 −1 0 1
Real Axis
Figure 38.1: A root locus with break away and break in points on the real axis.
Step 2 Plug each of these roots into 1 + KG (s) = 0 and identify the root that
results in a K that is real and non-negative. Suppose s = ŝ is such a root.
Step 3 Evaluate di G/dsi at s = ŝ beginning i = 2 until we find an i for which
this derivative does not go to zero at s = ŝ. Let this value of i be î.
Step 4 The characteristic equation has î roots at s = ŝ.
An alternative to the algorithm shown in the above steps is to work with
dK/ds instead of with dG/ds. The justification for this alternative is as follows.
0 0
Suppose G (s) is of the form N (s)/D (s). Then dG/ds = N DD−2ND , where N 0 =
dN/ds and D 0 = dD/ds. Step 1 above is equivalent to solving N 0 D − ND 0 = 0.
On the other hand, the characteristic equation can be written as K = −1/G =
− D/N. Setting dK/ds = 0 gives N 0 D − ND 0 = 0. Thus, both dG/ds = 0 and
dK/ds = 0 are equivalent to N 0 D − ND 0 = 0.
Problem 38.1
1. In the above algorithm, can we also use di K/dsi instead of di G/dsi , for i =
2, . . . , î?
2. In the first algorithm, in working with dG/ds and higher derivates, our as-
sumption is that K is independent of s. On the other hand, in the alternative
algorithm, we are working with dK/ds, thus seemingly contradicting the
assumption. Explain.
We can use the idea presented in Example 1 to determine the angle of de-
parture of the RL of 1 + s(sK+2) = 0 from the two roots that are at s = −1.
Example 38.1
Demonstrate that the locus of the roots of the equation 1 + s(sK+2) = 0 begin-
ning from the roots s = −1 is the same as the locus of the roots of the equation
1 + (s+K1)2 = 0 for K ∈ [0, ∞).
K
Consider the characteristic equation 1 + s ( s +2)
= 0, which is equivalent to
the equation s2 + 2s + K = 0, which is equivalent to s2 + 2s + 1 + K − 1 = 0,
2
Imaginary Axis
−2
−4
−6
−8
−8 −6 −4 −2 0 2 4 6
Real Axis
Figure 38.2: A root locus with break away points not only on the real axis.
K −1
which is equivalent to 1 + ( s +1)2
= 0.
Therefore, both the equations 1 + = 0 and 1 + (sK+−11)2 = 0 have the
K
s ( s +2)
same RL — even when K is varied only on a subset of [0, ∞).
Therefore, the RL of 1 + s(sK+2) = 0, K ∈ [1, ∞), and the RL of 1 + (s+K̂1)2 = 0,
K̂ (= K − 1) ∈ [0, ∞), are the same.
The above method can be applied to any other characteristic equation too.
∏m (s+z )
If 1 + K ∏ni=1(s+ pi ) = 0 has the roots p̂1 , p̂2 , . . . , p̂n for some value K0 of K, then
i =1 i
∏m (s+z ) ∏m (s+z )
the RL of 1 + K ∏ni=1(s+ pi ) = 0, K ∈ [K0 , ∞), and the RL of 1 + K̂ ∏ni=1(s+ p̂i ) = 0,
i =1 i i =1 i
where K̂ (= K − K0 ) ∈ [0, ∞), are the same.
Using this idea, we see that the angle of departure of the root locus from
the root s = −1 can be calculated from the phase criterion as
Root contours
s3 + s2 + βs + α = 0 (39.1)
We wish to study how the roots of this equation behave with change in α ∈
(0, ∞) and β ∈ (0, ∞).
We could write (39.1) as
βs
1+ =0 (39.2)
s3 + s2 + α
and determine the roots of s3 + s2 + α for various values of α, thus generating
the locus of the roots of s3 + s2 + α, as shown in the upper subfigure of Fig-
ure 39.1. Then, keeping α fixed at a certain value, we could generate the root
locus of (39.2). The upper subfigure of Figure 39.2 shows a collection of root
loci of (39.2) generated in this manner. Such a collection is called root contour of
(39.2).
We could write (39.1) also as
α
1+ =0 (39.3)
s3 + s2 + βs
Problem 39.2
See Figure 39.2. It seems that the root contour of the upper subfigure shows
that even though the roots of (39.1) are unstable for large values of α, they are
stabilized by a corresponding increment in the value of β. On the other hand,
197
EE250 (Control Systems Analysis) IITK Lecture Notes
rlocus(tf(1,[1,1,0,0]))
1
Imaginary Axis
−1
−2
−3
−4
−5 −4 −3 −2 −1 0 1 2
Real Axis
rlocus(tf([1,0],[1,1,0,0]))
0.8
0.6
0.4
0.2
Imaginary Axis
−0.2
−0.4
−0.6
−0.8
−1.2 −1 −0.8 −0.6 −0.4 −0.2 0 0.2
Real Axis
Figure 39.1: The locus of the roots of s3 + s2 + α (upper subfigure), and the
locus of the roots of s3 + s2 + βs (lower subfigure).
15
10
5
Imaginary Axis
−5
−10
−15
−5 −4 −3 −2 −1 0 1 2
Real Axis
10
4
Imaginary Axis
−2
−4
−6
−8
−10
−10 −8 −6 −4 −2 0 2 4 6 8 10
Real Axis
Figure 39.2: The root contour (upper subfigure) of (39.1) rewritten as (39.2),
and the root contour (lower subfigure) of (39.1) rewritten as (39.3).
the root locus of the lower subfigure seems to show that even for large values
of β, a slight increment in the value of α could make the complex conjugate
pole pair unstable.
There probably is some error in this observation as both the root contours
eventually represent the same equation (39.1). Find this error.
Consider the control system of Figure 40.1. Discuss ways to improve its speed
of response while maintaining its overshoot at a value determined by the
damping ratio of ζ = 0.5.
201
EE250 (Control Systems Analysis) IITK Lecture Notes
Addressing nonlinearities
203
Lecture 41
Assume that G (s) in Figure 41.1 has no poles in the RHP and that the nonlin-
earity f is sector-bounded as defined in Figure 41.2. A sufficient condition for
input-output (from r1 , r2 to e1 , e2 , y1 , y2 ) stability of the system in Figure 41.1
is that the polar plot (i.e., G ( jω ), 0 ≤ ω ≤ ∞) does not enter or enclose the
circle that lies in the interval [−1/k1 , −1/k2 ] with center on the real axis in the
Nyquist plane (see Figure 41.3).
When the loop has nonlinearities in the forward path, instead of in the
feedback path as in Figure 41.1, we can use the block diagram transformations
shown in Figure 41.4 and then apply the circle criterion.
r1 e1 y1
G (s)
−
y2 e2 r2
f (·)
205
EE250 (Control Systems Analysis) IITK Lecture Notes
k2 y
f (y)
k1 y
0 y
Im
− k11 − k12
0 Re
G ( jω )
Figure 41.3: Illustration of the circle criterion. The circle’s center is on the real
axis and radius equals 1/k1 −2 1/k2 .
Figure 42.1: This anti-wind-up scheme is taken from [19]. The controller C (s)
needs to be a biproper transfer function.
209
EE250 (Control Systems Analysis) IITK Lecture Notes
PID Control
211
Lecture 43
PID Controllers
213
EE250 (Control Systems Analysis) IITK Lecture Notes
215
EE250 (Control Systems Analysis) IITK Lecture Notes
y
r + 1 T s u
kp 1 + + D Plant
− TI s τs + 1
Figure 44.1: The CL system. The ZNT methods help tune k p , TI , TD . The time
constant τ has two purposes. Firstly, it makes implementing the derivative
controller possible. Secondly, it helps create a low pass filter for high frequency
noise. τ is selected to be between 0.1TD and 0.2TD [19, page 161].
unit step response a second overshoot whose ratio to the first overshoot is 25%
[15, page 240, Figure 4.14]1 .
The ZNT rules “suggest a set of k p , TI , and TD that will give a stable oper-
ation of the system. However, the resulting system may exhibit a large maxi-
mum overshoot in the step response, which is unacceptable. In such a case we
need a series of fine tunings until an acceptable result is obtained. In fact, the
ZNT tuning rules give an educated guess for the parameter values and provide
a starting point for fine tuning, rather than giving the final settings for k p , TI
and TD .” [37].
The first method is a time-domain method, while the second is a frequency
domain method[38]. In the remainder of this section, we will describe these
methods based on [37].
Though [19, page 162] only says that the second method is valid only for
open-loop stable plants, we can see in the following that, as an “S” curve can
be obtained for only such plants, the first method too is valid only for such
plants.
Step 1: Obtain the unit step response of the open-loop (OL) plant as shown in
Figure 44.2.
ω (s) Ke− Ls
=
U (s) Ts + 1
1 Interestingly, the fifth edition of this book does not have a chapter on ZNT.
K
Unit step response of OL system
Point of inflexion
0 t
L T
Figure 44.2: Unit step response of the plant is needed for the first ZNT method.
This response is also known as the reaction curve of the plant. As the first ZNT
method uses these curves, the first method is also known as reaction curve
method. See [19, page 167] for an alternative way of obtaining the reaction
curve.
Table 44.1: ZNT rules for the First ZNT method [37, 38].
Type of controller kp Ti TD
T
P ∞ 0
LK
0.9T L
PI 0
LK 0.3
1.2T
PID 2L 0.5L
LK
Table 44.2: ZNT rules for the Second ZNT method [37, 38].
Type of controller kp Ti TD
P 0.5k cr ∞ 0
PI 0.45k cr (1/1.2) Pcr 0
PID 0.6k cr 0.5Pcr 0.125Pcr
Example 44.1
Take the plant transfer function as 1/(s + 1)3 , but assuming that you do not
know what it is, use the ultimate gain method to tune the three controllers.
The results are shown in Figure 44.3
Problem 44.1
Consider the first of the two simulink files that I gave you,
goodwin_ex_ultimate_gain.mdl and goodwin_ex_reaction_curve.mdl.
Theoretically determine the value of the critical gain, the value of the critical
period, and the values of the closed-loop poles corresponding to this critical
period.
0
0 2 4 6 8 10 12 14 16 18 20
0
0 2 4 6 8 10 12 14 16 18 20
0
0 2 4 6 8 10 12 14 16 18 20
0
0 2 4 6 8 10 12 14 16 18 20
Time
Figure 44.3: Results from tuning using the ultimate gain method.
[1] Lalit mestha [people in control]. Control Systems Magazine, IEEE, 30(6):38
–41, December 2010.
[2] Eric Paljug and Xiaoping Yun. Experimental study of two robot arms ma-
nipulating large objects. IEEE Transactions on Control Systems Technology,
3(2):177–188, June 1995.
[3] Dong Sun, James K. Mills, and Yunhui Liu. Position control of robot ma-
nipulators manipulating a flexible payload. The International Journal of
Robotics Research, 18(3):319 – 332, March 1999.
[8] Harold S. Black. Inventing the negative feedback amplifier. IEEE Spec-
trum, pages 55 – 60, December 1977.
221
EE250 (Control Systems Analysis) IITK Lecture Notes
[11] Gregory Walter Evans. Bringing root locus to the classroom: The story of
Walter R. Evans and his textbook Control-System Dynamics. IEEE Control
Systems Magazine, pages 74 – 81, December 2004.
[12] H.L. Hazen. Theory of servo-mechanisms. Journal of the Franklin Institute,
218(3):279 – 331, September 1934.
[13] Paul J. Nahin. Behind the Laplace transform. IEEE Spectrum, pages 60 –
60, March 1991.
[14] Katsuhiko Ogata. Modern Control Engineering. Prentice-Hall, Inc., 2nd edi-
tion, 1990. Later editions available in India.
[15] Gene F. Franklin, J. David Powell, and Abbas Emami-Naeini. Feedback
Control of Dynamic Systems. Pearson Education, fourth edition, 2002.
[16] William G. Vogt and Mohamed I. Younis. Straight-line approximations
for phase-angle plots. IEEE Tranasactions on Education, pages 249 – 252,
December 1968.
[17] Jr. Thomas F. Schubert. A quantitative comparison of three bode straight-
line phase approximations for second-order, underdamped systems. IEEE
Tranasactions on Education, 40(2):135 – 138, May 1997.
[18] Rodger E. Ziemer, William H. Tranter, and D. R. Fannin. Signals and Sys-
tems: Continuous and Discrete. Prentice Hall, fourth edition, 1998.
[19] Graham C. Goodwin, Stefan F. Graebe, and Mario E. Salgado. Control
System Design. Prentice-Hall, 2001.
[20] Issac M. Horowitz. Synthesis of Feedback Systems. Academic Press Inc.,
1963.
[21] Boris J. Lurie and Paul J. Enright. Classical Feedback Control. CRC Press,
2012.
[22] Gene F. Franklin, J. David Powell, and Abbas Emami-Naeini. Feedback
Control of Dynamic Systems. Pearson Education, fifth edition, 2006.
[23] Madan Gopal. Control Systems — Principles and Design. Tata McGraw-Hill,
3rd edition, 2008.
[24] Thomas Kailath. Linear Systems. Prentice-Hall, Inc., 1980.
[25] Alan V. Oppenheim and Alan S. Willsky. Signals and Systems. Prentice
Hall of India, 2nd edition, 1997.
[26] Hubert M. James, Nathaniel B. Nichols, and Ralph S. Phillips, editors. The-
ory of servomechanisms. McGraw-Hill Book Company, 1947.
[27] L.A. MacColl. Fundamental theory of servomechanisms. Van Nostrand,
Princeton, NJ, USA, 1945.
[28] K.J. Astrom. Regeneration Theory: H. Nyquist. In Tamer Basar, editor,
Control Theory: Twenty-Five Seminal Papers (1932-1981). Wiley-IEEE Press,
2000.
[30] Farid Golnaraghi and Benjamin C. Kuo. Automatic Control System. John
Wiley & Sons, Inc., 2010.
[31] Ram P. Kanwal. Generalized functions: theory and technique. Academic press,
Inc. (London) Ltd., 1983.
[32] Kent H. Lundberg, Haynes R. Miller, and David L. Trumper. Initial con-
ditions, generalized functions, and the Laplace transform: Troubles at the
origin. IEEE Control Systems Magazine, pages 22 – 35, February 2007.
[33] Chi-Tsong Chen. Linear system theory and design. Oxford University Press,
Inc., 3rd edition, 1999.
[34] Feynman, Leighton, and Sands. The Feynmann Lectures on Physics. Narosa,
India, 2003. Copyright
1963
c by Addison-Wesley Publishing Company,
Inc.
[35] Cleve Moler. Numerical Computing with MATLAB. Society for Industrial
and Applied Mathematics, 2004. The electronic version of this book can be
downloaded from http://www.mathworks.com/moler/chapters.html.
[36] Torkel Glad and Lennart Ljung. Control Theory: Multivariable and Nonlinear
methods. Taylor & Francis, 2000.
[37] Katsuhiko Ogata. Modern Control Engineering. Pearson Education, fourth
edition, 2002. Available in India.
[38] Tore Hägglund and Karl J. Åström. Automatic tuning of PID controllers.
In William S. Levine, editor, The Control Handbook, pages 817 – 826. CRC
Press LLC, 1996.