ELE-390 · Lesson 4 of 12 · 21 min

Time response of first- and second-order systems

The specifications in lesson 1 were written in terms of a step response: how fast the camera gets to a new angle, how far it overshoots and how long it takes to settle. To design for them, an engineer needs to know how those quantities depend on the closed-loop poles. This lesson works that out for first- and second-order systems, where the relations are exact and simple, and then asks when a higher-order loop behaves like a second-order one. The answer, dominant poles, is the basis of the root-locus design method in lessons 7 and 8.

First-order systems

A first-order system with time constant τ and DC gain K has the transfer function K/(τs + 1) and a single pole at −1/τ. Its unit step response is K(1 − e^{−t/τ}). After one time constant the output has covered 63.2 % of its final change, after three time constants 95 %, and after four 98.2 %. There is no overshoot. The rise time from 10 % to 90 % is 2.2τ, and the 2 % settling time is about 4τ. The pole's distance from the origin, 1/τ, is a direct measure of speed.

\[y(t) = K\big(1 - e^{-t/\tau}\big) \qquad t_r \approx 2.2\tau \qquad t_s(2\%) \approx 4\tau\]

The CC-1 cabinet is first order to a good approximation, with τ = 3000 s. A step of 100 W in heater power raises its temperature by 10 K in the long run, 6.3 K of that in the first 50 minutes, and the cabinet is within 2 % of its new temperature only after about 200 minutes. That slowness is not a problem in itself, since the weather changes slowly too, but it means the loop can never correct a sudden disturbance quickly, and lesson 11 tunes the controller with that in mind.

Second-order systems

The standard second-order form ω_n²/(s² + 2ζω_ns + ω_n²) describes the RLC circuit of lesson 2 and the closed-loop pan servo of lesson 3. Its two poles are at s = −ζω_n ± ω_n√(ζ² − 1). The damping ratio ζ decides their character. For ζ > 1 the poles are real and distinct and the response is overdamped, a slow rise like two first-order systems in series. For ζ = 1 they coincide and the response is critically damped, the fastest without overshoot. For 0 < ζ < 1 they are a complex pair and the response is underdamped: it rises faster, overshoots and rings. For ζ = 0 the poles are on the imaginary axis and the response oscillates forever.

\[s = -\zeta\omega_n \pm j\omega_d, \quad \omega_d = \omega_n\sqrt{1 - \zeta^2} \qquad y(t) = 1 - \frac{e^{-\zeta\omega_n t}}{\sqrt{1 - \zeta^2}}\sin(\omega_d t + \arccos\zeta)\]
Unit step responses of a second-order system plotted against normalized time omega n times t from 0 to 12, for damping ratios 0.2, 0.4, 0.6, 0.8 and 1.0. The response for 0.2 overshoots to about 1.53 and rings for several cycles; 0.6 overshoots to about 1.09; 1.0 rises without overshoot. The peak overshoot, rise time and 2 percent settling band are marked on the 0.6 curve.
Step responses of the standard second-order system for several damping ratios, with the main specifications marked.

For the underdamped case, the step response has a peak at t_p = π/ω_d, when the sine first reaches the top of its swing. The peak overshoot depends only on ζ: about 53 % at ζ = 0.2, 25 % at 0.4, 9.5 % at 0.6, 4.6 % at 0.7 and 1.5 % at 0.8. The envelope e^{−ζω_nt} sets the settling time: the response stays within 2 % of its final value once the envelope falls below about 0.02, which gives the widely used approximation t_s ≈ 4/(ζω_n). The rise time from 10 % to 90 % has no exact closed form; a good fit for 0.3 < ζ < 0.8 is t_r ≈ (1 − 0.4167ζ + 2.917ζ²)/ω_n.

\[M_p = e^{-\pi\zeta/\sqrt{1-\zeta^2}} \qquad t_p = \frac{\pi}{\omega_d} \qquad t_s(2\%) \approx \frac{4}{\zeta\omega_n} \qquad t_r \approx \frac{1 - 0.4167\zeta + 2.917\zeta^2}{\omega_n}\]

Specifications as regions of the s-plane

