In parametric internal model-based control (IMC), a controller may be used to control a process where the controller includes a model of the process. The accuracy of the model drives the performance of the controller. IMC is also known in the art as model predictive control (MPC) or simply as model-based control (MBC). For purposes of this disclosure, the term IMC will be used.
FIG. 1 shows a representation of a control system 10 that includes a model 12 of an integrating process 14 that may be controlled with a controller 16 by a predictive control technique that is represented by an inverted version of the model 12 (realizable model inverse) and an associated filter. Parameters of the model are used to calculate, or predict, a future process variable (PV), and generate a control output (CO) responsive to a given set point. But, as will be explained in greater detail below, modeling the behavior of an integrating process that may have one or more poles at origin leads to computational difficulties.
For any non-zero disturbance (e.g., input disturbance d1 and/or output disturbance d2), the predicted process variable (also known as a controlled variable or CV) will grow without bound due to the integrating nature of the conventional implementation of the model 12 and associated inverted model. The same holds for any non-zero control output CO (also known as a manipulated variable) as the model prediction of the future state of PV also will grow without a bound.
The model output under the forgoing conditions is represented in the graphs of FIGS. 2a and 2b, which share the same scale for the time axis. In FIG. 2a, the control output CO is graphed. As illustrated, a step change to the control output CO is made at a given time. As will be appreciated, the control output CO change is the input value to the process model 12 and the process 14. The predicted process variable that is output by the model 12 is graphed in FIG. 2b. 
A dead time D is a measurement of how long the process takes to start to respond to the CO change and may be defined by the amount of time that elapses from the change in control point to when the predicted process variable exceeds a noise threshold defined by a noise band. A time constant (or lag time) may be used as an indicator of how long the process takes to reach steady state after the dead time. For an integrating process, the time constant value may be the amount of time that elapses from the end of the dead time to when the slope of the predicted process variable achieves 63% of the slope of the steady state PV. 95% of the slope of the steady state PV may be achieved after three time constants.
As illustrated, using an integrating process model, the value for the predicted process variable will grow without bound. A maximum slope of the predicted process variable curve (or PV maximum slope) may be determined and the gain (k) may be defined by the PV maximum slope divided by the CO change. The unbounded increase in predicted process variable is not necessarily a design issue for the control system 10, but represents a computational and numerical issue.
Three common solutions exist, but each have drawbacks. The first solution is to convert output disturbances (or modeling errors) to an equivalent input disturbance, such that disturbances and errors that are input to the model are mathematically zeroed in the steady state. The second solution is to reinitialize the state of the predicted process variable from time to time to reduce the occurrence of a numerical overflow. The third solution is to use an internally stable algorithmic internal model control (AIMC) of a two degree of freedom IMC.
While these solutions improve the behavior of the model, they all introduce design and computational complexities. Moreover, for an integrating process, the design of an internal model-based controller is complicated by the introduction of a higher order filter as will be demonstrated below.
With continued reference to FIG. 1, conventional representations of a first order integrating process will now be described. Under these representations, the integrating process 14 may be represented by equation 1A and the model 12 of the process may be represented by equation 2.
                                          G            p                    ⁡                      (            s            )                          =                              k            s                    ⁢                      ⅇ                          -              DS                                                          Eq. 1A                                                      G            m                    ⁡                      (            s            )                          =                                            k              ^                        s                    ⁢                      ⅇ                                          -                                  D                  ^                                            ⁢              S                                                          Eq. 2            
The steady state process gain is represented by k in equation 1A and an estimated steady state process gain is represented by {circumflex over (k)} in equation 2. Similarly, D is the process dead time and {circumflex over (D)} is an estimated dead time. In each equation, a Laplace variable is represented by S.
The controller 16 may be represented by equation 3, in which Gm+−1 is an invertible portion of the model 12 (equation 2) and F(s) is a filter that is designed to make the controller represented by Gc(s) realizable. The filter specifies a desired response for the process variable PV (referred to as a desired trajectory of PV).Gc(s)=Gm+−1·F(s)  Eq. 3
A controller computation round-off error is shown in FIG. 1 as d3, which represents a rounding error. While the rounding error may be very small, the rounding error may still lead to a numerical instability issue, as described below.
The system 10 of FIG. 1 may be simplified into the forms illustrated in FIGS. 3 and 4. If, in FIG. 3, a perfect model 12 is obtained for a first order process 14, Gm(s) will equal Gp(s), and then both Gm(s) and Gp(s) may be represented by equation 1A. If a first order filter F(s) equaling 1/(εs+1) is used, equation 3A results, where ε is a filter time constant.
                              G          c                =                                            G                              m                +                                            -                1                                      ·                          F              ⁡                              (                s                )                                              =                      s                          k              ⁡                              (                                                      ɛ                    ⁢                                                                                  ⁢                    s                                    +                  1                                )                                                                                  Eq          .                                          ⁢          3                ⁢        A            
