Tuning 2 PID interacting pid loops


Thread Starter


Could anyone please give me some information on tuning two PID loops to interact with each other? My application is an open topped water tank where both the water level and the flow rate out will be at set values. This is a gravity fed system so when the level changes in the tank the proportional valve at the output must compensate to maintain the flow rate set point.
You can't control two process variables with only a single control variable. Can you also control the inflow?
Steve Myres, PE
Automation Solutions
(480) 813-1145
If you are trying to maintain level and can permit variation in outlet flow, use a cascade arrangement with the level PID controller sending a setpoint to the outlet flow PID controller. This assumes that the tank is sufficiently large for the level changes to have slower dynamics than the flow.

If you can't permit outlet flow changes, the level PID controller could adjust the inlet (you say its gravity fed so it sounds like there must be something to control on the inlet) and you'll need protection against sucking the tank dry.

Not too sure what you mean by 'compensate to maintain the flow rate' - the flow controller compensates itself to maintain flow rate.

Once the control scheme is set up correctly, the PID tuning is straightforward because the level and flow dynamics are usually sufficiently different.

John Greene
Process control consultant

Fabian Monino

If you are using your tank as a surge tank to regulate head pressure and flow, you may want to use override control. Surge tanks have a minimum and maximun level. When level is between both limits, the flow controller regulates the valve. If level goes below minimum, then you do a low select between the level controller and the flow controller. If level goes above maximum, you do a high select.

email: [email protected]

George Buckbee, P.E.

When tuning cascade loops, it is important that the inner loop should be tuned at least 3x faster than the outer loop. Otherwise, they will interact, and cause both systems to oscillate.

Once or twice a year, we run a 45-minute Webinar on this topic. You can view a recorded version of this webinar at: