A two-loop cascade on a jacketed stirred-tank heater: the outer (master) TIC controls the product temperature T2 and hands the inner (slave) TjC a jacket-temperature setpoint, which in turn moves the steam valve. Switch to Single Loop to run the same plant with the TIC driving the valve directly, and compare the two under one disturbance.
Step the product setpoint while running to watch which loop does the work.
Both structures run every step, and the switch is bumpless in both directions.
product temperature → jacket setpoint
jacket temperature → steam valve (%)
Set σ = 1 °C and raise the outer Kd to see why the filter exists.
Two-loop cascade control on a jacketed stirred-tank heater — everything the simulation does, written out.
Why cascade? The inner loop is the fast one (τj < τ2), so steam-pressure and jacket disturbances are corrected inside the inner loop before they can reach the product. The outer loop then sees a much better-behaved, faster-acting plant.
The rule: cascade only pays when the inner loop is at least about three times faster than the outer one (here τ2/τj = 8/3 ≈ 2.7). Drag τj up towards τ2 and the advantage disappears — the inner loop just adds lag.
Energy conserving. The coupling term (Tj − T2) appears with opposite signs in the two equations: the heat the jacket loses is exactly the heat the vessel gains. Nothing is created, so the steady state is exact and the integral cannot drift.
Physically bounded. The jacket term is (Tsteam − Tj), so as Tj approaches Tsteam the jacket stops accepting heat. The product can never reach Tsteam — that is the authority limit which makes the single loop slow to recover from a steam upset.
The outer loop must therefore be allowed to ask for any jacket temperature between Tin and Tsteam. That is exactly why the TIC's output limits are the physical window and not 0–100 %: its output is a temperature, not a valve position.
The outer integral is what supplies that 27.5 °C offset. Because the TIC biases at the product setpoint (80 °C), it starts with zero output error and the integrator winds up to about 107.5 °C at the default conditions. Watch Tj,sp on the middle chart settle there.
| Symbol | Meaning | Default |
|---|---|---|
| τ2 | Vessel capacity / UA | 8.0 s |
| τj | Jacket capacity / UA | 3.0 s |
| K1 | Through-flow number wcp/UA | 0.5 |
| Ks | Steam authority UAs/UA | 2.0 |
| θ | Steam transport delay | 1.0 s |
| Tin | Feed temperature | 25 °C |
| Tsteam | Steam temperature | 140 °C |
| T2,sp | Product setpoint | 80 °C |
| u | Steam valve (actuator) | 0–100 % |
| Symbol | Meaning | Default (Outer / Inner) |
|---|---|---|
| Kp | Proportional gain | 1.80 / 2.50 |
| Ki | Integral gain | 0.200 / 0.800 |
| Kd | Derivative gain | 0.50 / 0.20 |
| τD | Derivative filter time constant | 1.00 s |
| β 2-DOF | Proportional setpoint weight | 1.00 |
| γ 2-DOF | Derivative setpoint weight | 0.00 |
| AW windup | Anti-reset windup | on |
Single loop (for comparison): Kp = 0.30, Ki = 0.50, Kd = 2.50. The single structure needs a derivative gain five times larger than the cascade outer loop to reach a comparable closed-loop speed, and still loses on a steam upset. That is the whole argument for cascade.
Bumpless transfer. The two structures bias at different values (the TIC at the product setpoint, the single loop at 50 %), so switching reloads the incoming controller's bias and integral to reproduce the signal already in service. Switch back and forth mid-run and the valve does not jump.
1 — Make the two loops race. Step Tsteam from 140 °C down to 125 °C at 20x and watch. Both settle back to exactly the same place (T2 = 80.000 °C, Tj = 107.5 °C, valve 78.6 %), but the transients differ sharply:
| Steam step 140 → 125 °C | Cascade | Single loop |
|---|---|---|
| Peak T2 deviation | 1.34 °C | 3.85 °C |
| Time to within 0.1 °C | 15 s | 39 s |
| IAE of the excursion | 23 °C·s | 92 °C·s |
The cascade cuts the peak excursion by about 3x and the integral of the error by about 4x. Click Single Loop and run the identical step to see it for yourself.
2 — Load the plant. Drop Tin from 25 to 10 °C. The jacket must now sit further above the product, so Tj,sp climbs. The inner loop tracks it without ever troubling T2.
3 — Break the speed hierarchy. Raise τj from 3 s to 15 s. The inner loop is now slower than the outer one and the cascade performs no better than the single loop — sometimes worse.
4 — Attack the dead time. Push θ to 5 s. The inner loop starts to ring because the valve it commands takes 5 s to act on the jacket. This is the classic reason a cascade needs a fast secondary measurement.
5 — See the filter earn its place. Set σ = 1 °C and outer Kd = 5. Then raise τD from 1 s to 4 s: the valve stops chattering and the product trace cleans up.
6 — Remove the safety net. Untick anti-reset windup, drive the setpoint to 130 °C so the valve saturates at 100 %, then bring it back to 70 °C. The valve stays pinned at 100 % for a long time while the wound-up integral unwinds.