Automatic Control: AEM224
Controller Design Using Root-Locus Techniques
Controllers types presented:
1. P controller to achieve desired %OS (i.e. ζ)
2. PD controller ,, ,, ,, ,, ,, ,, ,, ,, ,, transient response Ts & %OS (i.e. ζ & ωn)
3. Lead compensator ,, ,, ,, ,, ,, ,, ,, ,, ,, transient response Ts & %OS (i.e. ζ & ωn)
4. PI controller ,, ,, ,, ,, ,, ,, ,, ,, ,, steady state error Ess (i.e. Kp)
5. Lag compensator ,, ,, ,, ,, ,, ,, ,, ,, ,, steady state error Ess (i.e. Kp)
6. PID controller ,, ,, ,, ,, ,, ,, ,, ,, ,, transient response and steady state error Ts ,
%OS & Ess (i.e. ζ , ωn , Kp)
7. Lead-Lag compensator ,, ,, ,, ,, ,, ,, ,, ,, ,, transient response and steady state
error Ts , %OS & Ess (i.e. ζ , ωn , Kp)
The second order approximation:
The formulas describing percent overshoot, settling time, and peak time were derived
only for a system with two closed-loop complex poles and no closed-loop zeros. The
conditions justifying a second-order approximation to a closed loop transfer function in the
presence of additional poles and zeros are restated here:
1. Higher-order poles are much farther into the left half of the s-plane than the dominant
second-order pair of poles.
.
2. Closed-loop zeros near the closed-loop second-order pole pair are nearly canceled by
the close proximity of higher-order closed-loop poles.
3. Closed-loop zeros not canceled by the close proximity of higher-order closed-loop
poles are far removed from the closed-loop second-order pole pair.
Our general second-order transfer function
𝜔𝑛 2
𝐺(𝑠) = 2
𝑠 + 2𝜁𝜔𝑛 𝑠 + 𝜔𝑛 2
Solving for the poles of the transfer function
𝑠1,2 = −𝜁𝜔𝑛 ± 𝜔𝑛 √𝜁 2 − 1𝑗
Peak time, Tp
𝜋 𝜋
𝑇𝑃 = =
𝜔𝑑 𝜔𝑛 √1 − 𝜁 2
Percent overshoot, %OS
𝜋𝜁
−
%𝑂𝑆 = 𝑒 √1−𝜁 2 ∗ 100
Settling time, Ts
4
𝑇𝑠 =
𝜁𝜔𝑛
Design steps
P controller
𝐺𝑐 (𝑠) = 𝐾
Given:
• Open loop TF G(s)
• Desired %OS (i.e. ζ)
Required:
• Value of K
Solution:
• Sketch the Root Locus of the open loop TF
• Draw the lines representing the required ζ , the intersection of those lines with the root
locus are the desired locations of the dominant closed loop poles
𝑠1,2 𝑑𝑒𝑠𝑖𝑟𝑒𝑑 = −𝑎 ± 𝑏𝑗
∅ = cos−1 (𝜁)
𝑏 = 𝑎 ∗ tan(∅)
𝑠1,2 𝑑𝑒𝑠𝑖𝑟𝑒𝑑 = 𝑎(−1 ± tan(∅) 𝑗)
• Use the phase condition to find the value of (𝑎)
⦟𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 ) = 180
• Using trigonometry, Find expression for the phase contribution of G(s) at the point
Sdesired in terms of (𝑎) , equating to 180 and solve for (𝑎), so Sdesired is found
• Use the magnitude condition to find the value of the gain K that put the closed loop
poles at Sdesired
|𝐾𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 )| = 1
1
𝐾=
|𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 )|
PD controller
𝐺𝑐 (𝑠) = 𝐾(𝑠 + 𝑧)
Given:
• Open loop TF G(s)
• Desired Ts & %OS (i.e. ζ & ωn)
Required:
• Value of K & Z
Solution:
• From desired Ts & %OS get ζ & ωn
• From ζ & ωn get the position of the desired closed loop poles
𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 1,2 = −𝜁𝜔𝑛 ± 𝜔𝑛 √𝜁 2 − 1𝑗
• Sketch the Root Locus of G(s) check that it does not pass by Sdesired
• Calculate the phase contribution of G(s) at Sdesired using trigonometry
⦟𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 ) = 𝐴 ≠ 180
• Calculate the deficiency angle ∅ which should be the phase contribution of the
compensator zero (z) at Sdesired
∅ = 180 − 𝐴
• Using trigonometry, Find expression for the phase contribution of G(s) at the point
Sdesired in terms of (𝑧)which is the location of the compensators zero (z), equating to ∅
and solve for (𝑧)
𝜔𝑑
tan(∅) =
𝑧 − 𝜁𝜔𝑛
• Use the magnitude condition to find the value of the gain K that put the closed loop
poles at Sdesired
|𝐾𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 )| = 1
1
𝐾=
|𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 )|
Lead compensator
𝑠+𝑧
𝐺𝑐 (𝑠) = 𝐾 , 𝑝>𝑧
𝑠+𝑝
Given:
• Open loop TF G(s)
• Desired Ts & %OS (i.e. ζ & ωn)
Required:
• Values of K ,P, Z
Solution:
• From desired Ts & %OS get ζ & ωn
• From ζ & ωn get the position of the desired closed loop poles
𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 1,2 = −𝜁𝜔𝑛 ± 𝜔𝑛 √𝜁 2 − 1𝑗 = −𝑎 ± 𝑏𝑗
• Sketch the Root Locus of G(s) check that it does not pass by Sdesired
• Calculate the phase contribution of G(s) at Sdesired using trigonometry
⦟𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 ) = 𝐴 ≠ 180
• Calculate the deficiency angle ∅ which should be the phase contribution of the
compensator pole (p) and zero (z) at Sdesired
∅ = 180 − 𝐴 = 𝜃𝑧 − 𝜃𝑝
• Choose the zeros position arbitrarily (z), and so its phase contribution 𝜃𝑧 at Sdesired can
be calculated by trigonometry, find the phase contribution 𝜃𝑝 of the compensator pole
(p)
• Find the location of the compensators pole (p)
𝑏
tan(𝜃𝑝 ) =
𝑝−𝑎
• Use the magnitude condition to find the value of the gain K that put the closed loop
poles at Sdesired
|𝐾𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 )| = 1
1
𝐾=
|𝐺(𝑠𝑑𝑒𝑠𝑖𝑟𝑒𝑑 )|
PI controller
(𝑠 + 𝑧)
𝐺𝑐 (𝑠) =
𝑠
Given:
• Open loop TF G(s)
• Desired Ess (i.e.Kp)
Required:
• Value of Z
Solution:
• From desired Ess for ramp input get the desired error constant Kvdesired
• Calculate the error constant of the open loop transfer function Kp
• Calculate the position of the controller's zero (z)
𝑠+𝑧
lim 𝑠 ∗ ∗ 𝐺(𝑠) = 𝐾𝑣𝑑𝑒𝑠𝑖𝑟𝑒𝑑
𝑠→0 𝑠
𝑧 ∗ 𝐾𝑝 = 𝐾𝑣𝑑𝑒𝑠𝑖𝑟𝑒𝑑
Lag compensator
𝑠+𝑧
𝐺𝑐 (𝑠) = , 𝑧>𝑝
𝑠+𝑝
Given:
• Open loop TF G(s)
• Desired Ess (i.e.Kp)
Required:
• Value of P,Z
Solution:
• From desired Ess for step input get the desired error constant Kpdesired
1
𝐸𝑠𝑠 =
1 + 𝐾𝑝𝑑𝑒𝑠𝑖𝑟𝑒𝑑
• Calculate the error constant of the open loop transfer function Kp
𝐾𝑝 = lim 𝐺(𝑠)
𝑠→0
• Calculate the ratio of the position of the controller's zero (z) over the controller's pole
(p)
𝑠+𝑧 𝑧
lim ∗ 𝐺(𝑠) = ∗ 𝐾𝑝 = 𝐾𝑝𝑑𝑒𝑠𝑖𝑟𝑒𝑑
𝑠→0 𝑠 + 𝑝 𝑝
• Choose the position of the pole (p) arbitrarily it should be very close to the origin, and
so the position of the zero (z) can be calculated
PID controller
𝑠 + 𝑧2 𝐾1 (𝑠 2 + 𝐾2 𝑠 + 𝐾3 )
𝐺𝑐 (𝑠) = 𝐾(𝑠 + 𝑧1 ) =
𝑠 𝑠
Given:
• Open loop TF G(s)
• Desired Ts , %OS & Ess (i.e. ζ , ωn , Kp)
Required:
• Value of K1, K2, K3
Solution:
• Design a PD controller using the desired Ts , %OS
𝐺𝑃𝐷 (𝑠) = 𝐾(𝑠 + 𝑧1 )
• The new transfer function Gnew(s) = GPD(s)*G(s)
• Design a PI controller for Gnew(s) using the desired Ess
𝑠 + 𝑧2
𝐺𝑃𝐼 (𝑠) =
𝑠
• Find the PID transfer function
𝐺𝑃𝐼𝐷 (𝑠) = 𝐺𝑃𝐷 (𝑠)𝐺𝑃𝐼 (𝑠)
Lead-Lag compensator
𝑠 + 𝑧𝑙𝑒𝑎𝑑 𝑠 + 𝑧𝑙𝑎𝑔
𝐺𝑐 (𝑠) = 𝐾 ∗ ∗
𝑠 + 𝑝𝑙𝑒𝑎𝑑 𝑠 + 𝑝𝑙𝑎𝑔
Given:
• Open loop TF G(s)
• Desired Ts , %OS & Ess (i.e. ζ , ωn , Kp)
Required:
• Value of K, Zlead, Plead, Zlag, Plag
Solution:
• Design a Lead compensator using the desired Ts , %OS
𝑠 + 𝑧𝑙𝑒𝑎𝑑
𝐺𝑙𝑒𝑎𝑑 (𝑠) = 𝐾
𝑠 + 𝑝𝑙𝑒𝑎𝑑
• The new transfer function Gnew(s) = Glead(s)*G(s)
• Design a Lag controller for Gnew(s) using the desired Ess
𝑠 + 𝑧𝑙𝑎𝑔
𝐺𝑙𝑎𝑔 (𝑠) =
𝑠 + 𝑝𝑙𝑎𝑔
• Find the Lead-Lag transfer function
𝐺𝑐 (𝑠) = 𝐺𝑙𝑒𝑎𝑑 (𝑠)𝐺𝑙𝑎𝑔 (𝑠)