Sigurd Skogestad, NTNU
PID controller tuning: It pays off to be systematic!
1. Obtaining first-order plus delay models
Open-loop step response
From detailed model (half rule)
From closed-loop setpoint response
2 . Derivation SIMC PID tuning rules
Controller gain, Integral time, derivative time
3. Special topics
Integrating processes (level control)
Other special processes and examples
When do we need derivative action?
Near-optimality of SIMC PID tuning rules
Non PID-control: Is there an advantage in using Smith Predictor? (No)
Examples
RTO
MPC
PID c s
= y
1s
Min J (economics);
MV=y
1s
CV=y
1
; MV=y
2s y
2s
CV=y
2
; MV=u u (valves)
e
Time domain (“ideal” PID)
Laplace domain (“ideal”/”parallel” form)
For our purposes. Simpler with cascade form
Usually τ
D
=0. Then the two forms are identical.
Only two parameters left (K c and τ
I
)
How difficult can it be to tune???
Surprisingly difficult without systematic approach!
Trans. ASME, 64, 759-768 (Nov. 1942).
Disadvantages Ziegler-Nichols:
1.Aggressive settings
2.No tuning parameter
3.Poor for processes with large time delay ( µ )
Comment:
Similar to SIMC for integrating process with ¿ c
K c
= 1/k ’ 1/ µ
=0 (aggressive!):
¿
I
= 4 µ
Disadvantage IMC-PID (=Lambda tuning):
1.Many rules
2.
Poor disturbance response for «slow» processes (with large ¿
1
/ µ )
2.
3.
1.
The tuning rules should be well motivated, and preferably be model-based and analytically derived.
They should be simple and easy to memorize.
They should work well on a wide range of processes.
1.
2.
Approximate process as first-order with delay (e.g., use “half rule”)
k = process gain
¿
1
= process time constant
µ = process delay
Derive SIMC tuning rule*:
Open-loop step response
c
¸ -
: Desired closed-loop response time (tuning parameter)
Integral time rule combines well-known rules :
IMC (Lamda-tuning): Same as SIMC for small ¿
1
Ziegler-Nichols : Similar to SIMC for large ¿
1
( ¿
I
= ¿
1
)
(if we choose ¿ c
= 0; aggressive!)
Reference: S. Skogestad, “Simple analytic rules for model reduction and PID controller design”, J.Proc.Control
, Vol. 13, 291-309, 2003
(*) “Probably the best simple PID tuning rules in the world”
MODEL
Model: Dynamic effect of change in input u (MV) on output y (CV)
First-order + delay model for PI-control
Second-order model for PID-control
Recommend: Use second-order model only if ¿
2
> µ
MODEL, Approach 1A
Make step change in one u (MV) at a time
Record the output (s) y (CV)
MODEL, Approach 1A
Δy(∞)
RESULTING OUTPUT y
Δu
STEP IN INPUT u
: Delay - Time where output does not change
1
: Time constant - Additional time to reach
63% of final change k =
y(∞)/ u : Steady-state gain
MODEL, Approach 1A
Δy
Δt
MODEL, Approach 1B
Shams’ method: Closed-loop setpoint response with P-controller with about 20-40% overshoot
Kc0=1.5
Δys=1
Δyp=0.79
Δyu=0.54
Δy
∞
1.
OBTAIN DATA IN RED (first overshoot and undershoot), and then: tp=4.4, dyp=0.79; dyu=0.54, Kc0=1.5, dys=1 dyinf = 0.45*(dyp + dyu)
Mo =(dyp -dyinf)/dyinf % Mo=overshoot (about 0.3) b=dyinf/dys
A = 1.152*Mo^2 - 1.607*Mo + 1.0
r = 2*A*abs(b/(1-b))
%2. OBTAIN FIRST-ORDER MODEL: k = (1/Kc0) * abs(b/(1-b)) theta = tp*[0.309 + 0.209*exp(-0.61*r)] tau = theta*r tp=4.4
Example 2: Get k=0.99, theta =1.68, tau=3.03
3. CAN THEN USE SIMC PI-rule
Ref: Shamssuzzoha and Skogestad (JPC, 2010)
+ modification by C. Grimholt (Project, NTNU, 2010; see also PID-book 2012)
MODEL, Approach 2
2. Model reduction of more complicated model
Start with complicated stable model on the form
Want to get a simplified model on the form
Most important parameter is the “effective” delay
MODEL, Approach 2
MODEL, Approach 2
Half rule
MODEL, Approach 2 original
1 st -order+delay
MODEL, Approach 2
2 half rule
MODEL, Approach 2 original
1 st -order+delay
2 nd -order+delay
MODEL, Approach 2
c c
c c c c
To make these rules more general
(and not only applicable to the choice
c
=
): Replace
(time delay) by
c
(desired closed-loop response time). (6 places)
Alternative and improved method forf approximating zeros:
Simple Analytic PID Controller Tuning Rules Revisited
J Lee, W Cho, TF Edgar - Industrial & Engineering Chemistry Research 2014 , 53 (13), pp 5038–5047
SIMC-tunings
PI-controller (based on first-order model)
For second-order model add D-action.
For our purposes, simplest with the “series” (cascade) PID-form:
SIMC-tunings
Closed-loop response to setpoint change
Idea: Specify desired response: and from this get the controller. ……. Algebra:
SIMC-tunings
NOTE: Setting the steady-state gain = 1 in T will result in integral action in the controller!
SIMC-tunings
Algebra:
SIMC-tunings
Found: Integral time = dominant time constant (
I
Works well for setpoint changes
=
1
) (IMC-rule)
Needs to be modified (reduced) for integrating disturbances c u d g y
Example . “Almost-integrating process” with disturbance at input:
G(s) = e -s /(30s+1)
Original integral time
I
Try reducing it!
= 30 gives poor disturbance response
SIMC-tunings
Setpoint change at t=0 Input disturbance at t=20
I
=
1
Reduce
I
I
= 4 (
c to this value:
+
) = 8
SIMC-tunings
Want to reduce the integral time for “integrating” processes, but to avoid “slow oscillations” we must require:
Derivation:
Setpoint response: Improve (get rid of overshoot) by “prefiltering”, y’ s
= f(s) y s.
Details: See www.nt.ntnu.no/users/skoge/publications/2003/tuningPID Remark 13 II
SIMC-tunings
One tuning parameter:
c
SIMC-tunings
1.
2.
3.
4.
The effective delay θ (which limits the achievable closed-loop time constant τ c
) is independent of the dominant process time constant τ
1
!
It depends on τ
2
/2 (PI) or τ
3
/2 (PID)
Use (close to) P-control for integrating process
Beware of large I-action (small τ
I
) for level control
Use (close to) I-control for fast process (with small time constant
τ
1
)
Parameter variations: For robustness tune at operating point with maximum value of k’ θ = (k/
τ
1
)θ
SIMC-tunings
SIMC-tunings
c
Two main cases
1.
control” subject to having good robustness
• Want tight control of active constraints (“squeeze and shift”)
2.
control” subject to acceptable disturbance rejection
• Want smooth control if fast setpoint tracking is not required, for example, levels and unconstrained (“self-optimizing”) variables
• THERE ARE ALSO OTHER ISSUES: Input saturation etc.
TIGHT CONTROL
TIGHT CONTROL
Typical closed-loop SIMC responses with the choice
c
=
TIGHT CONTROL
Example. Integrating process with delay=1. G(s) = e -s /s.
Model: k ’=1,
=1,
1
= 1
SIMC-tunings with
c with =
=1:
IMC has
I
= 1
Ziegler-Nichols is usually a bit aggressive
Setpoint change at t=0c Input disturbance at t=20
TIGHT CONTROL
1.
Approximate as first-order model: k=1,
1
= 1+0.1=1.1,
=0.1+0.04+0.008 = 0.148
Get SIMC PI-tunings (
c
=
): K c
= 1 ¢ 1.1/(2 ¢ 0.148) = 3.71,
I
=min(1.1,8 ¢ 0.148) = 1.1
2.
Approximate as second-order model: k=1,
1
= 1,
2
=0.2+0.02=0.22,
=0.02+0.008 = 0.028
Get SIMC PI D -tunings (
c
=
): K c
= 1 ¢ 1/(2 ¢ 0.028) = 17.9,
I
=min(1,8 ¢ 0.028) = 0.224,
D
=0.22
SMOOTH CONTROL
Tuning parameter:
c
= desired closed-loop response time
Selecting
c
=
(“tight control”) is reasonable for cases with a relatively large effective delay
Other cases: Select
c
slower control
>
for
smoother input usage
less disturbing effect on rest of the plant
less sensitivity to measurement noise better robustness
Question: Given that we require some disturbance rejection.
What is the largest possible value for
c
?
Or equivalently: The smallest possible value for K c
?
Will derive K c,min
. From this we can get
c,max using SIMC tuning rule
S. Skogestad, ``Tuning for smooth PID control with acceptable disturbance rejection'', Ind.Eng.Chem.Res, 45 (23), 7817-7822 (2006).
SMOOTH CONTROL
d
0
-d
0 y max
-y max
SMOOTH CONTROL
K c u
Minimum controller gain for PI-and PID-control: min
|c(j
)| = K c
SMOOTH CONTROL
c
d
max
|y max
| = allowed deviation for output (CV)
|u d
| = required change in input (MV) for disturbance rejection (steady state)
= observed change (movement) in input from historical data
SMOOTH CONTROL
c
d
max
Exception to rule: Can have lower K c if disturbances are handled by the integral action.
Disturbances must occur at a frequency lower than 1/
I
Applies to: Process with short time constant (
1 and no delay (
¼ 0). is small)
For example, flow control
Then
I
=
1 is small so integral action is “large”
SMOOTH CONTROL
Easy loops: Small effective delay (
¼ 0), so closedloop response time
c
(>>
) is selected for “smooth control”
ASSUME VARIABLES HAVE BEEN SCALED WITH
RESPECT TO THEIR SPAN SO THAT |u
0
/y max
| = 1
(approx.).
Flow control: K c
=0.2,
I
=
1
= time constant valve
(typically, 2 to 10s; close to pure integrating!)
Level control: K c
=2 (and no integral action)
Other easy loops (e.g. pressure): K c
= 2,
I
= min(4
c
,
1
)
Note: Often want a tight pressure control loop (so may have
K c
=10 or larger)
SIMC tuning rules
1. Tight control: Select
c
=
corresponding to
2. Smooth control. Select K c
¸
Note: Having selected K c
(or selected as given above
c
), the integral time
I should be
3. Derivative time: Only for dominant second-order processes
1.
4.
5.
2.
3.
Integrating processes (level control)
Other special processes and examples
When do we need derivative action?
Near-optimality of SIMC PID tuning rules
Non PID-control: Is there an advantage in using Smith
Predictor? (No)
46 April 4-8, 2004 KFUPM-Distillation Control Course
SMOOTH CONTROL LEVEL CONTROL
Averaging level control q
V
LC
If you insist on integral action then this value avoids cycling
Reason for having tank is to smoothen disturbances in concentration and flow.
Tight level control is not desired: gives no “smoothening” of flow disturbances.
Proof: 1. Let
|u
0
| = |
q
0
|y max
| – expected flow change [m3/s] (input disturbance)
| = |
V max
| - largest allowed variation in level [m3]
Minimum controller gain for acceptable disturbance rejection:
K c
¸ K c,min
= |u
0
|/|y max
| = |
q
0
| / |
V max
|
2. From the material balance (dV/dt = q – q out
), the model is g(s)=k ’/s with k’=1.
Select K c
=K
c,min
. SIMC-Integral time for integrating process:
I
= 4 / (k ’ K c
) = 4 |
V max
| / |
q provided tank is nominally half full and
q
0
0
| = 4 ¢ residence time is equal to the nominal flow.
LEVEL CONTROL
Level control often causes problems
Typical story:
Level loop starts oscillating
Operator detunes by decreasing controller gain
Level loop oscillates even more
......
???
Explanation: Level is by itself unstable and requires control.
LEVEL CONTROL
Slow oscillations (K c too low): P > 3 ¿
I
Fast oscillations (K c too high): P < 3 ¿
I
Here: Consider the less common slow oscillations
LEVEL CONTROL
• Simplest: Use P-control only (no integral action)
• If you insist on integral action, then make sure the controller gain is sufficiently large
• If you have a level loop that is oscillating then use Sigurds rule (can be derived):
To avoid oscillations, increase K c f=0.1¢(P
0
/
I0
) 2 where
¢
I by factor
P
0
I0
= period of oscillations [s]
= original integral time [s]
0.1 ¼ 1/
2
LEVEL CONTROL
We were called upon to solve a problem with oscillations in a distillation column
Closer analysis: Problem was oscillating reboiler level in upstream column
Use of Sigurd’s rule solved the problem
LEVEL CONTROL
SIMC-tunings
One tuning parameter:
c
SIMC-tunings
IPZ-process may represent response from steam flow to pressure
Rule T2:
SIMC-tunings
These tunings turn out to be almost identical to the tunings given on page 104-106 in the Ph.D. thesis by O. Slatteke, Lund Univ., 2006 and K. Forsman, "Reglerteknik for processindustrien",
Studentlitteratur, 2005.
Note: Derivative action is commonly used for temperature control loops.
Select
D equal to
2
= time constant of temperature sensor
Optimal PI*
= I-control
θ=1
Time delay process: Setpoint and disturbance responses same + input response same
* D-action (ID-control) is equivalent to PI-control (with ¿
I
>0)
)
Alt. 1. Improved PI-rule (iSIMC-PI): Add θ/3 to
1
Alt. 2. Improved PID-rule (iSIMC-PID): Add θ/3 to
2 iSIMC-PI and iSIMC-PID are identical for pure delay process ( ¿
1
=0) iSIMC-PID is better for integrating process
0 .
5
0
− 0 .
5
− 1
− 1 .
5
0
3
2
1
0
0 d o
10 i SI M C P I D d i
20
T ime, t
10
G ( s ) =
1 s e
− s
30
SI M
C P o p t P I D
I
40
20
T ime, t
S
I
M
C
P
I i SI M C P I D o p t P I D o p t P
I
30 40
How good are the SIMC-rules compared to optimal PI/PID?
Multiobjective. Tradeoff between
Output performance
High controller gain ( “tight control”)
Robustness
Input usage
Noise sensitivity
Low controller gain ( “smooth control”)
• Quantification
– Output performance:
• Rise time, overshoot, settling time
• IAE or ISE for setpoint/disturbance
– Robustness:
M s
, M t
, GM, PM, Delay margin,
…
– Input usage:
||KSG d
||, TV(u) for step response
– Noise sensitivity: ||KS||, etc.
Our choice:
J
= avg. IAE for setpoint/disturbance
M s = peak sensitivity
Performance (J): y sp
− e
K ( s ) u
+ d i
G ( s )
+ d o y
1 .
5
1
0 .
5
0
− 0 .
5
I AE do d o
2 4 6 8
T ime, t
10
1 .
5
1
0 .
5
0
− 0 .
5
I AE di d i
2 4 6 8
T ime, t
10
Robustness (Ms):
J
IAE vs. M s for optimal PI / PID (-) and SIMC ( ¢¢ ) for 4 processes
CONCLUSION: SIMC almost «Pareto-optimal»
Note: “PID” weightings used for J
IAE
Suprisingly, the answer is:
NO, worse
The Smith Predictor
Where K is a “normal” controller
IMC controller
Special case of Smith Predictor where K is a PI controller with the parameters
¿
1
K c
> 0
= ¿
1
/(k ¿ c
)
¿
I
= ¿
1
¿
1
K c
K i
= 0
=0
= K c
/ ¿
I
= 1/ ¿ c
(I-controller)
Comparison of J vs. Ms for optimal and SIMC for 4 processes
CONCLUSION: i-SIMC is generally better than IMC & SP!
y
µ = 1 µ = 1:43 µ = 0:57 time time
Smith Predictor: Sensitive to both positive and negative delay error time g(s) = k e
¡ s s+ 1
SP = Smith Predictor
Reason: SP & IMC can have multiple GM, PM, DM
CONCLUSION
Well-tuned PI or PID is better than Smith Predictor or IMC!!
Especially for integrating processes