Ziegler–Nichols and other classic methods
The ultimate-gain method (Ku, Tu) and the step-response method of Ziegler and Nichols: formulas, an example, why the settings are aggressive and when the method is dangerous. The relay test as a safer alternative.
In short. Ziegler and Nichols (1942) proposed calculating settings from two numbers: the ultimate gain Ku, at which a P controller brings the loop to sustained oscillation, and the oscillation period Tu. The method is simple but gives aggressive settings (decay of about 1/4 per period) and requires driving the plant into oscillation. For process loops SIMC is usually better.
Ultimate-gain method
- Turn off I and D, controller in automatic.
- Increase Kc in steps, applying a small disturbance after each change.
- Find the Kc at which PV oscillations neither decay nor grow: this is Ku; the oscillation period is Tu.
P: Kc = 0.5·Ku
PI: Kc = 0.45·Ku Ti = Tu / 1.2
PID: Kc = 0.6·Ku Ti = Tu / 2 Td = Tu / 8
The result is in the ideal form.
Example
For the section model (K = 1.8 °C/%, τ = 45 s, θ = 12 s) the ultimate values can be calculated: the process phase is −180° at the frequency where θ·ω + arctan(τ·ω) = π. This gives Ku = 3.63 %/°C, Tu = 43.7 s.
| Controller | Kc, %/°C | Ti, s | Td, s | Set-point step response |
|---|---|---|---|---|
| P | 1.815 | — | — | steady-state error 23 % |
| PI | 1.634 | 36.4 | — | overshoot 41 %, settling 121 s |
| PID | 2.178 | 21.85 | 5.46 | overshoot 62 %, settling 98 s |
| for comparison: SIMC PI | 1.042 | 45 | — | 5.5 %, 74 s |
P steady-state error: 1 / (1 + Kc·K) = 1 / (1 + 1.815·1.8) = 0.234.
Open the example in the tuning tool
Step-response method
The same authors proposed a second variant based on an open-loop step test. A tangent at the inflection point gives the delay L and the slope; in FOPDT terms a = K·θ/τ:
P: Kc = 1/a
PI: Kc = 0.9/a Ti = 3·θ
PID: Kc = 1.2/a Ti = 2·θ Td = θ/2
For the section model a = 1.8·12/45 = 0.48 °C/% → PI Kc = 1.875 %/°C, Ti = 36 s — just as aggressive. This variant is not implemented in the tuning tool.
Relay test
Instead of searching for Ku by hand, the output is switched between u0 ± d depending on the sign of the error. The loop settles into an oscillation with a period ≈ Tu and a PV amplitude a:
Ku ≈ 4·d / (π·a)
The oscillation is limited by the amplitude d, so the test is safer. Many PLC autotuners work this way; which algorithm a particular block uses — check the documentation of its version.
Why the settings are aggressive
The Ziegler–Nichols criterion is a decay of about 4 times per period. For process loops this is a lot: 40–60 % overshoot and a small stability margin. Skogestad shows that SIMC on the same model gives a more robust loop with comparable disturbance rejection.
Typical mistakes
- Driving the plant to the stability limit where oscillation is unacceptable (pressure, reactor temperature).
- Finding Ku with a saturated output: saturation "limits" the oscillation and Ku comes out too high.
- Using Z–N PID without a D filter — Td = Tu/8 with a noisy PV makes the output jump.
- Treating the result as final: it is a starting point; Kc usually has to be reduced.
Limits
Cohen–Coon, CHR, Tyreus–Luyben and other table methods are not given in this section: they have different assumptions and table editions; use them only from the primary source.
Connections
Open in Knowledge Graph →Loading the map…
Sources
- Åström & Murray — Feedback Systems, 2nd ed. (2020), ch. 11 «PID Control», §11.3: Ziegler–Nichols step and frequency response methods, relay feedback — Caltech / Lund University
- Skogestad — Simple analytic rules for model reduction and PID controller tuning, J. Process Control 13 (2003) 291–309: comparison with Ziegler–Nichols — NTNU
Updated 2026-10-12