0% found this document useful (0 votes)
20 views

Part 3

Uploaded by

krishna
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Part 3

Uploaded by

krishna
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 45

Part 3: Constraint switching.

Standard control elements


Standard Advanced control elements

Gives a decomposed control system:


• Each element links a subset of inputs
with a subset of putputs
• Results in simple local tuning
Introduction to pairing and switching
Most basic element: Single-loop PID control
d

MV=u y=CV

Process

MV-CV Pairing. Two main rules:


1. “Pair-close rule”
• The MV should have a large, fast, and direct effect on the CV.

2. “Input saturation rule”


• Pair a MV that may saturate with a CV that can be given up (when the MV saturates)

Additional rule:
3. “ RGA-rule”
• Avoid pairing on negative steady-state RGA-element. Otherwise, the loop gain may
change sign (for example, if the input saturates) and we get instability with integral
action in the controller.
Need to control active constraints
But active constraints may change during operation
Four cases:
• A. MV-MV switching
• B. CV-CV switching
• MV-CV switching
• C. Simple (if we follow input saturation rule)
• D. Complex (combine MV-MV and CV-CV)
Process
A. MV-MV switching
• Need several MVs to cover whole steady-state range (because
primary MV may saturate)*
• Note that we only want to use one MV at the time.

Three main solutions for “selecting the right MV”:


Alt.1: (Standard) Split-range control (SRC) (one controller)
Alt 1’: Generalized SRC (many controllers)
Alt.2 Many controllers with different setpoints
Alt.3 Valve position control

In addition: MPC
Which is best? It depends on the case!

* Adriana Reyes-Lua Cristina Zotica, Sigurd Skogestad, «Optimal Operation with Changing Active Constraint Regions using Classical Advanced Control,, Adchem Conference, Shenyang, China. July 2018 ,

A. Reyes-Lúa and S. Skogestad. “Multi-input single-output control for extending the operating range: Generalized split range control using the baton strategy”. Journal of Process Control 91 (2020)
B. CV-CV switching
Process

• One MV
• Many CVs, but control only one at a time
• Solution: Selector
The four cases in more detail
A. MV-MV switching (because MV may saturate)
• Need many MVs to cover whole steady-state range
• Use only one MV at a time
Process
• Three options:
A1. Split-range control,
A2. Different setpoints,
A3. Valve position control (VPC)
B. CV-CV switching (because we may reach new CV constraint)
• Must select between CVs Process
• One option: Many controllers with Max-or min-selector

Plus the combination: MV-CV switching


C. Simple MV-CV switching: CV can be given up
• We followed «input saturation rule» Process
• Don’t need to do anything (except anti-windup in controller)
D. Complex MV-CV switching: CV cannot be given up (need to «re-pair loops»)
• Must combine MV-MV switching (three options) with CV-CV switching (selector) Process

Note: we are here assuming that the constraints are not conflicting so that switching is possible

Adriana Reyes-Lua and Sigurd Skogestad, Systematic Design of Active Constraint Switching Using Classical Advanced Control Structures, Ind.Eng.Chem.Res, 2020
Standard advanced control elements
• E1-E18
E1. Cascade control
General case (“parallel cascade”)

Not always helpful…


Master controller Slave controller
y2 must be closely
related to y1

Special common case (“series cascade”)


Block diagram
flow controller
p1 p2

T2
d’1
Valve

Example: Level control with slave flow controller:


u = z (valve position, flow out)
y1 = H
y2 = q
d’1 = flow in
d2 = p1-p2 f(z)
1
Transfer functions:
G2 = k(z)/(τs+1) where k(z) = dq/dz (nonlinear!)
G1 = - 1/(As) 0
K1 = Level controller (master) 0 1

K2 = Flow controller (slave) k(z) = slope df/dz


More about cascade control
When use (series) cascade ?
Master Slave
controller
d’2 d’1
controller

Use cascade control (with an extra secondary measurement y2) when one or more of the following
occur:
1. Significant disturbances d2 and d2’ inside slave loop (and y2 can be controlled faster than y1)
2. The plant G2 is nonlinear or varies with time or is uncertain.
3. Integrating dynamics (including slow dynamics or unstable) in both G1 and G2, (because without
cascade double integrating plant G1G2 is difficult to control)
4. Measurement delay for y1
• Note: In the flowsheet above, y1 is the measured output, so any measurement delay is included in G1

