PART - 4 KNU/EECS/ELEC 835001 Multivariable Control for MIMO processes Multivariable Control Dr. Kalyana C. Veluvolu Outline - Module 5.4 Decoupler Design for MIMO processes – Ideal Decoupler » Simplified Decoupler » Generalized Decoupler – Limitation of Decoupler – Simpler Decoupling » Partial Decoupling » Steady-state Decoupling – Effects of MV Constraints – Ill Conditioned Process » Degeneracy » Singular Value Decomposition » Decoupling Based on SVD Multivariable Control Dr. Kalyana C. Veluvolu 2 Multi-loop vs. Multivariable Control • multi-loop - use of several single-loop controllers (e.g., PID) on pairs of manipulated/controlled variables • multivariable - make control adjustments decisions jointly considering all outputs simultaneously • Multi-loop control configurations are typically used as a base control configuration and reside in the Distributed Control System (DCS). » e.g., flow control, temperature control, pressure control Multivariable control configurations typically require additional computational capability, and sit over a base multi-loop control configuration, sending setpoints to the multi-loop controllers. Multivariable Control Dr. Kalyana C. Veluvolu 3 Multi-loop vs. Multivariable Control Under the multi-loop control strategy, each controller gci operates according to: u i = g ci ( y di − y i ) = g ci ε i u1 = f 1 (ε 1 , ε 2 , ε n ) u 2 = f 2 (ε 1 , ε 2 ,ε n ) u 3 = f 3 (ε 1 , ε 2 ,ε n ) Multivariable Control y1,sp y2,sp G11(s) y1 G21(s) Multivariable Controller G12(s) u2 Dr. Kalyana C. Veluvolu G22(s) y2 + + = u n = f n (ε 1 , ε 2 , ε n ) u1 ++ Multivariable controller must decide on ui, not using only εi, but using the entire set, ε1, ε2,, ...,εn,;. Thus, the controller actions are obtained from 4 Principles of Decoupling Main loop y1 — u1 , y2 — u2,…, yn — un, couplings desirable for control Cross-couplings, yi — uj (i ≠ j) undesirable; loop interactions Eliminates the effect of the undesired cross-couplings improve control performance. Objective is to compensate for interactions by cross-couplings not to “eliminate” the cross-couplings; impossibility, require altering the physical nature of the system. Multivariable Control Dr. Kalyana C. Veluvolu 5 Simplified Decoupling Two compensator blocks gI1 and gI2. Controller outputs v1 and v2, actual control on the process u1 and u2. Without the compensator, u1 = v1 and u2 = v2, and the process model y1 = g11u1 + g12 u 2 y1 = g 21u1 + g 22 u 2 Compensator, Loop 2 “informed” of changes in v1 by g12, u2 is adjusted. The same for Loop 1 Multivariable Control Dr. Kalyana C. Veluvolu 6 Design Simplified Decoupler y1 = g 11u1 + g 12 u 2 y 2 = g 21u1 + g 22 u 2 ⇒ g I1 = − ⇒ u1 = v1 + g I 1v 2 u 2 = v 2 + g I 2 v1 ⇒ y1 = ( g 11 + g 12 g I 2 )v1 + ( g 12 + g 11 g I 1 )v 2 y 2 = ( g 21 + g 22 g I 2 )v1 + ( g 22 + g 21 g I 1 )v 2 g 12 g 11 gI2 = − y1 = ( g11 − g 12 g 21 )v1 g 22 y 2 = ( g 22 − g12 g 21 )v 2 g 11 Multivariable Control g 21 g 22 Dr. Kalyana C. Veluvolu 7 Difficulties for Simplified Decoupler larger than 2 x 2, decoupling become tedious. 3x3 , six compensator. NxN: (N2-N) compensators. Multivariable Control Dr. Kalyana C. Veluvolu 8 Generalized Decoupling MIMO process u = GI v y =Gu ⇒ y = GG I v To eliminate interactions, y to v : a diagonal matrix; GR(s). GG I = G R (s ) ⇒ y = G R ( s) v Choose GI such that G I = G −1GR ( s) Selected to provide desired decoupled behavior with the simplest form A commonly employed choice GR ( s) = Diag[G( s)] Multivariable Control Dr. Kalyana C. Veluvolu 9 Relation Between the Two Schemes Simplified decoupling y = GG I v 2 x 2 and 3 x 3 system, the compensator transfer function matrix: 1 GI = g I 2 1 G I = g I 21 g I 31 g I1 1 For the desired GI , task is to find g Iij g I 12 1 g I 32 g I 13 g I 23 1 to make GGI diagonal General decoupling Final diagonal form GGI specified as GR, then GI can be derived. Multivariable Control Dr. Kalyana C. Veluvolu 10 Example Distillation Column − 18.9e −3s 21.0s + 1 − 19.4e −3 s 14.4s + 1 12.8e − s G ( s) = 16.7 s−+7 s1 6.6e 10.9s + 1 simplified decoupler (16.7 s + 1)e −2 s g I 1 = 1.48 21.0s + 1 gI2 (14.4s + 1)e −4 s = 0.34 10.9s + 1 actual implementation (16.7 s + 1)e −2 s u1 = v1 + 1.48 v2 21.0 s + 1 (14.4 s + 1)e −4 s u 2 = v 2 + 0.34 v1 10.9 s + 1 Multivariable Control Dr. Kalyana C. Veluvolu 11 Example Distillation Column Generalized decoupling: 12.8e − s G R ( s ) = 16.7 s + 1 0 ∆= 0 −3 s − 19.4e 14.4 s + 1 − 19.4e −3 s 1 G −1 ( s ) = 14.4 s +−17 s ∆ − 6.67e 10.9 s + 1 18.9e −3 s 21.0 s + 1 −s 12.8e 16.7 s + 1 g G I = I 11 g I 21 g I 12 g I 22 − 248.32(21.0s + 1)(10.9s + 1)e −4 s + 124.74(16.7 s + 1)(14.4s + 1)e −10 s (21.0s + 1)(10.9s + 1)(16.7 s + 1)(14.4s + 1) g I 11 = − 248.32( 21.0 s + 1)(10.9 s + 1) 124.74(16.7 s + 1)(14.4s + 1)e −6 s − 248.32(21.0s + 1)(10.9s + 1) − 366.66(16.7 s + 1)(10.9s + 1)e − 2 s 124.74(16.7 s + 1)(14.4s + 1)e −6 s − 248.32(21.0s + 1)(10.9 s + 1) 84.48(21.0s + 1)(14.4s + 1) = 124.74(16.7 s + 1)(14.4 s + 1)e −6 s − 248.32(21.0s + 1)(10.9s + 1) g I 12 = g I 21 The actual implementation: Multivariable Control g I 22 = g I 11 u1 = g I 11v1 + g I 12 v 2 u 2 = g I 21 v1 + g I 22 v 2 Dr. Kalyana C. Veluvolu 12 Comparison of the Two Methods Simplified decoupling: “equivalent” open-loop decoupled system 12.8e − s g12 g 21 18.9 × 6.6(14.4 s + 1)e −7 s v1 = v1 y1 = g11 − − g s s s ( 16 . 7 1 ) 19 . 4 ( 21 . 0 1 )( 10 . 9 1 ) + + + 22 − 19.4e −3 s 18.9 × 6.6(16.7 s + 1)e −9 s g12 g 21 v 2 = v 2 y 2 = g 22 − − g ( 14 . 4 s 1 ) 12 . 8 ( 21 . 0 s 1 )( 10 . 9 s 1 ) + + + 11 much more complicated than GR specified in the Generalized decoupling Difficult to tune controller Generalized decoupling: tuning and performance better than for Simplified decoupling complicated decoupler Multivariable Control Dr. Kalyana C. Veluvolu 13 Limitations in Application Perfect decouple if model perfect - impossible in practice. The simplified decoupling similar to feedforward controllers realization problems, time delay elements Perfect dynamic decouplers based on model inverses. can only be implemented if inverses causal and stable. 2 x 2 compensators, gI1 and gI2 must be causal (no e+αs terms) and stable time delays in g11 smaller than time delays in g12 time delays in g22 smaller than time delays in g21 g11 and g22 no RHP zeros g12 and g21 must no RHP poles Multivariable Control Dr. Kalyana C. Veluvolu 14 Implementation Adding delays to the inputs u1, u2, ..., un, by define: G m = GD e − d11s D( s) = 0 e − d 22 s 0 e − d nn s Simplified decoupling: requiring the smallest delay in each row on the diagonal, designed by using Gm. Generalized decoupling: use modified process Gm so that GI=(GD)-1GR are causal which requiring that GR-1(GD) have the smallest delay in each row on the diagonal. Multivariable Control Dr. Kalyana C. Veluvolu 15 Example: Distillation Column add a time delay of 3 minutes to the input u1: 12.8e −4 s G ( s ) = 16.7 s −+101s 6.67e 10.9 s + 1 − 18.9e −3s 21.0 s + 1 − 19.4e −3 s 14.4 s + 1 Smallest delay in each row is not on diagonal, simplified decoupling compensator becomes: (16.7 s + 1)e s g I 1 = 1.48 21.0 s + 1 Design D(s) to add a time delay of 1 minute to the input u2, i.e.: 1 0 D( s) = −s 0 e 12.8e Gm = GD = 16.7 s −+101s 6.67e 10.9 s + 1 −4 s Multivariable Control − 18.9e 21.0s + 1 − 19.4e − 4 s 14.4 s + 1 −4 s Dr. Kalyana C. Veluvolu (16.7 s + 1) 21.0s + 1 (14.4s + 1)e −6 s = 0.34 10.9s + 1 g I 1 = 1.48 gI2 16 Example: Distillation Column 12.8e −4 s G ( s ) = 16.7 s −+101s 6.67e 10.9s + 1 − 18.9e −3s 21.0s + 1 − 19.4e −3s 14.4s + 1 g I 1 = 1.48 (16.7 s + 1)e s 21.0 s + 1 As time prediction term much small than time constant, drop prediction g I 1 = 1.48 (16.7 s + 1) 21.0 s + 1 Effective time constant of g12 and g11 are similar 16.7 + 4 ⇔ 21 + 3 Steady-state decoupling g I 1 = 1.48 Multivariable Control Dr. Kalyana C. Veluvolu 17 Partial Decoupling Consider partial decoupling if some of the loop interactions are weak some of the loops need not have high performance Partial decoupling focused on a subset of control loops interactions are important, and/or high performance control is required. Consider partial decoupling for 3x3 or higher systems main advantage: reduction of dimensionality. Multivariable Control Dr. Kalyana C. Veluvolu 18 Partial Decoupling Example Grinding circuit analysis Least sensitive variables y2 Most interaction: Loops 1 and 3, Decouplers: loops 1 and 3, Loop 2 without decoupling. 119 y1 217 s + 1 y = 0.00037 2 500 s + 1 y3 930 500 s + 1 the transfer function matrix for the subsystem 153 337 s + 1 0.000767 33s + 1 − 667e −320s 166 s + 1 − 21 10 s + 1 u1 − 0.00005 u2 10 s + 1 − 1033 u 3 47 s + 1 − 21 119 y1 217 s + 1 10 s + 1 u1 y = 930 − 1033 u 3 3 500 s + 1 47 s + 1 using the simplified decoupling approach 21 0.176(217 s + 1) ; g I 1 = 10s + 1 = 119 10s + 1 217 s + 1 Multivariable Control 930 0.0(47 s + 1) g I 3 = 500s + 1 = 1033 500s + 1 47 s + 1 Dr. Kalyana C. Veluvolu 19 Steady-State Decoupling Steady-state decoupling: uses steady-state gain of transfer function 2 x 2 system Simplified steady-state decoupling Generalized steady-state decoupling g I1 = − K12 K , g I 2 = − 21 K11 K 22 GI = K −1 K R Very easy to design and implement, first technique to try; ideal decoupler only if dynamic interactions persistent big performance improvements with very little work or cost most often applied in practice. Multivariable Control Dr. Kalyana C. Veluvolu 20 Example Distillation Column 12.8 − 18.9 K= 6.6 − 19.4 ⇐ 12.8e − s G ( s ) = 16.7 s−+7 s1 6.6e 10.9s + 1 − 18.9e −3s 21.0 s + 1 −3s − 19.4e 14.4s + 1 Simplified steady-state decoupling gI1 = − −18.9 = 1.48, 12.8 gI 2 = − 6.6 = 0.34 −19.4 ⇒ u1 = v1 + 1.48v 2 u 2 = v 2 + 0.34v1 Generalized steady-state decoupling 0 12.8 KR = − 19.4 0 Multivariable Control ⇒ 2.01 2.97 GI = 0.68 2.01 ⇒ u1 = 2.01v1 + 2.97 v 2 u 2 = 0.68v1 + 2.01v 2 Dr. Kalyana C. Veluvolu 21 Effect of Inputs Constraints Always existing constraints on the process input variables valves cannot go beyond full open or full shut heaters cannot go beyond full power or zero power, etc. Decoupling ok, if controller outputs not reached constraints Even one input reaches a constraint, (reset windup) control system no longer function decoupling extremely poor (or even unstable) responses Multivariable Control Dr. Kalyana C. Veluvolu 22 Input Constraints Example Closed-loop response of Y1 and Y2. Simplified steady-state decoupler for the WB Distillation Column with Kc1 =0.30, 1/τI1 = 0.307, Kc2 = - 0.05, 1/τI2 = 0.107. g I1 = − − 18.9 = 1.48, 12.8 gI2 = − Unconstrained manipulated variables, u1, u2, 6. 6 = 0.34 − 19.4 If u, 0≤ u1 ≤ 0.15, the closed-loop response is very poor once the reflux valve is full open and the system becomes unstable. Manipulated variables u1, u2 when 0≤ u1 ≤0.15. Response of Y1 and Y2 with constrained u1, 0≤ u1≤0.l5. Multivariable Control Dr. Kalyana C. Veluvolu 23 Sensitivity to Model Error K: system steady-state gain matrix: y = Ku Generalized decoupler u = GI v G I = K −1 K R ⇒ y = KK −1 K R v = K R v ∆K - error in the estimate of the steady-state gain matrix, then −1 = + ∆ y (K K)K K Rv ⇒ y = (K +∆K)u −1 = K R v +∆KK ⇒ ∆y = ∆KK −1 K R v ⇒ ∆y = Multivariable Control K Rv ⇒ ∆K Adj(K)K R v |K| Dr. Kalyana C. Veluvolu 24 RGA and Model Error ∆y = ∆K Adj(K)K R v |K| If |K|very small, its reciprocal will be very large Small modeling errors will cause very large errors in y Small changes in controller output v result in large errors in y Decoupling difficult: input/output variables are paired on very large RGA values; system will also be very sensitive to modeling errors. λij = K ij C ij Cij cofactor of Kij |K| Multivariable Control Dr. Kalyana C. Veluvolu 25 Example Heavy Oil Fractionator Transfer function model 4.05e −27 s G ( s ) = 50 s +−18 s 4.06e 13s + 1 1.20e −27 s 45s + 1 1.19 19 s + 1 ⇒ 4.05 1.20 K = 4.06 1.19 determinant very close to zero: decoupling very difficult. | K |= −0.0525 RGA − 91.8 92.8 Λ= 92.8 − 91.8 Decoupling extremely difficult small value of gain matrix determinant large values of RGA elements Multivariable Control Dr. Kalyana C. Veluvolu 26 SVD and Condition Number The matrix is said to be singular, if its determinant is zero, Near singularity matrix: singular values σ i = (λi ( A* A))1/ 2 i = 1, 2,..., n Condition number: The ratio of the largest and smallest singular value k= σ max σ min Example: Heavy Oil Fractionator continued 4.05 1.20 K = 4.06 1.19 singular values σ1=5.978, σ2 = 0.00878 and a condition number: κ = 680.778 clearly indicating serious ill-conditioning. Multivariable Control Dr. Kalyana C. Veluvolu 27