You are on page 1of 22

EPE2300

Control Engineering
Lecture 8: Controller Design using Root Locus
Dr. Khalid ABIDI
Objectives
Students will be introduced to:
• Basic Controller Design using Root Locus approach.
• Design of Lead Compensators using Root Locus approach.
• Design of Lag Compensators using Root Locus approach.
Recap
The Root Locus is the path of the roots of the characteristic equation traced out in
the s-plane as a system parameter is changed.
Root Locus

Example 1

𝑘𝑘 𝑠𝑠 2 + 2𝑠𝑠 + 2 0.5
𝐺𝐺𝑂𝑂𝑂𝑂 = 3
𝑠𝑠 + 6𝑠𝑠 2 + 11𝑠𝑠 + 6

Imaginary Axis
0

-0.5

-1

-4.5 -4 -3.5 -3 -2.5 -2 -1.5 -1 -0.5 0


Real Axis
Basic Controller Design
Controller design is the process of calculating the controller gain(s) such that the
desired performance characteristics are achieved. Those performance
characteristics are the rise-time, peak-time, settling-time, maximum overshoot, etc.

Recall that the performance characteristics of a system depend on the closed-loop


poles, therefore, if we can set the values of the closed-loop poles such that they
satisfy the performance characteristics then the controller design task is achieved.

A set of poles that satisfy the desired characteristic performance is a called a set of
desired poles.
Basic Controller Design
In some cases, the desired closed-loop poles may lie on the root locus of a system
that uses the basic controller 𝐺𝐺𝑐𝑐 = 𝑘𝑘. In such a case, the design process involves
using the magnitude condition to determine the value of 𝑘𝑘.

Example
Determine the controller gain 𝑘𝑘 such that system with the OL TF given as
𝑘𝑘
𝐺𝐺OL 𝑠𝑠 = 2
𝑠𝑠 + 2𝑠𝑠 + 2
has the desired closed-loop poles with the values 𝑠𝑠 = −1 ± 𝑗𝑗2.
Recap
Recall the root locus of this system is shown in the figure below. It is clear that the
desired closed-loop poles are on the root-locus.

Using the magnitude condition Root Locus


5

𝑘𝑘
2
=1
𝑠𝑠 + 2𝑠𝑠 + 2 𝑠𝑠=−1+𝑗𝑗2 𝑠𝑠 = −1 ± 𝑗𝑗𝑗
𝑘𝑘

Imaginary Axis
2
=1 0
𝑠𝑠 + 1 + 1 𝑠𝑠=−1+𝑗𝑗2
𝑘𝑘 𝑘𝑘
2
= =1
−1 + 𝑗𝑗2 + 1 + 1 −4 + 1
-5
-1.6 -1.4 -1.2 -1 -0.8 -0.6 -0.4 -0.2 0
𝑘𝑘 = 3 Real Axis
Lead or Lag Controller Design
Sometimes using the basic controller 𝐺𝐺𝑐𝑐 = 𝑘𝑘 , does not lead to the desired
performance no matter what value of the gain 𝑘𝑘 is selected. In that case we need
to check if
• the steady state performance is satisfactory, but the dynamic performance is not,
• the dynamic performance is satisfactory, but the steady state performance is not,
• both dynamic and steady state performance is not satisfactory.
Lead Controller Design
If the steady state performance is satisfactory, but the dynamic performance is not.
This means that the desired closed-loop poles are not on the root locus using the
basic controller 𝐺𝐺𝑐𝑐 = 𝑘𝑘. We need to change the shape of the root-locus such that
the desired closed-loop poles will be on the modified root locus.

This is achieved by using a Lead Controller given as