Design / tuning
• First design K2 (“fast loop”) to deal with d2 and d2’
• Then design K1 to deal with d1 and d1’
Transfer functions and tuning
T2
d’1

First tune fast inner controller K2 (“slave”)


Design K2 based on model G2
Select τc2 based on effective delay in G2
Transfer function for inner loop (from y2s to y2): T2 = G2 K2/(1+G2 K2)
Because of integral action, T2 has loop gain = 1 for any G2.
With SIMC we get: T2 ~ e-ϴ2s/(τc2s+1)
Nonlinearity: Gain variations (in G2) translate into variations in time constant τC2

Then with slave closed, tune slower outer controller K1 (“master”):


Design K1 based on model G1’=T2*G1
Can often set T2=1 if inner loop is fast!
Typical choice: τc1 = 10 τ c2
Cascade control distillation
3 layers of cascade

ys
With flow loop + y XC τc=1500s=25 min
T-loop in top
Ts
T
TC τc=150s
Ls
L FC τc=15s
z

XC
Problem with many layers:
Eat up the time window
Cascade control block diagram
• Which disturbances motivate the use of
cascade control?
d2 d1 d1o

r2 u y2
r1 C1 C2 + P2 + P1 + y1

Answer: d2
E2. Ratio control
EXAMPLE: CAKE BAKING MIXING PROCESS

RATIO CONTROL with outer feedback trim (to adjust ratio setpoint)

R=(F2/F1)s
d=F1,m u= F2,s
x
Flour
F2,m FC
(solid) Water

VC
ym

y
Viscosity y [cP]
ys
Product
Ratio control
• Avoid divisions in implementation! (avoid divide by 0)
• Process control textbooks has some bad/strange suggestions,
for example, division (bad) and “ratio stations” (complex):

Seborg:

Bad solution
Avoid divisions (divide by 0 if u =0, for example, at startup) This is complicated. What is RS?
Ok if implemented as shown in red at right
Ratio control
• Keep ratio R (between extensive variables) constant in order to keep property y constant
• Feedforward: R=u/d
• Decoupling: R=u1/u2
• u,d: extensive variables
• y: (any!) intensive variable
• Don’t really need a model (no inverse as in «normal» feedforward!)
• Assumes that «scaling property» holds
• Based on physical insight
• Setpoint for R may be found by «feedback trim»
• Scaling property holds for mixing and equilibrium processes
• Rato control is almost always used for mixing of reactants
• Requires that all extensive variables are scaled by same amount
• So does not hold for heat exchanger (since area A is constant) or non-equilibrium reactor (since volume V is
constant)
• L/F constant is not good for distillation column with saturated (max) heat input (V)
Theoretical basis of ratio control
LINEARITY OF RATIO CONTROL when done correctly

R=(F2/F1)s
d=F1,m u= F2,s
x
Flour
F2,m FC
(solid) Water

VC
ym

y
Viscosity y [cP]
ys
Product

Note : This way of implementing ratio control makes it easy to tune the outer feedback loop
(CC: composition controller) because the gain from MV = Rs to CV=y does not depend on
disturbance d=F1.
Proof of last statement
• “Note : This way of implementing ratio control makes it easy to tune the outer feedback loop (CC: composition controller) because the gain from MV = (q2/q1)s to CV=c does not depend on disturbances in q1.”

• One may think that the last statement is fairly obvious, because we are talking about just scaling all flowrates by the same factor and then
the composition c should remain constant. But actually, I wrote the following in 2021 (and earlier).
WRONG: “Potential problem for outer feedback loop (CC: composition controller): Gain from MV = (q2/q1)s to CV=c will vary because of multiplication with q1,m. So outer loop
must have robust tunings to get high gain margin (large tauc)”.

