Supervisory control

advertisement
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
1
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)
2
Step 5. Regulatory control layer
• Purpose: “Stabilize” the plant using a
simple control configuration (usually:
local SISO PID controllers + simple
cascades)
• Enable manual operation (by operators)
• Main structural issues:
• What more should we control?
(secondary cv’s, y2, use of extra
measurements)
• Pairing with manipulated variables
(mv’s u2)
y1 = c
y2 = ?
3
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
The key decisions here (to be made by the control engineer) are:
1. Which extra secondary (dynamic) variables y2 should we control?
2. Propose a (simple) control configuration (select input-output pairings)
5
Main objectives control system
1. Implementation of acceptable (near-optimal) operation
2. Stabilization
ARE THESE OBJECTIVES CONFLICTING?
•
Usually NOT
–
Different time scales
•
–
Stabilization doesn’t “use up” any degrees of freedom
•
•
6
Stabilization fast time scale
Reference value (setpoint) available for layer above
But it “uses up” part of the time window (frequency range)
Why simplified configurations?
• Fundamental: Save on modelling effort
• Other:
–
–
–
–
–
–
7
easy to understand
easy to tune and retune
insensitive to model uncertainty
possible to design for failure tolerance
fewer links
reduced computation load
Use of (extra) measurements (y2) as (extra) CVs:
Cascade control
y2s
K
u2
G
Primary CV
y1
y
2
Secondary CV
(control for
dynamic reasons)
Key decision: Choice of y2 (controlled variable)
Also important (since we almost always use single loops in the
regulatory control layer): Choice of u2 (“pairing”)
8
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
9
K
u2
G
y1
y
Original DOF
2
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 (y2):
–
–
–
–
Liquid level condenser (MD) Unstable (Integrating) + No steady-state effect
Liquid level reboiler (MB)
Pressure (p) Variations in p disturb other loops
Holdup of light component in column
(temperature profile) Almost unstable (integrating)
Ts
10
T-loop in bottom
TC
Cascade control
distillation
ys
y
With flow loop +
T-loop in top
X
C
Ts
T
TC
Ls
L
11
X
C
FC
z
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
12
QUIZ: What are the benefits of adding a flow
controller (inner cascade)?
qs
Extra measurement y2 = q
1.
13
z
Counteracts nonlinearity in valve, f(z)
•
2.
q
With fast flow control we can assume q = qs
Eliminates effect of disturbances in p1 and p2
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
14
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
15
B. “Practical extended stabilization” (avoid “drift” due to disturbance
sensitivity):
• Intuitive: y2 located close to important disturbance
• Maximum gain rule: Controllable range for y2 is large compared to
sum of optimal variation and control error
• More exact tool: Partial control analysis
Recall maximum gain 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
16
Want large
What should we control (y2)?
Rule: Maximize the scaled gain
•
•
General case: Maximize minimum singular value of scaled G
Scalar case: |Gs| = |G| / span
•
|G|: gain from independent variable (u2) to candidate controlled variable
(y2)
–
IMPORTANT: The gain |G| should be evaluated at the (bandwidth)
frequency of the layer above in the control hierarchy!
•
•
•
span (of y2) = optimal variation in y2 + control error for y2
–
–
17
If the layer above is slow: OK with steady-state gain as used for selecting
primary controlled variables (y1=c)
BUT: In general, gain can be very different
Note optimal variation: This is often the same as the optimal variation used for selecting primary
controlled variables (c).
Exception: If we at the “fast” regulatory time scale have some yet unused “slower” inputs (u1)
which are constant then we may want find a more suitable optimal variation for the fast time
scale.
2. “y2 is easy to control” (controllability)
1. Statics: Want large gain (from u2 to y2)
2. Main rule: y2 is easy to measure and located
close to available manipulated variable u2
(“pairing”)
3. Dynamics: Want small effective delay (from u2 to y2)
•
“effective delay” includes
•
•
19
inverse response (RHP-zeros)
+ high-order lags
Rules for selecting u2 (to be paired with y2)
1. Avoid using variable u2 that may saturate (especially in loops at the
bottom of the control hieararchy)
•
Alternatively: Need to use “input resetting” in higher layer (“midranging”)
•
Example: Stabilize reactor with bypass flow (e.g. if bypass may saturate, then
reset in higher layer using cooling flow)
2. “Pair close”: The controllability, for example in terms a small
effective delay from u2 to y2, should be good.
20
Cascade control
(conventional; with extra measurement)
The reference r2 (= setpoint ys2) is an output from another controller
General case (“parallel cascade”)
Special common case (“series cascade”)
21
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 nonlinear
22
Design / tuning
•
First design K2 (“fast loop”) to deal with d2
•
Then design K1 to deal with d1
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
23
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
y1 = P1 u1 + Pr1 (y2s-n2) + Pd1 d
P1 = G11 – G12 G22-1 G21
Pd1 = Gd1 – G12 G22-1 Gd2
Pr1 = G12 G22-1
24
(WANT SMALL)
Assumption: Perfect control (K2 -> 1) in “inner” loop
Derivation: Set y2=y2s-n2 (perfect control), eliminate u2, and solve for y1
Partial control: Distillation
Supervisory control:
u1 = V
Primary controlled
variables y1 = c = (xD xB)T
Regulatory control:
Control of y2=T
using u2 = L (original DOF)
Setpoint y2s = Ts : new DOF
for supervisory control
y1 = P1 u1 + Pr1 (y2s-n2) + Pd1 d
P1 = G11 – G12 G22-1 G21
Pd1 = Gd1 – G12 G22-1 Gd2 - WANT SMALL
Pr1 = G12 G22-1
25
Limitations of partial control?
• Cascade control: Closing of secondary loops does not by itself impose
new problems
– Theorem 10.2 (SP, 2005). 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
26
Selecting measurements and inputs 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
• Compute pole vectors from eigenvectors of A-matrix
27
28
29
Example: Tennessee Eastman challenge
problem
30
31
32
33
34
35
36
”Summary Advanced control”
STEP S6. SUPERVISORY LAYER
Objectives of supervisory layer:
1. Switch control structures (CV1) depending on operating region
– Active constraints
– self-optimizing variables
2. Perform “advanced” economic/coordination control tasks.
– Control primary variables CV1 at setpoint using as degrees of freedom (MV):
• Setpoints to the regulatory layer (CV2s)
• ”unused” degrees of freedom (valves)
– Keep an eye on stabilizing layer
• Avoid saturation in stabilizing layer
– Feedforward from disturbances
• If helpful
– Make use of extra inputs
– Make use of extra measurements
Implementation:
• Alternative 1: Advanced control based on ”simple elements” (decentralized control)
• Alternative 2: MPC
37
Summary of some simple elements
Feeforward control with Multiple feeds etc. (extensive variables).: Ratio control
• Ratio setpoint usually set by feedback in a cascade manner
Feedback
1. Use of extra measurements for improved control;: Cascade control
– Cascade control is when MV (for master) =setpoint to slave controller
– MV1 = CV2s
2. Switch between active constraints: Selectors
3. Make use of extra inputs
– Dynamic (improve performance): Input resetting = valve position control =
midranging control
– Steady state (extend operating range): Split range control
4. Reduce interactions when using single-loop control: Decouplers (including phsically
based)
38
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.
Some control configuration elements:
• Cascade controllers
• Decentralized controllers
• Feedforward elements
• Decoupling elements
• Input resetting/Valve position control/Midranging control
• Split-range control
• Selectors
39
Most important control structures
1.
2.
3.
40
Feedback control
Ratio control (special case of feedforward)
Cascade control
Ratio control (most common case of
feedforward)
General: Use for extensive variables (usually flows) with constant optimal ratio
Example: Process with two feeds q1(d) and q2 (u), where ratio should be
constant.
Use multiplication block (x):
(q2/q1)s
(desired flow ratio)
q1
(measured
flow
disturbance)
41
x
q2
(MV: manipulated variable)
“Measure disturbance (d=q1) and adjust input (u=q2)
such that
ratio is at given value (q2/q1)s”
Usually: Combine ratio (feedforward)
with feedback
• Adjust (q1/q2)s based on feedback from process, for example, composition
controller.
• This is a special case of cascade control
– Example cake baking: Use recipe (ratio control = feedforward), but
adjust ratio if result is not as desired (feedback)
– Example evaporator: Fix ratio qH/qF (and use feedback from T to fine
tune ratio)
42
Example
Cascade control
•
Controller (“master”) gives setpoint to another controller (“slave”)
–
–
•
Without cascade: “Master” controller directly adjusts u (input, MV) to control y
With cascade: Local “slave” controller uses u to control “extra”/fast measurement (y’). “Master” controller adjusts
setpoint y’s.
Example: Flow controller on valve (very common!)
–
–
–
y = level H in tank (or could be temperature etc.)
u = valve position (z)
y’ = flowrate q through valve
flow in
Hs
H
LC
flow in
Hs
H
LC
MV=z
MV=qs
valve position
q
FC
z
flow out
43
WITHOUT CASCADE
flow out
WITH CASCADE
measured
flow
What are the benefits of adding a
flow controllerq (inner cascade)?
s
Extra measurement y’ = q
q
z
f(z)
1.
Counteracts nonlinearity in valve, f(z)
•
2.
44
1
With fast flow control we can assume q = qs
Eliminates effect of disturbances in p1 and p2
0
0
1 z
(valve opening)
Example (again): Evaporator with heating
From
reactor
qF [m3/s]
TF [K]
cF [mol/m3]
evaporation
level measurement
temperature measurement
T
∞
H
q [m3/s]
T [K]
c [mol/m3]
Heating fluid
qH [m3/s]
TH [K]
concentrate
NEW Control objective
• Keep level H at desired value
• Keep composition c (rather than temperature T) at desired value
BUT: Composition measurement has large delay + unreliable
Suggest control structure based on cascade control
45
Split Range Temperature Control
Split-Range
Temperature
Controller
Cooling
Water
RSP
Steam
TT
TT
46
TC
Split Range Temperature Control
Signal to Control Valve
(%)
100
80
60
40
Cooling
Water
Steam
20
0
E0
Error from Setpoint for Jacket Temperature
47
Note: adjust the location er E0 to make process gains equal
Use of extra measurements: Cascade
control (conventional)
The reference r2 (= setpoint ys2) is an output from another controller
General case (“parallel cascade”)
Not always helpful…
y2 must be closely
related to y1
Special common case (“series cascade”)
48
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 nonlinear
49
Design / tuning (see also in tuning-part):
•
First design K2 (“fast loop”) to deal with d2
•
Then design K1 to deal with d1
Example: Flow cascade for level control
u = z, y2=F, y1=M,
K1= LC, K2= FC
Pressure control distillation
• Need to stabilze p using Qc
• But want Qc to be max
• Use cascade with backoff on Qc (
• Another similar example: reactor temperature control (stabilization)
closed to Qmax.
50
Use of extra inputs
Two different cases
1. Have extra dynamic inputs (degrees of freedom)
Cascade implementation: “Input resetting to ideal resting value”
Example: Heat exchanger with extra bypass
Also known as: Midranging control, valve position control
2. Need several inputs to cover whole range (because primary input may
saturate) (steady-state)
Split-range control
Example 1: Control of room temperature using AC (summer), heater
(winter), fireplace (winter cold)
Example 2: Pressure control using purge and inert feed (distillation)
51
Extra inputs, dynamically
• Exercise: Explain how “valve position control” fits into this
framework. As en example consider a heat exchanger with bypass
52
QUIZ: Heat exchanger with bypass
closed
CW
qB
Thot
Nvalves
= 3,of Thot
N0valves
•Want tight
control
•Primary input: CW
•Secondary input: qB
•Proposed control structure?
53
= 2 (of 3),
Nss = 3 – 2 = 1
Alternative 1
closed
CW
qB
TC
Thot
Nvalves = 3, N0valves = 2 (of 3),
Use primary input CW: TOO SLOW
54
Nss = 3 – 2 = 1
Alternative 2
closed
CW
qB
Thot
Nvalves = 3, N0valves TC
= 2 (of 3),
Nss = 3 – 2 = 1
Use “dynamic” input qB
Advantage: Very fast response (no delay)
Problem: qB is too small to cover whole range
+ has small steady-state effect
55
Alternative 3: Use both inputs (with input resetting of dynamic input)
closed
CW
qB
Thot
Nvalves = 3, N0valves TC
= 2 (of 3),
qBs
FC
Nss = 3 – 2 = 1
TC: Gives fast control of Thot using the “dynamic” input qB
FC: Resets qB to its setpoint (IRV) (e.g. 5%) using the “primary” input CW
IRV = ideal resting value
56
Also called: “valve position control” (Shinskey) and “midranging control” (Sweden)
Too few inputs
• Must decide which output (CV) has the highest priority
– Selectors
• Implementation: Several controllers have the same MV
– Selects max or min MV value
– Often used to handle changes in active constraints
• Example: one heater for two rooms. Both rooms: T>20C
– Max-selector
– One room will be warmer than setpoint.
• Example: Petlyuk distillation column
– Heat input (V) is used to control three compositions using max-selector
– Two will be better than setpoint (“overpurified”) at any given time
57
Divided wall column example
58
Control of primary variables
• 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?
59
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
60
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
-
61
Requires multivariable dynamic model
Tuning may be difficult
Less transparent
“Everything goes down at the same time”
Download