PID Tuning using the SIMC rules Sigurd Skogestad

advertisement
PID Tuning
using the SIMC rules
Sigurd Skogestad
NTNU, Trondheim, Norway
September 2008
1.
2.
3.
4.
5.
6.
Model
SIMC-tunings
Tight control
Smooth control
Level control
Discussion points
Operation: Decision and control layers
RTO
cs = y1s
Min J (economics);
MV=y1s
CV=y1; MV=y2s
MPC
y2s
PID
CV=y2; MV=u
u (valves)
Stepwise procedure plantwide control
I. TOP-DOWN
Step 1. DEGREES OF FREEDOM
Step 2. OPERATIONAL OBJECTIVES
Step 3. WHAT TO CONTROL? (primary CV’s c=y1)
Step 4. PRODUCTION RATE
II. BOTTOM-UP (structure control system):
Step 5. REGULATORY CONTROL LAYER (PID)
“Stabilization”
What more to control? (secondary CV’s y2)
Step 6. SUPERVISORY CONTROL LAYER (MPC)
Decentralization
Step 7. OPTIMIZATION LAYER (RTO)
Can we do without it?
PID controller
e

Time domain (“ideal” PID)

Laplace domain (“ideal”/”parallel” form)

Usually τD=0. Only two parameters left (Kc and τI)…
How difficult can it be???


Surprisingly difficult without systematic approach!
Let’s start with the CONCLUSION
Tuning of PID controllers



SIMC tuning rules (“Skogestad IMC”)(*)
Main message: Can usually do much better by taking a
systematic approach
Key: Look at initial part of step response
Initial slope: k’ = k/1

One tuning rule! Easily memorized
c ≥ - : desired closed-loop response time (tuning parameter)
•For robustness select: c ≥ 
Reference: S. Skogestad, “Simple analytic rules for model reduction and PID controller design”, J.Proc.Control, Vol. 13,
291-309, 2003 (Also reprinted in MIC)
(*) “Probably the best simple PID tuning rules in the world”
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

MODEL, Approach 1A
1. Step response experiment


Make step change in one u (MV) at a time
Record the output (s) y (CV)
MODEL, Approach 1A
First-order plus delay process
RESULTING OUTPUT y (CV)
k’=k/1
STEP IN INPUT u (MV)
Step response experiment
 Delay - Time where output does not change
1: Time constant - Additional time to reach 63% of final change
k : steady-state gain =  y(∞)/ u
k’ : slope after response “takes off” = k/1
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
MODEL, Approach 1A
Step response integrating process
Δy
Δt
MODEL, Approach 1B
Model from closed-loop response
with P-controller
Kc0=1.5
Δys=1
Δy∞
dyinf = 0.45*(dyp + dyu)
Mo =(dyp -dyinf)/dyinf
b=dyinf/dys
Δyp=0.79
Δyu=0.54
A = 1.152*Mo^2 - 1.607*Mo + 1.0
r = 2*A*abs(b/(1-b))
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
Ref: Shamssuzzoha and Skogestad (JPC, 2010)
+ modification by C. Grimholt (Project, NTNU, 2010)
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
Example 1
Half rule
MODEL, Approach 2
original
1st-order+delay
MODEL, Approach 2
2
half rule
MODEL, Approach 2
original
1st-order+delay
2nd-order+delay
Original 7th order, g0
1st-order, half rule, g1
2nd-order, half rule, g2
1st-order, closed loop, gcl
PIhalf-rule
PIcl
PID
PID
PIhalf-rule
PIcl
MODEL, Approach 2
Approximation of zeros
c
c
c
c
c
c
Correction: More generally replace θ by τc in the above rules
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)
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:
SIMC-tunings
Basis: Direct synthesis (IMC)
Closed-loop response to setpoint change
Idea: Specify desired response:
and from this get the controller. ……. Algebra:
SIMC-tunings
SIMC-tunings
IMC Tuning = Direct Synthesis
Algebra:
SIMC-tunings
Integral time



