Presentation is loading. Please wait.

Presentation is loading. Please wait.

Practical plantwide process control: PID tuning

Similar presentations


Presentation on theme: "Practical plantwide process control: PID tuning"— Presentation transcript:

1 Practical plantwide process control: PID tuning
Sigurd Skogestad, NTNU

2 Part 4: PID tuning 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) Feedforward control and Two degrees-of-freedom control 

3 Operation: Decision and control layers
RTO Min J (economics); MV=y1s cs = y1s CV=y1; MV=y2s MPC y2s PID CV=y2; MV=u u (valves)

4 PID controller 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 (Kc and τI) How difficult can it be to tune??? Surprisingly difficult without systematic approach!

5 Disadvantages Ziegler-Nichols: Aggressive settings No tuning parameter
Trans. ASME, 64, (Nov. 1942). Comment: Similar to SIMC for integrating process with ¿c=0 (aggressive!): Kc = 1/k’ 1/µ ¿I = 4 µ Disadvantages Ziegler-Nichols: Aggressive settings No tuning parameter Poor for processes with large time delay (µ)

6 Disadvantage IMC-PID (=Lambda tuning):
Many rules Poor disturbance response for «slow» processes (with large ¿1/µ)

7 Motivation for developing SIMC PID tuning rules
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.

8 SIMC PI tuning rule 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 (¿I = ¿1) Ziegler-Nichols: Similar to SIMC for large ¿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, , 2003 (*) “Probably the best simple PID tuning rules in the world”

9 MODEL Need a model for tuning 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>µ

10 1. Step response experiment
MODEL, Approach 1A 1. Step response experiment Make step change in one u (MV) at a time Record the output (s) y (CV)

11 First-order plus delay process
MODEL, Approach 1A First-order plus delay process Step response experiment k’=k/1 STEP IN INPUT u (MV) RESULTING OUTPUT y (CV) : Delay - Time where output does not change 1: Time constant - Additional time to reach 63% of final change k : steady-state gain =  y(1)/ u k’ : slope after response “takes off” = k/1

12 MODEL, Approach 1A Δy(∞) RESULTING OUTPUT y STEP IN INPUT u Δ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

13 Step response integrating process
MODEL, Approach 1A Step response integrating process Δy Δt

14 MODEL, Approach 1B Shams’ method: Closed-loop setpoint response with P-controller with about 20-40% overshoot Kc0=1.5 Δys=1 Δy∞ 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^ *Mo + 1.0 r = 2*A*abs(b/(1-b)) %2. OBTAIN FIRST-ORDER MODEL: k = (1/Kc0) * abs(b/(1-b)) theta = tp*[ *exp(-0.61*r)] tau = theta*r 3. CAN THEN USE SIMC PI-rule Δyp=0.79 Δyu=0.54 tp=4.4 Example 2: Get k=0.99, theta =1.68, tau=3.03 Ref: Shamssuzzoha and Skogestad (JPC, 2010) + modification by C. Grimholt (Project, NTNU, 2010; see also PID-book 2012)

15 2. Model reduction of more complicated model
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 

16 MODEL, Approach 2

17 MODEL, Approach 2 Example 1 Half rule

18 MODEL, Approach 2 original 1st-order+delay

19 MODEL, Approach 2 2 half rule

20 MODEL, Approach 2 original 1st-order+delay 2nd-order+delay

21 Original 7th order, g0 1st-order, half rule, g1 2nd-order, half rule, g2 1st-order, closed loop, gcl

22 Approximation of zeros
MODEL, Approach 2 Approximation of zeros 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) c c c c c c Alternative and improved method for 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

23 Derivation of SIMC-PID tuning rules
SIMC-tunings Derivation of SIMC-PID tuning rules PI-controller (based on first-order model) For second-order model add D-action. For our purposes, simplest with the “series” (cascade) PID-form:

24 Basis: Direct synthesis (IMC)
SIMC-tunings Basis: Direct synthesis (IMC) Closed-loop response to setpoint change Idea: Specify desired response: and from this get the controller. ……. Algebra:

25 SIMC-tunings NOTE: Setting the steady-state gain = 1 in T will result in integral action in the controller!

26 IMC Tuning = Direct Synthesis
SIMC-tunings IMC Tuning = Direct Synthesis Algebra:

27 SIMC-tunings Integral time Found: Integral time = dominant time constant (I = 1) (IMC-rule) Works well for setpoint changes Needs to be modified (reduced) for integrating disturbances Example. “Almost-integrating process” with disturbance at input: G(s) = e-s/(30s+1) Original integral time I = 30 gives poor disturbance response Try reducing it! g c d y u

28 Integral Time SIMC-tunings I = 1 Reduce I to this value:
I = 4 (c+) = 8  Setpoint change at t=0 Input disturbance at t=20

29 SIMC-tunings Integral time 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 “pre-filtering”, y’s = f(s) ys. Details: See Remark 13 II

30 Conclusion: SIMC-PID Tuning Rules
SIMC-tunings Conclusion: SIMC-PID Tuning Rules One tuning parameter: c

31 Some insights from tuning rules
SIMC-tunings Some insights from tuning rules 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)θ

32 Cascade PID -> Ideal PID

33 SIMC-tunings

34 Selection of tuning parameter c
SIMC-tunings Selection of tuning parameter c Two main cases TIGHT CONTROL: Want “fastest possible control” subject to having good robustness Want tight control of active constraints (“squeeze and shift”) SMOOTH CONTROL: Want “slowest possible 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: SMOOTH CONTROL:

35 TIGHT CONTROL

36 Typical closed-loop SIMC responses with the choice c=
TIGHT CONTROL Typical closed-loop SIMC responses with the choice c=

37 Example. Integrating process with delay=1. G(s) = e-s/s.
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

38 TIGHT CONTROL Approximate as first-order model:
k=1, 1 = 1+0.1=1.1, = = 0.148 Get SIMC PI-tunings (c=): Kc = 1 ¢ 1.1/(2¢ 0.148) = 3.71, I=min(1.1,8¢ 0.148) = 1.1 Approximate as second-order model: k=1, 1 = 1, 2= =0.22, = = 0.028 Get SIMC PID-tunings (c=): Kc = 1 ¢ 1/(2¢ 0.028) = 17.9, I=min(1,8¢ 0.028) = 0.224, D=0.22

39 Tuning for 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 >  for slower control 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 Kc? Will derive Kc,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), (2006).

40 Closed-loop disturbance rejection
SMOOTH CONTROL Closed-loop disturbance rejection d0 -d0 ymax -ymax

41 u Kc SMOOTH CONTROL Minimum controller gain for PI-and PID-control:
min |c(j)| = Kc

42 SMOOTH CONTROL Rule: Min. controller gain for acceptable disturbance rejection: Kc ¸ |ud|/|ymax| often ~1 (in span-scaled variables) |ymax| = allowed deviation for output (CV) |ud| = required change in input (MV) for disturbance rejection (steady state) = observed change (movement) in input from historical data

43 SMOOTH CONTROL Rule: Kc ¸ |ud|/|ymax| Exception to rule: Can have lower Kc 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 is small) and no delay ( ¼ 0). For example, flow control Then I = 1 is small so integral action is “large”

44 Summary: Tuning of easy loops
SMOOTH CONTROL Summary: Tuning of easy loops Easy loops: Small effective delay ( ¼ 0), so closed-loop response time c (>> ) is selected for “smooth control” ASSUME VARIABLES HAVE BEEN SCALED WITH RESPECT TO THEIR SPAN SO THAT |u0/ymax| = 1 (approx.). Flow control: Kc=0.2, I = 1 = time constant valve (typically, 2 to 10s; close to pure integrating!) Level control: Kc=2 (and no integral action) Other easy loops (e.g. pressure): Kc = 2, I = min(4c, 1) Note: Often want a tight pressure control loop (so may have Kc=10 or larger)