• In fact, it’s opposite, there are less gain variations when the outer controller manipulates (q2/q1)s than when it manipulates q2 directly
• Proof. The component balance gives: CV=c=(c1q1 + c2q2)/(q1+q2)
• We are here considering disturbances in q1, so assume that c1 and c2 are constant.
• We also assume that there is an outer loop so that c remains constant. From the component balance we see that c=constant implies that
at as we change q1 (disturbance) we will have that q1/q2=constant and also that R1=q1/(q1+q2) = constant.
• With no ratio control: The gain from MV=q2 to CV=c is:
• K = (c2-c1)q1/(q1+q2)^2 = (c2-c1)R1/(q1+q2)
• From the above argument K = constant/(q1+q2) so the gain K will change with operation, which will be a problem for the outer feedback controller (CC). Actually, we find that
K=infinity when q=q1+q2 goes to zero, so we may get instability in the outer feedback loop at low flowrates.

• With ratio control: The gain from MV=(q2/q1)s to CV=c is:


• Kr = (c2-c1)q1^2/(q1+q2)^2 = (c2-c1) R12
• From the above argument we have that R1=constant so we get Kr= constant independent of the value of the disturbance (q1)! So the outer loop always has the same gain and
there no reason to be careful about the tunings.

• Note: An alternative to ratio control is “standard” feedforward control where u = uFB + uFF (where FB is from the feedback controller CC
and FF is from a feedforward controller from d=q1.) In this case we get the problem with process gain variation for the feedback
controller CC). So ratio control is the best!
• But note that we should not always use ratio control for flow disturbances; it only holds if you are controlling temperature or composition
(which are intensive variables). If you are controlling an extensive variable like total flow or level then you should add or subtract the
disturbance. To the right an example:
• Challenge to myself (Sigurd): prove this more generally using theory of 1) ratio control and 2) input transformations.
Valve position control (VPC)
Have extra MV (input): One CV, many MVs Process

Two different cases of VPC:


• E3. Have extra dynamic MV
• Both MVs are used all the time
• E7. Have extra static MV
• MV-MV switching: Need several MVs to cover whole range at steady state
• We want to use one MV at a time
E3. VPC on extra dynamic input
u2 = main input for steady-state control of CV u1
(but u2 is poor for directly controlling y Process y
• e.g. time delay or u2 is on/off ) u2
u1 = extra dynamic input for fast control of y

Example 1: Large (u2) and small valve (u1) (in


parallell) for controlling total flowrate (y=F)
• The large valve (u2) has a lot of stiction which
gives oscillations if used alone for flow control
• The small valve (u1) has less stiction and gives
good flow control, but it’s too small to use
VPC alone

Example 2: Strong base (u2) and weak base


(u1) for neutralizing acid (disturbance) to
control y=pH
• Do pH change gradually (in two tanks) with
the strong base (u2) in the first tank and the
weak base (u1) in the last tank. u1 controls the
pH in the last tank (y)

Alternative term for dynamic VPC:


• Mid-ranging control (Sweden)
Example: Heat exchanger with bypass

T zB

Want tight control of y=T.


• u1=zB (bypass)
• u2=CW
Proposed control structure?
Attempt 1. Use u2=cooling water: TOO SLOW

TC
T zB=0 (closed)
Attempt 2. Use u1=zB=bypass. SATURATES
(at zB=0=closed if CW too small)

=constant

T zB
TC

Advantage: Very fast response (no delay)


Problem: zB is too small to cover whole range
+ not optimal to fix at large bypass (waste of CW)
What about VPC?

T zB

Want tight control of y=T.


• u1= zB
• u2=CW
Proposed control structure?
• Main control: u2=CW
• Fast control: u1=zB
Attempt 3 (proposed): VPC

SP=50%

T zB VPC
TC

• Fast control of y: u1 = zB
• Main control (VPC): u2=CW (slow loop)
• Need time scale separation between the two loops
Comment on heat exchanger example
• The above example assumes that the flows on the two sides are «balanced» (mcP for cooling water (CW) and
hot flow (H) are not too different) such that both the bypass flow (u1) and CW flow (u2) have an effect on T
(CV)

• There are two «unbalanced» cases:


• If CW flow is small, then T-outCW will always approach T-inH, so from a total energy balance, the bypass will have
almost zero steady-state effect on T.
• If CW flow is large, then T-outH (before bypass mixing point) will always approach T-inCW, so CW will have almost
zero effect on T. (both steady state and dynamically)

• This illustrates that heat exchanger may behave very nonlinearly, and a good control structure for one heat
exchanger case, may not work well for another case
Alternative to VPC: Parallell control
VPC with one MV: Stabilizing control with
resetting of MV
VPC

Note: u is both an MV and a CV


