MXPA97002973A - Apparatus and method of predictive mod control - Google Patents

Apparatus and method of predictive mod control

Info

Publication number
MXPA97002973A
MXPA97002973A MXPA/A/1997/002973A MX9702973A MXPA97002973A MX PA97002973 A MXPA97002973 A MX PA97002973A MX 9702973 A MX9702973 A MX 9702973A MX PA97002973 A MXPA97002973 A MX PA97002973A
Authority
MX
Mexico
Prior art keywords
signal
plant
input signal
future
input
Prior art date
Application number
MXPA/A/1997/002973A
Other languages
Spanish (es)
Other versions
MX9702973A (en
Inventor
W Cawlfield David
Original Assignee
Olin Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US08/328,100 external-priority patent/US5519605A/en
Application filed by Olin Corporation filed Critical Olin Corporation
Publication of MXPA97002973A publication Critical patent/MXPA97002973A/en
Publication of MX9702973A publication Critical patent/MX9702973A/en

Links

Abstract

The present invention relates to an electronic model predictive control device for controlling a plant that has an input signal to the plant and an output signal of the plant dependent on the input signal to the plant, which comprises: a first memory containing a vector of data elements derived from a pseudo-inverse of a pulse response matrix model of said plant, a second memory containing data indicating future signal changes to the plant calculated during the previous control cycles, a third memory that contains a vector of the changes of input signal to the plant passed, a fourth memory that contains data elements by means of which a change of output signal from the plant can be derived future due to the changes of input signal to the plant passed, from the vector of the changes of input signal to the last plant, an adapted electronic processor to: receive a sample of output signal from the plant, calculate an output signal of the expected future plant from the data indicating the future input signal changes to the plant calculated during the previous control cycles, the gain continuous state of the plant, the change of signal output from the future plant due to the changes of the input signal to the plant passed, and the sample of output signal from the plant, calculate an error signal from a set point signal and the output signal of the expected future plant, and calculate a change of input signal to the plant from the error signal, the vector of data elements derived from the pseudo-inverse, and of the data indicating the future input signal changes to the plant calculated during the previous control cycles, where the change of input signal to the plant is applied to the input signal to the plant to control the signal of exit of the plan

Description

APPARATUS AND PREDICTIVE MODEL CONTROL METHOD Field of the Invention The present invention relates to an apparatus and method of model predictive control, adapted to predict the future response to the process of a dynamic model of a controlled system, and to calculate an output of the controller taking into account said prediction. In particular, a suitable pseudo-inverse column of the dynamic model is used to provide a process control regulator that minimizes the minimum square error.
BACKGROUND OF THE INVENTION The control apparatus of the present invention is a new type of Model Predictive Control (MPC) controller. In general, predictive model control technologies use a process model to predict the future state of a variable in the process to be controlled, and then manipulate one or more process inputs (controller outputs) to minimize the expected error between the prediction and the established points. Variations in predictive model control include model predictive heuristic control (MPHC) (Richalet et al., 1978), algorithmic model control (MAC) (Mahra et al., 1979), dynamic matrix control (DMC) (Cutler and Ramaker , 1980, Prett and Gillete, 1979), and linear dynamic matrix control (LDMC) (García and Morshedi, 1986). In all of these methods, the model is an intrinsic part of the control algorithm, and is used for both prediction and computation of the controller response. The basic idea behind model predictive control is to model a process with the step response or impulse response vector of the process. These models predict one or more process outputs from process inputs, and the optimal controller response is calculated by linear optimization of a series of inputs to the controller. In existing methods, the optimization problem is solved in real time, in each stage of the controller. For this minimization, the methods of quadratic programming (QP) and linear quadratic regulator (LQ) are used. The different problems in model predictive control techniques have limited their use. Most predictive model control formulations require the engineer to specify many adjustable parameters to describe the desired closed-loop response. An expert in both the process and the controller, should make these adjustments, because if the desired response becomes too sharp, can lead to unstable operation in some cases, even when the model is a good adaptation to the process. In addition, model predictive control techniques are not inherently better than classical control, because, in theory, there is an equivalent classical controller for each predictive model control controller. All model predictive controllers that perform quadratic programming or linear quadratic optimization over each update interval, incur a substantial computational surplus. Predictive model control applications are limited to those where a single computer is dedicated to controlling a small number of process variables, typically at intervals of at least several seconds. Most current predictive model control applications are performed as a supervisory control, where the model predictive control controller manipulates established points of conventional controllers to achieve optimal operation of the overall process. Also, some predictive model controllers, particularly those that do not use quadratic programming methods, can become unstable in the presence of the limitations found on all real-world processes. Quadratic model-programming predictive controllers have less difficulty dealing with limitations, but they are more computationally complex. In addition, most predictive model controllers require either prior knowledge of the dynamics of the process, or off-line tuning procedures. In all cases, a bad coupling between the process and the process model can produce an unstable operation. This is often the case when the process response is non-linear. With the high degree of complexity of existing model predictive controllers, it is often a difficult task for the engineer using these systems to establish optimal tuning parameters that provide high control performance over the entire desired operating range. To solve these problems, polyvalent logic and neural network approaches have been recently developed for continuous process control. The polyvalent logic makes it easier to incorporate heuristic rules into the behavior of a particular controller. This can make it easier to adapt continuous process controllers to specific applications. Neural networks use a non-linear generic modeling method to describe the behavior of the process. The generic modeling of neural networks can be used to automatically develop a dynamic model of the process, to be incorporated into a predictive model control controller, in order to improve the operation. However, a neural network model is a black box that produces little information from which an optimal control response can be predicted.
SUMMARY OF THE INVENTION The controller of the present invention builds on the concepts of predictive model control with the goal of creating a process controller for general purposes that can replace, for example, the control of Proportional Integral Derivative (PID) in a control system based on a microcomputer of high speed and multiple cycles. The advantages sought by this controller are ease of application, automatic tuning, better control operation, and low computational surplus. A feature of this invention is the automatic acquisition of the model and tuning without prior knowledge of the process. Another feature of this invention is the operation, which is superior to the proportional integral derivative optimally tuned, and which approximates a theoretically perfect response for the control of the sampled process. Another feature of this invention is that the computing requirements are very small and well adapted to modern CPU architectures. Another feature of this invention is that the complex dynamics of the process can be effectively managed. Another feature of this invention is that the limitations on the inputs and outputs of the process do not cause instability. Another characteristic of this invention is that an adaptive control is possible. Another feature of this invention is that it is fully compatible with, and can be used to tune proportional integral and proportional integral derivative controllers. Another feature of this invention is that it can be done to compensate for the non-linear process response. Another feature of this invention is that it can compensate for signals correlated with the process load (feed-forward). Another feature of this invention is that it can be easily adjusted to achieve any desired process response, by using damping and division parameters. In accordance with one aspect of the invention, these features and advantages are provided by an apparatus and method for controlling the operation of a process having an input signal to the process and a process output signal, which includes determining a signal from the process. output of the predicted process in a future continuous state condition according to a process model, determining a continuous state error signal according to the difference between the output signal of the predicted process and a desired set point signal, and determining a set of future input signals to the process required to correct the estimated continuous state error, by providing at least one step response in the process output at a future time. Then the next net process input change is applied according to the sum of the first currently determined element of the set of future process input change signals added with any future process input change signals that were previously calculated for the next sign of change of entry to the process according to this method. The preference model is expressed in the form of velocity. In addition, there are tuning parameters of the process available to buffer the change of input to the net process, as well as the first currently determined element of the change of input to the process with respect to a signal of change of input to the process according to the error of continuous state divided by the gain of the continuous state process. In addition, a clamping filter is provided in order for the controller to take into account the limitations in the dynamic range of input to the process.
Description of the Drawings The invention will be described in more detail below with reference to the accompanying drawings, in which: Figure 1 is a diagram showing the architecture of the controller of the present invention for = 3. Figures 2A-C show a flow chart illustrating the controller protocol for M = 3. Figure 3 shows a flow diagram illustrating the calibration procedure of the controller. Figures 4A-C are graphs of the process input against the sampling interval, which illustrate the procedure of fastening the controller. Figures 5A-E are visual displays on the screen illustrating the operation of the controller of the present invention, compared with that of the proportionally tuned proportional integral derivative controllers.
Description of the Preferred Modality The following description of the invention will use the annotation: And the output of the process that is going to be compared with the established point. (The input to the controller). X The input to the process (the output of the 5 controller). and a vector that describes a set of changes in the output of the process. x a vector that describes a set of changes in the input to the process. 10 a The vector that describes the impulse response of the process. m The number of elements in the vector a. i, j indices of an element of a given vector. A The matrix model of the selected process 15 such that y = Ax. x ° The last n changes of the entrance to the process. (Memory of the output changes of the controller). A ° The integral form of A used to predict the output of the continuous continuous state process. and ° The predicted future changes in the output of the process based on x °. m The number of elements in a set of 25 changes to the inputs to the process. h The sampling interval. w The dynamic window of the process (event horizon). A-1 The inverse of A. A + The pseudo-inverse of A. a + The optimal column of A +. s A vector where each element corresponds to the sum of a column a °. s The gain of the continuous state process. x A vector equal to (EP1P2) a +. e The continuous state error predicted. P The damping parameter. P2 The division parameter. Ysp The established point.
The controller of the present invention preferably employs a pulse response pattern that is in the form of a velocity. This model is a simple model that eliminates the need for more than one vector of coefficients. The vector of impulse response describes the relationship between the relative changes of the process output and input changes to the process, as represented by the following equation: yk - = S L aiXk_i + 1, where k = Yk - Yk_? and xk = Xk - Xk_2 (i) i-l Each element "a. ^" Vector impulse response represents the partial change in process output at any sampling interval k given, which can be attributed to a change in a process input at interval k-i + 1 . This particular formulation of the model has several advantages over other linear models. First, a model can be developed using a small finite number of samples, reducing the computational surplus. For any process that is stable of open cycle, there is an event horizon beyond which a particular change in an input to the process does not have a significant effect on the output of the process. Therefore, a vector of length n can be selected, where n sampling intervals is the event horizon (n = w / h). The vector a approximates exactly the conceptual vector of infinite length, where all the elements beyond the element n have a value close to zero. Second, the elements of this model can be calculated from an open or closed cycle response of the process to any type of input or change of established point. For example, the impulse response model can be determined from the application of a step-by-step function to the process input (open cycle) or to the setpoint of the controller (closed cycle). The preference model is calculated by linear regression of the process data. The data taken from a response by steps in the open cycle mode are particularly simple to use, because each change in the input to the process is linearly independent of the previous changes in the input to the process. The robust least squares estimates of the model can use observations from multiple response experiments done on various ranges of inputs to the process. Previous model predictive controllers use models of the form generally: = =? aaiixxk -? i ++? l ++? Bb ??? k-.ri + u (2) i-l i-l In this form, the elements of b are the autoregressive coefficients of the model, while the elements of are the coefficients of the dependence of the output of the process on the previous values of the input to the process. U is an unmeasured load or force on the process that can be inferred from the remaining continuous state compensation after other terms of this model have been applied. Note that the model's autoregressive coefficients are not in the velocity form described above, so that this velocity-form model is strictly an explicit predictive model. Because the velocity model refers only to changes, and not to absolute values of the process variations, U is eliminated. Alternative embodiments of the present invention could use models that include one or more implicit terms that predict the change in the output of the process based on previous changes in the output of the process. These models would use a control architecture similar to that described here, and could also handle processes that are not stable open cycle. The preferred speed model used in the present invention is extremely versatile. Delays, and order delays are easily modeled. You can even model the complex dynamics where the initial response is in the opposite direction to the final response. You can model the dynamic behavior of the process of any degree of complexity, with the understanding that the continuous state response of the output of the process is approximately linear with respect to the changes in the input, and that the process is stable of open cycle . A non-linear continuous state behavior can be corrected by linearizing transformations either on the input to the process or on the output, independently of the dynamic model. Unlike the previous model predictive control methods, the controller of the present invention is a true speed controller with only integral action. Calculates the changes in the process input on each update cycle that are integrated with the input to the current process. It does not require knowledge of the previous process outputs. The speed nature of the controller eliminates problems with limits in other model predictive controllers that are similar to reset-reembobinado in a proportional integral derivative controller. Also, the operator can manually override the controller output while leaving the controller in automatic mode. Referring to Figure 1, controller 1 calculates a set of multiple changes to the process input in each cycle. Only the first of these changes is implemented, but the other changes are stored and implemented in future update cycles. The computation of these changes is done using a pseudo-inverse of the process model. This pseudo-inverse is used because the linear model may not have an exact inverse, depending on the coefficients of the model. When the measurement of this objective is by least squares, the decomposition of the singular value is a suitable means to find the pseudo-inverse. The pseudo-inverse represents a set of output changes that, when applied to the process model, becomes closer to achieving a response by steps of the unit at the output of the process. In accordance with this invention, a member of the set is preferably selected by a least squares criterion. Other conventional methods can also be used to find the pseudo-inverse. The pseudo-inverse of the process model is determined explicitly from the coefficients of the model. It can be found once (when the model is acquired). For this reason, there is no greater need for optimization over each stage of the controller. The architecture of the controller 1 of the present invention is also remarkably different from the previous model predictive controllers. The output from the adder 42 of the controller is added to the output of the current process AND rather than subtracting from it, as is done in other model predictive controllers. The above process input changes are saved in memory 24, and are used to predict the future behavior of the process. The controller acts only on the difference between this prediction Yk_n - m_2 and the set point Ysp and not on the modeling error or the output of the current process. This controller differs from previous model predictive controllers in that there is no equivalent classical controller. In fact, the controller 1 of the present invention can produce closed loop operation that is superior to classical proportional integral derivative style controllers in most applications. In addition, controller 1 can handle limitations on manipulated outputs Yk, by modifying the controller's change set to one that can be implemented. This technique is referred to as subjection. In addition, the tuning to fine-tune the operation of the controller and improve the robustness in the presence of the bad coupling of the model-process, can also be achieved by modifying the output of the controller. Figure 1 shows, in the form of a block diagram, a modality for carrying out the previous methodology, while in Figure 2 the corresponding steps are shown. Figures 1 and 2 describe a modality of m = 3; however, the operation of the controller for other values of m can easily be appreciated. Notably, the controller contemplated by the invention can be implemented programmatically or by direct electrical connection through custom integrated circuits, or a combination of both, using any of the methods known in the industry to provide the functions described below. , without departing from the teachings of the invention. Those skilled in the art will appreciate that, from the description of the invention provided herein, commercial semiconductor integrated circuit technology would suggest numerous alternatives for the actual implementation of the controller's inventive functions, which would still be within the scope of the invention. invention. The controller 1 controls the output Yk of the process or of the plant 34. The subscript k refers to the current cycle of the controller. Therefore, during the current cycle k, the process input (controller output) is Xk, and the process output is Yk. The controller 1, by means of the set point Ysp, regulates the output of the process Yk (step 202). The adder 10 calculates the error signal e from? Sp ~? K + n + m-2 (Step 204). In the case of m = 3, the expected future signal is + n + ?. Next, the error signal is multiplied by two tuning parameters, i.e., the damping parameter P1 and the division parameter P2, respectively, in blocks 12 and 14 (step 206). These are optional parameters used to tune the controller, and each one can be set to "1" and not used. Then the error signal (modified by the tuning parameters) is multiplied by a vector a + stored in block 16, which can be any suitable memory device (step 208). Block 16 calculates the values xlk + 1, x2k + 1, x3k + 1, during the cycle k for the application to the process over the next three cycles. The calculated values in block 16 are changed to block 24 in the next cycle (step 210). Block 24, which for example can be implemented as change registers, stores the previous calculated values' x2k, "x3k, y'x3k + 1. These values are also changed in the next cycle Add an additional component to xlk +? in the adder 22 (step 212) This component is due to the division effect, and is formed by multiplying the output of block 12 (epx) by I-P2 in block 18, and also by multiplying by 1 / S! In block 20. The output of adder 22 is added to J ^ + SJ ^ from block 24, to take into account the input changes calculated during the previous two cycles (step 214). 28 adds any prior clamping changes to xk + 1 due to clamping in the previous cycles (step 216) The clamping function determines if the output of the controller will fall outside the maximum values Xmax or minimum allowed in the input to the process Figure 2 describes the situation of ngo maximum, although this can easily extend to the situation of minimum range. If Xk + xk + l > xma? ' then the value is calculated. The value xk + l is set to Xmax-k 'In step 216, is 2D added to xk +? after a cycle, and subtract D from xk +? after two cycles (Steps 218-226). The above-described functions related to blocks 16, 24, and 28 of Figure 1 can be implemented in an alternative manner and preferably as follows. Block 24 would contain a single linear change register, which, in the case of m = 3, would use three elements. The first element would contain the value of 'x2k + x3k + 1, to which ePx (1-P2) is added. The second element would contain x3k. The third element would initially be zero. The calculated values for xlk + 1, x2k + 1, x3k + 1 from block 16 would then be added, respectively, to the first, second, and third elements of the change register in block 24. These three values from block 24 would all be sent to a clamping block for adjustment as described above, and then they would return to the change register 24. The first element of the change register now contains the desired input change, and is sent to the accumulator 30. The remaining elements of the change register are changed one time to the left in preparation for the change. next cycle. The methodology described above, although calculated for m = 3, can easily be extended for other values of m. The accumulator 30 adds the newly calculated value xk + 1 to x (step 228). An optional manual forcing function is provided by the adder 32 (step 230). The output of the controller Xk is applied to the process or plant input 34 (step 232). The total expected future exit change is calculated as follows. The storage block 36, which, for example, can be implemented as a change register, stores the vector x ° representing the previous process input changes. On each new cycle, the value xk + 1 is changed to this register, and all existing values are changed to the right (step 234). In block 38, the vector x ° is multiplied by the vector s to derive the predicted output change due to the past process input changes (step 236). The summed values x2k + 3k + 'x3k_1 from the block 24 multiply by s1 in block 40, to derive the predicted process output change due to the calculated future process input changes (step 238). The outputs of blocks 40 and 38 are summed in adder 42 to derive the output change of the total expected future process (step 240). Then this value is added to Yk in the adder 44, to derive the expected future output signal Y + n + m_2 (step 242). On each new cycle, the current set point is read, the output of the current process is sampled, and Y + n + m_2 is calculated • Theory of the operation As described earlier in this, an equation that represents a model modality The speed of the present invention can be expressed as: Yk - = S aixk-i + l 'in don e Yk =? K "? K-? And xk = xk" xk-? (3) i-l that can conveniently be represented in a matrix annotation as: y = Ax (4) where A is a matrix of n + m-1 per m, and x is an element vector m (for example, column matrix mxl) of the input changes to the process. Since this model represents a change in the process output as a measured sum of a number of past input changes, where the coefficients a, are the measurement factors, it is referred to herein as a velocity model. Once the coefficients of the process model are determined, the model is conveniently represented as a matrix A, defined by equation 4. In accordance with the above, if at any time characterized by the index k, the process is not in a state continuous, and if a vector of nl element x ° of previous input change signals is known (ie, x_n + 2 / xk-n + 3 '•••• xk) > And the output signal of the process Yk is also known, assuming no more input changes to the process, the output value of continuous state Yk + n_? it can be calculated corresponding to the future point k + n-1, after which no further output changes are presented. Explicitly, Yj? + N--! it can be determined by first performing matrix multiplication A ° x ° to provide a vector of predicted output change signals and ° k + ?, Y ° k + or 'Y then summing the elements of the predicted output change vector, and the result is added to Yk. This concept is similar to the idea of a predictive horizon approach to predictive model control. In accordance with the above, the equations of the definition are: and P = S aixk + p-i + l (5) i = p + l where for p greater than n-l, and ° has the value of zero. A ° can be written explicitly as: O y A ° x ° = y ° O an-l O a " It is further understood that, if at the time characterized by k, knowing Yk and x, the effects of m subsequent (ie, future) input change signals characterized by the vector x can be expressed (ie, xk + 1, xk + 2 '• • • xk + m) by generating an array A' that is an extension of the previous A matrix, by m columns and m additional rows. That is to say: 0 0 • • • • n • • • • • • ^ * 1 ... an &n-l 0 an an-l 0 0 ... an Can you see that A 'can be divided into two matrices, A -o? and A, and consequently, the sum of the process output changes for each interval from k + 1 to k + n + m-1 can be represented as: m + n-1 nl n + m-1 S Yk + p = S (A ° X °) k + p + S (Ax) k + p (7) p = lp = lp = l That is to say, it is understood, from this equation, that the output signal of the process predicted in k + n + m-1 is equal to the output signal of the process predicted in k + n-1 that is based on changes of input to the process past plus the sum of the process output changes due to future process input changes x. It is also understood that the vector y (ie, Ax) is equivalent to the process output changes that occur due to the process inputs x applied when the system is in a continuous state (ie, x ° = 0). It is convenient, as it will be understood later in the present, to define: n sk = S ak (8) i = k from where equation 7 can be rewritten as: m + n-l n-l -m? Vk + p =? if + lx ° k-i + l + sl? xk + i = sx ° + Slix (9) p = l i = l i = l where? It is a vector where each element is unity. It is understood that implicitly to the annotation used, a product of two vectors corresponds to an internal product (ie, scalar) formed by performing the matrix multiplication of the transposition of the first vector (i.e. the production of a matrix of row) by the second vector (ie, column matrix), resulting in a scalar quantity. Equation 9 replaces the multiplication of matrix A ° x ° followed by the sum of the resulting output vector, with the step of forming sums from the columns of A ° (ie, s2 ... sn) to obtain a vector s, such that the multiplication of the vector of the previous changes x ° by s produces this sum directly. In a similar way, the scalar quantity sx represents the sum of any column of A, and consequently, the sum of the future process changes due to the future process inputs that can be represented simply as shown. The error of the continuous state process in the future time represented by k + m + n-1 can be expressed as: from which it can be recognized that the term that is in brackets is the continuous state error (that is, defined as e) in k + n-1. Therefore, it is also recognized that the error é can be reduced to zero by selecting future input signals to the process x that result in the final term of equation 10, canceling the error e. Referring to equation 9, it can be seen that a possible solution is for the sum of the vector elements x to equal the negative of the error divided by the gain of the continuous state process. A simple example would be to select all the elements of x to be zero, except for an element that would have a magnitude equal to the negative of the predicted error divided by the gain of the continuous state process. This corresponds to an aperiodic control, and it can be seen that it provides a slow cancellation of the error. In accordance with the present invention, it is recognized that a preferred control methodology is to determine x, such that at least one step response output occurs at some future time, which cancels the error e. Preferably, an output of the one-step response process is used, and this step response is generated as early as possible. It can be deduced, from equation 10 and from A ', that the provision of a correction by steps before k + n-1 to make é with value zero is equivalent to cancel the error e, and therefore, the error in k + n-1 will be zero, and no further output changes will occur later (ie, continuous state). Furthermore, it can be seen that this criterion is equivalent to establishing an element of y equal to l, and all other elements equal to zero, and solving y = Ax for future process inputs x, which must then be scaled by the error. This solution x can be used in any iteration to provide process control; in each iteration, the error e is calculated and then multiplied by x. In accordance with the above description, it can be understood that, since on each iteration m future change signal signals are determined, on each k there will be ml estimated future values of changes to the process from the previous iteration ( for example, k-1) that have not yet been implemented, m-2 estimated future values of changes to the process from iteration k-2 that have not yet been implemented. That is, for an input change to the given future process k + i, there are m-i input values to the process previously calculated from the previous iterations. As understood from the foregoing, the effect of future input changes on the final continuous state output can be determined directly by multiplying the sum of the future input changes by the gain of the continuous state process sl f and consequently, the Previous equations can be modified to include these future process input changes previously calculated in accordance with the same. That is, the error term é in equation 10, becomes: é = yk + sx ° + s1x'-Ysp (11) where x 'is a scalar quantity representing the sum of the future process input changes previously calculated for all future times up to k + m-l in the future. These future values can be accumulated in each cycle. Then, the predicted future continuous state error that takes into account the intervals m-l of future process inputs previously calculated in the future, corresponds to the continuous state error in k + n + m-2. In order to effect a cancellation of the continuous state error at the point k + n + m-2, a vector x is determined that will cancel the error resulting in a step response having a magnitude equal to the predicted continuous state error . Then, the next signal of change of input to the net process applied to the process will be the sum of the first element of current x (that is, x + 1) and the (k + j + l) d element from any j intervals of vectors of change of input to the process previously calculated in the past, where j is from one to (ml). As reported, based on the current knowledge of the established point, the current value of the process input, the previous process inputs, and the previously calculated future process input changes (accumulated as x '), the remaining process error in this condition of future continuous state it can be calculated according to equation 11. The general goal of process control is to find a vector of changes to the process input x that eliminates this error from the expected future process as quickly as possible. The response vector of the ideal process would have a single value that was not zero in the first exactly equal element and of opposite sign to the expected error. It is not obvious that this perfect control is a practical goal. For an analog system, perfect control is not only impossible, but can not be defined in terms of a continuous signal. A "perfect" control can only be achieved with respect to a given sampling interval. This definition implies that, for a real process, the values of a process output that occur between sampling intervals may not necessarily change in a linear fashion. Therefore, perfect control appears only perfect from the perspective of discrete samples. Ripulation between samples can be a problem when the process delay times are small relative to the sampling interval. The goal of a perfect step response is a different way of setting the control objective than the linear minimization problem of previous IMC controllers. In other IMC controllers, aperiodic tuning for delayed processes is impossible, and may result in unstable tuning. In accordance with the present invention, the objective of a cycle is altered to one cycle plus the dead time of the process. This objective achieves a result that minimizes the error of the RMS process for a setpoint change. In accordance with a characteristic of the method and system of the present invention, this control objective of the step response process is achieved by setting and, according to the desired change, and then solving for x using matrix algebra. The solution for x can be found quickly by calculating the inverse A "1 once, and then simply multiplying the x determined by the error for each step of the algorithm.Through this method, the computation required can only be reduced to two multiplications of vectors by updating, comparing with a complex linear optimization required by the previous methods of model predictive control A practical difficulty encountered with the use of linear algebra for most of the real processes is that, in the presence of delays, the matrix A will have very small zeros or values on the diagonal.This fact guarantees that the matrix is poorly conditioned.If m <; n, there will be more than one solution. Strictly speaking, A-1 often does not exist. However, in accordance with matrix algebra techniques, a "pseudo-inverse" can be calculated that has properties that are ideally suited to solve the general problem of process control. The pseudo-inverse is determined by singular value decomposition (SVD). The singular value decomposition factorizes the original matrix into two orthogonal and normalized matrices and a diagonal matrix that contains the "singular" values (ie, LSR = A). This factorization can be used to construct a pseudo-inverse A +, by calculating the inverse of the singular values that are not zero, and multiplication by the transposition of the left and right parts of the original decomposition. This pseudo-inverse is a non-square matrix m by n that contains all the information necessary to find the optimal set of changes at the entrance to the process. Once the pseudo-inverse has been calculated, it can be applied again and again, and acts as the optimal tuning constants for the controller. The response of the desired process is still represented by a vector that only has one non-zero element equal to the desired total change. However, because the process may contain downtime (tD). and therefore it may be impossible to make a change in the next sampling interval, the ideal response vector must be changed to one that can actually be achieved. Instead of setting the first element in the desired change, the yif element is established where i = tD / h, and all other elements are set to zero. In accordance with the control criteria of the present invention, several advantages can be recognized. First, because the desired response vector has only one non-zero element, only one column of the pseudo-inverse is needed to perform control calculations. That is, the pseudo-inverse that operates on a desired response vector that has a "1" as the js element, produces a solution x equal to the column of the pseudo-inverse. Second, the pseudo-inverse already contains the necessary information to determine the dead time of the process, even when it is unknown. Therefore, to determine the column of the pseudo-inverse that best produces a step output response, each column can be applied as an input, and the respective outputs are compared according to some measure. The application of each column of the pseudo-inverse as an input corresponds to the generation of the AA + matrix. One method to select the best column of the pseudo-inverse is to calculate an error vector by subtracting the identity matrix from the previous matrix, and then adding the squares of each column. An additional consideration is to provide the answer as early in the future as possible (for example, the best column further to the left of the pseudo-inverse). It can be appreciated that, in certain situations, it may be preferable to form a measured average of a plurality of columns. The selected solution is defined as a +, and is stored for use in each iteration of the system and process control method, as described above.
Calibration By operating the process and control system of the present invention, and during its operation as an adaptive control system, a calibration routine is implemented. This calibration process automatically determines and stores the constants corresponding to the elements of a + used by the controller to calculate the output changes x, and to the elements of s used by the model to calculate the total output changes. This calibration process preferably uses matrix algebra techniques to extract the impulse response coefficients of the velocity model a ^. From these coefficients, the model for predicting future output changes can be expressed and simplified to provide s and a + can be determined according to a control criterion. The calibration task can be performed in general by a separate program in a multi-tasking environment that performs calibration on the activation of the control system, and can also operate continuously during process control to achieve adaptive control. Referring to Figure 3, the calibration process is now described. It can be understood that the coefficients a and correspond to the impulse response of the process. In step 302, the coefficients α preferably are selected to minimize some measure of the errors of the estimate according to a linear regression between the outputs of the process and the inputs to the process. For example, a common measure is the average square error, averaged over many samples. As an example, the inputs and outputs of the process are sampled, and they are stored during a window of preference of at least 2n + m long samples, where are the changes made to the input to the process (for example, one entry per steps or any arbitrary entry). Then the coefficients of the impulse response model a ?, can be determined by performing multiple linear regression. However, it is understood that there are many ways to apply the regression technique. For example, the regression technique can be averaged statistically over multiple periods, where arbitrary or non-arbitrary entries to the process are applied during each period. In the case where non-arbitrary inputs to the process are selected, they can be applied over different ranges of the dynamic range of input to the process. For example, a series of inputs can be applied to the process by unit steps to extend the input range to the process. In a similar way, a series of inputs can be applied to the process in steps, each of which has a different step height value. An example of a non-arbitrary process input is the input signal to the process during process control. Once the coefficients ai have been determined; in step 304, the vector elements s and the gain of the continuous state process s are calculated and stored s? . In step 306, the pseudo-inverse of A (ie, A +) is calculated by singular value decomposition. Then, in step 308, the product AA + is formed, from which the identity matrix is subtracted, the resulting elements are squared, and the columns are summed to provide an error vector. In step 310, the column of A + which produced the minimum square error in step 308 is selected, and assigned as A +, which is stored for use in subsequent iterations of controller 1, until it is updated (eg, adaptive control ). In the above, it is assumed that the value of is known. As will be discussed further below, m can be determined according to some knowledge of the dynamics of the process, and can also be determined by testing the process control for different values of m, to assert the minimum value of m required to provide the control of the desired process. The following examples are presented to illustrate the features, features, and steps of the present invention, which should not be construed as a limitation thereof. Since the inputs to the process have been constant during n cycles, the outputs of the process must be in a continuous state. It is possible to predict a vector of process changes and for any given set of input changes x, and this prediction can be made using matrix multiplication. In this multiplication, the impulse response vector of length n is used to construct the lower triangular non-square matrix A with n + m-1 rows, and m columns, as shown in the following example.
Example l In this example, an imaginary process has a delay response plus first order dead time. The delay t is equal to two cycles, and the dead time is a cycle. The gain of the overall process is 1.0. The process is initially in a continuous state, but at a particular point in time, the process input is changed in three steps to the values: X0 + 4, X0, X0 + i. A 10-element impulse response model is constructed from the knowledge of the process. In practical applications, a detailed knowledge of the process is not known, and preferably the regression is performed to assert the impulse response model. However, in this example, the samples of a step response can be estimated by the recursion formula: Y. YJ Y3 4 5 Y6 AND i. I 0 .333 .556. 704. 802 868. 912 941 .961. 974 taking the differences between each sample, the impulse response vector is produced: ai = Yi-Yi-? a, a, a, a * a, a, a7 a, a, a10 0. 0 0.333 0.222 0.148 0.099 0.066 0.044 0.029 0.020 0.013 The input change vector in this example has three elements: X.
Knowing that the gain of the overall process is 1.0, the total change last in the process must be equal to the sum of x. To estimate all the intermediate process responses, the response vector of the entire process must be calculated by matrix multiplication. The matrix model A is constructed as a 12x3 matrix that has members selected from the vector a, diagonally offset by a row in each column of the matrix. The remaining elements are filled with zeros. Each column of the matrix represents the weighting factors used to establish the partial change in the output of the process in a future sampling interval associated with a particular element of the input vector to the process. to 0 0 a2 to 0 a3 a2 to a4 a3 a2 a5 a4 a3 A = a6 a5 a4 and a7 a7 a6 a5 a8 a7 a6 a9 a8 a7 a10 a9 a8 0 a10 a9 0 0 a 1i0 Applying model A to the changes x, now it is simply a matter of matrix multiplication, which results in a single length of output vector 12.
Y. ? and, and. and, and. y »y-, y» y »y-i 0.0 1.330 -0.444 0.037 0.026 0.016 0.011 0.007 0.005 0.003 -0.032 0.013 The same matrix A can be used to determine the expected process output changes for any given set of three input changes to the process. It can also be seen from this example, that the sum of the expected process output changes can be represented by the product of sx (for example, the sum of a column of A) and the sum of the components x.
Example 2 The following example illustrates the process of selecting the best vector from the pseudo-inverse. In this example, a complex dynamic process model is represented by a 10 element vector. The coefficients of this model were calculated for a gain of 1, a dead time of two samples, and a second order delay with a time constant of three, and a damping factor of 0.8. The results shown were calculated in double precision, but only the first four decimal places will be displayed for convenience.
The coefficients of the model are: 0.0000 0.0000 0.1835 0.2256 0.2016 0.1547 0.1069 0.0676 0.0390 0.02 In this example, you will find a pseudo-inverse that can predict an optimal set of three input changes that will correct any errors. First, the model is put in matrix form as in example 1. That is, the model of the process is represented by the following matrix of 12x3: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.1835 0.0000 0.0000 0.2256 0.1835 0.0000 0.2016 0.2256 0.1835 0.1547 0.2016 0.2256 0.1069 0.1547 0.2016 0.0676 0.1069 0.1547 0.0390 0.0676 0.1069 0.0200 0.0390 0.0676 0.0000 0.0200 0.0390 0.0000 0.0000 0.0200 Then this matrix is decomposed by singular value decomposition to give two matrices and a vector of the singular values. The details of this procedure are well known to an expert in this field. The resulting left and right matrices are orthogonal, in such a way that their transposition is equivalent to their inverse. Also, the sum of the squares of each row and column of these matrices is equal to 1.0. The matrix R (that is, from the right) is calculated as: 0. 5607 0.7071 -0.4309 0.6094 0.0000 0.7929 0.5607 0.7071 -0.4309 and the matrix L (that is, from the left) is represented by the following: 0.0000 0.0000 0.0000 0.7302 0.5303 0.3506 0.2120 0.1159 0.0550 0.0197 -0.0110 -0.0278 0.0000 -0.0001 0.0000 0.5408 -0.1658 -0.4270 -0.4565 -0-3850 -0.284 * -0.1911 -0.1344 -0.0740 0.1561 0.5405 -0.8242 0.0011 -0.0009 -0.0015 -0.0014 -0.0012 -0.0009 -0.0005 0.0457 -0.0451 0.3616 0.6645 0.5035 0.1740 -0-2973 -0.0245 0.0926 0.1240 0.1142 0.0892 0.0626 0.0782 0.5362 0.0532 0.1349 -0-2977 0.6913 -0-2566 -0.1880 -0.1252 -0.0763 -0.0421 -0.0202 0.0062 0.5099 -0-2088 -0.0419 -0.0250 -0.2567 0.6947 -0-2693 -0.2051 -01409 -0.0886 -0.0507 -0.0246 0.4055 -0-2787 -0.1072 0.0922 -0.1882 -0.2694 0.7465 -0-2004 -0.1417 -0.0915 -0.0540 -0.0329 0-2880 -0-2566 -0.1145 0.1237 -0.1254 -0.2052 -0.2005 0.8382 -0.1161 -0.0759 -0.0454 -0.0302 0.1166 -0.2002 -0.0966 0.1140 -0.0764 -0.1410 -0.I41S -0.1161 0.9158 -0.0556 -0.0335 -0.0236 0.1105 -0.1402 -0.0713 0.0 890 -0.0422 -0.0886 -0.0915 -0.0759 -0.0556 0.9630 -0.0225 -0.0165 0.0516 -0.1148 -0.0098 -0.0808 -0.0165 -0.0536 -0.0590 -0.0505 -0.0377 -0.0255 09 (-0.0114 0.0170 -0.0589 -0.0897 0.0604 0.0024 -0.0219 - 0.0210 -0.0253 -0.0196 -0.0136 -0.0074 0.9910 while the singular values are calculated as: 0.6589 0.2400 0.0959 At this point, a choice must be made to accept all these singular values as significant, or to reject one if it is much smaller than the rest. Now we build a 3x12 matrix that has the inverse of the singular values accepted on the diagonal. If small singular values were rejected, the corresponding value on the diagonal would be set to zero. The matrix formed from the inverse of the singular values is: 1. 5176 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 4.1658 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 10.4242 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 Now the pseudo-inverse is calculated from the RSLT product, and is given by the following 3x12 matrix: -0.0003 -0.0002 5.4271 0.0036 0.0069 0.0069 0.0054 0.0039 0.0029 0.0012 -0.2499 0.2442 0. 0004 0.0000 -6.66 (2 4.4959 1.6112 0.1252 -0.5110 -0.6802 -0.6256 -0.4872 -0.0337 -0.7260 -0.0001 0.0001 2.2428 -3.9112 -0.3066 1.2373 1.6476 1.5149 1.1823 0.S275 0.4262 0.5909 The pseudo-inverse is a 3x12 matrix that contains 12 vectors from which the best vector to implement a step response should be selected. To select, multiply the model of the original process in matrix form by the pseudo-inverse. Each column of this 12x12 matrix represents the response of the expected process to an input formed from one of the columns of the pseudo-inverse. For this numerical example, the product of the pseudo-inverse and the process model gives the following 12x12 matrix: 0. 0000 0.0000 -0.0001 00000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0. 0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0001 0.0000 0.9959 0.0006 0.0012 0.0012 0.0010 0.0007 0.0005 0.0002 -0.0459 0.0448 0.0000 0.0000 0.0006 0.8258 0.2972 0.0245 -0.0926 -0.1240 -0.1142 -0.0891 -0.0626 -0.0781 0. 0000 0.0000 0.0012 0.2972 0.3086 0.2566 0.1881 0.1253 0.0764 0.0422 0.0202 -0.0061 0. 0000 0.0000 0.0012 0.0245 0-2566 0-3054 0-2695 0-2052 0.1410 0.0886 0.0507 0.0247 0. 0000 0.0000 0.0010 -0.0926 0.1881 0-2695 0.2536 0-2005 0.1418 0.0916 0.0540 0.0329 0. 0000 0.0000 0.0007 -0.1240 0.1253 0-2052 0-2005 0.1618 0.1162 0.0760 0.0454 0.0303 0. 0000 0.0000 0.0005 -0.1142 0.0764 0.1410 0.1418 0.1162 0.0842 0.0556 0.0336 0.0236 0. 0000 0.0000 0.0002 -0.0891 0.0422 0.0886 0.0916 0.0760 0.0556 0.0370 0.0225 0.0165 0. 0000 0.0000 -0.0459 -0.0626 0.0202 0.0507 0.0540 0.0454 0.0336 0.0225 0.0159 0.0085 0. 0000 0.0000 0.0448 -0.0781 -0.0061 0.0247 0.0329 0.0303 0.0236 0.0165 0.0085 0.0118 If the original process model had no downtime, the first column of this product would not contain all zeros. However, in this case, the process can not respond immediately, and the best possible result must include the delay of the two-cycle process. The best column of the product of the pseudo-inverse and the model of the process is one that is closer to a step change of a single unit.
Column 3 becomes closer to this objective. Note also that, with the exception of the first two columns, the totals of each column are approximately 1.0. This means that, even when the dynamic model of the process is imperfect, the response of the continuous state process will be correct. To automate the selection process for the best column, calculate an error vector by subtracting the identity vector from the previous matrix, and then add the squares of each column. This selection process results in the following vector of the sum of the square errors: 0001. 00000.00410.17420.69140.69460.74640.83820.91580.96300.98410.98 This error vector now represents how far each response is from the process of the ideal behavior. In this example, column 3 is clearly the best. However, in some cases, two adjacent columns will have almost identical errors. Because the minimum delay is also a goal, the first column that minimizes this error is preferably selected. Therefore, the selected column of the pseudo-inverse is assigned to a +, which is represented as: .4271 -6.6682 2.2428 Therefore, to make a step change of a unit in the output of the process, make a sequence of three step changes in the input to the process whose values are given by the previously calculated vector. The response of the process will be an almost perfect step change with an inevitable two-sample delay. Any desired change can be made by applying a proportion of this vector.
Process Limitations Another practical problem that has to be addressed is that in real-world applications, there are always limitations on the valid positions for the inputs to the process. Since controller 1 produces a set of desired changes instead of specific values, it can be classified as a speed controller. The advantage of using the speed form is that it can deal with the presence of constraints more easily, and eliminate problems similar to rebounder reset that make other model predictive controllers become unstable. The method to deal with the limitations is to filter the outputs of the controller before applying them to the process input. This filter (i.e., the fastener 29 of Figure 1) is designated to hold the changes to restrict the entry to the process to acceptable levels. The fastening must be done in such a way that it retains both the momentum and the desired final change. The following example, illustrated in Figure 4, shows what should be done. In this example, the process model and the pseudo-inverse are the same as in the previous one. The output of the process is currently in a continuous state with a value of 2.0, and the operator has just made a change of point set to 2.5. In addition, the entrance to the process is limited to a range of 0 to 4.0. First, calculate the desired unconstrained input changes to the process from the pseudo-inverse vector and the expected future process error. Because the process is in a continuous state, the expected future error is -0.5. Therefore, the desired input changes to the process are calculated by multiplying the pseudo-inverse vector by 0.5. The desired changes are: 2.7136 -3.3341 1.1214. The graph in Figure 4A shows how these changes alter the entry to the process. The first required change would allow entry to the process from 2.0 to 4.7136, but this one is out of range. Therefore, stop at 4.0. Now, adjust the desired change vector, so that it does not take the process out of range. It is not enough merely to subtract 0.7136 from the first element of the vector, because it would alter the total, and therefore, the continuous state impact of this set of changes. Therefore, 0.7136 must be added to the second element, so that the total remains unchanged. The input changes to the process are now 2.0000 -2.6205 1.1214 and their effect on the input to the process is shown in Figure 4B. This is better, but it can be improved more. The purpose of raising and lowering the entrance to the process is to impart an impulse to the process to accelerate its movement in the desired direction. The three-step adjustment has both positive and negative impulses, and then, a final continuous adjustment. By holding the first two changes, the positive impulse is reduced, but the negative impulse remains unchanged. Leaving it this way, the response of the process will be much slower than desired. To fix this problem, reduce the negative impulse by the same amount previously removed from the positive. That is, add 0.7136 back to the second element, and subtract 0.7136 from the third. The final desired change vector is now: 2.0000 -1.9069 0.4078. This clamping algorithm is simple to apply, effective, and robust. When the changes are postponed, the net effect of the control changes is slightly delayed, but the impact of the continuous state will remain the same. Therefore, in the next update cycle, any new changes required will only be the result of the modeling error, a new change of established point, or a disturbance of the process. In each cycle, the changes that were requested (ie, x ^ -t-i) from the controller, but not yet made, are saved and used to estimate the output of the future continuous state process.
Simplification v Reduction of Computing Requirements To simplify the computing of the controller, certain simplifications can be made. At run time, model A ° is used exclusively to predict the total expected change that has not yet been presented. Instead of multiplying by A ° and then adding the resulting output vector, the columns of A ° are summed to obtain a vector s, such that the multiplication of the vector of the previous changes x ° by s produces this sum directly. Another substantial simplification is to limit m (the length of the vector x of the changes needed to correct the predicted future error) to a small number. For the special case of m = l, each element of the pseudo-inverse of A is simply the inverse of the sum of a (the gain of the continuous state process, S?). In this case, the controller makes simple simple step changes that minimize manipulation of the process input. A controller with m = l will respond to a set point change by making a single step change, and then waiting for the process to respond.
Therefore, the closed cycle dynamics will be identical to the open cycle dynamics. In most cases, this is not optimal. Setting m = 2 allows the controller to make a set of two changes, calculated to push the process more quickly in the desired direction, but still without overdraft. For any process with at most a delay and first order dead time, the controller with m = 2 is able to perform the response step by step from the output of the process. It is important to recognize that the response of the true process is not as simple as it may seem from the samples of the process output. Perfect control only looks "perfect" from the samples taken. By selecting a shorter update cycle, a finer resolution of the process dynamics can be observed. In the same way, with a shorter update cycle, a controller can make clearer corrections. For a process with a second order dynamic, a controller created with m = 3 is sufficient to achieve the step response of the process. This principle can be extended to the highest order dynamics by setting m = (order of dynamics) +1; however, in practice, the setting of m = 3 is sufficient to provide adequate operation in almost all applications. The singular value decomposition method to calculate the pseudo-inverse of the process is extremely robust. In the presence of noise or a less than perfect model, the calculated pseudo-inverse can always be calculated by singular value decomposition, and tends to be more conservative. With m = 3, processes with first-order dynamics will typically result in a pseudo-inverse where the third row of A + contains a value close to zero. When the process exhibits a higher complex order dynamic, a pseudo-inverse that assumes at most a second order dynamic will still produce an excellent response, because the pseudo-inverse minimizes the error in the solution. A practical limit for the length of the impulse response vector of the model is approximately 20 elements. If the model window is not wide enough to allow the process to reach the continuous state, then the control response to a set point change will fail to completely eliminate the residual error until more than 20 control updates have been submitted. For almost all applications, the best method to correct this problem is to increase the period of the update cycle until a 20 element model captures the full dynamic behavior of the process.
Tuning to Accomplish the Process Objective An additional refinement of the controller is to introduce two new tuning parameters that the operator can adjust to make the controller comply with its control objectives. These two parameters are the damping parameter Pj and the division parameter P2. In some applications, a closed cycle response of the process that is equivalent to its open cycle response is desired. A faster response may have no economic benefit, while the extra output changes required will create more wear and tear on the actuators. In this case, a controller with m = l will suffice. In other cases, some compromise between speed and wear is required. Because the controller output vector for m = l can be calculated without invoking the singular value decomposition heavy machinery, it is simple to calculate an output vector of the controller using a fraction of the vectors m = l and m = 3. The division parameter P2 determines what percentage of the controller output vector m = 3 to use. A position of P1 = 100% always produces the sharpest process response, and P2 = 0% produces the simplest driver output. Moreover, it can be understood that parameter P2 can be used to divide the output vector of the controller between different values of m, and is not strictly limited to a single division.
In cases where the response of the process is slightly non-linear, or in which the tuning procedure has failed to couple the dynamics of the process to a model precisely, the controller may produce less than optimal results. In cases where the process noise is substantial, a slower control response will further reduce wear on the process actuators. An effective way to delay the response of the controller is to correct only a percentage of the error predicted in each update cycle. This percentage is represented by the buffer parameter P2, and can also be changed on demand. P? It can be set from 0 to 150 percent. Although P1 = 100% gives an optimum response to a change of the set point, and guarantees stable operation, a change in the process load can be corrected faster by overcorrecting the errors. As long as the overcorrection is less than 150 percent, a stable control response will still be maintained in most cases. For processes that require a very rapid response to load changes, an establishment of P1 = 150% can give a more nearly optimal response. p? And p2 can be used together to correct modeling error and noise. A robust control operation means that, in the presence of a non-linear process behavior and a modeling error introduced by changes in the dynamics of the process, the controller maintains a stable control. The reduction of P1 or P2 establishments will improve the robustness of the controller.
Controller Operation The controller of the present invention has been compared with that of proportional integral derivative control algorithms optimally tuned to simulations of a wide variety of process dynamics. The results of these tests are shown in the following figures 5A-E. In each case, the proportional integral derivative controller was tuned by calculating the tuning constants using formulas that minimize the ITAE for the setpoint changes. No adjustments were required in the controller model or in the parameters of the calculated pseudo-inverse to optimize its response. In Figure 5A, a simulation of the process provides a first-order delay of 4 seconds and a dead time of 3. The figure shows a visual display of the process model and the user interface for the controller auto-tuning program . In Figure 5B, a screen from a process control system captures the response of two identical processes, one controlled by an optimally tuned proportional integral derivative algorithm, and the other by the present controller. The first two disturbances are the changes of the set point, and the second three are the load changes. The response 52 of the present controller is displayed in the upper half of the diagram, while the response of the proportional integral derivative 54 is shown in the lower half. The present controller responds to both the changes of the set point and load much faster than the proportional integral derivative controller. The response to a set point change is very close to being a one-step change. The response to load changes in the process is not so dramatically different, but it stabilizes much faster. The present controller achieves this high performance in a very different manner from the proportional integral derivative control. Figure 5C exhibits both the output 56 of the present controller and the response of the process 58 during a similar sequence of the same simulacrum. Note that, in response to a set point change, the present controller makes several step changes before any change in the process has occurred. Then wait patiently for the process to respond.
A more realistic simulation can be achieved by using a second-order process model that is somewhat underdamped in addition to a delay. Here, the process is modeled by a delay of 4 seconds, followed by a second order delay with tau = 5 and damping = 0.7. This process is outstanding, and very difficult to control. Figure 5D shows how the present controller can maintain a clear response 62 to changes in set point and load without overshooting. However, the proportional integral derivative controller, even when well tuned, has difficulty in stabilizing the process, as shown by the output 64 of the proportional integral derivative. To add more realism, noise is added to the drill by means of a normally distributed random number generator. Figure 5E shows the result of making some large changes of the set point near the limits of the simulation range. In order to reduce the controller response to noise, P- was set at 50 percent for this test. Note how the clamping algorithm helps maintain a good response of the process in the presence of output constraints, by increasing the length of time spent at maximum output. When the present controller is tuned using the noisy signal, the model contains some error.
In this case, the pseudo-inverse method of singular value decomposition proves to be very robust, because the resulting controller still produces stable and superior performance. The present controller has a very low computational surplus .. A test was performed on the code compiled by an atcom compiler C version 9, with all the optimization activated, including code generation options for CPU 80486/80487. The tests were performed using a microcomputer with an Intel 80486, running at 33 MHz. On this computer, the present controller required 64 microseconds per update, while a discrete proportional integral derivative controller required approximately 10 microseconds on the same computer. In a typical application of a multi-tasking system, where the control cycles are updated on average once every 2 seconds, if 500 control cycles of the present invention were enabled, the control computations would consume only 1.6% of the CPU time available in this type of machine. When using a microcomputer equipped with an Intel Pentium processor running at 60 MHz, the code runs in less than 15 microseconds per update. The parallel processing and the excellent flotation point processing capabilities of this chip are suitable for vector calculations. The total time required to update a control cycle must also include the time for data acquisition and the update of the controller output. Using a high-speed parallel process interface in combination with the Pentium processor, this total time is approximately 80 microseconds per cycle. The time required to access the input / output hardware becomes the limiting step. In high-speed applications, the controller can be used to perform a control that requires control cycles of 1 millisecond of multiple cycles simultaneously using a low-cost microcomputer hardware. For tuning, computing the pseudo-inverse using a singular value decomposition algorithm is the most computationally intensive step. For these purposes, the matrix to be inverted is 22x3, and this computation requires less than 1 second of CPU time in all systems based on 486 tested. When used for adaptive control, the tuning program may be executed at a lower priority than the control program, and would not interfere with the operation of a high-speed control application.
Proportional Integral Derivation Tuning To additionally assist the engineer in the configuration of process control applications, the model of the present invention can be used to calculate optimum tuning constants for discrete proportional integral derivative controllers. You can use tangent and point or two-point methods to estimate the first-order delay and dead time that will be used to calculate the profit, integral time, and time derivative facilities that will optimize a performance measurement Dadaist. Rovira (1981) gives formulas for tuning constants that give a weighted average error of minimum integral time for proportional integral or proportional integral derivative controllers. The calculation of the optimal constants for the proportional integral and proportional integral derivative control from the model adds convenience in many applications, since it is often possible to perform an adequate control using proportional integral or proportional integral derivative control , and the extra computing load required for the architecture currently described is not justified. These control techniques can be implemented in such a way that the controller can change from one technique to another while it is in automatic, so that the control operation can be compared under the present invention, and the types of proportional integral control and of proportional integral derivative.
Front Power Control As described, the controller of the present invention is a SISO controller (single input, single output). However, the same techniques can be extended to the MIMO control (multiple inputs, multiple outputs). The first step in this development is the MISO (multiple inputs, one output), where an input (process output) is compared to a set point, and other process signals are used to anticipate load changes in the process . The dynamic relationship between these other signals and the objective signal can be represented by impulse models. These models can be applied using matrix multiplication to further adjust the predictions of the model, and consequently, introduce automatic compensation. Again, linear algebra methods can be used to calculate the ideal compensation for any expected disturbance, designed to minimize that disturbance. This type of control is similar to the front-feed control with feedback trimming, a popular control technique that uses existing control methods. The advantage of the present approach is that the front power gain is automatically found, and the signal is adjusted automatically to compensate for the delay and delay.
Adaptive Control The model of the present invention can be changed on the fly without introducing disturbance in the response of the controller. The controller only retains knowledge about previous output changes and desired changes from past calculations, but does not retain predictions of future process conditions. The prediction is made based on the variable sample of the current process only, and is done initially in each cycle by means of a single multiplication of vectors. This capability, in combination with obtaining new data for a process model, while in closed cycle mode, results in the unique potential for adaptive control. However, adaptive control must be applied with care, because we do not want to have load changes in the process attributed to changes in the controller output. One solution to this problem is that samples can be taken to improve an existing process model each time a setpoint change is made. The new modeling information of the process can replace the old, or you can average with it to get a new model. A new pseudo-inverse and sum of model must be calculated in order to re-tune the controller. An adaptive algorithm can perform all of these steps without operator intervention, using the statistical measures of the model and its adjustment to the data as inputs for decisions on whether or not to re-tune. This adaptive tuning procedure can be used to update the proportional integral or proportional integral derivative constants as well if desired.
Applications Although there are numerous potential applications for process control by means of the present invention, some specific examples include simple control of fluid flow, control of a chemical reactor, and control of a mechanical setter in a disk drive. Fluid flow control can be utilized by utilizing a flow measurement transducer, a flow control valve, an analog-to-digital converter, a digital-to-analog converter, and an arithmetic processing unit that is programmed to performing the control method of the present invention. The flow measurement transducer measures the flow and produces an electrical signal proportional to this flow. This signal is translated into a digital word by the analog-to-digital converter whose output is a binary signal whose value is now proportional to the flow over a limited range, and which has a precision limited by the number of bits in the digital word. The arithmetic processor periodically loads the binary flow signal and calculates a value of the control valve that will bring the flow rate to a desired set point. The set point is put into the arithmetic processor by any desired input-output device, for example, a cathode ray tube terminal and a keyboard. The establishments of P2 and P2 are put in a similar way to the memory of the arithmetic processor. The coefficients of the model and the pseudo-inverse required by the controller can be stored in a direct access memory or in a read-only memory of the arithmetic processor. These values are calculated using the method described herein, by the same arithmetic processing unit or a different one. Each time the arithmetic processor executes a control cycle, it calculates a value that is proportional to the desired position of the flow control valve. This digital value is transmitted to the digital-to-analog converter, which translates the value to an analog signal sent to the automatic control valve. Alternatively, an automatic control valve that accepts a digital signal directly can be used, and place the valve proportionally at the value of this signal. The benefit of using the present method in this application is that the flow rate controlled by this method can respond more quickly to changes in the set point or to changes in an unmeasured load (for example, changes in pressure to through the valve) than a conventional proportional integral derivative controller. The present controller is better able to compensate for the delay inherent in the action of the actuator, the delays in the transmission of the signal, and the delay in the response to the position of the valve caused by the momentum of the fluid that is flowing. In addition, multiple flow control systems can employ a single arithmetic processing unit, because the present controller is simple and runs quickly. For example, using a microcomputer that has an Intel Pentium processor operating at a clock speed of 60 megahertz, it was found that the present control method requires approximately 15.0 microseconds. The total time required to acquire data, execute the control method, and transmit data to the valve was found to require approximately 80 microseconds. When a microcomputer is used to control 100 separate flows, once per second, the processor performs the control calculations only about 8 percent of the time. When a multi-tasking operating system is used, the remaining time could be used for other activities, such as displaying values for an operator, recording data, or controlling and monitoring other devices. The control of a chemical reactor is similar to the control of fluid flow, with the exception that the output of the process can be a measurement of any physical or chemical property that is related to the quality of the product produced. For example, if the reactor is a polymerization reactor, the viscosity of the product may be a desired measure of product quality. Other appropriate measures could be pH, specific gravity, conductivity, or analysis of a chemical species measured by titration, spectroscopic, chromatographic, or other analytical methods. This measure of quality is translated in a manner similar to a digital signal that is processed in an arithmetic processor, employing the method of the present invention to calculate a value proportional to the desired establishment of an input to the process. The input to the process may be the flow of a chemical reagent or catalyst, the flow of heating fluid or refrigerant, or the flow of electrical current to a resistance heating element, or any other input that has an effect on the measurement of quality of the product of interest. The value calculated by the present method can also be used as the established point of a flow control for an appropriate process input, and is particularly convenient when this flow control is also performed using the same arithmetic processor, particularly when the processor employs the present method of the invention. The present control method used to control a chemical reaction is particularly convenient when the residence time of the chemical in the process is long compared to the desired period of process control. For example, a plug flow polymerization reactor having a residence time of 1 minute, wherein the viscosity is measured once every 10 seconds. If the flow of a polymerization catalyst is used as the input to the process, a change in the flow rate of this catalyst will not have a measurable effect on the viscosity in about 60 seconds. This large signal delay is difficult to manage using conventional proportional integral derivative control methods; however, the present control method can handle this delay. For example, if the operator makes a change of the set point in the desired viscosity, the present controller will make an immediate change in the catalyst level, based on his model, required to change the viscosity by the desired amount. Once this change has been applied, another control action by the present controller will be delayed by 60 seconds, because the model will compensate the dead time of the process. In a device used to read rotating optical or magnetic media, a read-write head must be placed in a particular position (a track) on the medium before data can be read or written. The time required to move the head to this position is typically the time-limiting step in the operation of a data storage and retrieval device that handles a large amount of data. The movement of the head can be done using an electromagnetic device, such as a voice coil or a servo motor. In each case, the movement of the head is controlled by an electrical signal. There must be a means for the unit to determine the precise position of the head. This measurement can be a digital or analog electrical signal. The control method used to position the head should move the head as quickly as possible to the desired position, and stabilize the measurement within a predetermined tolerance, before data can be transferred to or from the medium. The time required to stabilize the head is known as the establishment time. In this application, the present control method is particularly convenient. If the electromechanical actuator is a type of voice coil, it consists of an electromagnet and a spring placed in such a way that the head moves to an equilibrium position that is proportional to the current passed through the electromagnet. The mass of the head and the positioning arm make this type of mechanical system oscillate, and consequently, a mechanical damping device is also required. The dynamics of the head setter can be described using a linear differential equation of the second order. Using a conventional proportional integral derivative controller to control the feedback of the head setter, settling time is long in relation to the time required for the head to first cross the desired new position. Unlike a proportional integral derivative method, the present feedback control method can compensate for the second order dynamics of the head setter, and therefore, prevent oscillation in a closed cycle mode. The ability of the present control method to dampen the oscillation can reduce settling time by at least 50 percent.
To further reduce the settling time of a head positioning system, the voice coil actuator can be designed in such a way that the range of movement of the actuator extends beyond the minimum and maximum tracks on the medium. The present control method will then produce momentary signals that will eventually hyperextend the head in order to move the head more rapidly in a desired direction. For example, if the current applied to the setter is normally in the range of 0 to 100 mA, the equilibrium positions on the medium corresponding to the currents of 25 and 75 mA would extend in the medium, while the mechanical stops would impede the movement real beyond the first and last clues. The sampling and update rate for the present control method, when controlling a disk drive head setter, should be very fast, typically less than 1 millisecond. The simplicity of this control method, compared with other model predictive control methods, will allow this control to be performed using microprocessors for general economic purposes. To summarize, in accordance with the present invention, the basic steps performed by the controller in each update are the following. Y is acquired from the process. The future process changes are determined. The continuous state error is calculated. The required correction is calculated. It applies to the clamping algorithm. The first change element is added to the output of the existing controller, and the updated value is sent to the process. The elements of x ° are changed to the right, and the first element is replaced with the newly made change. Move the changes not yet made to the element on the left. The elements of a + and s are constants established automatically by the calibration process. This calibration process uses the matrix algebra methods discussed above, in the following sequence. The inputs and outputs of the sampling process during a preference window are at least 2n + 3 duration samples, where the changes made in the process input are. Multiple linear regression is performed to determine the impulse response model. N + 2 is established by matrix 3 from the impulse response model and the pseudo-inverse computation. The best column of the pseudo-inverse is found, and assigned to a +. The predictor sum vector s is calculated from the impulse model a. The first element of the vector s is equal to the gain of the process. The tuning task is usually done through a separate program in a multi-tasking environment. This task can operate continuously to achieve adaptive control. The tuning constants of P2, P2, and the pseudo-inverse, and the model constants, can all be changed on the fly without introducing disturbance in the process. To achieve optimal performance, it is important that the control system be able to synchronize the sampling time and update the process of the controller outputs. In some systems used for process control, the data acquisition hardware scans inputs from multiple points in a synchronous manner from the controller cycle. In this case, the delay introduced by the data acquisition hardware is not constant, and can not be modeled reliably. When there is process noise present, digital filtering can be introduced in combination with sampling rates that are an integer multiple of controller updates. Digital filtering must be done in such a way that the filter time constant is equal to or less than the controller's update cycle. When a longer filtration is performed, the filter is added to the process delay, and the controller will try to compensate for this delay by making more severe changes. The net effect is that the filter's attempt to reduce the sensitivity to noise is impeded by the controller. In this description, the preferred embodiments of the invention are shown and described, it being understood that the invention may be used in other different combinations and environments, and changes or modifications may be made within the scope of the inventive concepts expressed herein. .

Claims (70)

  1. CLAIMS 1. An electronic model predictive control apparatus for controlling a plant that has an input signal to the plant and an output signal of the plant dependent on the input signal to the plant, which comprises: a first memory that contains a vector of data elements derived from a pseudo-inverse of a pulse response matrix model of said plant; a second memory containing data indicating the changes of input signal to the future plant calculated during the previous control cycles; a third memory containing a vector of the past input signal changes to the plant; a fourth memory containing data elements by means of which a change of output signal of the future plant can be derived due to the changes of the input signal to the last plant, from the vector of the input signal changes to the last plant; an electronic processor adapted to: receive a sample of output signal from the plant; calculate an output signal of the expected future plant from the data indicating the future input signal changes to the plant calculated during the previous control cycles, the continuous state gain of the plant, the change of output signal of the future plant due to the changes of input signal to the last plant, and the sample of output signal from the plant; calculate an error signal from an established point signal and the expected future plant output signal; and calculate a change of input signal to the plant from the error signal, from the vector of data elements derived from the pseudo-inverse, and from the data that indicate the changes of input signal to the future plant calculated during the previous control cycles; wherein the change of input signal to the plant is applied to the input signal to the plant to control the output signal of the plant. The control apparatus of claim 1, wherein the first, second, third, and fourth electronic memory are incorporated into a single memory device. 3. The control apparatus of claim 2, wherein the memory device is a RAM. 4. The control apparatus of claim 1, wherein the processor is under program control. 5. The control apparatus of claim 1, wherein the processor is implemented by direct electrical connection. The control apparatus of claim 1, wherein the change of input signal to the plant is further processed before being applied to the input signal to the plant, in order to hold the change of input signal to the plant. plant, to restrict the input signal to the plant to a threshold level, where the additional processing includes: determining when the input signal to the plant added to the signal input change to the plant exceeds the threshold level, and calculating a clamping value equal to an amount by which said threshold level is exceeded; subtract the clamping value of the change of input signal to the plant; add twice the value of the clamp to a change of input signal to the plant calculated for the next control cycle; subtract the clamping value of a change of input signal to the plant calculated for two control cycles in the future. The control apparatus of claim 1, wherein the change of input signal to the plant is further processed before being applied to the input signal to the plant, in order to hold the change of input signal to the plant. plant for restricting the input signal to the plant at a threshold level, wherein this additional processing includes: determining when the input signal to the plant added to the change of input signal to the plant exceeds the threshold level; and modifying the input signals to the plant calculated over a plurality of control cycles, in such a way that the sum of these modifications is equal to zero. The control apparatus of claim 1, wherein the error signal is multiplied by a damping factor. The control apparatus of claim 1, wherein a division factor is used to distribute the contribution to the change of input signal to the plant due to the vector of data elements derived from the pseudo-inverse and at least one other vector derived from said pseudo-inverse. The control apparatus of claim 9, wherein the at least one other vector derived from the pseudo-inverse is a single element vector comprising the inverse of the continuous state gain of the plant. The control apparatus of claim 1, wherein the vector of data elements derived from the pseudo-inverse is a vector comprising the elements of an optimal column of said pseudo-inverse. The control apparatus of claim 11, wherein the optimal pseudo-inverse column is determined at least partially by multiplying the model of the impulse response matrix by the pseudo-inverse, subtracting an identity matrix, and calculating the error minimal square The control apparatus of claim 12, wherein the optimal pseudo-inverse column is further determined by selecting the best column further to the left, in order to provide a timely output signal response from the plant . The control apparatus of claim 1, wherein the vector of data elements derived from the pseudo-inverse is a vector comprising a weighted average of at least two columns of the pseudo-inverse. 15. The control apparatus of claim 1, wherein the vector of data elements derived from the pseudo-inverse is a vector comprising an interpolation between two columns of the pseudo-inverse. 16. The control apparatus of claim 1, wherein the second and third memories comprise change recorders. The control apparatus of claim 1, wherein the data elements contained in the fourth memory comprise a vector, wherein each element corresponds to the sum of a column A °, wherein A ° is the integral form of the impulse response matrix. The control apparatus of claim 1, wherein the data elements contained in the fourth memory comprise a matrix in which the elements correspond to the elements in a matrix A °, where A ° is the integral form of the matrix of impulse response. The control apparatus of claim 1, wherein the plant comprises a fluid flow system having a flow measuring transducer and a flow control valve, wherein the output signal of the plant is derived from of the flow meter transducer, and the input signal to the plant is applied to said flow control valve. The control apparatus of claim 1, wherein the plant comprises a chemical reactor system having a quality measurement transducer and an actuator having an effect on the quality measurement, wherein the output signal of the The plant is derived from the quality measurement transducer, and the input signal to the plant is applied to said actuator. The control apparatus of claim 1, wherein the plant comprises a chemical reactor system having a flow controller, wherein the input signal to the plant is applied to a set point of the flow controller. 22. The control apparatus of claim 1, wherein the plant comprises a storage device having a read and / or write head, a head actuator, and a rotary storage means, wherein the output signal of the plant is related to the position of the head on the storage medium, and the input signal to the plant is applied to the head actuator to control the position of the head on the storage medium. 23. The control apparatus of claim 1, where the vector of data elements derived from the pseudo-inverse, has three data elements. 24. The control apparatus of claim 1, wherein the vector of data elements derived from the pseudo-inverse, has a number of data elements equal to the order of the dynamics of a model of said plant plus one. 25. The control apparatus of claim 1, wherein the pseudo-inverse is calculated by singular value decomposition. 26. The control apparatus of claim 1, wherein the impulse response matrix is derived from a pulse response vector having approximately 20 elements. 27. The control apparatus of claim 1, wherein the new modeling information is obtained during a change of the set point, and the new modeling information is used to obtain a new model, thus implementing an adaptive control. 28. The control apparatus of claim 1, which further comprises a cathode ray tube and a keyboard to provide the signal from the set point to the processor. 29. The control apparatus of claim 1, wherein the impulse response matrix is derived from a pulse response vector determined by linear regression. 30. A model predictive control method for controlling a process that has an input signal to the process and a process output signal dependent on the input signal to the process, which comprises the steps of: sampling the output signal of the process process; calculate an output signal of the expected future process from the data indicating the changes of the input signal to the future process calculated during the previous control cycles, of the continuous state gain of the process, of an output signal change of the future process due to the changes of the input signal to the process passed, and of the sample of the output signal of the process; calculate an error signal from an established point signal and the expected future process output signal; calculate a change of the input signal to the process from the error signal, a vector of data elements derived from a pseudo-inverse of a pulse response matrix model of this process, and the data that indicate the future signal changes to the process calculated during the previous control cycles; and applying the change of the input signal to the process to said input signal to the process to control the output signal of the process. The control method of claim 30, wherein the change of the input signal to the process is further processed before being applied to the input signal to the process, in order to hold the change of the input signal to the process to restrict the input signal to the process to a threshold level; wherein the additional processing includes the steps of: determining when the input signal to the process added to the signal input change to the process exceeds the threshold level, and calculating a clamping value equal to an amount by which said threshold value is exceeded; subtract the clamping value of the signal change input to the process; add twice the clamping value to a change of input signal to the process calculated for the next control cycle; subtract the clamping value of an input signal change to the calculated process for two control cycles in the future. 32. The control method of claim 30, wherein the change of input signal to the plant is further processed before being applied to the input signal to the plant, in order to hold the change of input signal to the plant. plant, to restrict the input signal to the plant at a threshold level, where this additional processing includes: determining when the input signal to the plant added to the signal change input to the plant exceeds the threshold level; and modifying the input signals to the plant calculated over a plurality of control cycles, such that the sum of these modifications is equal to zero. The control method of claim 30, which further comprises the step of multiplying the error signal by a damping factor. The control method of claim 30, which further comprises the step of distributing, by means of a distribution factor, the contribution of the input signal change to the process due to the vector of data elements derived from the pseudo -inverse and at least one other vector derived from said pseudo-inverse. 35. The control method of claim 34, wherein the at least one other vector derived from the pseudo-inverse is a vector of a single element comprising the inverse of the continuous state gain of the process. 36. The control method of claim 30, wherein the vector of data elements derived from the pseudo-inverse is a vector comprising the elements of an optimal column of said pseudo-inverse. 37. The control method of claim 36, wherein the optimal pseudo-inverse column is determined at least partially by multiplying the impulse response matrix model by the pseudo-inverse, subtracting an identity matrix, and calculating the error minimal square 38. The control method of claim 37, wherein the optimal pseudo-inverse column is further determined by selecting the leftmost column that has a minimum acceptable square error, in order to provide a signal response of exit of the timely process. 39. The control method of claim 30, wherein the vector of data elements derived from the pseudo-inverse is a vector comprising a weighted average of at least two columns of the pseudo-inverse. 40. The control method of claim 30, wherein the vector of data elements derived from the pseudo-inverse is a vector comprising an interpolation between two columns of said pseudo-inverse. 41. The control method of claim 30, which further comprises the step of deriving the output signal change from the future process due to past input signal changes of the process, by multiplying a vector of signal changes of process input passed by a vector where each element corresponds to the sum of a column A °, where A ° is the integral form of the impulse response matrix. 42. The control method of claim 30, which further comprises the step of deriving the output signal change from the future process due to changes of the input signal to the past process, by multiplying a vector of changes of the input signal to the process passed through a matrix where the elements correspond to the elements of a matrix A °, where A ° is the integral form of the impulse response matrix; and add the resulting vector. 43. The control method of claim 30, wherein the process comprises a fluid flow system having a flow measurement transducer and a flow control valve, which further comprises the steps of deriving the output signal. of the process from the flow measurement transducer, and apply this input signal to the process to said flow control valve. 44. The control method of claim 30, wherein the process comprises a chemical reactor system having a quality measurement transducer and an actuator having an effect on said quality measurement, which further comprises the steps of derivatizing the output signal of the process from the quality measurement transducer, and apply the input signal to the process to the actuator. 45. The control method of claim 30, wherein the process comprises a chemical reactor system having a flow controller, wherein the input signal to the process is applied to a set point of the flow controller. 46. The control method of claim 30, wherein the process comprises a data storage access system having a read and / or write head, a head driver, and a rotary storage means, which comprises further the steps of deriving the process output signal from the position of the head on the storage medium, and applying the input signal to the process to the head actuator to control this head. 47. The control method of claim 30, which further comprises the steps of obtaining new modeling information during a change of the set point, and using this new modeling information to generate a new model, thereby implementing an adaptive control . 48. The control method of claim 30, which further comprises the step of determining a pulse response vector by linear regression; and deriving the impulse response matrix from that impulse response vector. 49. The control method of claim 30, which further comprises the steps of: determining, in accordance with the pulse response matrix model, the optimum tuning constants for proportional integral and / or proportional integral derivative controllers , and store these constants for a selective control of the process by means of alternative control techniques. 50. A method for controlling the operation of a process having an input signal to the process and an output signal of the process that depends on the input signal to the process, this method comprising the steps of: acquiring a sample of the signal from output of the process; determining an output signal of the predicted process in a condition of future continuous state according to a model of the process and with the sample of the output signal of the process; determining a continuous output error signal according to the difference between the output signal of the predicted process and a desired set point signal; determine a set of future calculated process input signal changes, such that if applied to the input signal to the process, the estimated continuous state error would be substantially canceled by causing at least an approximate one-step response in the output signal of the process in a future time; and apply a first member of the set of changes of input signal to the future process to the input signal to the process, to control the operation of the process. 51. The method according to claim 50, wherein the step of determining a set of future input signal changes to the process includes the step of: scaling a previously determined vector of data elements by the continuous state error signal , these data elements representing an optimal column of a pseudo-inverse of a matrix of the process model. 52. The method of claim 51, wherein the set of future input signal changes to the process, if applied to the input signal to the process, would cause an approximate one-step response in the output signal of the process in a time future. 53. The method according to claim 50, wherein the step of determining a set of future signal changes to the process includes the step of: scaling a previously determined vector of data elements by the state error signal continuous, these data elements representing a weighted average of at least two columns of a pseudo-inverse of a matrix of the process model. 54. The method of claim 53, wherein the set of future input signal changes to the process, if applied to the input signal to the process, would cause an approximate one-step response in the output signal of the process in a future time. 55. The method of claim 50, wherein the step of determining a set of future input signal changes to the process includes the step of: scaling a previously determined vector of data elements by the continuous output error signal, the data elements representing an interpolation between two columns of a pseudo-inverse of a matrix of the process model. 56. The method of claim 55, wherein the set of future input signal change to the process, if applied to the input signal to the process, would cause an approximate one-step response in the output signal of the process in a future time. 57. The method of claim 50, wherein the process is a fluid flow process, wherein the input signal to the process controls the flow rate, and wherein the output signal of the process provides an indication of the speed flow. 58. The method of claim 50, wherein the process is a chemical reactor process, wherein the input signal to the process makes a quality measurement, and wherein the output signal of the process provides an indication of that measurement of quality. 59. The method of claim 50, wherein the process is a data access process for a data storage device, wherein the output signal of the process is related to the movement of a data head, and where the input signal to the plant controls the movement of that data head. 60. An electronic model predictive control apparatus for controlling a process that has an input signal to the process and a process output signal that depends on the input signal to the process, which comprises: an electronic memory element for storing a vector of data elements derived from one or more columns of a pseudo-inverse of a model of impulse response matrix of the process; an element to receive a sample of the output signal of the process; an electronic processor element for calculating an output signal of the expected future process, for calculating an error signal from a set point signal and the expected future process output signal, and for calculating a change of input signal to the process from the error signal, the vector of data elements being derived from one or more columns of the pseudo-inverse, and data indicating future signal changes to the process calculated during the previous control cycles; and an element to apply the change of the input signal to the process to said input signal to the process, to control the output signal of the process. 61. The control apparatus of claim 60, wherein the data element vector represents an optimal pseudo-inverse column of the impulse response matrix model of the process. 62. The control apparatus of claim 61, wherein the optimum column is selected by determining the column which, when used as a set of changes of the input signal to the process, would produce the best approximate step response output according to a previously determined criterion. 63. The control apparatus of claim 62, wherein this criterion includes minimum square error. 64. The control apparatus of claim 60, further comprising a data entry element for providing the signal from the set point to the processor element. 65. A method for controlling the operation of a process having an input signal to the process and an output signal of the process that depends on the input signal to the process, this method comprising the steps of: acquiring a sample of the signal from process output; determining an output signal of the predicted process in a future continuous state condition according to a process model and sample of the process output signal; determining a continuous state error signal according to the difference between the output signal of the predicted process and a desired set point signal; determining a set of future process input signals calculated in such a way that, if applied to the input signal to the process, the estimated continuous state error would be substantially canceled by causing at least a one-step response in the signal exit from the process at a future time; and applying a first member of the set of input signals to the future process to the input signal to the process to control the operation of the process. 66. A method for controlling the operation of a process having a plurality of input signals to the process and a process output signal that depends on at least one of the input signals to the process, this method comprising the steps of: acquiring a sample of the output signal of the process; determining an output signal of the predicted process in a future continuous state condition according to a process model and with the sample of the output signal; determining a continuous state error signal according to the difference between the output signal of the predicted process and a desired set point signal; determine, for each input signal to the process, a set of future signal changes to the process, calculated in such a way that, if applied to the plurality of inputs to the process, the estimated continuous state error would be substantially canceled by causing at least one response of an approximate step in the output signal of the process at a future time; and apply a first member of each set of future input signal changes to a corresponding signal of the input signals to the process, to control the operation of the process. 67. The method of claim 66, wherein the set of future process input signal changes for each input signal to the process, if applied to the plurality of input signals to the process, would cause a one-step response approximate. 68. A method for controlling the operation of a process having a plurality of input signals to the process and a plurality of process output signals, each process output signal depending on at least one of the process input signals, the method comprising the steps of: acquiring a corresponding sample from each of the plurality of output signals of the process; determining, for each of the plurality of signals from the output of the process, a corresponding output signal of the predicted process in a future continuous state condition according to a model of the process and with the corresponding sample; determining, for each of the plurality of process output signals, a corresponding continuous state error signal according to the difference between the corresponding predicted process output signal and a corresponding set point signal; determining, for each output signal of the process, a plurality of sets of future input signal changes to the process, each set corresponding to one of the plurality of input signals to the process, calculated in such a way that, if applied to the plurality of signal input to the process, the estimated continuous state error correspondingly eetancialmente cancel when causing a reepuesta a paeo approximately in a corresponding signal of the plurality of output signals of the process in a future time; and applying, to each of the plurality of input signals to the process, a sum of the first members of the corresponding sets of change of input signal to the future process, to control the operation of the process. 69. The method of claim 68, wherein the plurality of signal exchange switches from the future process input, if applied to the plurality of input signals to the process, would cause an approximate one-step response. 70. A model predictive control method to control a process that has an input signal to the process and a process output signal that depends on the input signal to the process, which includes the steps of: sampling the output signal of the process; calculate an output signal of the expected future process from a change in the output signal of the future process due to changes in the input signal to the process passed and to the signal sample of the process output; calculate an error signal from an established point signal and the expected future process output signal; calculating a change of the input signal to the process from the error signal multiplied by the inverse of the continuous state gain of the process, determining the gain of the continuous state process according to a model of impulse response of the process; and apply the change of the input signal to the process to the input signal to the process to control the output signal of the process. SUMMARY An apparatus and model predictive control method for controlling the operation of a process (34) having an input signal to the process (Xk) and a process output signal (Yk), which includes determining an output signal of the process. predicted process (k + n + m + 2) in a future continuous state condition according to a process model, determining a continuous state error signal according to the difference between the output signal of the predicted process and a signal the desired set point (Ysp), and determine a set of future input change signals to the process (x), requires the correction of the estimated continuous state error (e), by providing at least one response from a paeo in the course of the process in a future time. Then the following change of input to the net process is applied in accordance with the sum of the first element currently determined from the set of signals of change of input to the future process (e) added with any signals of change of input to the future process that were previously calculated , for the next signal of change of input to the process that is calculated according to this method. The model is expressed in the form of speed. The tuning parameters of the process are available to buffer the change of input to the net process, as well as the first currently determined element of the change of input to the process with respect to a signal of change of input to the process that is calculated according to the error of continuous state divided by the gain of the continuous state process. * * * * *
MX9702973A 1994-10-24 1995-10-13 Model predictive control apparatus and method. MX9702973A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08328100 1994-10-24
US08/328,100 US5519605A (en) 1994-10-24 1994-10-24 Model predictive control apparatus and method
PCT/US1995/013201 WO1996012990A1 (en) 1994-10-24 1995-10-13 Model predictive control apparatus and method

Publications (2)

Publication Number Publication Date
MXPA97002973A true MXPA97002973A (en) 1998-02-01
MX9702973A MX9702973A (en) 1998-02-28

Family

ID=23279513

Family Applications (1)

Application Number Title Priority Date Filing Date
MX9702973A MX9702973A (en) 1994-10-24 1995-10-13 Model predictive control apparatus and method.

Country Status (13)

Country Link
US (1) US5519605A (en)
EP (1) EP0788625B1 (en)
JP (1) JPH10509542A (en)
KR (1) KR970707475A (en)
AT (1) ATE190139T1 (en)
BR (1) BR9509521A (en)
CA (1) CA2203506C (en)
DE (1) DE69515323T2 (en)
IL (1) IL115691A (en)
MX (1) MX9702973A (en)
TW (1) TW378287B (en)
WO (1) WO1996012990A1 (en)
ZA (1) ZA958899B (en)

Families Citing this family (217)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5627750A (en) * 1993-12-29 1997-05-06 Toyota Jidosha Kabushiki Kaisha Clutch slip control device and method of manufacturing the same, clutch slip control method, and vehicle control device
JP3315814B2 (en) * 1994-06-09 2002-08-19 トヨタ自動車株式会社 Vehicle control device, clutch slip control device and idle speed control device
US5923571A (en) * 1994-10-11 1999-07-13 Betzdearborn, Inc. Apparatus and method for automatic congruent control of multiple boilers sharing a common feedwater line and chemical feed point
US5696696A (en) * 1994-10-11 1997-12-09 Betzdearborn, Inc. Apparatus and method for automatically achieving and maintaining congruent control in an industrial boiler
US5581687A (en) * 1994-11-10 1996-12-03 Baxter International Inc. Interactive control systems for medical processing devices
JP3267836B2 (en) * 1995-06-05 2002-03-25 トヨタ自動車株式会社 Control device and its design method, and clutch slip control device and its design method
US6036349A (en) * 1995-07-27 2000-03-14 Health Designs, Inc. Method and apparatus for validation of model-based predictions
CA2229937A1 (en) * 1995-09-22 1997-03-27 Rosemount Inc. Adaptive bias controller
US5745383A (en) * 1996-02-15 1998-04-28 Barber; Timothy P. Method and apparatus for efficient threshold inference
US6868538B1 (en) * 1996-04-12 2005-03-15 Fisher-Rosemount Systems, Inc. Object-oriented programmable controller
US5940294A (en) * 1996-04-12 1999-08-17 Fisher-Rosemont Systems, Inc. System for assisting configuring a process control environment
US5838563A (en) * 1996-04-12 1998-11-17 Fisher-Rosemont Systems, Inc. System for configuring a process control environment
JP3039365B2 (en) * 1996-04-15 2000-05-08 日本電気株式会社 Receive synchronization position control method
US8311673B2 (en) 1996-05-06 2012-11-13 Rockwell Automation Technologies, Inc. Method and apparatus for minimizing error in dynamic and steady-state processes for prediction, control, and optimization
US6493596B1 (en) 1996-05-06 2002-12-10 Pavilion Technologies, Inc. Method and apparatus for controlling a non-linear mill
US7418301B2 (en) 1996-05-06 2008-08-26 Pavilion Technologies, Inc. Method and apparatus for approximating gains in dynamic and steady-state processes for prediction, control, and optimization
US6047221A (en) * 1997-10-03 2000-04-04 Pavilion Technologies, Inc. Method for steady-state identification based upon identified dynamics
US7058617B1 (en) 1996-05-06 2006-06-06 Pavilion Technologies, Inc. Method and apparatus for training a system model with gain constraints
US6381504B1 (en) 1996-05-06 2002-04-30 Pavilion Technologies, Inc. Method for optimizing a plant with multiple inputs
US7610108B2 (en) 1996-05-06 2009-10-27 Rockwell Automation Technologies, Inc. Method and apparatus for attenuating error in dynamic and steady-state processes for prediction, control, and optimization
US5933345A (en) * 1996-05-06 1999-08-03 Pavilion Technologies, Inc. Method and apparatus for dynamic and steady state modeling over a desired path between two end points
US7149590B2 (en) 1996-05-06 2006-12-12 Pavilion Technologies, Inc. Kiln control and upset recovery using a model predictive control in series with forward chaining
US6278899B1 (en) 1996-05-06 2001-08-21 Pavilion Technologies, Inc. Method for on-line optimization of a plant
US6026334A (en) * 1996-07-30 2000-02-15 Weyerhaeuser Company Control system for cross-directional profile sheet formation
US5818714A (en) * 1996-08-01 1998-10-06 Rosemount, Inc. Process control system with asymptotic auto-tuning
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
US5892679A (en) * 1996-09-13 1999-04-06 Honeywell-Measurex Corporation Method and system for controlling a multiple input/output process with minimum latency using a pseudo inverse constant
US5777872A (en) * 1996-09-13 1998-07-07 Honeywell-Measurex Corporation Method and system for controlling a multiple input/output process with minimum latency
GB2321720A (en) * 1997-02-04 1998-08-05 Secr Defence Modelling a system with more parameters than sensors
US5865168A (en) 1997-03-14 1999-02-02 Nellcor Puritan Bennett Incorporated System and method for transient response and accuracy enhancement for sensors with known transfer characteristics
KR20010006528A (en) * 1997-04-18 2001-01-26 시게이트 테크놀로지 엘엘씨 Microactuator servo system in a disc drive
US6768610B1 (en) 1997-08-27 2004-07-27 Seagate Technology Llc Microactuator servo system in a disc drive
US6106785A (en) * 1997-06-30 2000-08-22 Honeywell Inc. Polymerization process controller
US6101058A (en) * 1997-08-07 2000-08-08 Seagate Technology, Inc. Method of implementing a linear discrete-time state-space servo control system on a fixed-point digital signal processor in a disc drive
SE9703758D0 (en) 1997-10-15 1997-10-15 Asea Brown Boveri Method and procedure for process control in the manufacture of paper, pulp or board
US6122557A (en) 1997-12-23 2000-09-19 Montell North America Inc. Non-linear model predictive control method for controlling a gas-phase reactor including a rapid noise filter and method therefor
US7031949B2 (en) * 1998-01-22 2006-04-18 Mts Systems Corporation Method and apparatus for generating input signals in a physical system
US6064809A (en) * 1998-06-05 2000-05-16 The Board Of Trustees Of The University Of Illinois Fast model predictive ellipsoid control process
US6230069B1 (en) 1998-06-26 2001-05-08 Advanced Micro Devices, Inc. System and method for controlling the manufacture of discrete parts in semiconductor fabrication using model predictive control
JP3198503B2 (en) * 1998-09-30 2001-08-13 日本精機株式会社 How to drive the instrument
US6197604B1 (en) 1998-10-01 2001-03-06 Advanced Micro Devices, Inc. Method for providing cooperative run-to-run control for multi-product and multi-process semiconductor fabrication
US7124065B2 (en) * 1998-10-26 2006-10-17 Speech Technology And Applied Research Corporation Determining a tangent space and filtering data onto a manifold
EP1014240A1 (en) * 1998-12-17 2000-06-28 Siemens Aktiengesellschaft A system of case-based reasoning for sensor prediction in a technical process, especially in a cement kiln, method and apparatus therefore
AU5025600A (en) 1999-05-17 2000-12-05 Foxboro Company, The Process control configuration system with parameterized objects
US7089530B1 (en) * 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US6754885B1 (en) 1999-05-17 2004-06-22 Invensys Systems, Inc. Methods and apparatus for controlling object appearance in a process control configuration system
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
JP2003503808A (en) 1999-06-24 2003-01-28 シーゲイト テクノロジー エルエルシー Method and apparatus for maintaining servo stability during actuator saturation
US6662058B1 (en) * 1999-06-28 2003-12-09 Sanchez Juan Martin Adaptive predictive expert control system
US6510352B1 (en) 1999-07-29 2003-01-21 The Foxboro Company Methods and apparatus for object-based process control
US7069101B1 (en) * 1999-07-29 2006-06-27 Applied Materials, Inc. Computer integrated manufacturing techniques
US7085688B1 (en) * 1999-10-22 2006-08-01 Shizuo Sumida Non-linear characteristic reproducing apparatus and non-linear characteristic reproducing program storage medium
US6640151B1 (en) 1999-12-22 2003-10-28 Applied Materials, Inc. Multi-tool control system, method and medium
DE10005611A1 (en) * 2000-02-09 2001-08-30 Randolf Hoche Method and device for moving an element
US6768969B1 (en) * 2000-04-03 2004-07-27 Flint Hills Scientific, L.L.C. Method, computer program, and system for automated real-time signal analysis for detection, quantification, and prediction of signal changes
EP1292900A4 (en) * 2000-04-03 2012-09-05 Flint Hills Scient Llc Method, computer program, and system for automated real-time signal analysis for detection, quantification, and prediction of signal changes
US6826521B1 (en) 2000-04-06 2004-11-30 Abb Automation Inc. System and methodology and adaptive, linear model predictive control based on rigorous, nonlinear process model
DE50103413D1 (en) 2000-06-26 2004-09-30 Siemens Ag UNIVERSAL PROCESS FOR PRECALCULATING PARAMETERS OF INDUSTRIAL PROCESSES
WO2002003152A2 (en) * 2000-06-29 2002-01-10 Aspen Technology, Inc. Computer method and apparatus for constraining a non-linear approximator of an empirical process
US7169197B2 (en) * 2000-07-10 2007-01-30 Advanced Fuel Research, Inc. Pyrolysis processing for solid waste resource recovery
US6708074B1 (en) 2000-08-11 2004-03-16 Applied Materials, Inc. Generic interface builder
WO2002023289A2 (en) * 2000-09-15 2002-03-21 Advanced Micro Devices, Inc. Adaptive sampling method for improved control in semiconductor manufacturing
US6629089B1 (en) * 2000-09-29 2003-09-30 Cirrus Logic, Inc. Artificial neural network voice coil motor controller
US7188142B2 (en) 2000-11-30 2007-03-06 Applied Materials, Inc. Dynamic subject information generation in message services of distributed object systems in a semiconductor assembly line facility
KR100497894B1 (en) * 2000-12-27 2005-06-29 엘지전자 주식회사 Method of Electromagnetic Wave Electric Wave Model Optimum in Wireless Network
DE10109223C1 (en) 2001-02-26 2002-08-01 Siemens Ag Process for operating a casting and rolling plant
US20020128735A1 (en) * 2001-03-08 2002-09-12 Hawkins Parris C.M. Dynamic and extensible task guide
US6597958B1 (en) * 2001-03-22 2003-07-22 Abb Automation Inc. Method for measuring the control performance provided by an industrial process control system
ATE508398T1 (en) * 2001-03-29 2011-05-15 Lasx Ind Inc CONTROL FOR A LASER USING PREDICTIVE MODELS OF THE LASER BEAM MOTION SYSTEM
GB0113627D0 (en) * 2001-06-05 2001-07-25 Univ Stirling Controller and method of controlling an apparatus
US7201936B2 (en) 2001-06-19 2007-04-10 Applied Materials, Inc. Method of feedback control of sub-atmospheric chemical vapor deposition processes
US7160739B2 (en) 2001-06-19 2007-01-09 Applied Materials, Inc. Feedback control of a chemical mechanical polishing device providing manipulation of removal rate profiles
US6910947B2 (en) 2001-06-19 2005-06-28 Applied Materials, Inc. Control of chemical mechanical polishing pad conditioner directional velocity to improve pad life
US6913938B2 (en) 2001-06-19 2005-07-05 Applied Materials, Inc. Feedback control of plasma-enhanced chemical vapor deposition processes
US7047099B2 (en) * 2001-06-19 2006-05-16 Applied Materials Inc. Integrating tool, module, and fab level control
US7101799B2 (en) 2001-06-19 2006-09-05 Applied Materials, Inc. Feedforward and feedback control for conditioning of chemical mechanical polishing pad
US7698012B2 (en) 2001-06-19 2010-04-13 Applied Materials, Inc. Dynamic metrology schemes and sampling schemes for advanced process control in semiconductor processing
US7082345B2 (en) * 2001-06-19 2006-07-25 Applied Materials, Inc. Method, system and medium for process control for the matching of tools, chambers and/or other semiconductor-related entities
US7241323B2 (en) * 2001-07-10 2007-07-10 Advanced Fuel Research, Inc. Pyrolysis process for producing fuel gas
US7337019B2 (en) * 2001-07-16 2008-02-26 Applied Materials, Inc. Integration of fault detection with run-to-run control
US6984198B2 (en) 2001-08-14 2006-01-10 Applied Materials, Inc. Experiment management system, method and medium
US20030097243A1 (en) * 2001-10-23 2003-05-22 Mays Thomas Gilmore Method and system for operating a hydrocarbon production facility
FR2835067B1 (en) * 2002-01-21 2004-04-02 Trw Sys Aeronautiques Civil CONTROL DEVICE WITH LOOP, IN PARTICULAR ELECTRO-HYDRAULIC FLIGHT CONTROL ACTUATOR
US7225047B2 (en) 2002-03-19 2007-05-29 Applied Materials, Inc. Method, system and medium for controlling semiconductor wafer processes using critical dimension measurements
US20030199112A1 (en) 2002-03-22 2003-10-23 Applied Materials, Inc. Copper wiring module control
US6975914B2 (en) 2002-04-15 2005-12-13 Invensys Systems, Inc. Methods and apparatus for process, factory-floor, environmental, computer aided manufacturing-based or other control system with unified messaging interface
US6672716B2 (en) * 2002-04-29 2004-01-06 Xerox Corporation Multiple portion solid ink stick
US7668702B2 (en) * 2002-07-19 2010-02-23 Applied Materials, Inc. Method, system and medium for controlling manufacturing process using adaptive models based on empirical data
WO2004013715A1 (en) * 2002-08-01 2004-02-12 Applied Materials, Inc. Method, system, and medium for handling misrepresentative metrology data within an advanced process control system
US20040117043A1 (en) * 2002-09-07 2004-06-17 Igor Touzov Optimized calibration data based methods for parallel digital feedback, and digital automation controls
US7376472B2 (en) * 2002-09-11 2008-05-20 Fisher-Rosemount Systems, Inc. Integrated model predictive control and optimization within a process control system
CN1294569C (en) * 2002-11-14 2007-01-10 建兴电子科技股份有限公司 Compensation structure and method for positioning of laser head module track search
US7272459B2 (en) * 2002-11-15 2007-09-18 Applied Materials, Inc. Method, system and medium for controlling manufacture process having multivariate input parameters
US20040103068A1 (en) * 2002-11-22 2004-05-27 Eker Sukru Alper Process for optimally operating an energy producing unit and an energy producing unit
US8017411B2 (en) * 2002-12-18 2011-09-13 GlobalFoundries, Inc. Dynamic adaptive sampling rate for model prediction
US7333871B2 (en) 2003-01-21 2008-02-19 Applied Materials, Inc. Automated design and execution of experiments with integrated model creation for semiconductor manufacturing tools
US7242989B2 (en) * 2003-05-30 2007-07-10 Fisher-Rosemount Systems, Inc. Apparatus and method for batch property estimation
US7205228B2 (en) 2003-06-03 2007-04-17 Applied Materials, Inc. Selective metal encapsulation schemes
US7272454B2 (en) * 2003-06-05 2007-09-18 Fisher-Rosemount Systems, Inc. Multiple-input/multiple-output control blocks with non-linear predictive capabilities
US7354332B2 (en) 2003-08-04 2008-04-08 Applied Materials, Inc. Technique for process-qualifying a semiconductor manufacturing tool using metrology data
TWI225576B (en) * 2003-10-06 2004-12-21 Univ Tsinghua Process controlling method with merged two-control loops
JP2005135186A (en) * 2003-10-30 2005-05-26 Toshiba Corp Reference model follow-up type control system and its method
US7356377B2 (en) 2004-01-29 2008-04-08 Applied Materials, Inc. System, method, and medium for monitoring performance of an advanced process control system
CA2456482A1 (en) * 2004-02-03 2005-08-03 Bayer Inc. Method and apparatus for controlling a polymerization reaction
US7761923B2 (en) 2004-03-01 2010-07-20 Invensys Systems, Inc. Process control methods and apparatus for intrusion detection, protection and network hardening
US7415312B2 (en) * 2004-05-25 2008-08-19 Barnett Jr James R Process module tuning
US6961626B1 (en) 2004-05-28 2005-11-01 Applied Materials, Inc Dynamic offset and feedback threshold
US7096085B2 (en) 2004-05-28 2006-08-22 Applied Materials Process control by distinguishing a white noise component of a process variance
ATE371123T1 (en) * 2004-07-10 2007-09-15 Luk Lamellen & Kupplungsbau METHOD FOR ADJUSTING A CLUTCH TORQUE
US7502715B1 (en) * 2004-09-21 2009-03-10 Asml Netherlands B.V Observability in metrology measurements
US20090259581A1 (en) * 2004-12-21 2009-10-15 Horowitz Kenneth A Financial activity relating to natural peril events
US7584134B2 (en) * 2004-12-21 2009-09-01 Weather Risk Solutions, Llc Graphical user interface for financial activity concerning tropical weather events
US7783543B2 (en) * 2004-12-21 2010-08-24 Weather Risk Solutions, Llc Financial activity based on natural peril events
US7584133B2 (en) * 2004-12-21 2009-09-01 Weather Risk Solutions Llc Financial activity based on tropical weather events
US7693766B2 (en) * 2004-12-21 2010-04-06 Weather Risk Solutions Llc Financial activity based on natural events
US7783544B2 (en) * 2004-12-21 2010-08-24 Weather Risk Solutions, Llc Financial activity concerning tropical weather events
US8266042B2 (en) 2004-12-21 2012-09-11 Weather Risk Solutions, Llc Financial activity based on natural peril events
US7783542B2 (en) * 2004-12-21 2010-08-24 Weather Risk Solutions, Llc Financial activity with graphical user interface based on natural peril events
US20060136181A1 (en) * 2004-12-22 2006-06-22 John Masse Method and system for optimising at least one parameter characteristic of a physical system that is to be subjected to variable external conditions
US7433762B2 (en) * 2005-02-08 2008-10-07 Halliburton Energy Services, Inc. Methods for controlling multiple actuators
WO2007001252A1 (en) * 2005-06-13 2007-01-04 Carnegie Mellon University Apparatuses, systems, and methods utilizing adaptive control
US7447554B2 (en) * 2005-08-26 2008-11-04 Cutler Technology Corporation Adaptive multivariable MPC controller
US7444191B2 (en) 2005-10-04 2008-10-28 Fisher-Rosemount Systems, Inc. Process model identification in a process control system
US8036760B2 (en) * 2005-10-04 2011-10-11 Fisher-Rosemount Systems, Inc. Method and apparatus for intelligent control and monitoring in a process control system
US7738975B2 (en) * 2005-10-04 2010-06-15 Fisher-Rosemount Systems, Inc. Analytical server integrated in a process control network
US20070115916A1 (en) * 2005-11-07 2007-05-24 Samsung Electronics Co., Ltd. Method and system for optimizing a network based on a performance knowledge base
CA2631167C (en) * 2005-11-29 2014-02-04 Unico, Inc. Estimation and control of a resonant plant prone to stick-slip behavior
US7363094B2 (en) * 2006-01-09 2008-04-22 General Electric Company Multivariable controller design method for multiple input/outputs systems with multiple input/output constraints
US8190251B2 (en) * 2006-03-24 2012-05-29 Medtronic, Inc. Method and apparatus for the treatment of movement disorders
US7860857B2 (en) * 2006-03-30 2010-12-28 Invensys Systems, Inc. Digital data processing apparatus and methods for improving plant performance
US20070249956A1 (en) * 2006-04-21 2007-10-25 Medtronic, Inc. Method and apparatus for detection of nervous system disorders
US8165683B2 (en) * 2006-04-21 2012-04-24 Medtronic, Inc. Method and apparatus for detection of nervous system disorders
US20070249953A1 (en) * 2006-04-21 2007-10-25 Medtronic, Inc. Method and apparatus for detection of nervous system disorders
US7761145B2 (en) * 2006-04-21 2010-07-20 Medtronic, Inc. Method and apparatus for detection of nervous system disorders
US7764989B2 (en) * 2006-04-21 2010-07-27 Medtronic, Inc. Method and apparatus for detection of nervous system disorders
US7761146B2 (en) * 2006-04-21 2010-07-20 Medtronic, Inc. Method and apparatus for detection of nervous system disorders
US8005575B2 (en) 2006-06-01 2011-08-23 General Electric Company Methods and apparatus for model predictive control in a real time controller
US7496414B2 (en) 2006-09-13 2009-02-24 Rockwell Automation Technologies, Inc. Dynamic controller utilizing a hybrid model
US7949417B2 (en) * 2006-09-22 2011-05-24 Exxonmobil Research And Engineering Company Model predictive controller solution analysis process
TW200837593A (en) * 2007-03-07 2008-09-16 Univ Nat Taiwan Science Tech Prediction method of near field photolithography line fabrication using by the combination of taguchi method and neural network
US7653445B2 (en) * 2007-04-13 2010-01-26 Controlsoft, Inc. Apparatus and method for model-based control
EP2055721A1 (en) * 2007-11-05 2009-05-06 Total Petrochemicals Research Feluy Method for optimising the transition from one polymer grade to another
EP2055720A1 (en) * 2007-11-05 2009-05-06 Total Petrochemicals Research Feluy Predictive model for density and melt index of polymer leaving loop reactor
US8295951B2 (en) * 2007-12-21 2012-10-23 The University Of Florida Research Foundation, Inc. Systems and methods for offset-free model predictive control
GB2469239B (en) 2008-01-31 2012-09-26 Fisher Rosemount Systems Inc Robust adaptive model predictive controller with tuning to compensate for model mismatch
CN104407518B (en) 2008-06-20 2017-05-31 因文西斯系统公司 The system and method interacted to the reality and Simulation Facility for process control
JP4605612B2 (en) * 2008-10-31 2011-01-05 本田技研工業株式会社 Equipment that controls the plant using preview control
CN101776924B (en) * 2009-01-12 2013-09-11 孙继海 Full automatic digital instrument with dynamic PID technology and overshoot suppression
DE112010000813T5 (en) * 2009-02-02 2012-02-09 Fisher-Rosemount Systems, Inc. Model predictive controller with tunable integral component to compensate for model mismatch
US8271104B2 (en) * 2009-04-22 2012-09-18 Terndrup Consult & Associates Bv Method and system for dynamic optimisation of industrial processes
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
CN101900992B (en) * 2010-07-16 2013-05-29 浙江大学 Selection method for economic goal-optimized self-adaptive backoff of chemical process predictive control system
CN102375442A (en) * 2010-08-23 2012-03-14 同济大学 Real-time on-line control system and method for miscellaneous nonlinear system
US8996141B1 (en) * 2010-08-26 2015-03-31 Dunan Microstaq, Inc. Adaptive predictive functional controller
US20120109620A1 (en) * 2010-11-01 2012-05-03 Honeywell International Inc. Apparatus and method for model predictive control (mpc) using approximate window-based estimators
JP5140138B2 (en) * 2010-11-04 2013-02-06 本田技研工業株式会社 Control device
US8554343B2 (en) 2010-12-08 2013-10-08 Mitsubishi Electric Research Laboratories, Inc. Method for solving control problems
CN102323750B (en) * 2011-06-02 2016-10-05 中国石油大学(华东) Embedded nonlinear impulse cooperative controller
JP6305673B2 (en) * 2011-11-07 2018-04-04 セイコーエプソン株式会社 Robot control system, robot system and robot
US9270155B2 (en) 2012-05-20 2016-02-23 Mts Systems Corporation Linear actuator assembly
US9008807B2 (en) 2012-05-25 2015-04-14 Statistics & Control, Inc. Method of large scale process optimization and optimal planning based on real time dynamic simulation
EP2725706A1 (en) * 2012-10-23 2014-04-30 ABB Technology AG Model predictive control with reference tracking
US9292010B2 (en) * 2012-11-05 2016-03-22 Rockwell Automation Technologies, Inc. Online integration of model-based optimization and model-less control
US9852481B1 (en) 2013-03-13 2017-12-26 Johnson Controls Technology Company Systems and methods for cascaded model predictive control
US9235657B1 (en) 2013-03-13 2016-01-12 Johnson Controls Technology Company System identification and model development
US10418833B2 (en) 2015-10-08 2019-09-17 Con Edison Battery Storage, Llc Electrical energy storage system with cascaded frequency response optimization
US9436179B1 (en) 2013-03-13 2016-09-06 Johnson Controls Technology Company Systems and methods for energy cost optimization in a building system
JPWO2015037165A1 (en) * 2013-09-12 2017-03-02 日本電気株式会社 Information processing apparatus, predictive control method, and program
US9971317B2 (en) * 2014-03-26 2018-05-15 Rockwell Automation Technologies, Inc. Cloud-level industrial controller loop gain tuning based on industrial application type
US9886012B2 (en) 2014-03-26 2018-02-06 Rockwell Automation Technologies, Inc. Component factory for human-machine interface migration to a cloud platform
US9614963B2 (en) 2014-03-26 2017-04-04 Rockwell Automation Technologies, Inc. Cloud-based global alarm annunciation system for industrial systems
US9866635B2 (en) 2014-03-26 2018-01-09 Rockwell Automation Technologies, Inc. Unified data ingestion adapter for migration of industrial data to a cloud platform
US9838476B2 (en) 2014-03-26 2017-12-05 Rockwell Automation Technologies, Inc. On-premise data collection and ingestion using industrial cloud agents
US10095202B2 (en) 2014-03-26 2018-10-09 Rockwell Automation Technologies, Inc. Multiple controllers configuration management interface for system connectivity
US10208947B2 (en) 2014-03-26 2019-02-19 Rockwell Automation Technologies, Inc. Cloud-level analytics for boiler networks
US9825949B2 (en) 2014-03-26 2017-11-21 Rockwell Automation Technologies, Inc. Device authentication to facilitate secure cloud management of industrial data
US9843617B2 (en) 2014-03-26 2017-12-12 Rockwell Automation Technologies, Inc. Cloud manifest configuration management system
US10386820B2 (en) 2014-05-01 2019-08-20 Johnson Controls Technology Company Incorporating a demand charge in central plant optimization
SG10201500754TA (en) * 2015-01-30 2016-08-30 Premanode Bhusana Method and system for reducing viscosity of a hydrocarbon fluid
US10190789B2 (en) 2015-09-30 2019-01-29 Johnson Controls Technology Company Central plant with coordinated HVAC equipment staging across multiple subplants
US10283968B2 (en) 2015-10-08 2019-05-07 Con Edison Battery Storage, Llc Power control system with power setpoint adjustment based on POI power limits
US10197632B2 (en) 2015-10-08 2019-02-05 Taurus Des, Llc Electrical energy storage system with battery power setpoint optimization using predicted values of a frequency regulation signal
US10250039B2 (en) 2015-10-08 2019-04-02 Con Edison Battery Storage, Llc Energy storage controller with battery life model
US11210617B2 (en) 2015-10-08 2021-12-28 Johnson Controls Technology Company Building management system with electrical energy storage optimization based on benefits and costs of participating in PDBR and IBDR programs
US10222083B2 (en) 2015-10-08 2019-03-05 Johnson Controls Technology Company Building control systems with optimization of equipment life cycle economic value while participating in IBDR and PBDR programs
US10222427B2 (en) 2015-10-08 2019-03-05 Con Edison Battery Storage, Llc Electrical energy storage system with battery power setpoint optimization based on battery degradation costs and expected frequency response revenue
US10389136B2 (en) 2015-10-08 2019-08-20 Con Edison Battery Storage, Llc Photovoltaic energy system with value function optimization
US10190793B2 (en) 2015-10-08 2019-01-29 Johnson Controls Technology Company Building management system with electrical energy storage optimization based on statistical estimates of IBDR event probabilities
US10742055B2 (en) 2015-10-08 2020-08-11 Con Edison Battery Storage, Llc Renewable energy system with simultaneous ramp rate control and frequency regulation
US10564610B2 (en) 2015-10-08 2020-02-18 Con Edison Battery Storage, Llc Photovoltaic energy system with preemptive ramp rate control
US10700541B2 (en) 2015-10-08 2020-06-30 Con Edison Battery Storage, Llc Power control system with battery power setpoint optimization using one-step-ahead prediction
US10418832B2 (en) 2015-10-08 2019-09-17 Con Edison Battery Storage, Llc Electrical energy storage system with constant state-of charge frequency response optimization
US10554170B2 (en) 2015-10-08 2020-02-04 Con Edison Battery Storage, Llc Photovoltaic energy system with solar intensity prediction
KR101734718B1 (en) * 2015-12-14 2017-05-11 현대자동차주식회사 Disturbance compensating system for motor
US10778012B2 (en) 2016-07-29 2020-09-15 Con Edison Battery Storage, Llc Battery optimization control system with data fusion systems and methods
US10594153B2 (en) 2016-07-29 2020-03-17 Con Edison Battery Storage, Llc Frequency response optimization control system
US10764255B2 (en) 2016-09-21 2020-09-01 Rockwell Automation Technologies, Inc. Secure command execution from a cloud monitoring system to a remote cloud agent
US11327473B2 (en) 2017-07-11 2022-05-10 Rockwell Automation Technologies, Inc. Dynamically reconfigurable data collection agent for fracking pump asset
US10482063B2 (en) 2017-08-14 2019-11-19 Rockwell Automation Technologies, Inc. Modular control manifest generator for cloud automation
US10416660B2 (en) 2017-08-31 2019-09-17 Rockwell Automation Technologies, Inc. Discrete manufacturing hybrid cloud solution architecture
US10838441B2 (en) 2017-11-28 2020-11-17 Johnson Controls Technology Company Multistage HVAC system with modulating device demand control
US10838440B2 (en) 2017-11-28 2020-11-17 Johnson Controls Technology Company Multistage HVAC system with discrete device selection prioritization
JP7003623B2 (en) * 2017-12-15 2022-01-20 オムロン株式会社 Control system
US11159022B2 (en) 2018-08-28 2021-10-26 Johnson Controls Tyco IP Holdings LLP Building energy optimization system with a dynamically trained load prediction model
US11163271B2 (en) 2018-08-28 2021-11-02 Johnson Controls Technology Company Cloud based building energy optimization system with a dynamically trained load prediction model
US11366697B2 (en) 2019-05-01 2022-06-21 EMC IP Holding Company LLC Adaptive controller for online adaptation of resource allocation policies for iterative workloads using reinforcement learning
US11586474B2 (en) 2019-06-28 2023-02-21 EMC IP Holding Company LLC Adaptation of resource allocation for multiple workloads using interference effect of resource allocation of additional workloads on performance
US11327801B2 (en) 2019-08-29 2022-05-10 EMC IP Holding Company LLC Initialization of resource allocation for a workload characterized using a regression model
CN113939784A (en) * 2019-10-30 2022-01-14 林德有限责任公司 Method for configuring a control system of a processing device
US11868810B2 (en) * 2019-11-15 2024-01-09 EMC IP Holding Company LLC Resource adaptation using nonlinear relationship between system performance metric and resource usage
TWI724743B (en) * 2020-01-10 2021-04-11 台達電子工業股份有限公司 Machine and operation method thereof
EP4208870A1 (en) * 2020-09-04 2023-07-12 Buckman Laboratories International, Inc. Predictive systems and methods for proactive intervention in chemical processes
CN112000016A (en) * 2020-09-07 2020-11-27 山东理工大学 Multi-objective optimization method for motor controller parameters
CN112506038A (en) * 2020-10-15 2021-03-16 福建龙净环保股份有限公司 Method and device for controlling balance of air pressure of gas
CN112286053B (en) * 2020-10-16 2021-08-27 北京航空航天大学 Guidance control integration method for high-mobility micro unmanned aerial vehicle
US11408332B2 (en) 2020-10-23 2022-08-09 Garrett Transportation I, Inc. Engine and emissions control system

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4349869A (en) * 1979-10-01 1982-09-14 Shell Oil Company Dynamic matrix control method
JPS5716719A (en) * 1980-07-04 1982-01-28 Hitachi Ltd Method and equipment for controlling steam temperature in thermal power plant
US4616308A (en) * 1983-11-15 1986-10-07 Shell Oil Company Dynamic process control
JPS61243505A (en) * 1985-04-19 1986-10-29 Omron Tateisi Electronics Co Discrete time controller
US4663703A (en) * 1985-10-02 1987-05-05 Westinghouse Electric Corp. Predictive model reference adaptive controller
DE3721504C2 (en) * 1987-06-30 1997-01-23 Bosch Gmbh Robert Control system
US4928484A (en) * 1988-12-20 1990-05-29 Allied-Signal Inc. Nonlinear multivariable control system
US5091843A (en) * 1988-12-20 1992-02-25 Allied-Signal, Inc. Nonlinear multivariable control system
EP0389281A3 (en) * 1989-03-23 1991-09-25 Matsushita Electric Industrial Co., Ltd. Adaptive control system
US5010473A (en) * 1989-08-31 1991-04-23 Duke University Method and apparatus for model-based control of an open-loop process
DE69122313T2 (en) * 1990-06-21 1997-03-20 Honeywell Inc Adaptive control based on a variable horizon with means for minimizing operating costs
US5144549A (en) * 1990-06-29 1992-09-01 Massachusetts Institute Of Technology Time delay controlled processes
US5293553A (en) * 1991-02-12 1994-03-08 General Motors Corporation Software air-flow meter for an internal combustion engine
EP0524317A4 (en) * 1991-02-08 1995-02-15 Tokyo Shibaura Electric Co Model forecasting controller
US5446648A (en) * 1992-02-28 1995-08-29 Abramovitch; Daniel Y. Determination of open loop responses from closed loop measurements
KR100267362B1 (en) * 1992-03-31 2000-10-16 하시모도 노부이치 Preview control apparatus
US5343209A (en) * 1992-05-07 1994-08-30 Sennott James W Navigation receiver with coupled signal-tracking channels
AU6358394A (en) * 1993-03-02 1994-09-26 Pavilion Technologies, Inc. Method and apparatus for analyzing a neural network within desired operating parameter constraints

Similar Documents

Publication Publication Date Title
EP0788625B1 (en) Model predictive control apparatus and method
MXPA97002973A (en) Apparatus and method of predictive mod control
KR100371728B1 (en) Feedback method for controlling non-linear processes
JP6357027B2 (en) Online adaptive model predictive control in process control systems.
US4358822A (en) Adaptive-predictive control system
EP1023646B1 (en) Optimal auto-tuner for use in a process control network
EP0710902B1 (en) Method and apparatus for controlling multivariable nonlinear processes
De Keyser Model based predictive control for linear systems
MXPA97008318A (en) Feedback method for controlling non-linear processes
WO2007001252A1 (en) Apparatuses, systems, and methods utilizing adaptive control
KR930002746B1 (en) Parameter indentification method
US20040181300A1 (en) Methods, apparatus and computer program products for adaptively controlling a system by combining recursive system identification with generalized predictive control
EP0037579B1 (en) Adaptive-predictive control method and adaptive-predictive control system
Da Rosa et al. Exact search directions for optimization of linear and nonlinear models based on generalized orthonormal functions
Ljung Non-linear black box models in system identification
Ławryńczuk et al. Beyond the quadratic norm: Computationally efficient constrained nonlinear MPC using a custom cost function
AU703250C (en) Model predictive control apparatus and method
Luo et al. Structure selective updating for nonlinear models and radial basis function neural networks
Chaber Fast nonlinear model predictive control algorithm with neural approximation for embedded systems: Preliminary results
Short Move suppression calculations for well-conditioned MPC
Chicatelli et al. A criterion for guaranteed closed loop simulation stability
Treichler Convergence analysis techniques: Comparison and contrast
CA1125414A (en) Adaptive predictive control system
Morningred et al. On-line adaptation of predictive controllers
Ogonowski Predictive control