As indicated, Gm+ is the invertible portion of the model and is equal to k/s. In FIG. 4, GIMC may be considered the combination of Gc and Gm and represents an internal model-based controller 16′. GIMC may be expressed as equation 4.
                              G          IMC                =                                            G              c                                      1              -                                                G                  c                                ⁢                                  G                  m                                                              =                                                    s                                  k                  ⁡                                      (                                                                  ɛ                        ⁢                                                                                                  ⁢                        s                                            +                      1                                        )                                                                              1                -                                                      ⅇ                                          -                      DS                                                                                                  ɛ                      ⁢                                                                                          ⁢                      s                                        +                    1                                                                        =                          s                              k                ⁡                                  (                                                            ɛ                      ⁢                                                                                          ⁢                      s                                        +                    1                    -                                          ⅇ                                              -                        DS                                                                              )                                                                                        Eq        .                                  ⁢        4            
In equation 5A, the process variable PV is expressed using a three term equation that represents a dynamic relationship among the value at the input to the controller 16′ (first term where SP is the set point), the value at the input to the process 14 following introduction of an input disturbance d1 (second term) and the value at the output of the process following introduction of an output disturbance(s) d2 (third term).
                              PV          ⁡                      (            s            )                          =                                                                              G                  IMC                                ⁢                                  G                  p                                                            1                +                                                      G                    IMC                                    ⁢                                      G                    p                                                                        ⁢            SP                    +                                                    G                p                                            1                +                                                      G                    IMC                                    ⁢                                      G                    p                                                                        ⁢                          d              1                                +                                    1                              1                +                                                      G                    IMC                                    ⁢                                      G                    p                                                                        ⁢                          d              2                                                                    Eq          .                                          ⁢          5                ⁢        A            
The second term of equation 5A corresponds to an input disturbance to the process 14 and it is desirable for this term to be zero at steady state. If the second term is not zero, a steady state error occurs. By applying a step input for the set point (or set point change) an analysis of how PV will behave may be made. One may represent the step input as r, such that SP(s) equals (1/s)r and equation 6 follows from equation 5A.
                                                                        t                ⁢                                  →                  lim                                ⁢                                  ∞                  ⁢                                                                          ⁢                                      PV                    ⁡                                          (                      t                      )                                                                                  =                              s                ⁢                                  →                  lim                                ⁢                                  0                  ⁢                                                                          ⁢                                                                                    G                        IMC                                            ⁢                                              G                        p                                                                                    1                      +                                                                        G                          IMC                                                ⁢                                                  G                          p                                                                                                      ⁢                  r                                                                                                        =                              s                ⁢                                  →                  lim                                ⁢                                  0                  ⁢                                                                          ⁢                                                                                    ⅇ                                                  -                          DS                                                                                            (                                                                              ɛ                            ⁢                                                                                                                  ⁢                            s                                                    +                          1                          -                                                      ⅇ                                                          -                              DS                                                                                                      )                                                                                    1                      +                                                                        ⅇ                                                      -                            DS                                                                                                    (                                                                                    ɛ                              ⁢                                                                                                                          ⁢                              s                                                        +                            1                            -                                                          ⅇ                                                              -                                DS                                                                                                              )                                                                                                      ⁢                  r                                                                                                        =                                                s                  ⁢                                      →                    lim                                    ⁢                                      0                    ⁢                                                                                  ⁢                                                                  ⅇ                                                  -                          DS                                                                                                                      ɛ                          ⁢                                                                                                          ⁢                          s                                                +                        1                        -                                                  ⅇ                                                      -                            DS                                                                          +                                                  ⅇ                                                      -                            DS                                                                                                                ⁢                    r                                                  =                r                                                                        Eq        .                                  ⁢        6            