Each specification corresponds to a region in the complex plane where the closed-loop poles must lie. The overshoot depends only on ζ, and ζ = cos β, where β is the angle between the pole and the negative real axis, so a maximum overshoot becomes a wedge: poles must lie within an angle β = arccos ζ_min of the negative real axis. The settling time depends only on the real part ζω_n, so a maximum settling time becomes a vertical line: poles must lie to the left of −4/t_s. The rise time depends mainly on ω_n, the distance from the origin, so a maximum rise time becomes a circle: poles must lie outside radius ω_n,min.

The left half of the s-plane with the region allowed by the PT-1 specifications shaded. Two lines at 53 degrees from the negative real axis mark damping ratio 0.6; a vertical line at minus 16 marks the settling-time limit of 0.25 seconds. The allowed region is to the left of the vertical line and inside the wedge. Pole pairs for the proportional design at minus 10.5 plus or minus j 10.7 and for the cascade design at minus 20 plus or minus j 26.6 are marked; the first lies outside the region and the second inside.
The PT-1 transient specifications as a region of the s-plane: inside the ζ = 0.6 wedge and to the left of −16.

For the PT-1 the specifications of overshoot below 10 % and settling within 0.25 s become ζ ≥ 0.6, a wedge of half-angle 53°, and ζω_n ≥ 4/0.25 = 16 rad/s. Amara's proportional design of lesson 3, with poles at −10.5 ± j10.7, is well damped, ζ = 0.70, but too slow: its real part is −10.5, to the right of −16. The cascade design, with poles at −20 ± j26.6, sits inside the region with ζ = 0.60 and ζω_n = 20.

Checking the formulas

The formulas are exact for a pure second-order system with no zeros. Real loops have extra poles, such as the PT-1's electrical pole at −1979 rad/s, and sometimes zeros. Amara simulates the step responses of four versions of the pan servo and compares the measured specifications with the formulas.

Step responses by numerical integration for four versions of the pan servo, compared with the second-order formulas.
import math
def step_metrics(num, den, t_end=1.0, dt=1e-5):
    """Step response of num/den (highest power first) by RK4 on the controllable canonical form."""
    n = len(den) - 1; a = [c / den[0] for c in den]; b = [0.0] * (n + 1 - len(num)) + [c / den[0] for c in num]
    x = [0.0] * n
    def f(x):  # x[0] is the lowest derivative
        dx = x[1:] + [1.0 - sum(a[n - i] * x[i] for i in range(n))]
        return dx
    def y(x):  # strictly proper numerator: output is a weighted sum of the states
        return sum(b[n - i] * x[i] for i in range(n))
    t, ys = 0.0, []
    while t < t_end:
        k1 = f(x); k2 = f([xi + dt / 2 * k for xi, k in zip(x, k1)])
        k3 = f([xi + dt / 2 * k for xi, k in zip(x, k2)]); k4 = f([xi + dt * k for xi, k in zip(x, k3)])
        x = [xi + dt / 6 * (p + 2 * q + 2 * r + w) for xi, p, q, r, w in zip(x, k1, k2, k3, k4)]
        t += dt; ys.append((t, y(x)))
    yf = ys[-1][1]
    peak = max(v for _, v in ys)
    t10 = next(t for t, v in ys if v >= 0.1 * yf); t90 = next(t for t, v in ys if v >= 0.9 * yf)
    ts = max((t for t, v in ys if abs(v - yf) > 0.02 * yf), default=0.0)
    return (peak / yf - 1) * 100, (t90 - t10), ts
def formulas(zeta, wn):
    Mp = 100 * math.exp(-math.pi * zeta / math.sqrt(1 - zeta**2))
    return Mp, (1 - 0.4167 * zeta + 2.917 * zeta**2) / wn, 4 / (zeta * wn)
cases = [("P, Kp = 27", [224.9], [1, 21, 224.9]),
         ("rate + position", [1108.0], [1, 40, 1108]),
         ("same, with electrical pole", [1108.0 * 1979], [1, 40 + 1979, 1108 + 40 * 1979, 1108 * 1979]),
         ("PD in forward path (zero at -27.7)", [40.0, 1108.0], [1, 40, 1108])]
