This disclosure relates generally to control systems. More specifically, this disclosure relates to an apparatus and method for pH control in wastewater treatment plants and other systems.
Wastewater can include a variety of undesirable components, so wastewater is often treated in large wastewater treatment plants. One wastewater treatment process involves the use of bacteria to convert undesirable wastewater components into more desirable components. However, difficulties can arise in creating the right environment for the bacteria to thrive and thereby provide optimal performance. For example, pH control is widely used in wastewater treatment plants to encourage bacterial growth and increase treatment effectiveness.
In these and other types of systems, the pH of a mixture often needs to be controlled and monitored. However, pH is often a highly nonlinear characteristic of a mixture. Typically, pH is controlled by applying a logarithmic transformation to pH measurements, and control is achieved using proportional-integral-derivative (PID) controllers. However, the tuning of the PID controllers is often difficult, typically resulting in poor control over pH.
This disclosure provides an apparatus and method for pH control in wastewater treatment plants and other systems.
In a first embodiment, a method includes obtaining a nonlinear model that represents a pH of a material in a process to be controlled. The model is generated using an orthonormal bases function and an ordinal spline bases function. The method also includes performing non-linear model predictive control of the process using the model.
In a second embodiment, an apparatus includes at least one memory unit configured to store a nonlinear model that represents a pH of a material in a process to be controlled. The model is associated with an orthonormal bases function and an ordinal spline bases function. The apparatus also includes at least one processing unit configured to perform non-linear model predictive control of the process using the model.
In a third embodiment, a computer readable medium embodies a computer program. The computer program includes computer readable program code for obtaining a nonlinear model that represents a pH of a material in a process to be controlled, the model generated using an orthonormal bases function and an ordinal spline bases function. The computer program also includes computer readable program code for performing non-linear model predictive control of the process using the model.
Other technical features may be readily apparent to one skilled in the art from the following figures, descriptions, and claims.
For a more complete understanding of this disclosure, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which:
As shown in
At least one network 104 is coupled to the sensors 102a and actuators 102b. The network 104 facilitates interaction with the sensors 102a and actuators 102b. For example, the network 104 could transport measurement data from the sensors 102a and provide control signals to the actuators 102b. The network 104 could represent any suitable network or combination of networks. As particular examples, the network 104 could represent an Ethernet network, an electrical signal network (such as a HART or FOUNDATION FIELDBUS network), a pneumatic control signal network, or any other or additional type(s) of network(s).
Two controllers 106a-106b are coupled to the network 104. The controllers 106a-106b may, among other things, use the measurements from the sensors 102a to control the operation of the actuators 102b. For example, the controllers 106a-106b could receive measurement data from the sensors 102a and use the measurement data to generate control signals for the actuators 102b. Each of the controllers 106a-106b includes any suitable structure for interacting with the sensors 102a and controlling the actuators 102b. The controllers 106a-106b could, for example, represent multivariable controllers or other types of controllers.
Two networks 108 are coupled to the controllers 106a-106b. The networks 108 facilitate interaction with the controllers 106a-106b, such as by transporting data to and from the controllers 106a-106b. The networks 108 could represent any suitable networks or combination of networks. As particular examples, the networks 108 could represent a pair of Ethernet networks or a redundant pair of Ethernet networks, such as a FAULT TOLERANT ETHERNET (FTE) network from HONEYWELL INTERNATIONAL INC.
At least one switch/firewall 110 couples the networks 108 to two networks 112. The switch/firewall 110 may transport traffic from one network to another. The switch/firewall 110 may also block traffic on one network from reaching another network. The switch/firewall 110 includes any suitable structure supporting communication between networks, such as a HONEYWELL CONTROL FIREWALL (CF9) device. The networks 112 could represent any suitable networks, such as a pair of Ethernet networks or an FTE network.
Two servers 114a-114b are coupled to the networks 112. The servers 114a-114b perform various functions to support the operation and control of the controllers 106a-106b, sensors 102a, and actuators 102b. For example, the servers 114a-114b could log information collected or generated by the controllers 106a-106b, such as measurement data from the sensors 102a or control signals for the actuators 102b. The servers 114a-114b could also execute applications that control the operation of the controllers 106a-106b, thereby controlling the operation of the actuators 102b. In addition, the servers 114a-114b could provide secure access to the controllers 106a-106b. Each of the servers 114a-114b includes any suitable structure for providing access to, control of, or operations related to the controllers 106a-106b.
One or more operator stations 116 are coupled to the networks 112. The operator stations 116 represent computing or communication devices providing user access to the servers 114a-114b, which could then provide user access to the controllers 106a-106b (and possibly the sensors 102a and actuators 102b). As particular examples, the operator stations 116 could allow users to review the operational history of the sensors 102a and actuators 102b using information collected by the controllers 106a-106b and/or the servers 114a-114b. The operator stations 116 could also allow the users to adjust the operation of the sensors 102a, actuators 102b, controllers 106a-106b, or servers 114a-114b. In addition, the operator stations 116 could receive and display warnings, alerts, or other messages or displays generated by the controllers 106a-106b or the servers 114a-114b. Each of the operator stations 116 includes any suitable structure for supporting user access and control of the system 100.
In this example, the system 100 also includes a wireless network 118, which can be used to facilitate communication with one or more wireless devices 120. The wireless network 118 may use any suitable technology to communicate, such as radio frequency (RF) signals. Also, the wireless devices 120 could represent devices that perform any suitable functions. The wireless devices 120 could, for example, represent wireless sensors, wireless actuators, and remote or portable operator stations or other user devices.
At least one router/firewall 122 couples the networks 112 to two networks 124. The router/firewall 122 includes any suitable structure for providing communication between networks, such as a secure router or combination router/firewall. The networks 124 could represent any suitable networks, such as a pair of Ethernet networks or an FTE network.
In this example, the system 100 includes at least one additional server 126 coupled to the networks 124. The server 126 executes various applications to control the overall operation of the system 100. For example, the system 100 could be used in a processing plant or other facility, and the server 126 could execute applications used to control the plant or other facility. As particular examples, the server 126 could execute applications such as enterprise resource planning (ERP), manufacturing execution system (MES), or any other or additional plant or process control applications. The server 126 includes any suitable structure for controlling the overall operation of the system 100.
One or more operator stations 128 are coupled to the networks 124. The operator stations 128 represent computing or communication devices providing, for example, user access to the servers 114a-114b, 126. Each of the operator stations 128 includes any suitable structure for supporting user access and control of the system 100.
In particular embodiments, the various servers and operator stations may represent computing devices. For example, each of the servers 114a-114b, 126 could include one or more processing units 130 and one or more memory units 132 for storing instructions and data used, generated, or collected by the processing unit(s) 130. Each of the servers 114a-114b, 126 could also include at least one network interface 134, such as one or more Ethernet interfaces. Also, each of the operator stations 116, 128 could include one or more processing units 136 and one or more memory units 138 for storing instructions and data used, generated, or collected by the processing unit(s) 136. Each of the operator stations 116, 128 could also include at least one network interface 140, such as one or more Ethernet interfaces.
In one aspect of operation, at least one of the controllers 106a-106b represents a multivariable model predictive control (MPC) controller or other type of controller that operates using a model 142. The model 142 generally represents at least part of an industrial process being controlled, such as by defining how the controller controls one or more of the actuators 102b based on input data from one or more of the sensors 102a. The identification of the model 142 (which involves a “system identification” defining how the process being controlled behaves) and the design of the controller 106a-106b (which involves selection of control parameters for the controllers) are often critical to the proper control of the process system.
In accordance with this disclosure, a tool 144 is provided in the system 100 at one or more locations. The tool 144 here implements a technique for nonlinear process identification. For example, the tool 144 analyzes various data and performs system identification to identify one or more models 142 for one or more controllers 106a-106b. The tool 144 enables the creation of nonlinear models based on empirical process data. This approach allows known information concerning process characteristics to be incorporated into a model. The tool 144 also supports full dynamic nonlinear behavior. The model(s) 142 created can be directly used for control by the controller(s) 106a-106b, which could represent HONEYWELL PROFIT controllers or other controllers.
For flexibility, the process identification performed by the tool 144 accommodates different model structures, such as Hammerstein, Wiener, and more general N-L-N block-oriented structures. Instruments having linear and nonlinear combinations of inputs and outputs are also accommodated. The tool 144 utilizes multiple bases functions, namely an orthonormal bases function and an ordinal spline bases function. The orthonormal bases function can be constructed using an estimate of the process poles, and the ordinal spline bases function can be constructed using a specified set of special cubic splines. Nonlinear dynamics are implicitly accommodated, and problems associated with identifying the linear portion of the model in conventional block-oriented formulations can be removed. Because of the bases function formulations, it is possible to solve the identification problem for many supported structures by convex optimization, which can help to avoid the inherent problems of iterative solutions. However, to help ensure open-loop unbiased estimates, any structures using output nonlinearities can use an iterative solution.
Additional details regarding a particular non-limiting embodiment of the tool 144 are provided below. Other embodiments of the tool 144 could also be used. The tool 144 could be implemented in any suitable manner. For instance, the tool 144 could be implemented using only hardware or using a combination of hardware and software/firmware instructions. In particular embodiments, the tool 144 could represent one or more computer programs executed by the processing unit(s) in the servers 114a-114b, 126 or the operator stations 116, 128.
Although
any parameters of the model 142 to be defined by the user can have a physical relationship to the operating process;
models 142 can be open-loop unbiased;
solutions can be robust and available in a time effective manner;
all calculations can be done online and available while step testing is underway;
all calculations can be self-contained (i.e. models 142 may not require extraneous calculations);
signal injection may not be overly intrusive or cause major plant upsets;
models 142 can be flexible and make sense to the user; and
models 142 can be directly usable by nonlinear MPC (NLMPC) controllers and have minimal tuning extensions relative to conventional linear MPC.
A particular implementation of the tool 144 could support all or any subset of these features.
Block-oriented models are a class of models that is relatively simplistic in form, and they are one of the most-frequently studied classes of all nonlinear structures.
Also supported within the structure 200 are internal input and output instruments θ and ψ, respectively. Since multiple-input multiple-output (MIMO) models can be supported by the tool 144, any number of input instruments θ may appear as a nonlinear operator with any other input instruments θ. A similar statement can be made for output instruments ψ.
Within this class of models, the following three well-known structures may be supported by the tool 144:
Hammerstein: This is one of the most frequently used structures and includes a cascade connection between a static nonlinear block followed by an LTI dynamic block. This structure can be denoted as “N-L.”
Wiener: Here, the cascade connection of the Hammerstein model is reversed, and this structure is denoted as “L-N.”
Hammerstein-Wiener System: In this structure, all block elements are used directly as shown in
These structures have been widely used to represent a large number of applications. It is worth noting, however, that many of the block-oriented methods focus on single-input single-output (SISO) models or, if MIMO, there is little if any attention paid to the role of instruments as alluded to above. More attention to this detail is given below.
In addition to the structure shown in
In accordance with this disclosure, a combination of two bases functions that can be described prior to actual regression calculations is used. An orthonormal bases function is used to capture process dynamics, and an ordinal spline bases function is used to capture static nonlinearities.
Orthonormal Bases Functions
Early work on orthonormal bases functions (OBFs) for LTI identification was driven by the need for parsimonious models that are linear in the parameters. The idea of incorporating a priori information into the function led to the so-called Laguerre model. For resonant systems, the Kautz bases has been suggested and analyzed. A unifying construction of orthonormal bases functions for LTI identification is given in Ninness et al., “A Unifying Construction of Orthonormal Bases for System Identification,” IEEE Transactions on Automatic Control, 42 (4) (1997), 515-521 (which is hereby incorporated by reference). The basic model structure, shown in SISO form for clarity, is given by:
where y is the output, u is the input, λ is the number of poles, θ are unknown coefficients, and are rational orthonormal bases functions defined by the following inner product on H2(T) with T{z:|z|=1}:
In Equation (2), δ is referred to as the Kronecker delta.
In re-deriving the functions for use here, several modifications have been made. One is the correction of the sign of the second term of the quadratic expression in the denominator of the equation for the bases functions representing complex poles. Another is a modification to equation (16) of Ninness et al. As posed in Ninness et al., this expression has an infinite number of solutions, all lying on a well-defined ellipse. The modification used here is the addition of an equality constraint such that β−μ=0 (in the original nomenclature). With these modifications, the bases functions (BF) can be specified for the general case, where there are n real poles ξ0, ξ1, . . . ξn-1, p sets of complex poles {ξn,
For the p complex poles (where i=0→p−1), the m and m+1 bases functions can be written as:
In these expressions, m=n+2i, and the coefficients can be given by:
In these equations, the over-bar character indicates a complex conjugate. Upon closer inspection of Eqs. (3)-(5), it can be seen that the bases functions can be thought of as a sequence of discrete time filters. This perspective is expanded upon below.
To specify the poles given in the previous expressions, various methods can be used. For example, if there is a priori information available, the poles can be specified manually. In a typical application, this is not the case, so an automated method can be used. For instance, the automated method could use the global multi-stage (GMS) algorithm described in detail in MacArthur et al., “A Practical Global Multi-Stage Method for Fully Automated Closed-Loop Identification of Industrial Process,” Journal of Process Control, 17 (10) (2007), 770-786 (which is hereby incorporated by reference). This algorithm is well-tested and may be ideal for this application. The GMS algorithm returns a continuous-time reduced-order transfer function matrix, where each sub-model is ranked with respect to model quality. Poles and delays are recovered from each sub-model whose quality is higher than a specified threshold. Recovered poles are sorted with redundant elements removed. Finally, a heuristic is used to distribute the poles as evenly as possible from greatest to least such that the final number of poles is less than a user-specified maximum. The remaining poles are then used to construct the bases functions.
Ordinal Spline Bases Functions
The use of splines to represent static nonlinearities has become ubiquitous. Here, the splines are not used to represent the nonlinearities directly but rather to form flexible bases. Hence, they are referred to as ordinal splines. These functions can be derived from the well-known cubic spline, which can be represented as shown in Eq. (7) for m splines and m+1 discrete points referred to as “knots.” Also shown in this expression are the first and second derivatives.
Typically, inputs u and outputs θ at the knot points are taken from plant data. Hence, the splines become part of the identification.
To create the bases functions, the splines are normalized. Let there be m+1 ordinal spline functions (OSFs) corresponding to the m+1 knots. Further, let each of the functions be defined by a normalized version of the cubic splines with m segments and m+1 knots as shown in Eq. (7). Construct the OSF such that S″1(u1)=S″m+1(um+1)≡0 and the splines along with their first and second derivatives are continuous at each knot. Then, the kth OSF for the jth cubic spline segment can be given by:
where δ is the Kronecker delta described above. The indices in Eq. (8) are j=2→m and k=1→m+1.
The first and last terms on the left-hand side of Eq. (8) can be dropped since the first and last knots are due to boundary conditions given above. Hence, the left-hand side of Eq. (8) results in a tri-diagonal matrix (TDM) ε(m-1),(m-1), and this system of equations can be solved for the second derivatives of the splines at each knot. Once the second derivatives are known, the coefficients for the splines in Eq. (8) can be recovered from:
Notice that only a description of the knots is needed for the solution of Eqs. (8) and (9). The knots can be interpreted as points on a grid and can be defined prior to any identification. This formulation directly supports incorporation of a priori information in that more knots can be placed in highly nonlinear regions and less knots elsewhere. As a simple example, consider a grid with five equally spaced knots. For this case, Eq. (8) can be solved as shown in Eq. (9). The kth column in S″ corresponds to the second derivatives at knots two, three, and four for the kth OSF. The B matrix corresponds to the right-hand side of Eq. (8) for the five splines:
Due to the boundary constraints, the second derivatives at knots one and five are zero. Let the kth OSF be designated as k and have the spline structure given in Eq. (7). The solution of Eq. (10) yields the five OSFs 302 along with their first and second derivatives 304-306 as shown in
Hence, the OSFs at the knots are either zero or one, and the sum of all splines for any value between the knots is identically equal to one.
It is therefore possible to construct a new nonlinear static function in terms of these bases. Consider the SISO case where there are p knots and n measurements. The nonlinear relationship can be expressed in terms of linear coefficients as:
Given an n×1 input vector u, the matrix is immediately known from the knot selection. With an instrument vector θ specified, the calculation of the coefficients is a simple least-squares problem. Conversely, with the coefficients and inputs known, the prediction of θ is a simple multiplication.
Instruments
For the MIMO problem, there are nu inputs and ny outputs. With nonlinear identification, it is possible to have nonlinear combinations of two or more input variables that have a significant effect on the process output. Similarly, it is possible to have nonlinear combinations of two or more internal or intermediate variables that have a significant effect on the output. These variables are referred to as “instruments.” Unfortunately, if all possible combinations of instruments are accounted for, there are 2nu−1 and 2ny−1 possible combinations of input and output instruments. Techniques exist for automatically determining these structures for certain cases, such as in Ljung et al., “Regressor and Structure Selection in NARX Models Using a Structured ANOVA Approach,” Automatica, 41 (3) (2009), 383-395 (which is hereby incorporated by reference). These techniques have not yet found widespread commercial use but could be used in this offering. Two types of instruments are discussed below:
first-order instruments that consider all linear combinations of inputs/outputs; and
high-order instruments that use only the highest-order of nonlinear input/output interaction.
Let jk(uj) and pj be the kth ordinal spline and number of knots for the jth input, respectively. Further, let q=max(p). The first-order and high-order instruments can be constructed as shown below for input instruments (output instruments can have the same structure).
With first-order instruments, all linear combinations of ordinal splines are supported, and a modified form of Eq. (12) can be used to give the ith instrument as:
It may be convenient to rewrite this expression in general as:
Non-interacting instruments are obtained by setting off-diagonal terms in A to zero.
With high-order instruments, multiplicative combinations of ordinal splines are supported. As such, the ith instrument can have a fundamentally different structure than shown previously. Ordinal splines appear in a power series as given in Eq. (15):
As the iterative nomenclature used in Eq. (15) is non-standard, a simple example can illustrate the structure. Consider the case where there are three inputs with three knots, two knots, and one knot, respectively. The elements of the high-order instruments θi can be constructed as shown in Table 1.
1
1
21 31
11 22 31
12 21 31
12 22 31
13 21 31
13 22 31
From this construction, it is readily apparent that these instruments can be written as:
θi=hi{tilde over (S)}
h
i=[α1,1,1α1,2,1α2,1,1α2,2,1α3,1,1α3,2,1]i
{tilde over (S)}=[112131112231 . . . 132231]T (16)
or in general as:
With the instruments defined by Eqs. (14), (15), and (17) and the orthonormal bases function defined by Eqs. (1)-(6), the various block-oriented models can be described as follows.
Block-Oriented Models
Starting with
This expression can be filtered by the output nonlinear block 204 to give:
y=(ψ)=(ω+v) (19)
In Eq. (19), the functional is composed of ordinal splines constructed using Eqs. (8)-(11). Here, however, the outputs are used to define the knots. As was the case previously, both first-order and high-order instruments are accommodated.
Neglecting the output nonlinearity for the time being, inspection of
(18) represents the well-known Hammerstein structure. Model forms for this structure using both first-order and high-order instruments are given below.
Substituting Eq. (14) into Eq. (18), taking the transpose, and expanding and rearranging terms gives the following expression for ny outputs given nu inputs. Note that the bases functions appear as combined terms. Similarly, the matrices representing the unknown coefficients appear as combined terms. These sub-matrices are dimensioned nu×ny.
This expression can be written in standard linear regression form as:
With N measurements of the input and output vectors, the solution for the coefficients θ of the N-L model can be obtained by solving the following two-norm problem:
Here, ω and hence Ω are composed solely of the output measurements y. Also, A+ is the pseudo-inverse of Φ calculated from the following orthonormal decomposition:
In this expression, an upper triangular matrix R is rank k, where k is the pseudo-rank of Φ. The pseudo-rank can be determined internally and may be less than or equal to the true rank given by the singular value decomposition (SVD) of Φ since it accounts for the fact that Φ contains noisy single precision data. Given that the true process is contained in the model set spanned by Eq. (21) and the inputs are persistently exciting (k=λ×g×nu) and independent of the disturbance γ, under open-loop conditions the estimates given by Eq. (22) are consistent and unbiased. With conventional asymptotic assumptions satisfied, no lengthy discussion is necessary here since it is obvious from Eq. (22) that no output y occurs in the regressor matrix Φ. Hence, the estimates converge to their true values as N→∞.
Note that only bases functions appear in the regressor matrix. The starting point in forming the regressor matrix can be the creation of a spline matrix . Since each ordinal spline is simply an operator, the first nu columns in this matrix can be generated by passing the input data matrix (N, nu) through the first ordinal spline. Subsequent columns can be generated by passing the data matrix through all q ordinal splines such that the number of columns in is nu×q.
Final construction of the regressor matrix can proceed in a similar fashion. Since each orthonormal bases function is a rational transfer function, they can be used as a bank of filters applied to the spline matrix directly to generate the final regressor matrix in a very efficient fashion. The first nu×q columns in Φ can be generated by filtering the spline matrix by the first orthonormal bases function. The process can continue by using all λ bases functions until there are λ×nu×q columns. By construction, the spline matrix can be rank-deficient due to the summation expression in Eq. (11). This problem can be corrected by removing the nu redundant columns from . For all inputs where pi<q, the spline function is identically zero. Hence, corresponding columns in Φ and rows in θ can be removed before solving Eq. (22). Note that the nonlinear model may require no iteration for the estimation of the unknown coefficients as they are the result of a least-squares (LS) solution.
Creation of these models can follow in an identical fashion to that given previously. Substituting Eq. (16) into Eq. (17), taking the transpose, and expanding and rearranging terms gives the following expression for high-order instruments:
where β is defined in Eq. (16). Note that Eq. (24) has exactly the same form as Eq. (21), so its solution is given by Eq. (22) with the appropriate change in dimensions.
As was the case previously, this model form may require no iteration. Conventionally, the original A or H and B coefficient matrices are extracted once the θ matrix is available. In point of fact, this is neither desirable nor required in this formulation. Significant information can be lost even using the singular value method. Here, it is the convolution of the bases functions and the associated coefficients that facilitate the accommodation of nonlinear dynamics.
N-L-N Model
As shown in Eq. (19), the splines are based on ψ, which can be an unmeasurable unknown value. To proceed, the output nonlinearity can be required to be invertible. Hence, the method may be unable to accommodate I/O multiplicity, etc. With this assumption, the output expression of interest becomes:
ψ=−1(y) (25)
Let jk(yj) be the kth ordinal spline for the jth output and have the spline structure given in Eq. (7). For first-order instruments, Eq. (25) may be written as:
Note that this structure is identical to the form given in Eq. (14). High-order output instruments are identical to those shown previously and are not to be repeated here.
In general, it is possible to form L-N (Wiener) models in standard LS form and avoid iterations. Unfortunately, when used here, the resultant problem can be so ill-conditioned as to render the results useless. In addition, this formulation leads to biased estimates.
From
{circumflex over (ω)}=φθ;{circumflex over (ω)}=[{circumflex over (ω)}1{circumflex over (ω)}2 . . . {circumflex over (ω)}ny]
φ=[1T(y)2T(y) . . . qT(y)]
T(y)=[k(y1)k(y2) . . . yk(yny)]
θ=[C1 . . . Cq]T;φε1,q-ny;θεq-ny,ny (27)
Eq. (27) can be solved as a LS problem similar to Eq. (22). With Ck known, Eq. (26) can be used as a predictor to calculate a new value for {circumflex over (ψ)}. Next, Set ω={circumflex over (ψ)} and resolve Eq. (22) for θ. The procedure continues until the change in the error (ω−ψ) is reduced to less than or equal to a small specified threshold. At convergence, θ can be used one last time to generate {circumflex over (ω)}=Φθ. This value of ω is then used with the ordinal spline function in Eq. (19) to formulate the following regression for the unknown D matrices:
Eq. (28) can be solved as a LS problem similar to Eq. (22) for Dk. With {circumflex over (ω)} and Dk known, Eq. (28) can be used to predict the output as:
Note that construction of the OSF in Eq. (28) utilizes a knot structure identical to that specified at design time for the OSF in Eq. (26). If the iterative procedure is simply considered as a method to determine ω, at the last iteration the solution of Eq. (27) is not required, and the final problem can be solved using only Eq. (22) with ω substituted for Y and Eq. (29). As y appears in neither regressor matrix, the estimates of θ and Dk are unbiased.
Identification Technique
Plant excitation occurs at step 402. This could include, for example, providing various inputs to an industrial process and examining how various outputs of the process change. Details of signal design for persistent excitation of the models discussed here are beyond the scope of this document. However, a few comments are in order as the various structures impose unique requirements on plant tests. For first-order non-interacting instruments, Hammerstein and Wiener models may show identical steady-state behavior. However, the differences in their dynamic responses can be profound. For Hammerstein models of this class, the shape of the step response curve may be independent of the input amplitude. This is not the case for models with output nonlinearities (such as Wiener models) since the dynamic response is a function of the step magnitude itself. This can be significant. In the former case, a pseudo-random binary sequence (PRBS) of reasonable amplitude can be applied at appropriate levels. In the latter case, a pseudo-random multilevel sequence (PRMS) may be used. Operating plants are used to PRBS signals, so extensions to performing them at multiple levels may be natural. Convincing plant personnel to use PRMS signals may be an uphill battle. Use of high-order instruments may require some sort of PRMS as the nonlinear interactions can be amplitude-dependent.
Plant dynamics are identified at step 404. For example, based on prior plant knowledge, a tentative structure can be selected, and it can then be decided if linear or nonlinear dynamics are required. If only linear dynamics are required, a conventional open/closed loop step test can be performed at a nominal operating point. Otherwise, conventional tests can be performed at multiple operating points that span the desired operating range. Typically, a small number (such as only 3-5) of operating points may be needed if chosen properly. Note that conventional step tests may be all that is needed to determine the system Eigenvalues and hence create an orthonormal bases function. This step can be independent of the nonlinear identification and, once completed, does not need to be repeated.
Plant nonlinearities are captured at step 406, and a final model of the plant is obtained at step 408. As discussed in detail, ordinal splines are used in this formulation. The ordinal spline bases enable the method 400 to offer an extremely flexible structure that makes very effective use of data and greatly attenuates the problems that are associated with over-fitting. By placing points (knots) on a grid, a user specifies desired accuracy at desired locations. The more grid points in a region, the more accurate the calculations in that region (assuming the data is properly excited). The user can place knots wherever there are regions of significant nonlinearity. To ensure the requirement of persistent excitation, the process can be excited at a number of levels corresponding to the number of knots. An example of this is shown in
Thus, the identification procedure (method 400) can be thought of as defining the operating points necessary to capture significant gain characteristics of an industrial process. Gain surfaces can be refined in an incremental fashion as more data is added to the regression.
In some embodiments, model identification during step 408 can be accomplished as follows. Pertinent step test data is gathered, and data segments for pole extraction are graphically marked. Anomalous data can be graphically marked for exclusion from the model identification process, and regression and cross-validation ranges can be graphically specified. The block structure and instrument type for the model are selected, which can be based on plant experience. Knot distributions can be graphically specified based on process understanding. At that point, a model identification procedure can be initiated to automatically perform the following tasks:
In particular embodiments, step testing using closed and/or open loop data is performed, such as by using a PROFIT STEPPER from HONEYWELL INTERNATIONAL INC. The step testing can be done at a nominal operating point, and signal injection may be needed and can cover the spectrum of key process dynamics. Signal amplitude can be large enough so that the signal-to-noise ratio exceeds a specified value (such as two). Linear step testing can continue until key models have a specified quality (such as rank two or better). A model structure can be selected based on process characteristics, the initial knot distribution can be based on process nonlinearities, and signal excitations can be designed based on the knot distribution and used with historical data. The knot distributions and signal excitations can be refined to converge on an accurate model.
Also, in particular embodiments, data about a process system can be collected at any suitable rate, such as once per minute. The sampling rate could be selected so that the process reaches steady-state within a specified number of intervals (such as 200). If the process' response time exceeds a threshold (such as 200 minutes), the data can be super-sampled. No filtering or compression of the data may be needed. When models are created in continuous nonlinear state-space form, the sample rate used during process identification could have no bearing on the control execution interval of the controller(s) using the model. Instead, the control execution interval could be determined based on disturbance frequency and desired closed-loop bandwidth, and the default control execution interval could be one minute.
Several case studies are presented here to show some of the structure capabilities of the various techniques presented in this patent document. Problems using Hammerstein, Weiner, and block-oriented structures are illustrated. Two problems from the open literature are given, as are two additional problems (one designed specifically to show the accommodation of nonlinear dynamics, the other to show output nonlinearities). Finally, results on plant step test data are described.
Hammerstein Model, High-Order Instruments
This case is taken directly from Chan et al., “Identification of MIMO Hammerstein Systems Using Cardinal Spline Functions,” Journal of Process Control 16 (7) (2006) 659-670. It illustrates a gain inversion problem using a Hammerstein model with high-order instruments. Identical nonlinear functions, noise characteristics, and input signal excitation are used here. Static input nonlinearities for this case are given by:
To make the problem significantly more challenging, the LTI dynamic model used in Chan et al. has been modified to include complex poles, pure time delay, non-minimum phase characteristics, and non-zero gains of off-diagonal elements. The dynamic response of the old model from Chan et al. and the new model used here are shown in
Without a priori information of the new model structure, prior approaches fail to yield a correct solution for this problem. The data for this case study is illustrated in
Two step response curves are shown in
As such, each transfer function is passed from the GMS solution back to the nonlinear identification algorithm for parsing. In this case, the following seven poles are automatically extracted: ξ=[−0.269, −0.277, −0.336, −0.440, −1.17, −0.617+0.666i, −0.717−0.666i]. These continuous-time poles can be converted into the discrete domain and used with the time delay to create the orthonormal bases function using Eqs. (3)-(6).
At this point, the only user interaction is the specification of the data segments from which to extract the poles. To a large extent, determination of the poles can be removed from the main identification algorithm. In fact, once the poles have been estimated, an option can exist to bypass this calculation on subsequent evaluations. Success or failure of the nonlinear portion of the identification can depend on the proper specification of the spline knots. Indeed, this specification is a powerful aspect of the approach described here.
These knots can be defined in terms of points on a grid for each variable, depending on the choice of the static nonlinearity. Grids can be specified in terms of knot distributions as shown in
It is obvious from the gain curves 1102 and 1152 of
These characteristics are reflected directly in the knot distributions. The plot in
Nonlinear Dynamics
For this case, a very simple model is constructed to show that the formulation presented here can accommodate nonlinear dynamics. The basic model can be expressed as:
Constants and variables used in the model can be defined as follows:
α=τhi−τlo;β=ghi−glo;γ=uhi−ulo
u′=u−u
lo
;P
g=4;Pτ=4;τhi=50;τlo=5
g
hi=200;glo=1;uhi=12;ulo=1 (32)
A Hammerstein model is arbitrarily chosen to fit this data. The model is excited using a PRBS signal at five equally-spaced values of the input {1, 3.75, 6.5, 9.25, 12} using an amplitude of ±0.01. The effective gain and time constant as a function of the input for this model are shown in
Seven knots 1402 are selected for this case as shown in
In the manual mode, the user actually inputs a range of expected time constants, which are internally converted to the required poles. In general, the user is free to specify any number of time constants up to an internally-specified limit, and the time constants can be chosen to span the expected range of the process. As shown in Table 2, the user-specified time constants contain a considerable error.
True τ values in Table 2 are taken from the effective time constant expression defined in the model (τ(u)). Here, only five were chosen to match the five operating points. In spite of the significant errors in the user-specified time constants,
Results in terms of the effective gain are shown in
It is worth mentioning that the simple model presented here is not intended to represent a physical process but rather to show that nonlinear dynamics can be effectively modeled using the bases functions described above. That the variations in the effective gain and time constant depicted in
Wiener Model
As output nonlinearities are used here, the solution may involve iteration. Although the method is unbiased, it is useful to see the effect of noisy measurements and discontinuous data. The following SISO model is used for this case:
In the setup for this problem, eight knots are linearly distributed over the output range, which varies between 11 and 52. Since this is an output nonlinearity, a PRMS signal is used, which has a minimum and maximum value of 9 and 13, respectively. As can be seen from the problem statement, the disturbance to output power is 7%. This simple case only takes three iterations to converge. Also, the predictive performance is good as illustrated in
Another aspect depicted in
As described previously, a primitive successive substitution method can be used to determine ω. Alternate Newton formulations can also be constructed and used (although the numerical gradient calculation of the bases functions may not be justified). Iterations are well-behaved due to good initial conditions (ω=y) and the fact that all regression calculations are solved as simple least squares problems. While the iteration count is a function of the complexity of the output nonlinearity (high-order output instruments for multiple outputs), it is nevertheless well-behaved in the sense that the loss function decreases monotonically. The maximum number of observed iterations to date is less than forty.
N-L-N Model
An exact copy of the model described in Zhu, “Estimation of an N-L-N Hammerstein-Wiener Model,” Automatica 38 (9) (2002) 1607-1614 is used here. The input, dynamic, and output blocks are given by:
and the domain of interest is −0.75≦u≦2.75. Functional forms of the N-L-N blocks are illustrated in
Excitation for this process can be achieved by first using a PRBS signal of amplitude ±0.01. Perturbations can be performed at sufficient operating points spanning the input range to ensure sufficient information content in the data for the specified knot selection. An almost exact replication of the gain curve is obtained for this process as illustrated in
Cross-validation using small amplitude steps yields equally accurate predictions. One problem, however, is that the effect of the output nonlinearity may not be adequately captured using a PRBS signal, no matter how many levels are included. As discussed previously, the output nonlinearity results in a dynamic response that is a function of the input amplitude. The effect is to make the zeros of the LTI block appear as if they change as a function of the input. To demonstrate this result, an additional model using a PRMS excitation signal can be built. The two models are compared using a cross-validation set of data based on a PRMS signal. Results of this test are shown in
Three sets of curves are displayed in
Null Sub-Model
For this test case, the true dynamic sub-model structure is given by the following matrix expression.
Here it can be see that there are null models in the (1,2) and (2,3) positions. The nonlinear characteristics are given as:
Note that the last instrument (f3) is linear, so the final nonlinear model has a constant gain of two for the (1,3) element. The GMS results for this case are shown in
As shown in
Since the real accuracy of any model depends on its gains, it is also useful to investigate these properties.
Air Separation Unit—Plant Step Test Data
In this last case, plant step test data is used to build nonlinear models for an air separation unit. Units and tag names are to be displayed. As is typical during plant step testing, data is collected for many variables. Of these variables, only nine controlled variables (process outputs), ten manipulated variables (process inputs), and three measurable disturbance variables are considered as realistic candidates for building the model.
As is true in many cases, step testing is highly constrained to avoid plant trips. In this case, the testing proceeds in a manual fashion without the ability to perform on-line identification. After data analysis and preliminary model building, the variable set is paired down to six controlled variables, six manipulated variables, and two disturbance variables. Manipulated variables step data 2700 for building the model is presented in
A Hammerstein model with first-order instruments is selected due to data limitations. Since there is little a priori knowledge on nonlinear structure, linear knot distributions are chosen for all input variables. To avoid data sensitivity, a minimum number of knots (four) is used. Predicted and actual data 2800 for the nonlinear model is shown in
Performance metrics corresponding to five controlled variable predictions shown in
The CV rank is a heuristic metric that indicates the expected control performance quality of a given controlled variable. In this example, the rank metric ranges between one and five, with one being the highest quality and five being the lowest quality. Rank three may be the lowest value recommended for online control. R2 is the square of the conventional correlation coefficient between the actual and predicted controlled variables. Percent fit (PF) is defined as PF=(1−e)·100, where e is given as:
In the preceding expression,
The need for nonlinear models with this unit can be easily confirmed by using the same data to generate linear models. A comparison between linear and nonlinear predictions for a controlled variable CV1 is shown in
Care should be used in interpreting prediction results. With simulation studies, it is trivial to generate cross-validation data. Unfortunately, this is definitely not the case in the overwhelming majority of process plants. Under the best of conditions, step testing (whether manual or automatic) is usually an undesirable operation. To perform additional stepping merely for cross-validation purposes is seldom accommodated.
Whether cross-validation data is available or not, it may be extremely important to have additional information for model validation. To this end, a powerful tool is the sensitivity plot. Since the models under discussion here are nonlinear, it can be very revealing to display how the gain and processes vary as a function of the inputs. Indeed, in all the cases shown here, the gain surface or curves as a function of the inputs have been observed and investigated.
The use of this capability for the air separation unit has been invaluable. For example, the gain sensitivities for a few selected input/output pairs are given in
To summarize, a new technique for nonlinear process identification has been presented here. Use of Hammerstein, Wiener, and more general N-L-N block-oriented structures for identification has been detailed. The construction of two particular bases functions, one that uses an estimate of the process poles and the other that uses a predefined set of special cubic splines, have been described. Both bases allow for the direct inclusion of a priori information (if it exists) into system identification. It has also been shown that this formulation implicitly accommodates nonlinear dynamics. Several test cases have been presented showing the flexibility of the approach.
Although
pH Control System
The nonlinear process identification tools and techniques described above could be used to identify one or more models for controlling any suitable nonlinear system. One type of nonlinear system that can be modeled using these tools and techniques is a wastewater treatment system or other system requiring pH control. As noted above, pH is often a highly nonlinear characteristic of a mixture and is typically controlled using a logarithmic transformation and a proportional-integral-derivative (PID) controller.
In this particular embodiment, the tank 3102 receives three inlet streams q1-q3 and outputs an outlet stream q4. These streams represent the flow of material into and out of the tank 3102. In particular embodiments, the inlet stream q1 could represent a strong acid stream of feed solution, the inlet stream q2 could represent a weak acid stream of buffer solution, and the inlet stream q3 could represent a strong base stream of titrating solution. These inlet streams q1-q3 are controlled so that the outlet stream q4 has a desired pH level (such as a neutral pH level). The outlet stream q4 provides material 3104 from the tank 3102 to any suitable destination, such as another component in a wastewater treatment plant. The number of inlet streams and the number of outlet streams shown here are for illustration only.
The pH level of the mixture within the tank 3102 is measured by a pH sensor 3106, which provides the pH measurements to a pH controller 3108. The pH sensor 3106 includes any suitable structure for measuring pH, such as a glass electrode or other pH electrode.
The pH controller 3108 controls the flow of material in the inlet streams q1-q3 to thereby control the pH of the material 3104 in the tank 3102. For instance, the pH controller 3108 could control the operation of pumps or valves to control the flow of material into the tank 3102 in the inlet streams q1-q3. The pH controller 3108 controls the inlet streams so that the material 3104 in the tank 3102 achieves a desired pH level or a pH level within a desired range of pH levels. The pH controller 3108 includes any suitable structure for controlling pH in a mixture. For example, the controller 3108 could include one or more processing units 3110 and one or more memory units 3112 for storing instructions and data used, generated, or collected by the processing unit(s) 3110. The controller 3108 could also include at least one network interface 3114, such as an Ethernet interface or an electrical signal network interface (like a HART or FOUNDATION FIELDBUS interface), to facilitate communications with external components like the pH sensor 3106. As described below, the controller 3108 can implement a nonlinear model predictive control (NLMPC) or other control technology to control the pH within the tank 3102.
An operator station 3116 communicates with the pH controller 3108. The operator station 3116 represents a computing or communication device providing user access to the pH controller 3108 (either directly or indirectly through a server or other device). As particular examples, the operator station 3116 could allow users to review the operational history of the pH controller 3108, adjust the operation of the pH controller 3108, and receive and display warnings, alerts, or other messages or displays generated by the pH controller 3108. The operator station 3116 includes any suitable structure for supporting interaction with the pH controller 3108. For example, the operator station 3116 could include one or more processing units 3118 and one or more memory units 3120 for storing instructions and data used, generated, or collected by the processing unit(s) 3118. The operator station 3116 could also include at least one network interface 3122, such as an Ethernet or electrical signal network interface, to facilitate communications with external components like the pH controller 3108.
In one aspect of operation, when using an MPC or other control technique, the pH controller 3108 may include or have access to at least one model 3124, such as one stored in the controller's memory unit 3112. The model 3124 models the behavior of the pH in the tank 3102 and is used by the pH controller 3108 to predict how changes to the inlet streams q1-q3 affect the pH in the tank 3102. The controller 3108 can then make certain changes to the inlet streams q1-q3 to control the pH in the tank 3102.
In accordance with this disclosure, a technique is provided for tuning the pH controller 3108. The technique involves performing a nonlinear identification of the pH process to be controlled in order to create the model 3124 of the process. This is then followed by the use of nonlinear model predictive control or other control technique, which uses the identified model 3124 to control the pH process.
In particular embodiments, the nonlinear identification of the pH process is performed as described above with respect to
The tool 3126 could be implemented in any suitable manner. For instance, the tool 3126 could be implemented using only hardware or using a combination of hardware and software/firmware instructions. In particular embodiments, the tool 3126 could represent one or more computer programs executed by the processing unit(s) 3118 in an operator station or other device.
Although
For a specific pH process, the chemical reactions in a reactor are assumed as equilibrium reactions, and the following chemical reactions can occur in the system:
H2CO3HCO3−+H+
HCO3−CO32−+H+
H2OOH−+H+ (38)
The equilibrium constants for these reactions can be expressed as:
The chemical equilibria can be modeled using the concept of reaction invariant. For this system, two reaction invariants can be involved for each stream (i=1-4):
W
ai=[H+]i−[OH−]i−[HCO3−]i−2[CO32−]i
W
bi=[H2CO3]i+[HCO3−]i+[CO32−]i (40)
Relation between a hydrogen ion concentration and reaction invariants can be expressed as:
The pH value of the system can be obtained by taking the negative logarithm of the [H+] ion concentration:
pH=−log10([H+]) (42)
For this system, a dynamic process model for the pH neutralization process can be derived from the component material balance for the reaction invariants (Wa4 and Wb4) and the algebraic equation relating the pH and reaction invariants as follows:
The nominal operating conditions can be those shown in Table 4.
5.62 × 10−11
In this case, the user has elected to use a sigmoid distribution with an amplification of −0.75 and a center value of 5.5, and these values are used to distribute knots between values of 700 and 1340. The resulting knot distribution 3300 is shown in
Using the model, nonlinear model predictive control of the process is performed at step 4004. This could include, for example, the controller 3108 using the model 3124 to determine how to adjust inlet streams q1-q3. As a result, the pH of the process is maintained at or near its setpoint at step 4006. Because of the nonlinear process identification technique described above, the model used here enables more effective control of the pH in the process.
Although
In some embodiments, various functions described above are implemented or supported by a computer program that is formed from computer readable program code and that is embodied in a computer readable includes any type of computer code, including source code, object code, and executable code. The phrase “computer readable medium” includes any type of medium capable of being accessed by a computer, such as read only memory (ROM), random access memory (RAM), a hard disk drive, a compact disc (CD), a digital video disc (DVD), or any other type of memory.
It may be advantageous to set forth definitions of certain words and phrases used throughout this patent document. The term “couple” and its derivatives refer to any direct or indirect communication between two or more elements, whether or not those elements are in physical contact with one another. The terms “application” and “program” refer to one or more computer programs, software components, sets of instructions, procedures, functions, objects, classes, instances, related data, or a portion thereof adapted for implementation in a suitable computer code (including source code, object code, or executable code). The terms “transmit,” “receive,” and “communicate,” as well as derivatives thereof, encompass both direct and indirect communication. The terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation. The term “obtain” and its derivatives refer to any acquisition of data or other tangible or intangible item, whether acquired from an external source or internally (such as through internal generation of the item). The term “or” is inclusive, meaning and/or. The phrases “associated with” and “associated therewith,” as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like. The term “controller” means any device, system, or part thereof that controls at least one operation. A controller may be implemented in hardware, firmware, software, or some combination of at least two of the same. The functionality associated with any particular controller may be centralized or distributed, whether locally or remotely.
While this disclosure has described certain embodiments and generally associated methods, alterations and permutations of these embodiments and methods will be apparent to those skilled in the art. For example, while the above techniques have been described with respect to SISO systems, the techniques could be expanded for use with other types of systems (such as multiple input, multiple output or “MIMO” systems). Accordingly, the above description of example embodiments does not define or constrain this disclosure. Other changes, substitutions, and alterations are also possible without departing from the spirit and scope of this disclosure, as defined by the following claims.
This application claims priority under 35 U.S.C. §119(e) to U.S. Provisional Patent Application No. 61/497,758 filed on Jun. 16, 2011, which is hereby incorporate by reference.
Number | Date | Country | |
---|---|---|---|
61497758 | Jun 2011 | US |