Download presentation
Presentation is loading. Please wait.
1
Example regulatory control: Distillation
5 dynamic DOFs (L,V,D,B,VT) Overall objective: Control compositions (xD and xB) “Obvious” stabilizing loops: Condenser level (M1) Reboiler level (M2) Pressure E.A. Wolff and S. Skogestad, ``Temperature cascade control of distillation columns'', Ind.Eng.Chem.Res., 35, , 1996.
2
LV-configuration used for levels (most common)
L and V remain as degrees of freedom after level loops are closed Other possibilities: DB, L/D V/B, etc….
3
BUT: To avoid strong sensitivity to disturbances:
Temperature profile must also be “stabilized” Temperature Ttop
4
Data “column A” Binary ideal mixture with relative volatility 1.5
Equimolar feed (zF=0.5) Both products 99% purity (xD, xB) 41 stages, feed at stage 20 Liquid lag: 1.5 min (from top to bottom) Level control: Tight Temperature control: Kc=1.84 (1 min closed-loop time constant) Assume top product (xD) most important → Close loop at top (L) Composition control (supervisory layer): Decentralized PID Measurement delay for composition: 6 min
5
Temperature control: Which stage x?
6
Singular value rule: Tray 27 is most sensitive (6 above feed)
7
Temperature control: Ts is DOF for layer above
8
Partial control Primary controlled variables y1 = c = (xD xB)T u1 = V
Supervisory control: 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 u1 = V
9
Disturbance sensitivity with partial control (Pd1)
11
RGA with temperature loop closed
12
Disturbance sensitivity with decentralized control: CLDG
13
Closed-loop response with decentralized PID-composition control
Interactions much smaller with “stabilizing” temperature loop closed … and also disturbance sensitivity is expected smaller
14
Integral action in temperature loop has little effect
15
May get improvement with L/D V/B - configuration for level loops
Simulations are with decentralized PID-control in supervisory layer Difference smaller if we use multivariable control (MPC)
16
No need to close two inner temperature loops
17
Conclusion: Stabilizing control distillation
Control problem as seen from layer above becomes much simpler if we control a sensitive temperature inside the column (y2 = T) Stabilizing control distillation Condenser level Reboiler level Pressure (sometimes left “floating” for optimality) Column temperature Most common pairing: “LV”-configuration for levels Cooling for pressure V for T-control (alternatively if top composition most important: L for T-control)
18
Conclusion stabilizing control: Remaining supervisory control problem
TC Ts Ls + may adjust setpoints for p, M1 and M2 (MPC)
19
Why control temperature at stage 27? 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) = variation (of c) = optimal variation in c + control error for c
20
Distillation example Assume here that both xD + xB are important
columnn A. u=L. Which temperature 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 gainl = xi/ L - have also given gains for disturbances (F,z,q) 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=gainl, d=F: Gyd=gainf 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 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' gainl' gainf' gainz' gainq'] res =
21
Assume here that both xD + xB are important
u=L >> [yoptf yoptq yoptz span] ans = >> 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 have checked with nonlinear simulation. OK!
22
Assume here that both xD + xB are important
u=L: max. on stage 15 (below feed stage) In practice (because of dynamics): Will use tray in top (peak at 27) >> span = abs(yoptf)+abs(yoptz)+abs(yoptq)+0.05; >> plot(gainl’./span)
23
Assume here that both xD + xB are important
>> [yoptf yoptq yoptz span] ans = u=V Gwv = Gwf = 0.5862 0.3938 >> yoptf = (-gainv'*pinv(Gwv)*Gwf + gainf')*0.2 >> yoptq = (-gainv'*pinv(Gwv)*Gwq + gainq')*0.2 >> yoptz = (-gainv'*pinv(Gwv)*Gwz + gainz')*0.1 >> span = abs(yoptf)+abs(yoptz)+abs(yoptq)+0.05; >> plot(gainv'./span)
24
Assume here that both xD + xB are important
u=V: sharp max. on stage 14 (below feed stage) >> span = abs(yoptf)+abs(yoptz)+abs(yoptq)+0.05; >> plot(gain’./span)
25
COMMENT! NEED to be careful about nonlinearity! Effect of step size in V: delta=0.005 Gw = delta=0.001 delta=0.0002 delta= delta=
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.