for name, num, den in cases:
    Mp, tr, ts = step_metrics(num, den)
    print(f"{name:35s} overshoot {Mp:5.1f} %, rise {tr*1000:5.1f} ms, 2 % settling {ts*1000:5.0f} ms")
for zeta, wn in ((0.70, math.sqrt(224.9)), (0.60, math.sqrt(1108))):
    Mp, tr, ts = formulas(zeta, wn)
    print(f"formulas zeta {zeta:.2f}, wn {wn:5.1f}: overshoot {Mp:5.1f} %, rise {tr*1000:5.1f} ms, settling {ts*1000:4.0f} ms")
# first-order cabinet: time to reach 63 % and 98 % of a step
tau = 3000.0
print(f"cabinet: 63 % at {tau/60:.0f} min, 98 % at {4*tau/60:.0f} min")
Output
P, Kp = 27                          overshoot   4.6 %, rise 141.8 ms, 2 % settling   399 ms
rate + position                     overshoot   9.4 %, rise  55.8 ms, 2 % settling   179 ms
same, with electrical pole          overshoot   9.4 %, rise  55.8 ms, 2 % settling   179 ms
PD in forward path (zero at -27.7)  overshoot  24.8 %, rise  26.8 ms, 2 % settling   206 ms
formulas zeta 0.70, wn  15.0: overshoot   4.6 %, rise 142.5 ms, settling  381 ms
formulas zeta 0.60, wn  33.3: overshoot   9.5 %, rise  54.1 ms, settling  200 ms
cabinet: 63 % at 50 min, 98 % at 200 min

For the two pure second-order cases the simulation matches the formulas closely: 4.6 % overshoot and a rise time of 142 ms for the proportional design, 9.4 % and 56 ms for the cascade. The settling times differ by a few per cent from 4/(ζω_n), which is an envelope approximation; the 2 % band is first entered when a ripple crosses it, so the true value jumps in steps as ζ varies. The simulated cascade settles in 179 ms, inside the 250 ms specification. Adding the electrical pole at −1979 rad/s changes nothing visible, because it is about 60 times farther from the origin than the dominant poles.

The fourth case is instructive. It has the same poles as the cascade, but the derivative action has been moved into the forward path, so the closed loop has a zero at −27.7. The overshoot jumps from 9.4 % to 24.8 % and the rise time halves. The zero adds a scaled derivative of the step response to the response itself, which speeds the rise and lifts the peak. This is why the cascade, which applies the derivative action to the measured angle rather than to the error, gives a cleaner step response than a controller with the same gains in the forward path. Lesson 11 calls this derivative on measurement.

Dominant poles

A higher-order system behaves like a second-order one when a pair of poles is much closer to the imaginary axis than all the others, and no zeros sit near them. The far poles' modes decay much faster and are finished before the dominant pair's response has developed. A common rule is that the other poles should be at least five times farther to the left than the dominant pair's real part. The PT-1's electrical pole easily qualifies. A closed-loop pole and zero that nearly coincide also have little effect, because the zero cancels most of the pole's residue; lesson 8's lag compensator relies on that, leaving a slow but small tail in the response.

When the conditions fail, the second-order formulas are only a guide. A third pole near the dominant pair slows the response and, depending on where it is, can reduce or increase overshoot. A zero near the dominant pair increases overshoot if it is in the left half plane, as in the fourth case above, and causes the response to start in the wrong direction if it is in the right half plane. Simulation is always the final check, and it is cheap.

Worked problem

Choosing poles for a specification

The tilt axis of the PT-1 needs to settle within 2 % in 0.3 s with no more than 5 % overshoot. Find the minimum damping ratio, the minimum ζω_n, and a pole pair that meets both with a little margin.

Show solution
  1. From M_p = e^{−πζ/√(1−ζ²)} = 0.05, ln 0.05 = −3.00, so πζ/√(1 − ζ²) = 3.00.
  2. \[\zeta = \frac{3.00}{\sqrt{\pi^2 + 3.00^2}} = 0.69\]
  3. From t_s = 4/(ζω_n) ≤ 0.3, ζω_n ≥ 13.3 rad/s.
  4. Choosing ζ = 0.72 and ζω_n = 16 gives ω_n = 22.2 rad/s and ω_d = 22.2√(1 − 0.518) = 15.4 rad/s.