Example: Anti-slug control
Title: Cascade Control of unstable systems with application to stabilization of slug flow Author: Espen Storkaas and Sigurd Skogestad Presented at IFAC-symposium Adchem'2003, Hong Kong, Jan. 2004 (original date:

Example: Stabilize bycycle

Espen Storkaas and Sigurd Skogestad, "Cascade Control of unstable systems with application to stabilization of slug flow", IFAC-symposium Adchem'2003, Hong Kong,
E4. Selector (for CV-CV switching*)
• Many CVs paired with one MV. Process
• But only one CV controlled at a time.
• Use: Max or Min selector

Note: Selectors are logic blocks

• Sometimes called “override”


• But this term may be misleading
• Selector is generally on MV (compare output from many controllers)

*Only option for CV-CV switching. Well, not quite true: Selectors may be implemented in other ways, for example, using «if-then»-logic.
y1
u
Implementation selector Process y2

Alt. I (General). Several controllers (different CVs)


• Selector on MVs
• Must have anti windup in c1 and c2 ! u=max(u0,u1,u2)

Alt. II (Less general) Controllers in cascade


• Selector on CV setpoint
• In this case: Selector may be replaced by saturation element
(with y2s as the max) or min)

Alt. III (For special case where all CVs have same bound). One controller
• Selector is on CVs (Auctioneering) y1 y=max(y1,y2) u
• Also assumes that dynamics from u to y1 and y2 are similar; otherwise use Alt.I y2 > c
• Example: Control hot-spot in reactor or furnace.

ys
CV-CV switching

Example Alt. III


• Hot-spot control in reactor or furnace

T1 y=max(Ti) u=Q
T2 C
.
.
>
.

Tn

• Comment: Could use General Alternative I (many controllers) for hot-spot control, with each
temperature controller (c1, c2,…) computing the heat input (u1=Q1, u2=Q2, ….) and then select
u = min(u1, u2, …), but it is more complicated.
CV-CV switching

Furnace control with safety constraint (Alt. I)


u1
T1s = 500C
Input (MV) TC
u = Fuel gas flowrate u2 T2max=700C
Output (CV) MIN TC y1=T1
y1 = process temperature T1 HP steam
(desired setpoint or max constraint) u=min(u ,u )
1 2
y2 = furnace temperature T2
y2=T2
(max constraint) Flue gas

Rule: Use min-selector for constraints that


are satisfied with a small input Process fluid (water)

u = input = manipulated variable (MV)


y = output = controlled variable (CV)
u=Fuel gas
Air
CV-CV switching, alternative solution

Furnace control with cascade (Alt. II, selector on CV-sp)


T2max = 700C

T2s u1 T1s = 500C


MIN TC
Comparison
u2
The cascade solution is less general but TC y1=T1
it may be better in this case.
Why better? Inner T2-loop is fast and
always active and may improve control
of T1. y2=T2
Flue gas

Process fluid

u=Fuel gas
Air
CV-CV switching

Design of selector structure

Rule 1 (max or min selector)


• Use max-selector for constraints that are satisfied with a large input
• Use min-selector for constraints that are satisfied with a small input

Rule 2 (order of max and min selectors):


• If need both max and min selector: Potential infeasibility
• Order does not matter if problem is feasible
• If infeasible: Put highest priority constraint at the end
“Systematic design of active constraint switching using selectors.”
Dinesh Krishnamoorthy , Sigurd Skogestad. Computers & Chemical Engineering, Volume 143, (2020)
Rule 2 (order of selectors)
CV-CV switching

Valves have “built-in” selectors


Rule 3 (a bit opposite of what you may guess)
• A closed valve (umin=0) gives a “built-in” max-selector (to avoid negative flow)
• An open valve (umax=1) gives a “built-in” min-selector

• So: Not necessary to add these as selector blocks (but it will not be wrong).
• Another way to see this is to note that a valve works as a saturation element

Question: Why doesn’t order matter here?


CV-CV switching

Challenges selectors
• Standard approach requires pairing each active constraint with a
single input
• May not be possible in complex cases
• Stability analysis of switched systems is still an open problem
• Undesired switching may be avoided in many ways:
• Filtering of measurement
• Tuning of anti-windup scheme
• Minimum time between switching
• Minimum input change

You might also like