Dynamic Matrix Control - Introduction

Document Sample
Dynamic Matrix Control - Introduction Powered By Docstoc
					  Dynamic Matrix Control - Introduction

• Developed at Shell in the mid 1970’s
• Evolved from representing process
  dynamics with a set of numerical
  coefficients
• Uses a least square formulation to minimize
  the integral of the error/time curve


2/25/2001        Industrial Process Control   1
  Dynamic Matrix Control - Introduction

• DMC algorithm incorporates feedforward
  and multivariable control
• Incorporation of the process dynamics
  makes it possible to consider deadtime and
  unusual dynamic behavior
• Using the least square formulation made it
  possible to solve complex multivariable
  control calculations quickly
2/25/2001        Industrial Process Control    2
  Dynamic Matrix Control - Introduction

• Consider the following
                                Process
  furnace example               Heater
  (Cutlet & Ramaker)
                         Process Flow
• MV
     – Fuel flow FIC
                                   Ti      Fp

• DV                                                       FIC   TIC


     – Inlet temperatureTI
• CV
                                                    Fuel
     – Outlet temperature TIC
2/25/2001              Industrial Process Control                 3
  Dynamic Matrix Control - Introduction

• The furnace DMC                           0.014        0.0 
                                            0.086       0.240
  model is defined by its                                     
                                            0.214       0.340
  dynamic coefficients                                        
                                             0.414       0.465
• Response to step                          0.600       0.540
  change in fuel, a                       a      , b        
                                             0.736       0.590
• Response to step                          0.836       0.622
                                                              
  change in inlet                           0.904       0.640
  temperature, b                            0.949       0.653
                                                              
                                            0.986
                                                        0.658
                                                                
2/25/2001           Industrial Process Control                       4
  Dynamic Matrix Control - Introduction
                                                    Fuel Coefficients ai
• DMC Dynamic
                                  1.5
  coefficents                       1
                                                                                  Fuel Coefficients ai
                                  0.5
• Response to step                  0
                                        0               5                  10
  change in fuel, a
• Response to step                                 Inlet Temperature Coefficients bi


  change in inlet                   1
                                                                                       Inlet Temperature
                                  0.5
  temperature, b                                                                       Coefficients bi
                                    0
                                        0                5                  10




2/25/2001             Industrial Process Control                                                  5
  Dynamic Matrix Control - Introduction

• The DMC prediction may be calculated from
  those coefficients and the independent variable
  changes
                                                                          MV 1 
             CV 1   a1      0        0       b1       0      0             
                 2    a                                                 MV 2 
            CV   2          a1       0       b2      b1      0     MV 3 
             CV 3    a3   a2        a1      b3      b2      b1         1
                                                                      DV 
                                                          
                                                                          DV 2 
             CV i   ai                                      bi  2         
                            ai 1   ai  2    bi     bi 1          
                                                                          DV 
                                                                               3
                                                                                
2/25/2001                        Industrial Process Control                          6
  Dynamic Matrix Control - Introduction

• Feedforward prediction is enabled by moving the
  DV to the left hand side

     CV 1   b1              a1            0       0 
         2                  a
     CV  b2                 2             a1      0   MV 1 
                                                               
                                                                   2
     CV 3   b3   DV 1   a3           a2       a1   MV 
                                                          
                                                   MV 3 
                                                                     
     CV i   bi 
                               ai
                                                      ai  2 
                                                              
                                             ai 1
2/25/2001               Industrial Process Control                       7
  Dynamic Matrix Control - Introduction

• Predicted response determined from current outlet
  temperature and predicted changes and past history of the
  MVs and DVs
• Desired response is determined by subtracting the
  predicted response from the setpoint
• Solve for future MVs -- Overdetermined system
     – Least square criteria (L2 norm)
     – Very large changes in MVs not physically realizable
     – Solved by introduction of move suppression



2/25/2001                  Industrial Process Control         8
  Dynamic Matrix Control - Introduction

• Controller definition                        CV 1  CV 0 
     – Prediction horizon =                               
       30 time steps                              
                                              CV 30  CV 0 
     – Control horizon = 10                               
       time steps
• Initialization                             e1   SP1   CV 1 
                                                                
     – Set CV prediction                            
       vector to current outlet             e 30   SP 30  CV 30 
       temperature                                              
     – Calculate error vector
2/25/2001                Industrial Process Control                  9
  Dynamic Matrix Control - Introduction

