PIDSnap

Integral windup symptoms

Integral windup is what happens after a period of saturation, not the saturation itself. The output sat at 0% or 100% while the error kept accumulating in the integral term. When the process variable finally crosses setpoint, that stored correction has to unwind before the output will come off the limit. The result is a large overshoot that looks exactly like a loop tuned too tight.

Detuning in response makes it worse. A slower loop spends longer saturated and therefore winds up further. The fix is to stop the integral accumulating while the output cannot move, not to take gain out of a loop that was never the problem.

Integral windup causing overshoot after saturation Trend showing integral windup: after a period with the output saturated, the process variable overshoots badly and the output stays at its limit long after the setpoint has been reached. high low PV SP Output PIDSnap time
Trend showing integral windup: after a period with the output saturated, the process variable overshoots badly and the output stays at its limit long after the setpoint has been reached. The output pinned at a limit for a stretch, then a large overshoot when the setpoint is finally reached, and an output that refuses to come off the limit until the error has been negative for a while. The integral term accumulated while the controller could not act on it.

The fingerprint

Watch the output and the PV together on the recovery. If the PV has already passed setpoint and the output is still pinned, the controller is wound up. A loop that is merely aggressive comes off the limit as the error shrinks. A wound-up loop waits.

This is distinct from an output that lives on the limit under normal conditions. That is a capacity or constraint problem — the loop has no authority left. Windup is the hangover after a temporary trip to that limit.

Integral windup causing overshoot after saturation Trend showing integral windup: after a period with the output saturated, the process variable overshoots badly and the output stays at its limit long after the setpoint has been reached. high low PV SP Output PIDSnap time
Trend showing integral windup: after a period with the output saturated, the process variable overshoots badly and the output stays at its limit long after the setpoint has been reached. The output pinned at a limit for a stretch, then a large overshoot when the setpoint is finally reached, and an output that refuses to come off the limit until the error has been negative for a while. The integral term accumulated while the controller could not act on it.

Confirm anti-reset windup is actually on

Every modern controller has a way to hold or back-calculate the integral term at a limit. The setting is frequently off, especially on loops that were never expected to saturate and then started doing so after a process change. Read the configuration rather than assuming the default saved you.

What causes it, most likely first

Anti-reset windup disabled or ineffective

most common tuning can fix this

Integral action kept accumulating while the output was clamped. The stored term has to unwind before the valve will move the other way.

How to confirm it
The output stays at its limit after the PV has crossed setpoint. Check whether anti-reset windup or external-feedback tracking is enabled on the block.
What to do
Enable anti-reset windup, or tie the integral to the actual output (including a downstream limit). Do not detune first.
Integral windup causing overshoot after saturation Trend showing integral windup: after a period with the output saturated, the process variable overshoots badly and the output stays at its limit long after the setpoint has been reached. high low PV SP Output PIDSnap time
Trend showing integral windup: after a period with the output saturated, the process variable overshoots badly and the output stays at its limit long after the setpoint has been reached.

A real constraint that keeps putting the loop on the stop

common tuning cannot fix this

The loop saturates often enough that windup is a recurring event — undersized valve, missing supply, a clamp nobody revisited.

How to confirm it
The output spends a noticeable fraction of the day on a limit, not just during a rare upset.
What to do
Deal with the constraint. Anti-windup will make recoveries cleaner; it will not create capacity.

Aggressive tuning blamed for the overshoot

common tuning cannot fix this

The overshoot is from the unwinding integral, not from too much gain. Lowering gain lengthens the time on the limit.

How to confirm it
Compare a recovery with anti-windup on against one without. If the overshoot collapses when the integral is held, it was never the gain.
What to do
Leave the gain. Fix the windup.

Questions that come up

Is this the same as a saturated output?

No. Saturation is the output sitting on a limit. Windup is the integral that accumulated while it sat there, and the overshoot that follows. You can have saturation without much windup if anti-reset is working.

Related

Last reviewed 2026-09-10.

Run a free PIDSnap check on this loop

Two photos, thirty seconds, no signup. The pre-flight check finds the structural problems that no amount of tuning will fix — before you touch the controller.

Start a free check