Reference ID: MET-F4EC | Process Engineering Reference Sheets Calculation Guide
Introduction & Context
PID controller parameter tuning is a fundamental practice in process engineering, essential for maintaining system stability and performance in automated control loops. By balancing Proportional, Integral, and Derivative actions, engineers can minimize steady-state error and overshoot in dynamic systems such as fluid flow, thermal regulation, and pressure management. This reference sheet provides the mathematical framework for calculating controller output, ensuring that actuators operate within safe and efficient bounds.
Methodology & Formulas
The controller output is derived from the summation of three distinct control actions, adjusted by a bias term. The following formulas represent the discrete-time implementation used to calculate the final actuator position:
Prevents division by zero; enables steady-state error correction.
Derivative Time (Td)
Td ≥ 0
Prevents negative damping; minimizes overshoot.
Output (m)
0.0 ≤ m ≤ 100.0
Clamps signal to physical actuator limits to prevent damage.
To achieve stable control, follow this systematic approach:
Start by setting the Integral and Derivative gains to zero.
Increase the Proportional gain until the process variable begins to oscillate.
Reduce the Proportional gain by approximately half to establish a stable baseline.
Slowly introduce Integral action to eliminate steady-state error.
Add Derivative action only if necessary to dampen overshoot or improve response time.
Integral windup occurs when the controller output saturates while the error remains, causing the integral term to accumulate excessively. You can identify this by observing:
The controller output remains at its maximum or minimum limit for an extended period.
The process variable takes an unusually long time to return to the setpoint after a disturbance.
Significant overshoot occurs once the process variable finally crosses the setpoint.
The Derivative term is highly sensitive to noise and can cause erratic control output. You should avoid or disable it in the following scenarios:
When the process measurement signal is noisy or lacks high-resolution filtering.
In processes with long dead times where derivative action provides no predictive benefit.
For applications where the setpoint changes are frequent and step-like, which can cause derivative spikes.
Worked Example: PID Controller Tuning for a Flow Control Loop
Consider a water flow control loop in an industrial pipe system. The controller must adjust a valve to maintain a set flow rate. At this instant, the measured flow is below the target, and the PID algorithm computes a new valve position.
Knowns (Input Parameters and Units):
Set Point, \( SP \): 50.0 L/min
Process Variable, \( PV \): 45.0 L/min
Proportional Gain, \( K_p \): 2.0 (dimensionless)
Integral Time, \( T_i \): 10.0 s
Derivative Time, \( T_d \): 1.0 s
Bias / Manual Reset, \( M \): 50.0 %
Time Step for Discrete Calculation, \( \Delta t \): 0.1 s
Previous Process Variable, \( PV_{\text{prev}} \): 44.5 L/min
Accumulated Integral Error, \( \int e \, dt \approx \text{INTEGRAL_ACCUM} \): 0.525 L·min (from prior steps)
Step-by-Step Calculation:
Calculate the current error: \( e(t) = SP - PV = 50.0 - 45.0 = 5.0 \, \text{L/min} \).
Compute the Proportional term: \( P_{\text{term}} = K_p \cdot e = 2.0 \times 5.0 = 10.0 \).
Compute the Integral term using the accumulated error: \( I_{\text{term}} = \frac{K_p}{T_i} \times \text{INTEGRAL_ACCUM} = \frac{2.0}{10.0} \times 0.525 = 0.105 \).
Compute the Derivative term based on the rate of change of the process variable (to avoid derivative kick):
\[
D_{\text{term}} = -K_p \cdot T_d \cdot \frac{PV - PV_{\text{prev}}}{\Delta t} = -2.0 \times 1.0 \times \frac{45.0 - 44.5}{0.1} = -10.0.
\]
Sum all terms with the bias to find the raw controller output:
\[
m_{\text{raw}} = P_{\text{term}} + I_{\text{term}} + D_{\text{term}} + M = 10.0 + 0.105 + (-10.0) + 50.0 = 50.105.
\]
Apply output clamping to physical actuator limits (0% to 100%). Since 50.105 is within bounds, the final output is unchanged.
Final Answer: The PID controller output is \( 50.105 \, \% \) valve position.
"Un projet n'est jamais trop grand s'il est bien conçu."— André Citroën
"La difficulté attire l'homme de caractère, car c'est en l'étreignant qu'il se réalise."— Charles de Gaulle