It may be observed that for a change in the set point SP variable, there is a direct correlation in the process variable PV attained at steady state. But if a step input disturbance (e.g., d1(s) equaling d1/s) is introduced, a steady state error in PV results as indicated by equation 7.
                                                                        t                ⁢                                  →                  lim                                ⁢                                  ∞                  ⁢                                                                          ⁢                                      PV                    ⁡                                          (                      t                      )                                                                                  =                              s                ⁢                                  →                  lim                                ⁢                                  0                  ⁢                                                                          ⁢                                                            G                      p                                                              1                      +                                                                        G                          IMC                                                ⁢                                                  G                          p                                                                                                      ⁢                                      d                    1                                                                                                                          =                              s                ⁢                                  →                  lim                                ⁢                                  0                  ⁢                                                                          ⁢                                                                                    k                        ⁢                                                                                                  ⁢                                                  ⅇ                                                      -                            DS                                                                                              s                                                              1                      +                                                                        ⅇ                                                      -                            DS                                                                                                    (                                                                                    ɛ                              ⁢                                                                                                                          ⁢                              s                                                        +                            1                            -                                                          ⅇ                                                              -                                DS                                                                                                              )                                                                                                      ⁢                                      d                    1                                                                                                                          =                              s                ⁢                                  →                  lim                                ⁢                                  0                  ⁢                                                                          ⁢                                                            k                      ⁡                                              (                                                                              ɛ                            ⁢                                                                                                                  ⁢                            s                                                    +                          1                          -                                                      ⅇ                                                          -                              DS                                                                                                      )                                                                                    s                      ⁡                                              (                                                                              ɛ                            ⁢                                                                                                                  ⁢                            s                                                    +                          1                          -                                                      ⅇ                                                          -                              DS                                                                                +                                                      ⅇ                                                          -                              DS                                                                                                      )                                                                              ⁢                                      d                    1                                                                                                                          =                                                s                  ⁢                                      →                    lim                                    ⁢                                      0                    ⁢                                                                                  ⁢                                                                                            k                          ⁢                                                                                                          ⁢                          ɛ                                                +                                                  kD                          ⁢                                                                                                          ⁢                                                      ⅇ                                                          -                              DS                                                                                                                                                                            ɛ                          ⁢                                                                                                          ⁢                          s                                                +                        1                        +                                                  ɛ                          ⁢                                                                                                          ⁢                          s                                                                                      ⁢                                          d                      1                                                                      =                                                                            (                                                                        k                          ⁢                                                                                                          ⁢                          ɛ                                                +                                                  k                          ⁢                                                                                                          ⁢                          D                                                                    )                                        ⁢                                          d                      1                                                        ≠                  0                                                                                        Eq        .                                  ⁢        7            
It may further be observed that for a step output disturbance where d2(s) equals d2/s, the third term of equation 5A advantageously goes to zero as demonstrated by equation 8.
                                                                        t                ⁢                                  →                  lim                                ⁢                                  ∞                  ⁢                                                                          ⁢                                      PV                    ⁡                                          (                      t                      )                                                                                  =                              s                ⁢                                  →                  lim                                ⁢                                  0                  ⁢                                                                          ⁢                                      1                                          1                      +                                                                        G                          IMC                                                ⁢                                                  G                          p                                                                                                      ⁢                                      d                    2                                                                                                                          =                                                s                  ⁢                                      →                    lim                                    ⁢                                      0                    ⁢                                                                                  ⁢                                                                                            ɛ                          ⁢                                                                                                          ⁢                          s                                                +                        1                        -                                                  ⅇ                                                      -                            DS                                                                                                                                                ɛ                          ⁢                                                                                                          ⁢                          s                                                +                        1                        -                                                  ⅇ                                                      -                            DS                                                                          +                                                  ⅇ                                                      -                            DS                                                                                                                                              =                0                                                                        Eq        .                                  ⁢        8            
It may be concluded that with a first order filter and a perfect model, the IMC controller 16′ (FIG. 4) will have a steady state error for a step input disturbance. To reduce or eliminate the steady state error for a step input disturbance, a complex filter F(s) may be employed. But such a filter is difficult to implement in an actual controller used to control an actual integrating process. In addition, the model that drives the controller still contains a numerical issue in that the value output by the model will grow without bound due to the exponential component of the integrating model.