𝑠𝑠 + 𝑎𝑎
𝐺𝐺𝑐𝑐 (𝑠𝑠) = 𝑘𝑘𝑐𝑐 where 𝑏𝑏 > 𝑎𝑎
𝑠𝑠 + 𝑏𝑏
where 𝑘𝑘𝑐𝑐 , 𝑎𝑎 and 𝑏𝑏 are the controller gains that need to be designed.
• This controller will add an additional OL pole (𝑠𝑠 = −𝑏𝑏) and OL zero (𝑠𝑠 = −𝑎𝑎) to
the system.
• The new OL zero will be on the right-hand side of the new OL pole.
Lead Controller Design
Example
Desing a controller for the system given as
4
𝐺𝐺 𝑠𝑠 =
𝑠𝑠 𝑠𝑠 + 2
Such that the closed-loop system has a damping factor of 𝜁𝜁 = 0.5 and a natural
frequency of 𝜔𝜔𝑛𝑛 = 4 rad/s.
Lead Controller Design
The block diagram of the system is shown in the
figure. The first step is to select a basic controller, 𝑅𝑅(𝑠𝑠) +_ 𝐺𝐺𝑐𝑐 𝐺𝐺(𝑠𝑠)
𝐶𝐶(𝑆𝑆)
𝐺𝐺𝑐𝑐 = 𝑘𝑘, and check if it can satisfy our requirements.

Note that the design requirement is given in terms


of 𝜁𝜁 and 𝜔𝜔𝑛𝑛 . These will need to be converted to pole
locations (values) using the formula

𝑠𝑠 = −𝜁𝜁𝜔𝜔𝑛𝑛 ± 𝜔𝜔𝑛𝑛 𝜁𝜁 2 − 1 = −0.5 × 4 ± 4 0.52 − 1


𝑠𝑠 = −2 ± 𝑗𝑗2 3
Next step is to check whether those points are on
the root locus or not.
Lead Controller Design
We will use the angle condition to check if the
5 jω

point 𝑠𝑠 = −2 + 𝑗𝑗2 3 is on the root locus or not.


4

� − � = ±180o 2𝑛𝑛 + 1 𝑗𝑗𝜔𝜔 𝑑𝑑


3
= 𝑗𝑗𝜔𝜔 𝑛𝑛 1 − 𝜁𝜁 2
𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑧𝑧𝑧𝑧𝑧𝑧𝑧𝑧 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎

𝜃𝜃1 = 90o
2

2 3
𝜃𝜃2 = 180o
− atan = 120o
2 1

90o + 120o − 0
� = 210o ≠ 180o
𝜃𝜃1 𝜃𝜃2
𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑧𝑧𝑧𝑧𝑧𝑧𝑧𝑧 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 σ
X X
The desired poles are not on the root locus.
0
-3 -2 -1 0 1

−𝜁𝜁𝜔𝜔𝑛𝑛
-1
Lead Controller Design
We will use a Lead controller to change the shape of the
root locus such that the modified root locus will pass
through the points 𝑠𝑠 = −2 ± 𝑗𝑗2 3. The design steps are
as follows:
1. Place the controller zero on the real part of the
desired closed loop pole, i.e., 𝑎𝑎 = −2. It is possible to 𝜃𝜃3 𝜃𝜃1 ,𝜙𝜙1 𝜃𝜃2
place it anywhere else, however, this is the most X 0
convenient location.
2. Apply the angle condition to determine the location of
the controller pole 𝑠𝑠 = −𝑏𝑏.
𝜃𝜃1 + 𝜃𝜃2 + 𝜃𝜃3 − 𝜙𝜙1
� = 90o + 120o + 𝜃𝜃3 − 90o
𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑧𝑧𝑧𝑧𝑧𝑧𝑧𝑧 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎
= 180o
𝜃𝜃3 = 60o
Lead Controller Design
2. (contd.)
2 3
= tan 60o ⟹ 𝑏𝑏 = 4
𝑏𝑏 − 2
3. Apply magnitude condition to calculate 𝑘𝑘𝑐𝑐 .
𝑠𝑠 + 𝑎𝑎 4
𝑘𝑘𝑐𝑐 × =1 𝜃𝜃3 𝜃𝜃1 ,𝜙𝜙1 𝜃𝜃2
𝑠𝑠 + 𝑏𝑏 𝑠𝑠 𝑠𝑠 + 2 𝑠𝑠=−2+𝑗𝑗2 3 X 0
𝑠𝑠 + 2 4 4
𝑘𝑘𝑐𝑐 × = 𝑘𝑘𝑐𝑐
𝑠𝑠 + 4 𝑠𝑠 𝑠𝑠 + 2 𝑠𝑠=−2+𝑗𝑗2 3 𝑠𝑠 𝑠𝑠 + 4 𝑠𝑠=−2+𝑗𝑗2 3
=1
4𝑘𝑘𝑐𝑐 4𝑘𝑘𝑐𝑐 4𝑘𝑘𝑐𝑐
= 2 = 16 = 1
−2 + 𝑗𝑗2 3 2 + 𝑗𝑗2 3 22 − 𝑗𝑗2 3