Found: Integral time = dominant time constant (I = 1)
Works well for setpoint changes
Needs to be modified (reduced) for integrating disturbances
d
c
u
g
y
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!
SIMC-tunings
Integral Time
I = 1
Reduce I to this value:
I = 4 (c+) = 8 
Setpoint change at t=0
Input disturbance at t=20
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 “prefiltering”, y’s = f(s) ys.
Details: See www.nt.ntnu.no/users/skoge/publications/2003/tuningPID Remark 13 II
SIMC-tunings
Conclusion: SIMC-PID Tuning Rules
One tuning parameter: c
SIMC-tunings
Some insights from tuning rules
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
Some special cases
One tuning parameter: c
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 104-106 in the Ph.D.
thesis by O. Slatteke, Lund Univ., 2006 and K. Forsman, "Reglerteknik for processindustrien",
Studentlitteratur, 2005.
SIMC-tunings
Note: Derivative action is commonly used for temperature control loops.
Select D equal to 2 = time constant of temperature sensor
SIMC-tunings
SIMC-tunings
SIMC-tunings
Selection of tuning parameter c
Two main cases
1. TIGHT
CONTROL:
Want “fastest possible
TIGHT CONTROL:
control” subject to having good robustness
•
2.
SMOOTH CONTROL:
CONTROL: Want “slowest possible
control” subject to acceptable disturbance rejection
•
•
Want tight control of active constraints (“squeeze and shift”)
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=∞
SIMC-tunings with c with ==1:
IMC has I=∞
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 with k=1, 1 = 1+0.1=1.1, =0.1+0.04+0.008 = 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
2.
Approximate as second-order model with k=1, 1 = 1, 2=0.2+0.02=0.22, =0.02+0.008 = 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
SMOOTH CONTROL
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), 7817-7822 (2006).
SMOOTH CONTROL
Closed-loop disturbance rejection
d0
-d0
ymax
-ymax
SMOOTH CONTROL
3
10
2
10
|cPID|
1
10
Kc
|d
u |/|y
0
|cPI|
|
max
0
10
−2
10
−1
10
0
10
1
10
Frequency
Minimum controller gain for PI-and PID-control:
min |c(j)| = Kc
2
10
SMOOTH CONTROL
Rule: Min. controller gain for
acceptable disturbance rejection:
Kc ≥ |u0|/|ymax|
often ~1 (in span-scaled variables)
|ymax|
= allowed deviation for output (CV)
|u0|
= required change in input (MV) for disturbance rejection (steady state)
= observed change (movement) in input from historical data
SMOOTH CONTROL
Rule: Kc ≥ |u0|/|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”
SMOOTH CONTROL
Summary: Tuning of easy loops





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 |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)
SMOOTH CONTROL LEVEL CONTROL
Application of smooth 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
|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.
LEVEL CONTROL
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.
LEVEL CONTROL
How avoid oscillating levels?
• 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 Kc · I by factor
f=0.1· (P0/I0)2
where
P0 = period of oscillations [s]
I0 = original integral time [s]
0.1 ≈ 1/2
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
LEVEL CONTROL
Conclusion PID tuning
SIMC tuning rules
1. Tight control: Select  c= corresponding to
2. Smooth control. Select Kc ≥
Note: Having selected K c (or c ), the integral time  I should be
selected as given above
3. Derivative time: Only for dominant second-order processes
SIMC-tunings QUIZ
Quiz: SIMC PI-tunings
0.13
y
0.125
y
0.12
0.115
Step response
0.11
0.105
0.1
0
10
20
30
40
50
60
t [s]Time t
(a) The Figure shows the response (y) from a test where we made a step change in the
input (Δu = 0.1) at t=0. Suggest PI-tunings for (1) τc=2,. (2) τc=10.
(b) Do the same, given that the actual plant is
QUIZ
Solution
Actual
plant:
QUIZ
Approximation of step response
Approximation ”bye eye”
Download