Sei sulla pagina 1di 20

Practical PID Control: Use Filters for Better Disturbance Rejection.

Patrick Thorpe (Speaker) Doug Nicholson Sbastien Osta Shabroz Gill, IPCOS(UK) Ltd. Cambridge, UK

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.

The APC pre-test is the opportunity to give the basic control the attention it deserves.

Regulatory control forms the foundation layer for the APC. Use the pre-test to ensure that the design of the regulatory control is correct. Look at the choice of control algorithms, tuning and any additions such as feed-forward control, pressure compensation etc. These design decisions will all affect significantly the overall process dynamics and the performance of the APC. Not only will the work done during the pre-test pay dividends during the APC project, changing the tuning later on may require costly re-work.
3

Optimisation Based PID Tuning


Process Model
m

GL GM -I
x

Objective Function

J J1 J 2 J 3
J1 = Set point response IAE J2 = Load rejection IAE J3 = Control effort

Controller Model
min st

B
J

xset

kc ,i , I ,i , D ,i

c j (kc ,i , I ,i , D ,i ) 0,

i 1,..., n loops, j 1,..., m constraints

Constraints 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.
4

Constraint Example #1: Controller robustness constraint.

Combined Robustness Constraint Dead Time Margin = 2 Gain Margin = 3

Upper Stability Region

Constraint Example # 2: Maximum OP overshoot.

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 a tuning constraint to Max OP Overshoot limit movement.

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 are frequent and can be severe. Load disturbances can be any external effect on the control loop including rate changes, ambient effects etc. Note that for SISO tuning we generally use a simulated OP step to characterise the disturbance. In reality disturbances will 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.

Tuning for Load Rejection


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

Filters in the PID Loop


External Filters

Internal Filter

Filters in the PID Loop


Noise is random variation in the measured value at frequency higher than the controller bandwidth. The controller cant control the noise and may amplify it. Controller gain and derivative action can be reduced to avoid this, but at the expense of compromising load rejection. Adding a filter attenuates the noise allowing a higher gain but the filter also adds lag which means that the controller has to be detuned to maintain stability criteria. The optimum filter is the lowest acceptable value that rejects most of the noise (higher order filters and least squares filters can also help). The control parameters must then be redesigned to take account of the filter.
10

Increase in load rejection IAE following a disturbance, increasing filter lag.

IAE vs Filter Time (Noise Free Case)


90

88

86

84

IAE
82

80

78

76 0 20 40 60 80 100 120 140

Filter Time (Seconds)

11

Noise Amplification within the PID calculation Amplitude = 0.005, Freq = 0.2 * Ts 0.2 K = 6.1, Ti = 6.9, D = 0.18

0.15

0.1

Prop Int Deriv


0.05

0
1 301 601 901 1201 1501 1801 2101 2401 2701 3001 3301 3601

-0.05

12

Derivative Filter
Because the noise amplification effect is seen most significantly in the derivative action of the controller it makes sense to filter only the portion of the signal destined for this part of the loop. Some DCS vendors provide a means to filter the derivative term directly by appropriate modification of the PID 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 take account of the modified controller design.
13

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

Set Point Response and Load Response: Increasing values of Alpha

Load Response SP Response

OP Movement

15

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.5 when /tau is small. When Alpha is not available then use the Proportional on PV option if available.
16

Cascade Tuning
Optimum performance of the primary loop in a cascade depends on the secondary controller being tightly tuned for load rejection. So can we use the SP weighting technique to improve cascade performance as we know it can improve IAE in the secondary? Process simulation example:

17

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 the secondary loop.

Increasing Alpha.
0 1 0.4

18

Simulation Results
Imposing a filter between the primary and secondary loops degrades the performance of the primary loop significantly and should be avoided. Remember that using Proportional on PV (Honeywell Eqn C) in the secondary is equivalent to imposing a first order lag equal to the secondary 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 big moves 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 the primary.

19

Conclusions
Load rejection should always be the main consideration when tuning PID loops. Some of the limitations to increased disturbance rejection can be moderated by modifications to the basic control design through external or internal filters. The drawback is that these modifications introduce more tuning parameters that have to be adjusted in order to achieve the desired performance. Optimisation based tuning techniques allow the control engineer to tune this extended set of parameters taking into account practical design considerations.

20

Potrebbero piacerti anche