𝑘𝑘𝑐𝑐 = 4
Lead Controller Design
Therefore, the controller that needs to be used to achieve the desired performance
characteristics is given as
𝑠𝑠 + 2
𝐺𝐺𝑐𝑐 (𝑠𝑠) = 4
𝑠𝑠 + 4
Lag Controller Design
If the dynamic performance is satisfactory, but the steady state performance is not.
This means that the desired closed-loop poles are on the root locus using the basic
controller 𝐺𝐺𝑐𝑐 = 𝑘𝑘. However, the gain associated with the desired closed-loop pole
is not satisfactory and must be increased (ideally).

This is achieved by using a Lag Controller given as


𝑠𝑠 + 𝑎𝑎
𝐺𝐺𝑐𝑐 (𝑠𝑠) = 𝑘𝑘𝑐𝑐 where 𝑎𝑎 > 𝑏𝑏
𝑠𝑠 + 𝑏𝑏
where 𝑘𝑘𝑐𝑐 , 𝑎𝑎 and 𝑏𝑏 are the controller gains that need to be designed.
• This controller will add an additional OL pole (𝑠𝑠 = −𝑏𝑏) and OL zero (𝑠𝑠 = −𝑎𝑎) to
the system, just like the Lead controller.
• The new OL pole will be on the right-hand side of the new OL zero.
Lag Controller Design
Example
Desing a controller for the system given as
4
𝐺𝐺 𝑠𝑠 =
𝑠𝑠 𝑠𝑠 + 2
Such that the closed-loop system has a damping factor of 𝜁𝜁 = 0.5, a natural
frequency of 𝜔𝜔𝑛𝑛 = 2 rad/s and a static velocity gain of 𝑘𝑘𝑣𝑣 = 20.
Lag Controller Design
The block diagram of the system is shown in the
figure. The first step is to select a basic controller, 𝑅𝑅(𝑠𝑠) +_ 𝐺𝐺𝑐𝑐 𝐺𝐺(𝑠𝑠)
𝐶𝐶(𝑆𝑆)
𝐺𝐺𝑐𝑐 = 𝑘𝑘, and check if it can satisfy our requirements.

Note that the design requirement is given in terms


of 𝜁𝜁 and 𝜔𝜔𝑛𝑛 . These will need to be converted to pole
locations (values) using the formula

𝑠𝑠 = −𝜁𝜁𝜔𝜔𝑛𝑛 ± 𝜔𝜔𝑛𝑛 𝜁𝜁 2 − 1 = −0.5 × 2 ± 2 0.52 − 1


𝑠𝑠 = −1 ± 𝑗𝑗 3
Next step is to check whether those points are on
the root locus or not.
Lag Controller Design
We will use the angle condition to check if the jω
point 𝑠𝑠 = −1 + 𝑗𝑗1 3 is on the root locus or not.

� − � = ±180o 2𝑛𝑛 + 1
𝑗𝑗𝜔𝜔 𝑑𝑑
= 𝑗𝑗𝜔𝜔 𝑛𝑛 1 − 𝜁𝜁 2
𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑧𝑧𝑧𝑧𝑧𝑧𝑧𝑧 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎

3
𝜃𝜃1 = atan = 60o 𝜃𝜃1 𝜃𝜃2
1
X X σ

o
3
𝜃𝜃2 = 180 − atan = 120o −𝜁𝜁𝜔𝜔𝑛𝑛
1
60o + 120o − 0
� = 180o
𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑧𝑧𝑧𝑧𝑧𝑧𝑧𝑧 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎
The desired poles are on the root locus.
Lag Controller Design
Since, the design requirement includes the static velocity gain, we need to check if
the gain requirement is satisfied by the basic controller as well. To check this, we
need to use the magnitude condition.
4𝑘𝑘
=1
𝑠𝑠 𝑠𝑠 + 2 𝑠𝑠=−1+𝑗𝑗 3

