In the print window, choose “Save as PDF” to keep a copy on your device.
1Formulas and methods
Stability: Routh–Hurwitz & root locus
Stability
all roots of the characteristic polynomial in the left half-plane
Routh array, s¹ entry of a cubic
b1 = (a2a1 − a3a0)/a2
Right half-plane roots
number of sign changes in the first column
Cubic s³ + a₂s² + a₁s + a₀
stable when all a > 0 and a₂·a₁ > a₀
K/(s(s + a)(s + b))
Kmax = ab(a + b), ω = √(ab)
Characteristic equation
1 + K·G(s) = 0
Asymptotes
σa = (Σp − Σz)/(n − m), θ = (2q + 1)·180°/(n − m)
Break-away and break-in points
dK/ds = 0
Magnitude condition
K = 1/|G(s)|
Angle of departure
θd = 180° − Σ∠(from other poles) + Σ∠(from zeros)
Method
Write the closed-loop characteristic polynomial: the denominator of 1 + K·G(s) = 0, multiplied out.
Put the coefficients alternately into the first two rows of the Routh array and build the remaining rows.
Count the sign changes in the first column: each one is a pole in the right half-plane. With K in the array, demand that every first-column entry stays positive.
For a root locus, mark the poles and zeros, the real-axis segments, the asymptotes from the centroid and the break points where dK/ds = 0. Use K = 1/|G(s)| for the gain at a point.
Steady-state error & PID control
System type
number of poles of G(s) at s = 0
Error constants
Kp = lim G(s), Kv = lim s·G(s), Ka = lim s²·G(s) (s → 0)
Step A
ess = A/(1 + Kp)
Ramp A·t
ess = A/Kv
Parabola A·t²/2
ess = A/Ka
PID controller
C(s) = Kp + Ki/s + Kd·s
Second-order target
s² + 2ζωns + ωn²
Overshoot and timing
%OS = 100·e−ζπ/√(1−ζ²), tp = π/ωd, ts ≈ 4/(ζωn)
Method
Count the poles of the open loop C(s)·G(s) at s = 0: that is the system type.
Work out the error constant that matches the input: Kp for a step, Kv for a ramp, Ka for a parabola.
Apply ess = A/(1 + Kp), A/Kv or A/Ka, or solve it for the gain you need.
For a damping or speed specification, write the closed-loop characteristic polynomial and match it with s² + 2ζω_n·s + ω_n².
2Practice problems
1.Step responseMedium
A system has the transfer function G(s) = 44/(s² + 7s + 44) and receives a unit step input. Find the 2 % settling time ts of the step response, using ts ≈ 4/(ζωₙ).
G(s) = 44/(s² + 7s + 44)
ts = s
2.Step responseHard
A mass m = 8 kg hangs on a spring k = 1000 N/m with a viscous damper c = 89 N·s/m (m·x″ + c·x′ + k·x = F). At rest in equilibrium, a constant force F = 25 N is suddenly applied. Find the largest displacement xmax in mm.
m = 8 kgk = 1000 N/mc = 89 N·s/mF = 25 N
xmax = mm
3.Bode plots & marginsMedium
Find the exact magnitude |G(jω)| of G(s) = 1134/((s + 9)(s + 18)) at ω = 1 rad/s, in dB.
G(s) = 1134/((s + 9)(s + 18))ω = 1 rad/s
|G(jω)| = dB
4.Bode plots & marginsHard
A unity-feedback loop has the open-loop transfer function L(s) = 22/(s(s + 4)). Find the phase margin PM in degrees.
L(s) = 22/(s(s + 4))
PM = °
5.Stability: Routh–Hurwitz & root locusMedium
The loop in the diagram runs with K = 1.2 and L(s) = K/(s(s + 1)(s + 2)). By what factor m can the gain be raised before the closed loop becomes unstable?
L(s) = K/(s(s + 1)(s + 2))K = 1.2
m =
6.Stability: Routh–Hurwitz & root locusHard
The root locus of L(s) = K/(s(s + 2)(s + 10)) leaves the real axis between s = 0 and s = −2. Find the break-away point sb.
L(s) = K/(s(s + 2)(s + 10))
sb =
7.Steady-state error & PID controlMedium
The input r(t) = 1 + 5t (a step plus a ramp) is applied to a unity-feedback loop with G(s) = 10(s + 3)/(s(s + 2)(s + 10)). Find the steady-state error ess.
G(s) = 10(s + 3)/(s(s + 2)(s + 10))r(t) = 1 + 5t
ess =
8.Steady-state error & PID controlHard
A proportional controller K = 20 drives the plant G(s) = 2/(s(s + 10)) in a unity-feedback loop. Find the 2 % settling time ts of the step response, using ts ≈ 4/(ζωₙ).
G(s) = 2/(s(s + 10))K = 20
ts = s
9.Block diagramsMedium
The plant G(s) = 9/(s + 6) has an inner (minor) negative feedback loop with gain H₁ = 5. A controller gain K = 16 and an outer unity negative feedback loop close the system. Find the closed-loop pole p.
G(s) = 9/(s + 6)H₁ = 5K = 16
p =
10.Block diagramsHard
The plant G(s) = 74/(s(s + 8)) is in a negative feedback loop with sensor gain H = 1. The closed-loop poles are complex. Find their real part σ.
G(s) = 74/(s(s + 8))H = 1
σ =
3Solutions
1.Step response
Answer: ts = 1.143 s
Step response: a first-order system G(s) = K/(τs + 1) answers a step of size U with y(t) = K·U·(1 − e−t/τ): it reaches 63.2 % of the final value K·U after one time constant τ and 98 % after 4τ. A second-order system G(s) = K·ωₙ²/(s² + 2ζωₙs + ωₙ²) has the poles s = −ζωₙ ± jωd with ωd = ωₙ√(1 − ζ²). For 0 < ζ < 1 the step response overshoots: percent overshoot %OS = 100·e−ζπ/√(1−ζ²), peak time tp = π/ωd, and the 2 % settling time ts ≈ 4/(ζωₙ). Compare the denominator with s² + 2ζωₙs + ωₙ² to read off ωₙ and ζ. For a mass–spring–damper ωₙ = √(k/m) and ζ = c/(2√(km)); for a series RLC circuit ωₙ = 1/√(LC) and ζ = (R/2)·√(C/L).
Compare with the standard form
The denominator must match s² + 2ζωₙs + ωₙ².
ωₙ² = 44 → ωₙ = 6.633 rad/s
2ζωₙ = 7 → ζ = 7/(2·6.633) = 0.5276
Result
ζωₙ = 3.5 → ts ≈ 4/3.5 = 1.143 s
Answer
ts = 1.143 s
2.Step response
Answer: xmax = 29.12 mm
Step response: a first-order system G(s) = K/(τs + 1) answers a step of size U with y(t) = K·U·(1 − e−t/τ): it reaches 63.2 % of the final value K·U after one time constant τ and 98 % after 4τ. A second-order system G(s) = K·ωₙ²/(s² + 2ζωₙs + ωₙ²) has the poles s = −ζωₙ ± jωd with ωd = ωₙ√(1 − ζ²). For 0 < ζ < 1 the step response overshoots: percent overshoot %OS = 100·e−ζπ/√(1−ζ²), peak time tp = π/ωd, and the 2 % settling time ts ≈ 4/(ζωₙ). Compare the denominator with s² + 2ζωₙs + ωₙ² to read off ωₙ and ζ. For a mass–spring–damper ωₙ = √(k/m) and ζ = c/(2√(km)); for a series RLC circuit ωₙ = 1/√(LC) and ζ = (R/2)·√(C/L).
Natural frequency and damping ratio
ωₙ = √(k/m) = √(1000/8) = 11.18 rad/s
ζ = c/(2√(km)) = 89/(2·√(1000·8)) = 0.4975
Result
xst = F/k = 25/1000 m = 25 mm
%OS = 16.5 %
xmax = 25·(1 + 0.165) = 29.12 mm
Answer
xmax = 29.12 mm
3.Bode plots & margins
Answer: |G(jω)| = 16.84 dB
Frequency response: substitute s = jω in the transfer function. The magnitude in decibels is 20·log₁₀|H(jω)| and the phase is the sum of the angles of the numerator factors minus those of the denominator factors. A first-order RC or RL filter has its corner (−3 dB) frequency at ωc = 1/(RC) or R/L, and fc = ωc/(2π); a low-pass filter gives |H| = 1/√(1 + (ω/ωc)²) and φ = −atan(ω/ωc). In the asymptotic (straight-line) Bode plot each pole bends the magnitude down by 20 dB/decade at its corner frequency, each zero bends it up by 20 dB/decade, and an integrator 1/s gives −20 dB/decade at all frequencies. Gain crossover ωc: |L(jω)| = 1 (0 dB); phase margin PM = 180° + ∠L(jωc). Phase crossover ω180: ∠L(jω) = −180°; gain margin GM = −20·log₁₀|L(jω180)| dB. The closed loop is stable when both margins are positive.
Frequency response: substitute s = jω in the transfer function. The magnitude in decibels is 20·log₁₀|H(jω)| and the phase is the sum of the angles of the numerator factors minus those of the denominator factors. A first-order RC or RL filter has its corner (−3 dB) frequency at ωc = 1/(RC) or R/L, and fc = ωc/(2π); a low-pass filter gives |H| = 1/√(1 + (ω/ωc)²) and φ = −atan(ω/ωc). In the asymptotic (straight-line) Bode plot each pole bends the magnitude down by 20 dB/decade at its corner frequency, each zero bends it up by 20 dB/decade, and an integrator 1/s gives −20 dB/decade at all frequencies. Gain crossover ωc: |L(jω)| = 1 (0 dB); phase margin PM = 180° + ∠L(jωc). Phase crossover ω180: ∠L(jω) = −180°; gain margin GM = −20·log₁₀|L(jω180)| dB. The closed loop is stable when both margins are positive.
Gain crossover
ω⁴ + 16ω² − 484 = 0
ω² = (−16 + √(256 + 4·484))/2 = 15.41
ωc = 3.925 rad/s
Phase margin
∠L(jωc) = −90° − atan(3.925/4) = −134.5°
PM = 180° + ∠L = 45.54°
Answer
PM = 45.54°
5.Stability: Routh–Hurwitz & root locus
Answer: m = 5
Routh–Hurwitz criterion: a linear system is stable when every root of its characteristic polynomial lies in the left half of the s-plane. Write the coefficients alternately into the first two rows of the Routh array. Each entry of a new row comes from the two rows above it; for a cubic a₃s³ + a₂s² + a₁s + a₀ the s¹ entry is b₁ = (a₂·a₁ − a₃·a₀)/a₂. The number of sign changes in the first column equals the number of roots in the right half-plane. With a gain K in the coefficients, every first-column entry must stay positive: the gain that makes the s¹ entry zero is the stability limit, and the s² row then gives the frequency of the sustained oscillation.
Routh array
s³ + 3s² + 2s + K = 0
s³: 1, 2
s²: 3, K
s¹: (3·2 − K)/3
s⁰: K
Largest stable gain
Kmax = 3·2 = 6
Factor
m = 6/1.2 = 5
Answer
m = 5
This factor is the gain margin as a ratio: 13.98 dB.
6.Stability: Routh–Hurwitz & root locus
Answer: sb = −0.9449
Root locus: as the gain K goes from 0 to ∞, the closed-loop poles, the roots of 1 + K·G(s) = 0, move from the open-loop poles to the open-loop zeros or to infinity. A point on the real axis belongs to the locus when the number of real poles and zeros to its right is odd. The n − m branches that go to infinity follow asymptotes at the angles (2q + 1)·180°/(n − m), which start from the centroid σₐ = (Σ poles − Σ zeros)/(n − m). Branches leave or join the real axis where dK/ds = 0. The angle condition ∠G(s) = 180° fixes the shape, and the magnitude condition K = 1/|G(s)| gives the gain at any point of the locus.
Gain along the real axis
K(s) = −s(s + 2)(s + 10) = −(s³ + 12s² + 20s)
Stationary points
dK/ds = −(3s² + 24s + 20) = 0
s = (−24 ± √(576 − 240))/6 = −0.9449, −7.055
Pick the point on the locus
The locus lies on the real axis between 0 and −2; the other root is not on the locus.
sb = −0.9449
Answer
sb = −0.9449
7.Steady-state error & PID control
Answer: ess = 3.333
Steady-state error: in a unity-feedback loop with open-loop transfer function G(s) the error is E(s) = R(s)/(1 + G(s)), and by the final value theorem ess = lims→0 s·E(s). The system type is the number of poles of G(s) at s = 0. The error constants are Kp = lim G(s), Kv = lim s·G(s) and Ka = lim s²·G(s), all for s → 0. A step of size A gives ess = A/(1 + Kp), a ramp A·t gives A/Kv and a parabola A·t²/2 gives A/Ka. A type-0 loop follows a step with a finite error, a type-1 loop follows it exactly and a ramp with a finite error.
Velocity constant
Kv = lim s·G(s) = 1.5
Step part
Kp = ∞ → estep = 0
Ramp error
ess = 5/1.5 = 3.333
Answer
ess = 3.333
8.Steady-state error & PID control
Answer: ts = 0.8 s
P, PI and PID control: the controller C(s) = Kp + Ki/s + Kd·s acts on the error. A proportional gain makes the loop faster and reduces the error of a type-0 plant, but never removes it. The integral term adds a pole at s = 0: the system type rises by one, and a step is followed without error. The derivative term adds damping. To choose gains, write the closed-loop characteristic polynomial and compare it with s² + 2ζωns + ωn². Then %OS = 100·e−ζπ/√(1−ζ²), tp = π/ωd with ωd = ωn√(1 − ζ²), and ts ≈ 4/(ζωn).
Characteristic polynomial
s(s + 10) + 20·2 = s² + 10s + 40
ωₙ and ζ
ωₙ = √40 = 6.325 rad/s
ζ = 10/(2·6.325) = 0.7906
Settling time
ζωₙ = 10/2 = 5
ts ≈ 4/5 = 0.8 s
Answer
ts = 0.8 s
The settling time does not depend on K here: raising K only makes the response oscillate faster.
9.Block diagrams
Answer: p = −195
Block-diagram algebra: blocks in series multiply (G₁·G₂), blocks in parallel add (G₁ + G₂), and a loop with forward path G and feedback path H reduces to T = G/(1 + G·H) for negative feedback and G/(1 − G·H) for positive feedback. Reduce inner loops first, then work outwards. The closed-loop poles are the roots of the characteristic equation 1 + G(s)H(s) = 0. For a stable loop, a step input of size A gives the steady-state output A·T(0); with unity feedback the steady-state error to a step is A/(1 + Kp) with Kp = G(0).
Block-diagram algebra: blocks in series multiply (G₁·G₂), blocks in parallel add (G₁ + G₂), and a loop with forward path G and feedback path H reduces to T = G/(1 + G·H) for negative feedback and G/(1 − G·H) for positive feedback. Reduce inner loops first, then work outwards. The closed-loop poles are the roots of the characteristic equation 1 + G(s)H(s) = 0. For a stable loop, a step input of size A gives the steady-state output A·T(0); with unity feedback the steady-state error to a step is A/(1 + Kp) with Kp = G(0).