PIDSnap

How to tune a cascade PID

A cascade exists so a fast inner loop can absorb a disturbance before it reaches the slow measurement you actually care about. Steam flow under temperature, jacket temperature under reactor temperature, fuel flow under coil outlet — the pattern is the same. The inner loop is the slave. The outer loop is the master. They are not two unrelated PIDs that happen to share a setpoint.

The procedure is strict because the alternative is two loops fighting. Tune the slave first, with the master in manual. Only when the inner loop holds its own setpoint cleanly do you put the master in auto and touch its constants. Retuning both at once is how cascade loops start hunting.

What the inner loop has to be

The slave must be several times faster than the master. If it is not, the cascade buys you nothing and adds a second place for the hunt to live. A temperature cascaded onto a flow is the usual good case. A temperature cascaded onto another temperature of similar lag is not.

The slave also has to be healthy. A sticking valve on the inner loop will show up as a hunt on the master, and no amount of master tuning will clear it.

The order of work

Put the master in manual. Tune the slave as you would any loop of its type — read, one change, wait. Confirm it holds a setpoint step without hunting. Then put the master in auto, with conservative constants, and only then tighten it against the slower measurement.

If the cascade hunts after both are in auto, look at the periods. A fast hunt is the slave. A slow hunt is the master, or the two beating against each other because the slave was never actually faster.

When cascade is the wrong structure

If there is no faster inner measurement that actually moves the process, adding a cascade does not create one. And if the inner loop saturates — valve at 100%, fuel at a limit — the master will wind up against a slave that cannot answer. Anti-reset windup on the master, tied to the slave's output limits, is not optional.

Questions that come up

Should the slave have integral action?

Usually yes. The slave's job is to hold the inner setpoint the master asks for. Offset on the inner loop becomes a load the master has to fight. Derivative on the slave is rarely justified — the inner loop is the fast one, and derivative there amplifies noise into the valve.

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