• Least squares formulation including move
  suppression
                   a1      0      0             0 
                  a       a1      0              
                   2                                  
                   a3     a2      a1            0 
                                                                  e1 
                                             0                2
                                            a1      MV 1   e 
                                                                   
                                                MV 2   10 
                                                                 e
                  a      a29      a28          a21           
                   30                                          0 
                  1,1     0            0       0  MV 30   
                                                                
                   0                                               
    Move          
                          2 , 2                
                                                                  0 
                          0            0                       
    suppression   
                                         9,9
                                                       
                                              0 
                   0
                           0            0     10,10 
                                                       

2/25/2001             Industrial Process Control                            10
  Dynamic Matrix Control - Introduction
• DMC Controller cycle
     – Calculate moves using least square solution
     – Use predicted fuel moves to calculate changes to outlet
       temperature and update predictions
     – Shift prediction forward one unit in time
     – Compare current predicted with actual and adjust all 30
       predictions (accounts for unmeasured disturbances)
     – Calculate feedforward effect using inlet temperature
     – Solve for another 10 moves and add to previously
       calculated moves
2/25/2001               Industrial Process Control           11
  Dynamic Matrix Control - Introduction

• Furnace Example                              Furnace Temperature Response
• Temperature                           15                                     625
  Disturbance                           10


                         Temperature
  DT=15 at t=0                           5

• Three Fuel                             0                                     600
                                        -5 0                   5    10    15
  Moves                                -10        Fuel_0
                                                  Temp_0
  Calculated                           -15        Fuel_1                       575
                                                  Temp_1           Time
                                                  Fuel_2
                                                  Prediction



2/25/2001           Industrial Process Control                                 12
            Dynamic Matrix Control
             Basic Features Since 1983
• Constrain max MV movements during each
  time interval
• Constrain min/max MV values at all times
• Constrain min/max CV values at all times
• Drive to economic optimum
• Allow for feedforward disturbances

2/25/2001           Industrial Process Control   13
            Dynamic Matrix Control
             Basic Features Since 1983
• Restrict computed MV move sizes (move
  suppression)
• Relative weighting of MV moves
• Relative weighting of CV errors (equal
  concern errors)
• Minimize control effort


2/25/2001           Industrial Process Control   14
                                                     pcr:
                                                     k>M

            Dynamic Matrix Control                   M = number of
                                                     time intervals
                                                     required for CV
             Basic Features Since 1983               to reach steady-
                                                     state

• For linear differential equations the process outputon time
                                                 j = index
                                                 starting at the
  can be given by the convolution theorem        initial time

                         k                           d = unmeasured

      CV k 1  CV 0   ak  j 1  MV j  d k     disturbance

                        j 0

   CV 1  CV 0  a1  MV 0  d 0
   CV 2  CV 0  a2  MV 0  a1  MV 1  d 1
   CV 3  CV 0  a3  MV 0  a2  MV 1  a1  MV 2  d 2

2/25/2001               Industrial Process Control          15
                                                                        pcr:
                                                                        Where,

               Dynamic Matrix Control                                   N = number of
                                                                        future moves

                    Basic Features Since 1983                           M = time horizon
                                                                        required to reach
                                                                        steady state
• Breaking up the summation terms into past and the
                                            Note:
                                            estimated outputs
  future contributions                      depend only on
                                               k  N 1                 the N computed
                                    k l
             CV k  l  CV                      ak l  j  MV
                                                 j k
                                                                    j   future inputs




            k 1          k 1
   CV  CV  a1  MV k
          k 2
     k 2
   CV  CV  a2  MV k  a1  MV k 1
            k 3          k 3
   CV               CV           a3  MV k  a2  MV k 1  a3  MV k 2

2/25/2001                            Industrial Process Control                  16
            Dynamic Matrix Control
              Basic Features Since 1983
• Let N=number future moves, M=time horizon to
  reach steady state, then in matrix form
                              a1       0                  0      
                             a         a1                       
                              2                                   
       CV k 1   CV   
                      k 1
                                                         0   MV k 
          k 2     k 2                                                     
       CV    CV    a N         a N 1              a1   MV k 1 
                                                                     
                                                                      
       k M   k M                                                          
      CV
                CV
                          aM
                                     aM 1             aM  N 1  MV k  N 1 
                                                                                  
                                                          
                                                                  
                             aM
                                      aM                aM      
2/25/2001                   Industrial Process Control                                 17
            Dynamic Matrix Control
             Basic Features Since 1983
