Title: PLANTWIDE CONTROL
1PLANTWIDE CONTROL
- Sigurd Skogestad
- Department of Chemical Engineering
- Norwegian University of Science and Tecnology
(NTNU) - Trondheim, Norway
2Outline
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (primary CVs)
(self-optimizing control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
(secondary CVs) ? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
3Idealized view of control(Ph.D. control)
4Practice Tennessee Eastman challenge problem
(Downs, 1991)(PID control)
5Idealized view II Optimizing control
6Practice II Hierarchical decomposition with
separate layers
What should we control?
7Outline
- About Trondheim and myself
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimizing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
8Stepwise procedure plantwide control
I. TOP-DOWN Step 1. DEGREES OF FREEDOM Step 2.
OPERATIONAL OBJECTIVES Step 3. WHAT TO CONTROL?
(primary CVs cy1) Step 4. PRODUCTION RATE II.
BOTTOM-UP (structure control system) Step 5.
REGULATORY CONTROL LAYER (PID) Stabilization
What more to control? (secondary CVs y2) Step
6. SUPERVISORY CONTROL LAYER (MPC)
Decentralization Step 7. OPTIMIZATION LAYER
(RTO) Can we do without it?
9Outline
- About Trondheim and myself
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimzing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
10Step 1. Degrees of freedom (DOFs)
- m dynamic (control) degrees of freedom valves
- u0 steady-state degrees of freedom
- Nm no. of dynamic (control) DOFs (valves)
- Nu0 Nm- N0 no. of steady-state DOFs
- N0 N0y N0m no. of variables with no
steady-state effect - N0m no. purely dynamic control DOFs
- N0y no. controlled variables (liquid levels)
with no steady-state effect - Cost J depends normally only on steady-state DOFs
11Distillation column with given feed
Nm , N0y , Nu0
12Heat-integrated distillation process
13Heat exchanger with bypasses
14Typical number of steady-state degrees of
freedom (u0) for some process units
- each external feedstream 1 (feedrate)
- splitter n-1 (split fractions) where n is the
number of exit streams - mixer 0
- compressor, turbine, pump 1 (work)
- adiabatic flash tank 1 (0 with fixed pressure)
- liquid phase reactor 1 (volume)
- gas phase reactor 1 (0 with fixed pressure)
- heat exchanger 1 (duty or net area)
- distillation column excluding heat exchangers 1
(0 with fixed pressure) number of sidestreams
15HDA process
16- Check that there are enough manipulated variables
(DOFs) - both dynamically and at steady-state
(step 2) - Otherwise Need to add equipment
- extra heat exchanger
- bypass
- surge tank
17Outline
- About Trondheim and myself
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimzing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
18Optimal operation (economics)
- What are we going to use our degrees of freedom
for? - Define scalar cost function J(u0,x,d)
- u0 degrees of freedom
- d disturbances
- x states (internal variables)
- Typical cost function
- Optimal operation for given d
- minu0 J(u0,x,d)
- subject to
- Model equations f(u0,x,d) 0
- Operational constraints g(u0,x,d) lt 0
J cost feed cost energy value products
19Optimal operation distillation column
- Steady-state DOFs (given p and F) 2, for example
L/D and V - Cost to be minimized (economics)
- J - P where P pD D pB B pF F pV V
- Constraints
- Purity D For example xD, impurity max
- Purity B For example, xB, impurity max
- Flow constraints min D, B, L etc. max
- Column capacity (flooding) V Vmax, etc.
- Pressure 1) p given, 2) p free pmin p
pmax - Feed 1) F given 2) F free F Fmax
- Optimal operation Minimize J with respect to
steady-state DOFs
cost energy (heating cooling)
value products
cost feed
20Outline
- About Trondheim and myself
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimizing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
21Step 3. What should we control (c)?
- Outline
- Implementation of optimal operation
- Self-optimizing control
- Uncertainty (d and n)
- Example Marathon runner
- Methods for finding the magic self-optimizing
variables - A. Large gain Minimum singular value rule
- B. Brute force loss evaluation
- C. Optimal combination of measurements
- Example Recycle process
- Summary
22Implementation of optimal operation
- Optimal operation for given d
- minu0 J(u0,x,d)
- subject to
- Model equations f(u0,x,d) 0
- Operational constraints g(u0,x,d) lt 0
? u0opt(d)
Problem Cannot keep u0opt constant because
disturbances d change
Distillation Steady-state degrees of freedom u0
could be L/D and V. Cannot keep these constant
23Implementation of optimal operation (Cannot keep
u0opt constant) Obvious solution Optimizing
control
Estimate d from measurements and recompute
u0opt(d)
Problem Too complicated (requires detailed model
and description of uncertainty)
24Implementation of optimal operation (Cannot keep
u0opt constant) Simpler solution Look for
another variable c which is better to keep
constant
Note u0 will indirectly change when d changes
and control c at constant setpoint cs copt(d)
25What cs should we control?
- Optimal solution is usually at constraints, that
is, most of the degrees of freedom are used to
satisfy active constraints, g(u0,d) 0 - CONTROL ACTIVE CONSTRAINTS!
- cs value of active constraint
- Implementation of active constraints is usually
simple. - WHAT MORE SHOULD WE CONTROL?
- Find variables c for remaining
- unconstrained degrees of freedom u.
26Solution to optimal operation distillation
- Cost to be minimized
- J - P where P pD D pB B pF F pV V
- Optimal operation Minimize J with respect to
DOFs - General Optimal solution with N DOFs
- N Nu DOFs used to satisfy active
constraints ( is ) - Nu remaining unconstrained variables
- Usually Nu zero or small
- Distillation at steady state with given p and F
- N2 DOFs.
- Three cases
- Nu0 Two active constraints (for example, xD,
impurity max. xB, impurity max, TWO-POINT
CONTROL) - Nu1 One constraint active
- Nu2 No constraints active
very unlikely unless there are no purity
specifications (e.g. byproducts or recycle)
27Remaining unconstrained variablesWhat should we
control? (primary controlled variables y1c)
- Intuition Dominant variables (Shinnar)
- Systematic Minimize cost J(u0,d) w.r.t. DOFs
u0. - Control active constraints (constant setpoint is
optimal) - Remaining unconstrained DOFs Control
self-optimizing variables c for which constant
setpoints cs copt(d) give small (economic)
loss - Loss J - Jopt(d)
- when disturbances d ? d occur
28Self-optimizing Control
- Self-optimizing control is when acceptable
operation can be achieved using constant set
points (cs) for the controlled variables c
(without the need to re-optimizing when
disturbances occur).
ccs
29The difficult unconstrained variables
Cost J
Jopt
c
copt
Selected controlled variable (remaining
unconstrained)
30Implementation of unconstrained variables is not
trivial How do we deal with uncertainty?
- 1. Disturbances d (copt(d) changes)
- 2. Implementation error n (actual c ? copt)
cs copt(d) nominal optimization
n
c cs n
d
Cost J ? Jopt(d)
31Problem no. 1 Disturbance d
d ? d
Cost J
d
Jopt
Loss with constant value for c
copt(d)
Controlled variable
) Want copt independent of d
32Example Tennessee Eastman plant
Conclusion Do not use purge rate as controlled
variable
33Problem no. 2 Implementation error n
Cost J
d
Loss due to implementation error for c
Jopt
cscopt(d)
c cs n
) Want n small and flat optimum
34Effect of implementation error on cost (problem
2)
Good
BAD
Good
35 Example sharp optimum. High-purity distillation
c Temperature top of column
Water (L) - acetic acid (H) Max 100 ppm acetic
acid 100 C 100 water 100.01C 100
ppm 99.99 C Infeasible
36Summary unconstrained variables Which variable
c to control?
- Self-optimizing control
- Constant setpoints cs give
- near-optimal operation
- ( acceptable loss L for expected disturbances d
and implementation errors n)
Acceptable loss ) self-optimizing control
37Examples self-optimizing control
- Marathon runner
- Central bank
- Cake baking
- Business systems (KPIs)
- Investment portifolio
- Biology
- Chemical process plants Optimal blending of
gasoline
Define optimal operation (J) and look for magic
variable (c) which when kept constant gives
acceptable loss (self-optimizing control)
38Self-optimizing Control Marathon
- Optimal operation of Marathon runner, JT
- Any self-optimizing variable c (to control at
constant setpoint)?
39Self-optimizing Control Marathon
- Optimal operation of Marathon runner, JT
- Any self-optimizing variable c (to control at
constant setpoint)? - c1 distance to leader of race
- c2 speed
- c3 heart rate
- c4 level of lactate in muscles
40Self-optimizing Control Marathon
- Optimal operation of Marathon runner, JT
- Any self-optimizing variable c (to control at
constant setpoint)? - c1 distance to leader of race (Problem
Feasibility for d) - c2 speed (Problem Feasibility for d)
- c3 heart rate (Problem Impl. Error n)
- c4 level of lactate in muscles (Problem
Impl.error n)
41Self-optimizing Control Sprinter
- Optimal operation of Sprinter (100 m), JT
- Active constraint control
- Maximum speed (no thinking required)
42Further examples
- Central bank. J welfare. u interest rate.
cinflation rate (2.5) - Cake baking. J nice taste, u heat input. c
Temperature (200C) - Business, J profit. c Key performance
indicator (KPI), e.g. - Response time to order
- Energy consumption pr. kg or unit
- Number of employees
- Research spending
- Optimal values obtained by benchmarking
- Investment (portofolio management). J profit. c
Fraction of investment in shares (50) - Biological systems
- Self-optimizing controlled variables c have
been found by natural selection - Need to do reverse engineering
- Find the controlled variables used in nature
- From this possibly identify what overall
objective J the biological system has been
attempting to optimize
43Mathematical Local analysis
cost J
u
uopt
44Unconstrained degrees of freedomLooking for
magic variables to keep at constant
setpoints.What properties do they have?
- Skogestad and Postlethwaite (1996)
- c-copt should be small The optimal value of c
should be insensitive to disturbances - c should be easy to measure and control
accurately - G-1 should be small, i.e ?(G) should be large
- The value of c should be sensitive to changes in
the steady-state degrees of freedom - (Equivalently, J as a function of c should be
flat) - For cases with more than one unconstrained
degrees of freedom, the selected controlled
variables should be independent. - Summarized by maximum gain (min. singular value)
rule
Avoid problem 1 (d)
Avoid problem 2 (n)
45Unconstrained degrees of freedomLooking for
magic variables to keep at constant
setpoints.How can we find them systematically?
- A. Maximum gain (minimum singular value) rule
- B. Brute force Consider available measurements
y, and evaluate loss when they are kept constant
- C. More general Find optimal linear combination
(matrix H)
46Unconstrained degrees of freedomA. Maximum gain
rule
J
Optimizer
c
cs
n
cmcn
n
Controller that adjusts u to keep cm cs
cscopt
u
c
Plant
d
uopt
u
Want the slope ( gain G from u to y) as large
as possible
47Unconstrained degrees of freedomA. Maximum gain
(minimum singular value) rule
Maximum gain rule (Skogestad and Postlethwaite,
1996) Look for variables c that maximize the
minimum singular value ?(G) of the
appropriately scaled steady-state gain matrix G
from u to c
- u unconstrained degrees of freedom
- Loss
- Scaling is important
- Scale c such that their expected variation is
similar (divide by span optimal variation
noise) - Scale inputs u such that they have similar effect
on cost J (Juu unitary) - ?(G) is called the Morari Resiliency index (MRI)
by Luyben - Detailed proof I.J. Halvorsen, S. Skogestad,
J.C. Morud and V. Alstad, Optimal selection of
controlled variables'', Ind. Eng. Chem. Res., 42
(14), 3273-3284 (2003).
48Maximum gain rule in words
Select controlled variables c for which their
controllable range is large compared to their sum
of optimal variation and control error
controllable range range c may reach by varying
the inputs (gain) optimal variation due to
disturbance control error implementation error n
span
49What should we control?Rule Maximize the scaled
gain
- Scalar case. Minimum singular value gain G
- Maximize scaled gain Gs G / span
- G gain from independent variable (u) to
candidate controlled variable (c) - span (of c) optimal variation in c control
error for c
50Generally (more than unconstrained
variable)Scaling for maximum gain (?) rule
- Control active constraints and look at the
remaining unconstrained problem - Candidate outputs Divide by span optimal range
implementation error - Candidate inputs
- A unit deviation in each input should have the
same effect on the cost function (i.e. Juu should
be constant times identity) - Alternatively (often simpler), consider ?(Juu1/2
G)
51B. Brute-force procedure for selecting
(primary) controlled variables (Skogestad, 2000)
- Step 1 Determine DOFs for optimization
- Step 2 Definition of optimal operation J (cost
and constraints) - Step 3 Identification of important disturbances
- Step 4 Optimization (nominally and with
disturbances) - Step 5 Identification of candidate controlled
variables (use active constraint control) - Step 6 Evaluation of loss with constant setpoints
for alternative controlled variables - Step 7 Evaluation and selection (including
controllability analysis) - Case studies Tenneessee-Eastman,
Propane-propylene splitter, recycle process,
heat-integrated distillation
52B. Brute-force procedure
- Define optimal operation Minimize cost function
J - Each candidate variable c
- With constant setpoints cs compute loss L
for expected disturbances d and implementation
errors n - Select variable c with smallest loss
Acceptable loss ) self-optimizing control
53Unconstrained degrees of freedomC. Optimal
measurement combination (Alstad, 2002)
- Basis Want optimal value of c independent of
disturbances ) - ? copt 0 ? d
- Find optimal solution as a function of d
uopt(d), yopt(d) - Linearize this relationship ?yopt F ?d
- F sensitivity matrix
- Want
- To achieve this for all values of ? d
- Always possible if
- Optimal when we disregard implementation error
(n)
54Alstad-method continued
- To handle implementation error Use sensitive
measurements, with information about all
independent variables (u and d)
55Toy Example
56Toy Example
57Toy Example
58EXAMPLE Recycle plant (Luyben, Yu, etc.)
5
4
1
Given feedrate F0 and column pressure
2
3
Dynamic DOFs Nm 5 Column levels N0y
2 Steady-state DOFs N0 5 - 2 3
59Recycle plant Optimal operation
mT
1 remaining unconstrained degree of freedom
60Control of recycle plantConventional structure
(Two-point xD)
LC
LC
xD
XC
XC
xB
LC
Control active constraints (Mrmax and xB0.015)
xD
61 Luyben rule
Luyben rule (to avoid snowballing) Fix a
stream in the recycle loop (F or D)
62 Luyben rule D constant
LC
LC
XC
LC
Luyben rule (to avoid snowballing) Fix a
stream in the recycle loop (F or D)
63A. Maximum gain rule Steady-state gain
Conventional Looks good
Luyben rule Not promising economically
64B. Brute force loss evaluation
Disturbance in F0
Luyben rule
Conventional
Loss with nominally optimal setpoints for Mr, xB
and c
65B. Brute force loss evaluation
Implementation error
Luyben rule
Loss with nominally optimal setpoints for Mr, xB
and c
66C. Optimal measurement combination
- 1 unconstrained variable (c 1)
- 1 (important) disturbance F0 (d 1)
- Optimal combination requires 2 measurements
(y u d 2) - For example, c h1 L h2 F
- BUT Not much to be gained compared to control of
single variable (e.g. L/F or xD)
67Conclusion Control of recycle plant
Active constraint Mr Mrmax
Self-optimizing
L/F constant Easier than two-point
control Assumption Minimize energy (V)
Active constraint xB xBmin
68Recycle systems
Do not recommend Luybens rule of fixing a flow
in each recycle loop (even to avoid
snowballing)
69Summary Procedure selection controlled variables
- Define economics and operational constraints
- Identify degrees of freedom and important
disturbances - Optimize for various disturbances
- Identify (and control) active constraints
(off-line calculations) - May vary depending on operating region. For each
operating region do step 5 - Identify self-optimizing controlled variables
for remaining degrees of freedom - (A) Identify promising (single) measurements from
maximize gain rule (gain minimum singular
value) - (C) Possibly consider measurement combinations if
no promising - (B) Brute force evaluation of loss for
promising alternatives - Necessary because maximum gain rule is local.
- In particular Look out for feasibility problems.
- Controllability evaluation for promising
alternatives
70Selection of controlled variablesMore examples
and exercises
- HDA process
- Cooling cycle
- Distillation (C3-splitter)
- Blending
71Summary self-optimizing control
- Operation of most real system Constant setpoint
policy (c cs) - Central bank
- Business systems KPIs
- Biological systems
- Chemical processes
- Goal Find controlled variables c such that
constant setpoint policy gives acceptable
operation in spite of uncertainty - ) Self-optimizing control
- Method A Maximize ?(G)
- Method B Evaluate loss L J - Jopt
- Method C Optimal linear measurement combination
- ?c H ?y where HF0
72Outline
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimzing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
73Step 4. Where set production rate?
- Very important!
- Determines structure of remaining inventory
(level) control system - Set production rate at (dynamic) bottleneck
- Link between Top-down and Bottom-up parts
74Production rate set at inlet Inventory control
in direction of flow
75Production rate set at outletInventory control
opposite flow
76Production rate set inside process
77Where set the production rate?
- Very important decision that determines the
structure of the rest of the control system! - May also have important economic implications
78Optimal Set production rate at bottleneck!
- "A bottleneck is an extensive variable that
prevents an increase in the overall feed rate to
the plant" - If feed is cheap Optimal to set production rate
at bottleneck - If the flow for some time is not at its maximum
through the bottleneck, then this loss can never
be recovered.
79Reactor-recycle processGiven feedrate with
production rate set at inlet
80Reactor-recycle processGiven feedrate with
production rate set at inlet
Bottleneck max. vapor rate in column
81Reactor-recycle process with production rate set
at inlet Want to maximize feedrate reach
bottleneck in column
Alt.1 Loss
Bottleneck max. vapor rate in column
Vs
FC
Vmax V
Vmax-VsBack-off Loss
82Reactor-recycle process with increased
feedrateOptimal Set production rate at
bottleneck
Alt.2 long loop
MAX
83Reactor-recycle process with increased
feedrateOptimal Set production rate at
bottleneck
Alt.3 reconfigure
84Reactor-recycle processGiven feedrate with
production rate set at bottleneck
Alt.3 reconfigure (permanently)
F0s
85Alt.4 Multivariable control (MPC)
- Can reduce loss
- BUT Is generally placed on top of the regulatory
control system (including level loops), so it
still important where the production rate is set!
86Conclusion production rate manipulator
- Think carefully about where to place it!
- Difficult to undo later
87Outline
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimizing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
88II. Bottom-up
- Determine secondary controlled variables and
structure (configuration) of control system
(pairing) - A good control configuration is insensitive to
parameter changes
Step 5. REGULATORY CONTROL LAYER
5.1 Stabilization (including level control)
5.2 Local disturbance rejection (inner
cascades) What more to control? (secondary
variables) Step 6. SUPERVISORY CONTROL
LAYER Decentralized or multivariable control
(MPC)? Pairing? Step 7. OPTIMIZATION LAYER
(RTO)
89Example Distillation
- Primary controlled variable y1 c xD, xB
(compositions top, bottom) - BUT Delay in measurement of x unreliable
- Regulatory control For stabilization need
control of - Liquid level condenser (MD)
- Liquid level reboiler (MB)
- Pressure (p)
- Holdup of light component in column
- (temperature profile)
Unstable (Integrating) No steady-state effect
Disturbs (destabilizes) other loops
Almost unstable (integrating)
90Step 5. Regulatory control layer
- Purpose Stabilize the plant using local SISO
PID controllers - Enable manual operation (by operators)
- Main structural issues
- What more should we control? (secondary cvs, y2)
- Pairing with manipulated variables (mvs u2)
91Cascade control distillation
ys
y
XC
Ts
T
TC
Ls
L
FC
z
XC
92Degrees of freedom unchanged
- No degrees of freedom lost by control of
secondary (local) variables as setpoints become
y2s replace inputs u2 as new degrees of freedom
Cascade control
93Hierarchical control Time scale separation
- With a reasonable time scale separation between
the layers - (typically by a factor 5 or more in terms of
closed-loop response time) - we have the following advantages
- The stability and performance of the lower
(faster) layer (involving y2) is not much
influenced by the presence of the upper (slow)
layers (involving y1) - Reason The frequency of the disturbance from
the upper layer is well inside the bandwidth of
the lower layers - With the lower (faster) layer in place, the
stability and performance of the upper (slower)
layers do not depend much on the specific
controller settings used in the lower layers - Reason The lower layers only effect frequencies
outside the bandwidth of the upper layers
94Objectives regulatory control layer
- Allow for manual operation
- Simple decentralized (local) PID controllers that
can be tuned on-line - Take care of fast control
- Track setpoint changes from the layer above
- Local disturbance rejection
- Stabilization (mathematical sense)
- Avoid drift (due to disturbances) so system
stays in linear region - stabilization (practical sense)
- Allow for slow control in layer above
(supervisory control) - Make control problem easy as seen from layer
above
- Implications for selection of y2
- Control of y2 stabilizes the plant
- y2 is easy to control (favorable dynamics)
951. Control of y2 stabilizes the plant
- A. Mathematical stabilization (e.g. reactor)
- Unstable mode is quickly detected (state
observability) in the measurement (y2) and is
easily affected (state controllability) by the
input (u2). - Tool for selecting input/output Pole vectors
- y2 Want large element in output pole vector
Instability easily detected relative to noise - u2 Want large element in input pole vector
Small input usage required for stabilization - B. Practical extended stabilization (avoid
drift due to disturbance sensitivity) - Intuitive y2 located close to important
disturbance - Or rather Controllable range for y2 is large
compared to sum of optimal variation and control
error - More exact tool Partial control analysis
96Recall rule for selecting primary controlled
variables c
Controlled variables c for which their
controllable range is large compared to their sum
of optimal variation and control error
Restated for secondary controlled variables y2
Control variables y2 for which their controllable
range is large compared to their sum of optimal
variation and control error
controllable range range y2 may reach by
varying the inputs optimal variation due to
disturbances control error implementation error
n
Want large
Want small
97What should we control (y2)?Rule Maximize the
scaled gain
- Scalar case. Minimum singular value gain G
- Maximize scaled gain Gs G / span
- G gain from independent variable (u) to
candidate controlled variable (y) - span (of y) optimal variation in c control
error for y - Note optimal variation This is generally NOT the
same as the optimal variation used for selecting
primary controlled variables (c) because we at
the fast regulatory time scale have that the
slower (unused) inputs (u1) are constant. - For each disturbance find optimal input change
(u2) that keeps primary variables cy1 closest to
setpoint (with u1 constant), and from this obtain
optimal variation (copt)
982. y2 is easy to control
- Main rule y2 is easy to measure and located
close to manipulated variable u2 - Statics Want large gain (from u2 to y2)
- Dynamics Want small effective delay (from u2 to
y2)
99Aside Effective delay and tunings
- PI-tunings from SIMC rule
- Use half rule to obtain first-order model
- Effective delay ? True delay inverse
response time constant half of second time
constant all smaller time constants - Time constant t1 original time constant half
of second time constant - NOTE The first (largest) time constant is NOT
important for controllability!
100Summary Rules for selecting y2
- y2 should be easy to measure
- Control of y2 stabilizes the plant
- y2 should have good controllability, that is,
favorable dynamics for control - y2 should be located close to a manipulated
input (u2) (follows from rule 3) - The (scaled) gain from u2 to y2 should be large
- Additional rule for selecting u2 Avoid using
inputs u2 that may saturate (should generally
avoid saturation in lower layers)
101Exercise level control (10.1 in Seborg)
- Consider control of liquid condenser level (M1)
in a distillation column. - Should we use L or D to control M1?
- What is your answer if L/D5?
- What is your answer if it is important to
- avoid disturbing downstream process?
102LV-configuration
preferred in practice for most columns (even
when L and V are large)
ys
y
XC
Ts
T
TC
Ls
L
FC
z
XC
103Exercise distillation (10.3 in Seborg)
- Consider a column design to separate methanol and
water. The desired distillate composition (xD) is
methanol with only 5 ppm of water. Because a
composition analyzer is not available, it is
proposed to control XD indirectly by measuring
and controlling a temperature at one of the
following locations
- the reflux stream
- the top tray (stage) of the column
- an intermediate tray in the top section (where?)
- Discuss the relative advantages and disadvantages
of each choice based on both steady-state and
dynamic considerations
104More exact Selecting stage for temperature
control (y2) in distillation
- Consider controlling temperature (yT) with
reflux (uL) - Avoid V because it may saturate (i.e. reach
maximum) - G Controllable range Given by gain ? T/?L
(sensitivity). This will be largest where
temperature changes are the largest, that is,
toward the feed stage for a binary separation - Topt Optimal variation for disturbances (in
F, zF, etc.) - This is generally NOT the same as the optimal
variation used for selecting primary controlled
variables (c) because we have to assume that the
slower variables (e.g. u1V) are constant. - Here We want to control product compositions.
The optimal variation in T will be small towards
the end of the column and largest toward the feed
stage - Terr Control error (implementation error
static measurement error) This will typically
be 0.5 C and the same on stages - Rule Select location corresponding to max. value
of - G / (Topt Terr)
- Binary separation This will have a max. in the
middle of the top section and middle of bottom
section - Multicomponent separation Will have a max.
towards column ends
105- Distillation example
- columnn A. uL. Which temperature (c) to control?
- Nominal simulation (gives x0)
- One simulation Gain with constant inputs (u)
- Make small change in input (L)
- with the other inputs (V) constant
- Find gain ? xi/? L
- From process gains Obtain optimal change for
candidate measurements to disturbances, - Â (with input L adjusted to keep both xD and xB
close to setpoint, i.e. min xD-0.99 xb-0.01
, with Vconstant). - wxB,xD. Then (- Gy pinv(Gw) Gwd Gyd) d
- (Note Gygain, dF Gydgainf etc.)
- Find ?xi,opt (yopt) for the following
disturbances - F (from 1 to 1.2 has effect!) yoptf
- zF from 0.5 to 0.6 yoptz
- qF from 1 to 1.2 yoptq
- xB from 0.01 to 0.02 yoptxb0 (no effect)
gtgt resx0' gain' gainf' gainz' gainq' res
0.0100 1.0853 0.5862 1.1195 1.0930
0.0143 1.5396 0.8311 1.5893
1.5506 0.0197 2.1134 1.1397 2.1842
2.1285 0.0267 2.8310 1.5247 2.9303
2.8513 0.0355 3.7170 1.9990 3.8539
3.7437 0.0467 4.7929 2.5734
4.9789 4.8273 0.0605 6.0718 3.2542
6.3205 6.1155 0.0776 7.5510 4.0392
7.8779 7.6055 0.0982 9.2028 4.9126
9.6244 9.2694 0.1229 10.9654
5.8404 11.4975 11.0449 0.1515 12.7374
6.7676 13.3931 12.8301 0.1841 14.3808
7.6202 15.1675 14.4857 0.2202 15.7358
8.3133 16.6530 15.8509 0.2587
16.6486 8.7659 17.6861 16.7709 0.2986
17.0057 8.9194 18.1436 17.1311 0.3385
16.7628 8.7524 17.9737 16.8870
0.3770 15.9568 8.2872 17.2098 16.0758
0.4130 14.6955 7.5832 15.9597 14.8058
0.4455 13.1286 6.7215 14.3776 13.2280
0.4742 11.4148 5.7872 12.6286
11.5021 0.4987 9.6930 4.8542 10.8586
9.7680 0.5265 11.0449 5.4538 12.1996
11.1051 0.5578 12.2975 6.0007
13.4225 12.3410 0.5922 13.3469 6.4473
14.4211 13.3727 0.6290 14.0910 6.7478
15.0929 14.0989 0.6675 14.4487
6.8669 15.3588 14.4397 0.7065 14.3766
6.7871 15.1800 14.3528 0.7449 13.8797
6.5135 14.5676 13.8438 0.7816 13.0098
6.0724 13.5807 12.9654 0.8158
11.8545 5.5060 12.3136 11.8051 0.8469
10.5187 4.8635 10.8764 10.4677 0.8744
9.1066 4.1929 9.3765 9.0566
0.8983 7.7071 3.5346 7.9044 7.6602
0.9187 6.3866 2.9184 6.5261 6.3443
0.9358 5.1876 2.3624 5.2829 5.1505
0.9501 4.1314 1.8756 4.1942
4.1000 0.9617 3.2233 1.4592 3.2631
3.1975 0.9712 2.4574 1.1098 2.4816
2.4368 0.9789 1.8211 0.8208 1.8355
1.8053 0.9851 1.2990 0.5848
1.3077 1.2875 0.9900 0.8747 0.3938
0.8805 0.8670
106gtgt yoptf yoptq yoptz span ans 0.0077
0.0014 0.0011 0.0601 0.0108 0.0019
0.0016 0.0644 0.0146 0.0027 0.0025
0.0698 0.0192 0.0036 0.0038
0.0765 0.0246 0.0047 0.0056 0.0849
0.0309 0.0061 0.0082 0.0951 0.0379
0.0077 0.0117 0.1073 0.0456
0.0096 0.0163 0.1215 0.0536 0.0118
0.0222 0.1375 0.0612 0.0141 0.0294
0.1546 0.0678 0.0164 0.0379
0.1720 0.0724 0.0186 0.0474 0.1884
0.0742 0.0204 0.0575 0.2022 0.0726
0.0217 0.0676 0.2119 0.0673
0.0222 0.0769 0.2164 0.0584 0.0220
0.0847 0.2151 0.0467 0.0211 0.0906
0.2085 0.0332 0.0196 0.0945
0.1973 0.0190 0.0177 0.0964 0.1831
0.0052 0.0155 0.0966 0.1673 -0.0076
0.0134 0.0955 0.1665 -0.0242
0.0102 0.0915 0.1758 -0.0412 0.0066
0.0858 0.1837 -0.0578 0.0029 0.0784
0.1892 -0.0728 -0.0008 0.0696
0.1932 -0.0851 -0.0042 0.0596 0.1990
-0.0938 -0.0072 0.0491 0.2001 -0.0984
-0.0095 0.0387 0.1965 -0.0988
-0.0111 0.0288 0.1887 -0.0954 -0.0119
0.0202 0.1775 -0.0891 -0.0120 0.0129
0.1640 -0.0807 -0.0115 0.0072
0.1494 -0.0711 -0.0107 0.0030 0.1347
-0.0610 -0.0095 0.0001 0.1206 -0.0512
-0.0083 -0.0017 0.1112 -0.0419
-0.0070 -0.0027 0.1016 -0.0335 -0.0057
-0.0030 0.0923 -0.0261 -0.0045 -0.0029
0.0835 -0.0197 -0.0035 -0.0025
0.0756 -0.0142 -0.0025 -0.0020 0.0686
-0.0095 -0.0017 -0.0013 0.0626
uL
gtgt Gw Gw 1.0853 0.8747 Gwf
0.5862 0.3938
gtgt yoptf (-gain'pinv(Gw)Gwf gainf')0.2 gtgt
yoptq (-gain'pinv(Gw)Gwq gainq')0.2 gtgt
yoptz (-gain'pinv(Gw)Gwz gainz')0.1
have checked with nonlinear simulation. OK!
107uL max. on stage 15 (below feed stage) In
practice (because of dynamics) Will use tray in
top (peak at 25)
gtgt span abs(yoptf)abs(yoptz)abs(yoptq)0.05 gt
gt plot(gain./span)
108NOT QUITE CORRECT Using scalings from
selection of primary variables
stage 31
TOP
variationyoptzyoptqyoptxb0.05 plot(gain./varia
tion)
109Another tool for stabilization Pole vectors
- Maximum gain rule is good for integrating
(drifting) modes - For fast unstable modes (e.g. reactor) Pole
vectors useful for determining which input
(valve) and output (measurement) to use for
stabilizing unstable modes - Assumes input usage (avoiding saturation) may be
a problem
110(No Transcript)
111(No Transcript)
112Example Tennessee Eastman challenge problem
113(No Transcript)
114(No Transcript)
115(No Transcript)
116(No Transcript)
117(No Transcript)
118(No Transcript)
119(No Transcript)
120Partial control analysis
121Partial control
- Cascade control y2 not important in itself, and
setpoint (r2) is available for control of y1 - Decentralized control (using sequential design)
y2 important in itself
122Limitations of partial control?
- Cascade control Closing of secondary loops does
not by itself impose new problems - Theorem 10.2. The partially controlled system
P1 Pr1 - from u1 r2 to y1
- has no new RHP-zeros that are not present in the
open-loop system G11 G12 - from u1 u2 to y1
- provided
- r2 is available for control of y1
- K2 has no RHP-zeros
- Decentralized control (sequential design) Can
introduce limitations. - Avoid pairing on negative RGA for u2/y2
otherwise Pu likely has a RHP-zero
123(No Transcript)
124(No Transcript)
125(No Transcript)
126(No Transcript)
127(No Transcript)
128(No Transcript)
129Control configuration elements
- Control configuration. The restrictions imposed
on the overall controller by decomposing it into
a set of local controllers (subcontrollers,
units, elements, blocks) with predetermined links
and with a possibly predetermined design sequence
where subcontrollers are designed locally. - Control configuration elements
- Cascade controllers
- Decentralized controllers
- Feedforward elements
- Decoupling elements
130- Cascade control arises when the output from one
controller is the input to another. This is
broader than the conventional definition of
cascade control which is that the output from one
controller is the reference command (setpoint) to
another. In addition, in cascade control, it is
usually assumed that the inner loop K2 is much
faster than the outer loop K1. - Feedforward elements link measured disturbances
to manipulated inputs. - Decoupling elements link one set of manipulated
inputs (measurements) with another set of
manipulated inputs. They are used to improve the
performance of decentralized control systems, and
are often viewed as feedforward elements
(although this is not correct when we view the
control system as a whole) where the measured
disturbance is the manipulated input computed by
another decentralized controller.
131Why simplified configurations?
- Fundamental Save on modelling effort
- Other
- easy to understand
- easy to tune and retune
- insensitive to model uncertainty
- possible to design for failure tolerance
- fewer links
- reduced computation load
132Cascade control(conventional with extra
measurement)
The reference r2 is an output from another
controller
General case (parallel cascade)
Special common case (series cascade)
133Series cascade
- Disturbances arising within the secondary loop
(before y2) are corrected by the secondary
controller before they can influence the primary
variable y1 - Phase lag existing in the secondary part of the
process (G2) is reduced by the secondary loop.
This improves the speed of response of the
primary loop. - Gain variations in G2 are overcome within its own
loop. - Thus, use cascade control (with an extra
secondary measurement y2) when - The disturbance d2 is significant and G1 has an
effective delay - The plant G2 is uncertain (varies) or n onlinear
- Design
- First design K2 (fast loop) to deal with d2
- Then design K1 to deal with d1
134Tuning cascade
y2 T2 r2 S2d2
- Use SIMC tuning rules
- K2 is designed based on G2 (which has effective
delay ?2) - then y2 T2 r2 S2 d2 where S2 ¼ 0 and T2 ¼ 1
e-(?2?c2)s - T2 gain 1 and effective delay ?2?c2
- SIMC-rule ?c2 ?2
- Time scale separation ?c2 ?c1/5
(approximately) - K1 is designed based on G1T2
- same as G1 but with an additional delay ?2?c2
135Exercise Tuning cascade
- (without cascade, i.e. no feedback from y2).
- Design a controller based on G1G
- (with cascade)
- Design K2 and then K1
136Exercise Tuning cascade
137Extra inputs
- Exercise Explain how valve position control
fits into this framework. As en example consider
a heat exchanger with bypass
138Exercise
- Exercise
- In what order would you tune the controllers?
- Give a practical example of a process that fits
into this block diagram
139Outline
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (primary CVs)
(self-optimizing control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
(secondary CVs) ? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
140Step 6. Supervisory control layer
- Purpose Keep primary controlled outputs cy1 at
optimal setpoints cs - Degrees of freedom Setpoints y2s in reg.control
layer - Main structural issue Decentralized or
multivariable?
141Decentralized control(single-loop controllers)
- Use for Noninteracting process and no change in
active constraints - Tuning may be done on-line
- No or minimal model requirements
- Easy to fix and change
- - Need to determine pairing
- - Performance loss compared to multivariable
control - - Complicated logic required for reconfiguration
when active constraints move -
142Multivariable control(with explicit constraint
handling MPC)
- Use for Interacting process and changes in
active constraints - Easy handling of feedforward control
- Easy handling of changing constraints
- no need for logic
- smooth transition
- - Requires multivariable dynamic model
- - Tuning may be difficult
- - Less transparent
- - Everything goes down at the same time
-
143Outline
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimizing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Case studies
144Step 7. Optimization layer (RTO)
- Purpose Identify active constraints and compute
optimal setpoints (to be implemented by
supervisory control layer) - Main structural issue Do we need RTO? (or is
process self-optimizing) - RTO not needed when
- Can easily identify change in active
constraints (operating region) - For each operating region there exists
self-optimizing var
145Outline
- Control structure design (plantwide control)
- A procedure for control structure design
- I Top Down
- Step 1 Degrees of freedom
- Step 2 Operational objectives (optimal
operation) - Step 3 What to control ? (self-optimizing
control) - Step 4 Where set production rate?
- II Bottom Up
- Step 5 Regulatory control What more to control
? - Step 6 Supervisory control
- Step 7 Real-time optimization
- Conclusion / References
146Summary Main steps
- What should we control (y1cz)?
- Must define optimal operation!
- Where should we set the production rate?
- At bottleneck
- What more should we control (y2)?
- Variables that stabilize the plant
- Control of primary variables
- Decentralized?
- Multivariable (MPC)?
147Conclusion
- Procedure plantwide control
- I. Top-down analysis to identify degrees of
freedom and primary controlled variables (look
for self-optimizing variables) - II. Bottom-up analysis to determine secondary
controlled variables and structure of control
system (pairing).
148References
- Halvorsen, I.J, Skogestad, S., Morud, J.C.,
Alstad, V. (2003), Optimal selection of
controlled variables, Ind.Eng.Chem.Res., 42,
3273-3284. - Larsson, T. and S. Skogestad (2000), Plantwide
control A review and a new design procedure,
Modeling, Identification and Control, 21,
209-240. - Larsson, T., K. Hestetun, E. Hovland and S.
Skogestad (2001), Self-optimizing control of a
large-scale plant The Tennessee Eastman
process, Ind.Eng.Chem.Res., 40, 4889-4901. - Larsson, T., M.S. Govatsmark, S. Skogestad and
C.C. Yu (2003), Control of reactor, separator
and recycle process, Ind.Eng.Chem.Res., 42,
1225-1234 - Skogestad, S. and Postlethwaite, I. (1996),
Multivariable feedback control, Wiley - Skogestad, S. (2000). Plantwide control The
search for the self-optimizing control
structure. J. Proc. Control 10, 487-507. - Skogestad, S. (2003), Simple analytic rules for
model reduction and PID controller tuning, J.
Proc. Control, 13, 291-309. - Skogestad, S. (2004), Control structure design
for complete chemical plants, Computers and
Chemical Engineering, 28, 219-234. (Special issue
from ESCAPE12 Symposium, Haag, May 2002). - more..
See home page of S. Skogestad http//www.chembio.
ntnu.no/users/skoge/