8/6/2019 Practical PID Control_filters
1/20
Practical PID Control: Use Filtersfor Better Disturbance Rejection.
Patrick Thorpe (Speaker)Doug Nicholson
Sbastien OstaShabroz Gill,
IPCOS(UK) Ltd. Cambridge, UK
8/6/2019 Practical PID Control_filters
2/20
Contents
Importance of the Pre-Test. Optimisation based PID tuning.
Tuning for Load rejection.
External & Internal Filters in the PID Loop
Set Point Filters.
Cascade Tuning.
Conclusions.
2
8/6/2019 Practical PID Control_filters
3/20
The APC pre-test is the opportunity to give thebasic control the attention it deserves.
Regulatory control forms the foundation layer for theAPC.
Use the pre-test to ensure that the design of theregulatory control is correct.
Look at the choice of control algorithms, tuning and anyadditions such as feed-forward control, pressurecompensation etc.
These design decisions will all affect significantly theoverall process dynamics and the performance of the
APC.
Not only will the work done during the pre-test paydividends during the APC project, changing the tuninglater on may require costly re-work.
3
8/6/2019 Practical PID Control_filters
4/20
Optimisation Based PID Tuning
4
GM
GL
B
-I
m
Objective Function
, , ,, ,
, , ,
min
( , , ) 0, 1,..., loops, 1,..., constraints
c i I i D ik
j c i I i D i
J
st
c k i n j m
Max PV overshoot following SP change.Max OP kick following SP change.Min damping ratio.Max noise amplification in OP.Max model gain mismatch & dead time mismatch.
Process Model
Controller Model
Constraints
1 2 3 J J J J
J1 = Set point response IAEJ2 = Load rejection IAEJ3 = Control effort
x
xset
8/6/2019 Practical PID Control_filters
5/20
Constraint Example #1: Controller robustnessconstraint.
5
Upper Stability Region
Combined Robustness Constraint
Dead Time Margin = 2Gain Margin = 3
8/6/2019 Practical PID Control_filters
6/20
Constraint Example # 2: Maximum OP overshoot.
6
For processes where /tau is small, optimal SP tuning
may generate unacceptable MV movement. This may be unattainable or undesirable for the
process (e.g. fired heater firing).
The OP may be an APC CV constraint that we want to
push to a limit. The OP overshoot
can be included as atuning constraint to
limit movement.
Max OP Overshoot
8/6/2019 Practical PID Control_filters
7/20
Tuning for Load Rejection
For the majority of loops, load rejection is far more important
than set point response. On most critical loops (liquid levels, pressure, temperature,
etc.) set points are rarely changed, while load changes arefrequent and can be severe.
Load disturbances can be any external effect on the controlloop including rate changes, ambient effects etc.
Note that for SISO tuning we generally use a simulated OPstep to characterise the disturbance. In reality disturbanceswill have different dynamic impacts and may be easier or
harder to reject. MIMO tuning allows us to model the impact of other
disturbance such as those from interacting controllers.
7
8/6/2019 Practical PID Control_filters
8/20
Tuning for Load Rejection
8
Tuning for best load rejection will result in a higher gain
controller compared to setpoint tuning.
When /tau is small (lag dominant) we buy a lot of load
rejection for a small sacrifice in SP overshoot.
For dead time dominated processes the trade off will be
much smaller.
SP Response Load Response
8/6/2019 Practical PID Control_filters
9/20
Filters in the PID Loop
9
I
External Filters
Internal Filter
8/6/2019 Practical PID Control_filters
10/20
Filters in the PID Loop
10
Noise is random variation in the measured value atfrequency higher than the controller bandwidth.
The controller cant control the noise and may amplify it.
Controller gain and derivative action can be reduced toavoid this, but at the expense of compromising loadrejection.
Adding a filter attenuates the noise allowing a highergain but the filter also adds lag which means that thecontroller has to be detuned to maintain stability criteria.
The optimum filter is the lowest acceptable value thatrejects most of the noise (higher order filters and leastsquares filters can also help).
The control parameters must then be redesigned to takeaccount of the filter.
8/6/2019 Practical PID Control_filters
11/20
Increase in load rejection IAE following adisturbance, increasing filter lag.
11
76
78
80
82
84
86
88
90
0 20 40 60 80 100 120 140
IAE
Filter Time (Seconds)
IAE vs Filter Time (Noise Free Case)
8/6/2019 Practical PID Control_filters
12/20
Noise Amplification within the PID calculationAmplitude = 0.005, Freq = 0.2 * Ts
12
-0.05
0
0.05
0.1
0.15
0.2
1 301 601 901 1201 1501 1801 2101 2401 2701 3001 3301 3601
Prop
Int
Deriv
K = 6.1, Ti = 6.9, D = 0.18
8/6/2019 Practical PID Control_filters
13/20
Derivative Filter
Because the noise amplification effect is seen most
significantly in the derivative action of the controller itmakes sense to filter only the portion of the signaldestined for this part of the loop.
Some DCS vendors provide a means to filter the
derivative term directly by appropriate modification of thePID equation.
An alternative variation is an output filtered PID equation.
These modifications effectively create a 4 term PID
controller. There are very few published guidelines for tuning the 4
term controller, some commercial tuning package takeaccount of the modified controller design.
13
8/6/2019 Practical PID Control_filters
14/20
Set Point Filter
Some DCS vendors provide the option of weighting the
SP contribution in the PID loop. This is equivalent to adding a filter to the SP.
14
8/6/2019 Practical PID Control_filters
15/20
Set Point Response and Load Response: Increasing values of Alpha
15
SP Response
OP Movement
Load Response
8/6/2019 Practical PID Control_filters
16/20
Set Point Filter
This allows us to tune the controller for load rejection
without the penalty of excessive SP overshoot. When Tfilt = Ti (Alpha=0) then all of the proportional
action is on PV. (Honeywell Type C Equation).
Two stage tuning process using SP weighting
(Alpha)1. Set the Alpha parameter to 0 (P on PV).2. Optimise the controller for load rejection.3. Adjust Alpha to optimise the desired SP response.4. This usually results in settings in the range 0.2 0.5when /tau is small.
When Alpha is not available then use the Proportional onPV option if available.
16
8/6/2019 Practical PID Control_filters
17/20
Cascade Tuning
Optimum performance of the primary loop in a cascade depends onthe secondary controller being tightly tuned for load rejection.
So can we use the SP weighting technique to improve cascadeperformance as we know it can improveIAE in the secondary?
Process simulation example:
17
8/6/2019 Practical PID Control_filters
18/20
Simulation Results
The secondary (temperature) loop was tuned for optimal load
rejection. The plot shows the improvement in primary (composition) loop load
rejection performance as Alpha is increased from 0 to 1 in thesecondary loop.
18
Increasing Alpha.
00.4
1
8/6/2019 Practical PID Control_filters
19/20
Simulation Results
Imposing a filter between the primary and secondary loops degrades
the performance of the primary loop significantly and should beavoided.
Remember that using Proportional on PV (Honeywell Eqn C) in thesecondary is equivalent to imposing a first order lag equal to thesecondary integral time!
The same will apply if the controller is an APC MV. If we limit the primary (or APC) moves to small values then
excessive SP kick may not be a problem. But be careful about bigmoves during the step test!
The other concern is when the primary is disabled (or APC off).
Some DCS vendors provide alternative tuning in this case.
For a PID cascade Proportional on error will be beneficial in theprimary.
19
8/6/2019 Practical PID Control_filters
20/20
Conclusions
Load rejection should always be the main considerationwhen tuning PID loops.
Some of the limitations to increased disturbancerejection can be moderated by modifications to the basiccontrol design through external or internal filters.
The drawback is that these modifications introduce moretuning parameters that have to be adjusted in order toachieve the desired performance.
Optimisation based tuning techniques allow the controlengineer to tune this extended set of parameters takinginto account practical design considerations.
20