45 Conclusion PID tuning 3. Derivative time: Only for dominant second-order processes

46 PID: More (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) April 4-8, 2004 KFUPM-Distillation Control Course

47 1. Application of smooth control
LEVEL CONTROL 1. Application of smooth control Averaging level control V q 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 |u0| = |q0| – expected flow change [m3/s] (input disturbance) |ymax| = |Vmax| - largest allowed variation in level [m3] Minimum controller gain for acceptable disturbance rejection: Kc ¸ Kc,min = |u0|/|ymax| = |q0| / |Vmax| 2. From the material balance (dV/dt = q – qout), the model is g(s)=k’/s with k’=1. Select Kc=Kc,min. SIMC-Integral time for integrating process: I = 4 / (k’ Kc) = 4 |Vmax| / | q0| = 4 ¢ residence time provided tank is nominally half full and q0 is equal to the nominal flow.

48 More on 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.

49 Level control: Can have both fast and slow oscillations
Slow oscillations (Kc too low): P > 3¿I Fast oscillations (Kc too high): P < 3¿I Here: Consider the less common slow oscillations

50 How avoid oscillating levels?
LEVEL CONTROL How avoid oscillating levels? 0.1 ¼ 1/2

51 Case study oscillating level
LEVEL CONTROL Case study oscillating level 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

52 LEVEL CONTROL

53 SIMC-tunings 2. Some special cases One tuning parameter: c

54 Another special case: IPZ process
SIMC-tunings Another special case: IPZ process 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 in the Ph.D. thesis by O. Slatteke, Lund Univ., 2006 and K. Forsman, "Reglerteknik for processindustrien", Studentlitteratur, 2005.

55 3. Derivative action? Note: Derivative action is commonly used for temperature control loops. Select D equal to 2 = time constant of temperature sensor

56 Pure time delay process: Minor improvement by adding D-action
Optimal PI = I-control θ=1 Time delay process: Setpoint and disturbance responses same + input response same

57 Pure time delay process

58 ) Two alternative “Improved SIMC”-rules
Alt. 1. Improved PI-rule (iSIMC-PI): Add θ/3 to 1 Alt. 2. Improved PID-rule (iSIMC-PID): Add θ/3 to D iSIMC-PI and iSIMC-PID are identical for pure delay process (¿1=0) BUT in general: iSIMC-PID is better (1 > θ/3)

59 Example: Integrating process

60 4. Optimality of SIMC rules
How good are the SIMC-rules compared to optimal PI/PID? High controller gain (“tight control”) Low controller gain (“smooth control”) Multiobjective. Tradeoff between Output performance Robustness Input usage Noise sensitivity Our choice: Quantification Output performance: Rise time, overshoot, settling time IAE or ISE for setpoint/disturbance Robustness: Ms, Mt, GM, PM, Delay margin, … Input usage: ||KSGd||, TV(u) for step response Noise sensitivity: ||KS||, etc. J = avg. IAE for setpoint/disturbance Ms = peak sensitivity

61 Performance (J):

62 Robustness (Ms):

63 JIAE vs. Ms for optimal PI/PID (-) and SIMC (¢¢) for 4 processes
CONCLUSION: SIMC almost «Pareto-optimal» Note: “PID” weightings used for JIAE

64 5. Better with IMC, Smith Predictor or MPC?
Suprisingly, the answer is: NO IMC and SP are actually worse than well-tuned PID Poor for integrating process Poor time delay margin SP = Smith Predictor

65 IMC controller (tuned for setpoints)
The Smith Predictor Where K is a “normal” PID controller IMC controller (tuned for setpoints) = Special case of Smith Predictor where K is a PI controller with the parameters ¿1 > 0 ¿1 = 0 Kc = ¿1/(k ¿c) ¿I = ¿1 Kc =0 Ki = Kc/¿I = 1/¿c (I-controller)