• Setting the predicted CV value to its setpoint and
  subtracting the past contributions, the “simple”
  DMC equation results           pcr:
                                             Dynamic matrix A is size MxN where

             CV k 1  CV k 1             M is the number of points required to
                                             reach steady-state and N is the
                S
                  k 2     k 2 
                                             number of future moves

             CVS  CV            e  A  ΔMV
                               
                              
                           k M
            CVSk  M  CV
                               
                                
2/25/2001             Industrial Process Control                            18
            Dynamic Matrix Control
             Basic Features Since 1983
• To scale the residuals, a weighted least squares problem is
  posed                   1                     pcr:
               Min W 2  A  ΔMV  e 
                    1
                                                wi = relative weighting of
                    2                      2    the ith CV which will be
                                                                repeated M times to form
                             w1                                          
                                                                the diagonal weighting
                                                               matrix W 
• For example,                      w1                           0      
  the relative                                                         
                        1                                               
                                                  w1
  weights with         W2                                              
  two CVs                                             w2                
                                                                        
                                                                       
                                     0                          w2      
                                                                        
                            
                                                                     w2 
                                                                         
2/25/2001                 Industrial Process Control                             19
            Dynamic Matrix Control
                Basic Features Since 1983
• To restrict the size of             r1                                               
  calculated moves a                               r1                     0            
                                                                                       
  relative weight for                                                                 
  each of the MVs is                                                                   
                                                             r1
                                    R                                                 
  imposed                                                        r2                    
                                                                                       
                                                                                      
   1     A
            1
                      e                                                             
Min W      ΔMV    
         R
            2
                           
                                                    0                      r2
   2               0                                                             
                                2     
                                                                                    r2 
                                                                                        


2/25/2001              Industrial Process Control                               20
            Dynamic Matrix Control
             Basic Features Since 1983
• Subject to linear constraints
     – The change in each MV is within a “step” bound

        MV LO      MV k  MV HI 
            LO            k 1         HI 
        MV   I   MV            MV 
                                  
            LO          k  N 1       HI 
        MV 
                   MV
                                    MV 
                                             

2/25/2001              Industrial Process Control       21
            Dynamic Matrix Control
             Basic Features Since 1983
• Subject to linear constraints                           IL
     – Size of each MV step for each
       time interval

      MV k   MV  1                       0        0  MV k 
           k 1                                              k 1 
      MV             MV   1            1           MV          
MV 
                                              0               
         k  N 1 
                                                             k  N 1 
      MV
                    MV  1
                                           1        1 MV
                                                                          
                                                                           

2/25/2001              Industrial Process Control                        22
            Dynamic Matrix Control
             Basic Features Since 1983
• Subject to linear constraints
     – MV calculated for each time interval is between high
       and low limits

 MV LO   MV      MV k   MV HI   MV 
    LO                 k 1         HI      
 MV    MV   I  MV             MV    MV 
      L                          
    LO 
                       k  N 1       HI 
                                                    
 MV   MV 
                MV
                                    MV   MV 
                                                 

2/25/2001               Industrial Process Control            23
            Dynamic Matrix Control
                 Basic Features Since 1983
• Subject to linear constraints
     – CV calculated for each time interval is between high
       and low limits

   CV     CV k 1 
            LO
                         MV k  CV HI 
    LO       k 2          k 1       HI 
   CV    CV   A   MV            CV 
                                  
    LO   k  M           k  N 1     HI 
   CV  CV
                  
                       MV
                                       CV 
                                              

2/25/2001               Industrial Process Control            24
             Dynamic Matrix Control
                Basic Features Since 1983

• The following LP subproblem is solved
     – where the economic weights are know a priori

  Minimize            1MV1*   2 MV2*   3 MV3*
  Subject to:
            CV1LO  g11MV1*  g12 MV2*  g13 MV3*  CV1HI
            CV2LO  g 21MV1*  g 22 MV2*  g 23 MV3*  CV2HI


2/25/2001                   Industrial Process Control         25
            Dynamic Matrix Control
               Basic Features Since 1983
• The original dynamic matrix is modified
     – Aij is the dynamic matrix of the ith CV with respect to
       the jth MV, 1t  1,1, ,1

                 A11   A12      A13            e1     
                A      A 22          
                                 A 23           e2     
                 21                                    
            A   1t     0        0 , e   MV1*  MV 1 
                                                      
                                            MV2  MV 2 
                                                *
                 0     1t        0 
                 0
                        0       1t       MV3*  MV 3 
                                                        
2/25/2001                  Industrial Process Control        26

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:14
posted:4/20/2011
language:English
pages:26