close

Вход

Забыли?

вход по аккаунту

код для вставкиСкачать
PLANTWIDE CONTROL
Sigurd Skogestad
Department of Chemical Engineering
Norwegian University of Science and Tecnology (NTNU)
Trondheim, Norway
1
Outline
• 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 CV’s) (self-optimizing control)
Step 4: Where set production rate?
II Bottom Up
• Step 5: Regulatory control: What more to control (secondary CV’s) ?
• Step 6: Supervisory control
• Step 7: Real-time optimization
• Case studies
2
Idealized view of control
(“Ph.D. control”)
3
Practice: Tennessee Eastman challenge
problem (Downs, 1991)
(“PID control”)
4
Idealized view II: Optimizing control
5
Practice II: Hierarchical
decomposition with separate layers
What should we control?
6
Outline
• 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
7
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?
8
Outline
• 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
9
Step 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
10
Distillation column with given feed
Nm = , N0y = , Nu0 =
11
Heat-integrated distillation process
Nm = 11 (w/feed), N0y = 4 (levels), Nu0 = 11 – 4 = 7
12
Heat exchanger with bypasses
CW
Nm = 3,
13
N0m = 2 (of 3),
N0u = 3 – 2 = 1
Typical number of steady-state degrees of
freedom (u0) for some process units
•
•
•
•
•
•
•
•
•
14
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
HDA process
Purge (H2 + CH4)
Compressor
H2 + CH4
Toluene
Mixer
FEHE
Toluene
Furnace
Benzene
Toluene
Column
15
Diphenyl
Cooler
PFR
Quench
Separator
CH4
Benzene
Column
Stabilizer
• 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
16
Outline
• 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
17
Optimal 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:
J = cost feed + cost energy – value products
•
Optimal operation for given d:
minu0 J(u0,x,d)
subject to:
Model equations:
Operational constraints:
18
f(u0,x,d) = 0
g(u0,x,d) < 0
Optimal operation distillation column
•
•
Steady-state DOFs (given p and F): 2, for example L/D and V
Cost to be minimized (economics)
cost energy (heating+ cooling)
J = - P where P= pD D + pB B – pF F – pV V
value products cost feed
•
Constraints
Purity D: For example
Purity B: For example,
Flow constraints:
Column capacity (flooding):
Pressure:
1) p given,
Feed:
1) F given
•
19
xD, impurity · max
xB, impurity · max
min · D, B, L etc. · max
V · Vmax, etc.
2) p free: pmin · p · pmax
2) F free: F · Fmax
Optimal operation: Minimize J with respect to steady-state DOFs
Outline
• 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
20
Step 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
21
Implementation of optimal operation
• Optimal operation for given d*:
minu0 J(u0,x,d)
subject to:
Model equations:
Operational constraints:
→ u0opt(d*)
f(u0,x,d) = 0
g(u0,x,d) < 0
Problem: Cannot keep u0opt constant because disturbances d change
22
Distillation: Steady-state degrees of freedom u0
could be L/D and V. Cannot keep these constant
Implementation 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)
23
Implementation 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*)
24
What c’s 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.
25
Solution 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:
•
N=2 DOFs.
Three cases:
1.
2.
3.
Nu=0: Two active constraints (for example, xD, impurity = max. xB, impurity = max,
“TWO-POINT” CONTROL)
Nu=1: One constraint active
Nu=2: No constraints active
very unlikely unless there are no purity specifications
(e.g. byproducts or recycle)
26
Remaining unconstrained variables:
What should we control?
(primary controlled variables y1=c)
•
Intuition: “Dominant variables” (Shinnar)
•
Systematic: Minimize cost J(u0,d*) w.r.t.
DOFs u0.
1. Control active constraints (constant setpoint
is optimal)
2. 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
27
c = ? (economics)
y2 = ? (stabilization)
Self-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).
c=cs
28
The difficult unconstrained variables
Cost J
Jopt
c
copt
29
Selected controlled variable
(remaining unconstrained)
Implementation 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)
30
Problem no. 1: Disturbance d
d ≠ d*
Cost J
d*
Jopt
Loss with constant value for c
copt(d*)
31
) Want copt independent of d
Controlled variable
Example: Tennessee Eastman plant
J
Oopss..
bends backwards
c = Purge rate
Nominal optimum setpoint is infeasible with disturbance 2
Conclusion: Do not use purge rate as controlled variable
32
Problem no. 2: Implementation error n
Cost J
d*
Loss due to implementation error for c
Jopt
cs=copt(d*)
33
c = cs + n
) Want n small and ”flat” optimum
Effect of implementation error on cost (“problem 2”)
Good
34
Good
BAD
Example sharp optimum. High-purity distillation :
c = Temperature top of column
Ttop
Water (L) - acetic acid (H)
Max 100 ppm acetic acid
100 C: 100% water
100.01C: 100 ppm
99.99 C: Infeasible
Temperature
35
Summary 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)
36
Acceptable loss )
self-optimizing control
Examples 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 (selfoptimizing control)
37
Self-optimizing Control – Marathon
• Optimal operation of Marathon runner, J=T
– Any self-optimizing variable c (to control at constant
setpoint)?
38
Self-optimizing Control – Marathon
• Optimal operation of Marathon runner, J=T
– Any self-optimizing variable c (to control at constant
setpoint)?
•
•
•
•
39
c1 = distance to leader of race
c2 = speed
c3 = heart rate
c4 = level of lactate in muscles
Self-optimizing Control – Marathon
• Optimal operation of Marathon runner, J=T
– Any self-optimizing variable c (to control at constant
setpoint)?
•
•
•
•
40
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)
Self-optimizing Control – Sprinter
• Optimal operation of Sprinter (100 m), J=T
– Active constraint control:
• Maximum speed (”no thinking required”)
41
Further examples
•
•
•
Central bank. J = welfare. u = interest rate. c=inflation 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” :
•
•
42
Find the controlled variables used in nature
From this possibly identify what overall objective J the biological system has
been attempting to optimize
Mathematical: Local analysis
cost J
uopt
43
u
Unconstrained degrees of freedom:
Looking 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 steadystate degrees of freedom
(Equivalently, J as a function of c should be flat)
44
• 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)
Unconstrained degrees of freedom:
Looking 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):
45
Unconstrained degrees of freedom:
A. Maximum gain rule
J
Optimizer
c
cs
Controller that
adjusts u to keep
cm = cs
cm=c+n
n
n
cs=copt
u
d
c
Plant
uopt
Want the slope (= gain G from u to y)
as large as possible
46
u
Unconstrained degrees of freedom:
A. 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)
•
•
47
(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).
Maximum 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
span
control error = implementation error n
48
What 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
49
Generally (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)
50
B. “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
51
B. 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
52
Acceptable loss )
self-optimizing control
Unconstrained degrees of freedom:
C. 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)
53
Alstad-method continued
• To handle implementation error: Use “sensitive” measurements, with
information about all independent variables (u and d)
54
Toy Example
55
Toy Example
56
Toy Example
57
EXAMPLE: Recycle plant (Luyben, Yu, etc.)
5
4
1
Given feedrate F0 and
column pressure:
Dynamic DOFs:
Nm = 5
Column levels:
N0y = 2
Steady-state DOFs: N0 = 5 - 2 = 3
58
2
3
Recycle plant: Optimal operation
mT
1 remaining unconstrained degree of freedom
59
Control of recycle plant:
Conventional structure (“Two-point”: xD)
LC
LC
XC
xD
XC
xB
LC
Control active constraints (Mr=max and xB=0.015) + xD
60
Luyben rule
61
Luyben rule (to avoid snowballing):
“Fix a stream in the recycle loop” (F or D)
Luyben rule: D constant
LC
LC
XC
LC
62
Luyben rule (to avoid snowballing):
“Fix a stream in the recycle loop” (F or D)
A. Maximum gain rule: Steady-state gain
Conventional:
Looks good
Luyben rule:
Not promising
economically
63
B. “Brute force” loss evaluation:
Disturbance in F0
Luyben rule:
Conventional
64
Loss with nominally optimal setpoints for Mr, xB and c
B. “Brute force” loss evaluation:
Implementation error
Luyben rule:
65
Loss with nominally optimal setpoints for Mr, xB and c
C. 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)
66
Conclusion: Control of recycle plant
Active constraint
Mr = Mrmax
Self-optimizing
67
L/F constant: Easier than “two-point” control
Assumption: Minimize energy (V)
Active constraint
xB = xBmin
Recycle systems:
Do not recommend Luyben’s rule of
fixing a flow in each recycle loop
(even to avoid “snowballing”)
68
Summary:
Procedure selection controlled variables
1.
2.
3.
4.
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:
5. Identify “self-optimizing” controlled variables for remaining degrees of
freedom
1. (A) Identify promising (single) measurements from “maximize gain rule” (gain =
minimum singular value)
•
(C) Possibly consider measurement combinations if no promising
2. (B) “Brute force” evaluation of loss for promising alternatives
•
•
Necessary because “maximum gain rule” is local.
In particular: Look out for feasibility problems.
3. Controllability evaluation for promising alternatives
69
Selection of controlled variables
More examples and exercises
•
•
•
•
70
HDA process
Cooling cycle
Distillation (C3-splitter)
Blending
Summary ”self-optimizing” control
•
Operation of most real system: Constant setpoint policy (c = cs)
–
–
–
–
•
•
•
•
Central bank
Business systems: KPI’s
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 HF=0
71
Outline
• 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
72
Step 4. Where set production rate?
•
•
•
•
73
Very important!
Determines structure of remaining inventory (level) control system
Set production rate at (dynamic) bottleneck
Link between Top-down and Bottom-up parts
Production rate set at inlet :
Inventory control in direction of flow
74
Production rate set at outlet:
Inventory control opposite flow
75
Production rate set inside process
76
Where set the production rate?
• Very important decision that determines the structure of the rest of the
control system!
• May also have important economic implications
77
Optimal: 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.
78
Reactor-recycle process:
Given feedrate with production rate set at inlet
79
Reactor-recycle process:
Given feedrate with production rate set at inlet
Bottleneck: max. vapor
rate in column
80
Reactor-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
81
FC
Vmax
V
Vmax-Vs=Back-off
= Loss
Reactor-recycle process with increased feedrate:
Optimal: Set production rate at bottleneck
Alt.2 “long loop”
MAX
82
Reactor-recycle process with increased feedrate:
Optimal: Set production rate at bottleneck
Alt.3: reconfigure
MAX
83
Reactor-recycle process:
Given feedrate with production rate set at bottleneck
Alt.3: reconfigure
(permanently)
F0s
84
Alt.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!
85
Conclusion production rate manipulator
• Think carefully about where to place it!
• Difficult to undo later
86
Outline
• 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
87
II. 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)
88
Example: 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:
–
–
–
–
89
Liquid level condenser (MD) Unstable (Integrating) + No steady-state effect
Liquid level reboiler (MB)
Disturbs (“destabilizes”) other loops
Pressure (p)
Holdup of light component in column
(temperature profile) Almost unstable (integrating)
Step 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 cv’s, y2)
• Pairing with manipulated variables (mv’s u2)
y1 = c
y2 = ?
90
Cascade control
distillation
ys
y
X
C
Ts
T
TC
Ls
L
91
X
C
FC
z
Degrees 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:
y2s
New DOF
92
K
u2
G
y1
y
Original DOF
2
Hierarchical 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:
1. 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
2. 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
93
Objectives regulatory control layer
1.
2.
3.
4.
5.
6.
7.
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)
8. Allow for “slow” control in layer above (supervisory control)
9. Make control problem easy as seen from layer above
94
Implications for selection of y2:
1. Control of y2 “stabilizes the plant”
2. y2 is easy to control (favorable dynamics)
1. “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
95
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
Recall 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
Want small
control error = implementation error n
96
Want large
What 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.
–
97
For each disturbance find optimal input change (u2) that keeps primary variables
c=y1 closest to setpoint (with u1 constant), and from this obtain optimal variation
(copt)
2. “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)
98
Aside: 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 τ1 = original time constant + half of second time constant
– NOTE: The first (largest) time constant is NOT important for controllability!
99
Summary: Rules for selecting y2
1. y2 should be easy to measure
2. Control of y2 stabilizes the plant
3. y2 should have good controllability, that is, favorable dynamics for
control
4. y2 should be located “close” to a manipulated input (u2) (follows from
rule 3)
5. The (scaled) gain from u2 to y2 should be large
•
10
0
Additional rule for selecting u2: Avoid using inputs u2 that may
saturate (should generally avoid saturation in lower layers)
Exercise 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/D=5?
What is your answer if it is important to
avoid disturbing downstream process?
10
1
LV-configuration
preferred in practice
for most columns
(even when L and V
are large)
ys
y
X
C
Ts
T
TC
Ls
L
10
2
X
C
FC
z
Exercise 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
(a) the reflux stream
(b) the top tray (stage) of the column
(c) 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
10
3
More exact: Selecting stage for temperature
control (y2) in distillation
•
•
•
Consider controlling temperature (y=T) with reflux (u=L)
–
Avoid V because it may saturate (i.e. reach maximum)
–
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. u 1=V) 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
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.):
–
•
•
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
–
•
•
10
4
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
Distillation example
columnn A. u=L. Which temperature (c) to control?
1.
Nominal simulation (gives x0)
2.
One simulation: Gain with constant inputs (u)
–
Make small change in input (L)
with the other inputs (V) constant
Find gain =  xi/ L
3.
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 V=constant).
w=[xB,xD]. Then (- Gy pinv(Gw) Gwd + Gyd) d
(Note: Gy=gain, d=F: Gyd=gainf etc.)
Find xi,opt (yopt) for the following disturbances
1.
2.
3.
4.
4.
5.
10
5
F (from 1 to 1.2; has effect!)
zF from 0.5 to 0.6
qF from 1 to 1.2
xB from 0.01 to 0.02
yoptf
yoptz
yoptq
yoptxb=0 (no effect)
Control (implementation) error. Assume=0.05 on all stages
Find
scaled-gain = gain/span
where span = abs(yoptf)+abs(yoptz)+abs(yoptq)+0.05
“Maximize gain rule”: Prefer stage where scaled-gain is large
>> res=[x0' gain' gainf' gainz' gainq']
res =
0.0100
0.0143
0.0197
0.0267
0.0355
0.0467
0.0605
0.0776
0.0982
0.1229
0.1515
0.1841
0.2202
0.2587
0.2986
0.3385
0.3770
0.4130
0.4455
0.4742
0.4987
0.5265
0.5578
0.5922
0.6290
0.6675
0.7065
0.7449
0.7816
0.8158
0.8469
0.8744
0.8983
0.9187
0.9358
0.9501
0.9617
0.9712
0.9789
0.9851
0.9900
1.0853
1.5396
2.1134
2.8310
3.7170
4.7929
6.0718
7.5510
9.2028
10.9654
12.7374
14.3808
15.7358
16.6486
17.0057
16.7628
15.9568
14.6955
13.1286
11.4148
9.6930
11.0449
12.2975
13.3469
14.0910
14.4487
14.3766
13.8797
13.0098
11.8545
10.5187
9.1066
7.7071
6.3866
5.1876
4.1314
3.2233
2.4574
1.8211
1.2990
0.8747
0.5862
0.8311
1.1397
1.5247
1.9990
2.5734
3.2542
4.0392
4.9126
5.8404
6.7676
7.6202
8.3133
8.7659
8.9194
8.7524
8.2872
7.5832
6.7215
5.7872
4.8542
5.4538
6.0007
6.4473
6.7478
6.8669
6.7871
6.5135
6.0724
5.5060
4.8635
4.1929
3.5346
2.9184
2.3624
1.8756
1.4592
1.1098
0.8208
0.5848
0.3938
1.1195
1.5893
2.1842
2.9303
3.8539
4.9789
6.3205
7.8779
9.6244
11.4975
13.3931
15.1675
16.6530
17.6861
18.1436
17.9737
17.2098
15.9597
14.3776
12.6286
10.8586
12.1996
13.4225
14.4211
15.0929
15.3588
15.1800
14.5676
13.5807
12.3136
10.8764
9.3765
7.9044
6.5261
5.2829
4.1942
3.2631
2.4816
1.8355
1.3077
0.8805
1.0930
1.5506
2.1285
2.8513
3.7437
4.8273
6.1155
7.6055
9.2694
11.0449
12.8301
14.4857
15.8509
16.7709
17.1311
16.8870
16.0758
14.8058
13.2280
11.5021
9.7680
11.1051
12.3410
13.3727
14.0989
14.4397
14.3528
13.8438
12.9654
11.8051
10.4677
9.0566
7.6602
6.3443
5.1505
4.1000
3.1975
2.4368
1.8053
1.2875
0.8670
u=L
>> Gw
Gw =
1.0853
0.8747
Gwf =
0.5862
0.3938
>> yoptf = (-gain'*pinv(Gw)*Gwf + gainf')*0.2
>> yoptq = (-gain'*pinv(Gw)*Gwq + gainq')*0.2
>> yoptz = (-gain'*pinv(Gw)*Gwz + gainz')*0.1
10
6
>> [yoptf yoptq yoptz span]
ans =
0.0077
0.0108
0.0146
0.0192
0.0246
0.0309
0.0379
0.0456
0.0536
0.0612
0.0678
0.0724
0.0742
0.0726
0.0673
0.0584
0.0467
0.0332
0.0190
0.0052
-0.0076
-0.0242
-0.0412
-0.0578
-0.0728
-0.0851
-0.0938
-0.0984
-0.0988
-0.0954
-0.0891
-0.0807
-0.0711
-0.0610
-0.0512
-0.0419
-0.0335
-0.0261
-0.0197
-0.0142
-0.0095
0.0014
0.0019
0.0027
0.0036
0.0047
0.0061
0.0077
0.0096
0.0118
0.0141
0.0164
0.0186
0.0204
0.0217
0.0222
0.0220
0.0211
0.0196
0.0177
0.0155
0.0134
0.0102
0.0066
0.0029
-0.0008
-0.0042
-0.0072
-0.0095
-0.0111
-0.0119
-0.0120
-0.0115
-0.0107
-0.0095
-0.0083
-0.0070
-0.0057
-0.0045
-0.0035
-0.0025
-0.0017
0.0011
0.0016
0.0025
0.0038
0.0056
0.0082
0.0117
0.0163
0.0222
0.0294
0.0379
0.0474
0.0575
0.0676
0.0769
0.0847
0.0906
0.0945
0.0964
0.0966
0.0955
0.0915
0.0858
0.0784
0.0696
0.0596
0.0491
0.0387
0.0288
0.0202
0.0129
0.0072
0.0030
0.0001
-0.0017
-0.0027
-0.0030
-0.0029
-0.0025
-0.0020
-0.0013
0.0601
0.0644
0.0698
0.0765
0.0849
0.0951
0.1073
0.1215
0.1375
0.1546
0.1720
0.1884
0.2022
0.2119
0.2164
0.2151
0.2085
0.1973
0.1831
0.1673
0.1665
0.1758
0.1837
0.1892
0.1932
0.1990
0.2001
0.1965
0.1887
0.1775
0.1640
0.1494
0.1347
0.1206
0.1112
0.1016
0.0923
0.0835
0.0756
0.0686
0.0626
have checked with nonlinear simulation. OK!
u=L: max. on stage 15 (below feed stage)
In practice (because of dynamics): Will use tray in top (peak at 25)
80
70
60
50
40
30
20
10
10
7
5
10
15
20
25
30
35
40
>> span = abs(yoptf)+abs(yoptz)+abs(yoptq)+0.05;
>> plot(gain’./span)
NOT QUITE CORRECT:
Using scalings from selection of primary variables
stage 31
120
100
80
60
40
20
TOP
0
5
10
15
20
25
30
variation=yoptz+yoptq+yoptxb+0.05
plot(gain./variation)
10
8
35
40
Another 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
10
9
11
0
11
1
Example: Tennessee Eastman challenge
problem
11
2
11
3
11
4
11
5
11
6
11
7
11
8
11
9
Partial control analysis
Primary controlled
variable y1 = c
(supervisory control layer)
Local control of y2
using u2
(regulatory control layer)
Setpoint y2s : new DOF
for supervisory control
y 1 = P 1 u 1 + P r1 (y2s -n 2 ) + P d1 d
P 1 = G 11 – G 12 G 22
-1
P d1 = G d1 – G 12 G 22
P r1 = G 12 G 22
12
0
-1
G 21
-1
G d2 - W A N T S M A L L
Partial 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
12
1
Limitations 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 RHPzero
12
2
12
3
12
4
12
5
12
6
12
7
12
8
Control 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
12
9
•
•
•
13
0
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.
Why simplified configurations?
• Fundamental: Save on modelling effort
• Other:
–
–
–
–
–
–
13
1
easy to understand
easy to tune and retune
insensitive to model uncertainty
possible to design for failure tolerance
fewer links
reduced computation load
Cascade control
(conventional; with extra measurement)
The reference r2 is an output from another controller
General case (“parallel cascade”)
Special common case (“series cascade”)
13
2
Series cascade
1.
2.
3.
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
13
3
Design:
•
First design K2 (“fast loop”) to deal with d2
•
Then design K1 to deal with d1
Tuning cascade
•
•
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
•
13
4
y2 = T2 r2 + S2d2
same as G1 but with an additional delay 2+c2
Exercise: Tuning cascade
1. (without cascade, i.e. no feedback from y2).
Design a controller based on G1G
2. (with cascade)
Design K2 and then K1
13
5
Exercise: Tuning cascade
13
6
Extra inputs
• Exercise: Explain how “valve position control” fits into this
framework. As en example consider a heat exchanger with bypass
13
7
Exercise
•
Exercise:
(a) In what order would you tune the controllers?
(b) Give a practical example of a process that fits into this block diagram
13
8
Outline
• 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 CV’s) (self-optimizing control)
Step 4: Where set production rate?
II Bottom Up
• Step 5: Regulatory control: What more to control (secondary CV’s) ?
• Step 6: Supervisory control
• Step 7: Real-time optimization
• Case studies
13
9
Step 6. Supervisory control layer
• Purpose: Keep primary controlled outputs c=y1 at optimal setpoints cs
• Degrees of freedom: Setpoints y2s in reg.control layer
• Main structural issue: Decentralized or multivariable?
14
0
Decentralized 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
14
1
Multivariable 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
-
14
2
Requires multivariable dynamic model
Tuning may be difficult
Less transparent
“Everything goes down at the same time”
Outline
• 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
14
3
Step 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 selfoptimizing)
• RTO not needed when
– Can “easily” identify change in active constraints (operating region)
– For each operating region there exists self-optimizing var
14
4
Outline
• 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
14
5
Summary: Main steps
1. What should we control (y1=c=z)?
•
Must define optimal operation!
2. Where should we set the production rate?
•
At bottleneck
3. What more should we control (y2)?
•
Variables that “stabilize” the plant
4. Control of primary variables
•
•
14
6
Decentralized?
Multivariable (MPC)?
Conclusion
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).
14
7
References
•
•
•
•
•
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
ESCAPE’12 Symposium, Haag, May 2002).
… + more…..
•
See home page of S. Skogestad:
14
8
http://www.chembio.ntnu.no/users/skoge/
1/--страниц
Пожаловаться на содержимое документа