66 Comparison of J vs. Ms for optimal and SIMC for 4 processes
IMC and SP: Gets worse as process becomes integrating CONCLUSION: i-SIMC is generally better than IMC & SP!

67 Step responses with delay error
time time time Smith Predictor and IMC: Sensitive to both positive and negative time delay error

68 Reason: SP & IMC can have multiple GM, PM, DM

69 CONCLUSION COMPARISON WITH SP & IMC
Well-tuned PI or PID (using i-SIMC rules) is better than Smith Predictor or IMC!! Especially for integrating processes

70 6. Feedforward control Model: y = g u + gd d
Measurement dm cff gdm Model: y = g u + gd d Measured disturbance: dm = gdm d Feedforward controller: u = cFF dm Get y = (g cFF gdm + gd) d Ideal feedforward: y = 0 ) cFF,ideal = - g-1 gd gdm-1 = - (gd / (gdm g) In practice: cFF(s) must be realizable Order pole polynomial ¸ order zero polynomial No prediction allowed (µ can not be negative) And must avoid that CFF has too high gain to avoid (to avoid aggressive input changes) Common simplification: cFF = k (static gain) General. Approximate cFF,ideal as :

71 When use feedforward? When feedback alone is not good
For example, if the measurement of y has a long delay When the disturbance response (gd) is “slow” compared to the input response (g) cFF,ideal = - gd / (gdm g) is then realizable, and the feedforward has “more time” to take the right action For example, if gd has a larger delay than g (so that cFF,ideal has a delay) or if gd has a larger time constant than g

72 Example d2 d1 d1 d2

73 Example «Chicken factor»

74 Feedforward control (measure d1 & d2)
d1: cff = -(20*s+1)/(2*s+1) d2: cff2 = -1 (not shown) d1 d2

75 Simulation feedforward
100 200 300 400 500 600 0.5 1 1.5 2 2.5 3 3.5 4 FEEDBACK ONLY y1 FEEDFORWARD ADDED FOR d1 and d2 Setpoint change d2 d1

76 Main problem feedforward: Need good models “If process gain increases by more than a factor 2, then ideal feedforward control is worse than no control” Proof: y = g u + gd d where u=cFF d Let cFF = - gd/g Ideal: Get y = g cFF d + gd d = 0 so term “g cFF d” is equal to “-gd d” Real: If g has increased by a factor x then y = x(-gd d) + gd d = (-x+1) gd d And we have that |-x+1|>1 (worse than no control) for x>2. Example, x=2.1, gd d=1, Ideal y = gd d = 1 Real: y = (-2.1+1)*1 = -1.1 (which is greater than 1 in magnitude, so y overshoots y by more than 1 on the other side)

77 7. Two degrees-of-freedom control
Typically, the feedforward block is A = G--1Fr where G- is the invertible part of G. A typical choice for the prefilter is Fr = 1/(τrs+1) Example. G=(-3s+1)exp(-4s)/(7s+1)^2, Fv=1 (perfect measurement) and taur=2. Use “IMC-like” design and write G = G+ G- where G+=exp(-4s)(-3s+1)/(3s+1) and G-=(3s+1)/(7s+1)^2. Gives A = (7s+1)^2/(3s+1)(2s+1) We want to choose B such that A and K can be designed independently!! Solution (Lang and Ham ,1955): Choose B=FyGA so that transfer function from r to e is zero (with perfect model) !! The feedback will then only take action if the feedforward is not working as expected (due to model error). We must have B(0)=I so that we will have no offset (y=r at steady state) even with model error for G Example. B(s) = FyGA = FyG+Fr = exp(-4s)(-3s+1)/(3s+1)(2s+1). Note that B(0)=1. The feedback controller K can be designed for disturbance rejection and robustness, e.g., using SIMC rules. Example. Approximate as first-order with delay process with theta=4+3+7/2=10.5 and tau1=7+7/2=10.5, and use SIMC! With tauc=theta get Kc=0.5 and taui=10.5.


Download ppt "Practical plantwide process control: PID tuning"

Similar presentations


Ads by Google