Answer: ζ ≥ 0.69 and ζω_n ≥ 13.3 rad/s; poles at −16 ± j15.4 meet both, with about 4 % overshoot and a settling time near 0.25 s.

Responses to other inputs

The step is the standard test because it is easy to generate and it excites every mode, but other inputs matter too. A ramp input represents a steady pan; the next two lessons show that a type-1 loop follows it with a constant lag. An impulse represents a sudden knock, such as a gust or a truck passing under the mast arm, and the impulse response is the derivative of the step response. A sinusoid represents a periodic disturbance, such as the sway of the mast arm in a steady wind, and the response to it is the frequency response of lesson 9. Because the system is linear, the response to any combination of these is the sum of the individual responses.

Finally, specifications are usually checked against a small step, where the system is linear. A large step on the PT-1, say 90°, would demand far more than 24 V from the cascade controller in its first instant: 133 V/rad × 1.57 rad is 209 V. The driver saturates, the response is slower than the linear prediction, and the overshoot can be larger. Practical servos therefore move large distances along a planned trajectory with limited speed and acceleration, and use the linear loop to track that trajectory closely. Lesson 12 designs that profile.

Common mistakes

  • MistakeApplying t_s ≈ 4/(ζω_n) to a system with a nearby zero or third pole.

    InsteadThe formulas assume a pure second-order system; simulate when poles are not dominant.

  • MistakeReading overshoot from ω_n.

    InsteadOvershoot depends only on ζ, the angle of the poles.

  • MistakeAssuming critically damped is always best.

    Insteadζ ≈ 0.6–0.8 rises much faster for a small overshoot; the right choice depends on the specification.

  • MistakeTesting specifications with large steps that saturate the actuator.

    InsteadLinear specifications apply to small signals; large moves need a trajectory.

Summary and key terms

  • A first-order system has a 63 % response at t = τ, rise time 2.2τ and 2 % settling time about 4τ.
  • A second-order system's character is set by ζ: overdamped, critically damped, underdamped or undamped.
  • Overshoot depends only on ζ, peak time on ω_d, and settling time on ζω_n; the rise time depends mainly on ω_n.
  • Specifications map to regions of the s-plane: a ζ wedge, a vertical settling line and an ω_n circle.
  • The PT-1 needs ζ ≥ 0.6 and ζω_n ≥ 16 rad/s; the cascade design at −20 ± j26.6 meets both, settling in about 0.18 s.
  • Dominant poles govern the response when other poles are much farther left; zeros near the dominant poles change overshoot.
Time constant
τ, the time for a first-order response to cover 63.2 % of its change.
Damping ratio
ζ, the dimensionless measure of damping in a second-order system.
Natural frequency
ω_n, the distance of a second-order system's poles from the origin.
Damped frequency
ω_d = ω_n√(1 − ζ²), the frequency of the decaying oscillation.
Peak overshoot
The amount by which the step response exceeds its final value, as a percentage.
Rise time
The time for the step response to go from 10 % to 90 % of its final value.
Settling time
The time after which the response stays within a band, usually 2 %, of its final value.
Dominant poles
The closed-loop poles nearest the imaginary axis, which govern the response when others are far away.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. A first-order system has a pole at −5 rad/s. Find its rise time and 2 % settling time.

    Show answer

    τ = 0.2 s; t_r ≈ 0.44 s; t_s ≈ 0.8 s.

  2. Find ζ, ω_n and the overshoot for poles at −3 ± j4.

    Show answer

    ω_n = 5, ζ = 0.6, M_p ≈ 9.5 %.

  3. What ζ gives 20 % overshoot?

    Show answer

    ln 0.2 = −1.61; ζ = 1.61/√(π² + 1.61²) = 0.46.

  4. Find the peak time of the cascade design with poles at −20 ± j26.6.

    Show answer

    t_p = π/26.6 = 0.118 s.

  5. A system has poles at −2 ± j3 and −30. Is the second-order approximation reasonable?

    Show answer

    Yes: the third pole is 15 times farther left than the pair's real part.

  6. How long does the cabinet take to cover 95 % of a step change?

    Show answer

    About 3τ = 9000 s, or 2.5 hours.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz