Deadband, hysteresis and filtering

Three tools against noise and chattering — where each one belongs: two-position control with hysteresis, controller deadband, alarm deadband and signal filters, with their side effects.

Hysteresis: on/off control

Two-position control (heater on/off, pump start/stop by level) needs two thresholds:

IF Level <= 1.2 THEN PumpRun := TRUE;   (* start below 1.2 m *)
ELSIF Level >= 1.8 THEN PumpRun := FALSE; (* stop above 1.8 m *)
END_IF;

The difference (0.6 m) is the hysteresis. Too small → frequent starts (motor wear, contactor wear); too large → large swings. Choose it from the allowed starts per hour and the process tolerance.

Deadband in a controller

A controller deadband ignores errors smaller than a band: the output does not move while |SP − PV| < deadband. It reduces actuator wear from noise, at the cost of a permanent error up to the band width. Use small deadbands, and prefer reducing noise at the source.

Deadband for alarms and history

  • Alarm deadband: an alarm at 85 °C clears only below 83 °C — no chattering (alarm handling).
  • Historian/exception deadband: store only changes larger than the band (historian).

Filters

FilterBehaviourNote
First-order lagExponential smoothing, time constant TfAdds delay ≈ Tf
Moving average over N samplesFlat averageDelay ≈ N/2 samples, needs buffer
MedianRemoves single spikesGood for occasional outliers

Filtering a controlled variable adds dead time to the loop and may require detuning the controller. Filter only as much as needed and in one place (transmitter damping or module smoothing or PLC filter) — see signal conditioning.

Loading the map…

Sources

  1. Åström & Murray — Feedback Systems: An Introduction for Scientists and Engineers — Caltech / Lund University
  2. SIMATIC S7-1500 Analog value processing — Function Manual 06/2014 — Siemens AG

Updated 2026-10-02