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) = 87/(s² + 3s + 29) and receives a unit step input. Find the peak time tp of the step response.
G(s) = 87/(s² + 3s + 29)
tp = s
2.Step responseHard
A unity negative feedback loop has G(s) = K/(s(s + 10)). Find the gain K that gives a step response with 20 % overshoot.
G(s) = K/(s(s + 10))%OS = 20 %
K =
3.Bode plots & marginsMedium
Find the phase ∠G(jω) of G(s) = 34(s + 5)/(s(s + 9)) at ω = 4 rad/s, in degrees.
G(s) = 34(s + 5)/(s(s + 9))ω = 4 rad/s
∠G(jω) = °
4.Bode plots & marginsHard
A unity-feedback loop has the open-loop transfer function L(s) = K/(s(s + 4)(s + 9)). Find the gain K that gives a gain margin of 15 dB.
L(s) = K/(s(s + 4)(s + 9))GM = 15 dB
K =
5.Stability: Routh–Hurwitz & root locusMedium
The loop in the diagram uses positive feedback, with L(s) = 2/(s(s + 2)(s + 4)). How many closed-loop poles N lie in the right half-plane?
L(s) = 2/(s(s + 2)(s + 4))
N =
6.Stability: Routh–Hurwitz & root locusHard
The root locus of L(s) = K/(s(s + 2)) is shown. Find the gain K for which the closed-loop poles have the damping ratio ζ = 0.707.
L(s) = K/(s(s + 2))ζ = 0.707
K =
7.Steady-state error & PID controlMedium
A ramp r(t) = 5t is applied to a unity-feedback loop with G(s) = 50/(s(s + 2)(s + 5)). Find the steady-state error ess.
G(s) = 50/(s(s + 2)(s + 5))r(t) = 5t
ess =
8.Steady-state error & PID controlHard
A proportional controller K = 50 drives the plant G(s) = 1/(s(s + 6)) in a unity-feedback loop. Find the peak time tp of the step response.
G(s) = 1/(s(s + 6))K = 50
tp = s
9.Block diagramsMedium
A plant G(s) = 17/(s + 5) is controlled in a negative feedback loop whose sensor has the gain H = 0.1. Find the time constant τ of the closed loop.
G(s) = 17/(s + 5)H = 0.1
τ = s
10.Block diagramsHard
A proportional controller K = 8 drives the plant G(s) = 6/(s + 4) in a unity negative feedback loop. A disturbance D enters at the plant input (it is added to the controller output). A reference step of size 2 and a disturbance step of size 2 are applied together. Find the steady-state output css.
K = 8G(s) = 6/(s + 4)D = 2R = 2
css =
3Solutions
1.Step response
Answer: tp = 0.6074 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).
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).
Closed-loop transfer function
T(s) = K/(s² + 10s + K)
Damping ratio from the overshoot
ζ = −ln(0.2)/√(π² + ln²(0.2)) = 0.4559
Gain
ωₙ = 10/(2ζ) = 10.97 rad/s
K = ωₙ² = 120.3
Answer
K = 120.3
3.Bode plots & margins
Answer: ∠G(jω) = −75.3 °
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.
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.
Characteristic polynomial
s³ + 6s² + 8s − 2 = 0
Routh array
s³: 1, 8
s²: 6, −2
s¹: 8.333
s⁰: −2
Sign changes in the first column
1 → 6 → 8.333 → −2
N = 1
Answer
N = 1
Positive feedback makes the constant coefficient negative: one real pole always moves into the right half-plane.
6.Stability: Routh–Hurwitz & root locus
Answer: K = 2.001
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.
Compare with the standard form
s² + 2s + K = s² + 2ζωₙs + ωₙ²
2·0.707·ωₙ = 2 → ωₙ = 1.414 rad/s
Gain
K = ωₙ² = 1.414² = 2.001
Answer
K = 2.001
The closed-loop poles sit where the ζ line crosses the vertical branch at s = −1.
7.Steady-state error & PID control
Answer: ess = 1
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) = 5
Ramp error
ess = 5/5 = 1
Answer
ess = 1
8.Steady-state error & PID control
Answer: tp = 0.4906 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 + 6) + 50·1 = s² + 6s + 50
ωₙ and ζ
ωₙ = √50 = 7.071 rad/s
ζ = 6/(2·7.071) = 0.4243
Peak time
ωd = 7.071·√(1 − 0.4243²) = 6.403 rad/s
tp = π/6.403 = 0.4906 s
Answer
tp = 0.4906 s
9.Block diagrams
Answer: τ = 0.1493 s
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).
Transfer functions
C/D = G/(1 + K·G) = 6/(s + 4 + 48)
C/R = K·G/(1 + K·G) = 48/(s + 4 + 48)
Steady state
css = 2·48/52 + 2·6/52 = 2.077
Answer
css = 2.077
A larger K reduces the effect of the disturbance, but never to zero with a proportional controller.