𝑘𝑘 4𝑘𝑘 4𝑘𝑘
= 2 = =1
−1 + 𝑗𝑗 3 1 + 𝑗𝑗 3 12 − 𝑗𝑗 3 4

𝑘𝑘 = 1
4𝑘𝑘 4
𝑘𝑘𝑣𝑣 = lim 𝑠𝑠𝐺𝐺𝑂𝑂𝑂𝑂 𝑠𝑠 = lim 𝑠𝑠 × = lim = 2 ≠ 20
𝑠𝑠→0 𝑠𝑠→0 𝑠𝑠 𝑠𝑠 + 2 𝑠𝑠→0 𝑠𝑠 + 2
The static velocity gain needs to be increased by a multiple of 10.
Lag Controller Design
We will use a Lag controller to keep the shape of the root locus while increasing the
gain at the points 𝑠𝑠 = −1 ± 𝑗𝑗 3. The design steps are as follows:
1. Choose 𝑎𝑎 and 𝑏𝑏 such that the ratio 𝑎𝑎⁄𝑏𝑏 is equal to the amount by which we
want to increase the gain. To keep the shape of the root locus, the new OL pole
− 𝑏𝑏 must be very close to the imaginary axis. Therefore,
𝑎𝑎
−𝑏𝑏 = 0.001 & = 10 ⟹ 𝑎𝑎 = 0.01
𝑏𝑏
2. Apply magnitude condition to calculate 𝑘𝑘𝑐𝑐 .
𝑠𝑠 + 𝑎𝑎 4
𝑘𝑘𝑐𝑐 × =1
𝑠𝑠 + 𝑏𝑏 𝑠𝑠 𝑠𝑠 + 2 𝑠𝑠=−1+𝑗𝑗 3

𝑠𝑠 + 0.01 4 −0.99 + 𝑗𝑗 3 4
𝑘𝑘𝑐𝑐 × = 𝑘𝑘𝑐𝑐 ×
𝑠𝑠 + 0.001 𝑠𝑠 𝑠𝑠 + 2 𝑠𝑠=−1+𝑗𝑗 3 −0.999 + 𝑗𝑗 3 −1 + 𝑗𝑗 3 1 + 𝑗𝑗 3
= 1 ⟹ 𝑘𝑘𝑐𝑐 ≈ 1
Lag Controller Design
Therefore, the controller that needs to be used to achieve the desired performance
characteristics is given as
𝑠𝑠 + 0.01
𝐺𝐺𝑐𝑐 (𝑠𝑠) = 1
𝑠𝑠 + 0.001

𝑠𝑠 + 0.01 4
𝑘𝑘𝑣𝑣 = lim 𝑠𝑠𝐺𝐺𝑂𝑂𝑂𝑂 𝑠𝑠 = lim 𝑠𝑠 × × = 20
𝑠𝑠→0 𝑠𝑠→0 𝑠𝑠 + 0.001 𝑠𝑠 𝑠𝑠 + 2
The gain requirement is satisfied.
Lead-Lag Controller Design
If both the dynamic performance and the steady state performance are not
satisfactory. This means that the desired closed-loop poles are not on the root
locus using the basic controller 𝐺𝐺𝑐𝑐 = 𝑘𝑘 as well as the gain is not sufficient.

This is achieved by using a Lead Controller given as


𝑠𝑠 + 𝑎𝑎1 𝑠𝑠 + 𝑎𝑎2
𝐺𝐺𝑐𝑐 𝑠𝑠 = 𝑘𝑘𝑐𝑐 � where 𝑏𝑏1 > 𝑎𝑎1 & 𝑏𝑏2 < 𝑎𝑎2
𝑠𝑠 + 𝑏𝑏1 𝑠𝑠 + 𝑏𝑏2
where 𝑘𝑘𝑐𝑐 , 𝑎𝑎1 , 𝑎𝑎2 , 𝑏𝑏1 and 𝑏𝑏2 are the controller gains that need to be designed.
• The Lead controller parameters 𝑎𝑎1 and 𝑏𝑏1 are designed first to satisfy the desired
poles.
• The Lag controller parameters 𝑘𝑘𝑐𝑐 , 𝑎𝑎2 and 𝑏𝑏2 are designed to satisfy the gain
requirements.

You might also like