Improved pattern recognition techniques for data-driven fault detection in process plants

Through improved training techniques, the system matrix is ​​generated, and the RMS threshold and maximum system matrix size are used to solve the problem of insufficient accuracy in the process factory of existing fault detection systems, and early identification of abnormal operations are achieved, reducing the risk of sequence stagnation and equipment damage.

CN115427767BActive Publication Date: 2025-08-19FISHER ROSEMOUNT SYST INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080099919.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-04-17
Filing Date
2020-04-20
Publication Date
2025-08-19
Estimated Expiration
2040-04-20

AI Technical Summary

Technical Problem

The existing fault detection system is difficult to accurately identify abnormal operating conditions in the process factory, resulting in sequence stagnation and equipment damage, and the training process is complex and unintuitive, resulting in inaccurate system matrix construction.

Method used

The system matrix is ​​generated using improved training techniques, using the root mean square (RMS) threshold and maximum system matrix size, and the system matrix is ​​expanded iteratively to reflect normal operation conditions, combined with the operator-specified RMS error threshold to improve the accuracy of the system matrix.

Benefits of technology

Improves the accuracy of fault detection, reduces operator confusion, and is able to identify potential problems before abnormal situations occur, reducing the risk of sequence stagnation and equipment damage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115427767B_ABST
    Figure CN115427767B_ABST
Patent Text Reader

Abstract

The real-time control system includes fault detection training technology to implement data-driven fault detection capabilities that provide operators with information that enables a higher level of situational awareness of the current and likely future operating conditions of the process plant. The fault detection training technology enables operators to identify when a process plant component is behaving abnormally so that they can potentially take action to mitigate the root cause of the problem in the current time step, thereby reducing the likelihood of or preventing a process control system stall or process plant component failure.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates generally to process plants such as power plants and industrial manufacturing plants, and more particularly to a fault detection training system that performs highly accurate, robust fault parameter optimization to detect faults in the operation of a process plant. Background Art

[0002] Distributed process control systems, such as those typically used in power generation, chemical manufacturing, petroleum processing, or other process plants, typically include one or more process controllers communicatively coupled to one or more field devices via an analog, digital, or combined analog / digital bus. Field devices (which may be, for example, valves, valve positioners, switches, transmitters (e.g., temperature, pressure, level, and flow rate sensors), burners, etc.) are located in the process environment and perform process functions, such as opening or closing valves, measuring process parameters, etc., in response to control signals formed and transmitted by the process controllers. Intelligent field devices (e.g., field devices that conform to any known Fieldbus protocol) may also perform control calculations, alarm functions, and other functions typically implemented in or by process controllers. A process controller (which is also typically located in a plant environment) receives signals indicating process measurements made by field devices and / or other information related to the field devices and executes a control application that runs, for example, various control modules that make process control decisions, generate process control signals based on the received information, and coordinate with control modules or blocks executing in field devices, such as HART and Fieldbus field devices. The control modules within the controller send process control signals to the field devices over communication lines, thereby controlling the operation of the process.

[0003] Information from field devices and controllers is typically made available via a data highway to one or more other computer devices, such as operator workstations, personal computers, data historians, report generators, centralized databases, etc., which are typically located in a control room or other location away from the more hostile plant environment. These computer devices may also run applications that, for example, enable an operator to perform functions related to the process, such as changing settings for process control routines, modifying the operation of control modules within a controller or within a field device, viewing the current status of the process, viewing alarms generated by field devices and controllers, maintaining and updating configuration databases, etc.

[0004] As an example, the The control system includes multiple applications stored and executed by different devices located at various locations in the process plant. Configuration applications (which reside on one or more operator workstations) allow users to create or change process control modules and download these process control modules to dedicated distributed controllers via a data highway. Typically, these control modules are composed of interconnected function blocks, which are objects in object-oriented programming protocols and perform functions in the control scheme based on their inputs and provide outputs to other function blocks in the control scheme. Configuration applications also allow designers to create or change operator interfaces, which are used by viewing applications to display data to operators and allow operators to change settings such as set points in process control routines. Each dedicated controller and, in some cases, field device stores and executes a controller application, which runs the control modules assigned and downloaded to it to implement the actual process control functions. View applications (which can run on one or more operator workstations) receive data from the controller application via the data highway and display the data to the process control system designer, operator, or user using the user interface. They can provide any of a variety of different views, such as an operator view, an engineer view, a technician view, etc. The data historian application is typically stored in and executed by a data historian device, which collects and stores some or all of the data provided across the data highway. The configuration database application may be executed on another computer attached to the data highway to store the current process control routine configuration and data associated therewith. Alternatively, the configuration database may reside on the same workstation as the configuration application.

[0005] Generally speaking, process control in industrial plants, such as power plants, often involves implementing a set of time-sequential control actions on various equipment within the plant. This is particularly true during the startup and shutdown of plant equipment. The initiation of each successive control action is based on the completion of the previous control action and a number of permissive conditions to be met. Plant control is therefore performed in a step-by-step manner, and the control system software that performs this time-sequential operation is programmed using a software construct known as sequence logic. Specifically, sequence logic is a logical collection of operations, permissions, and actions, implemented as a computer program that executes within the control system. Typically, each sequence logic step includes a series of related steps that are executed in a continuous manner. Each step typically includes or represents a number of permissions that need to be met and one or more actions to be completed before the step ends. Permissions are typically a function of one or more external feedback inputs, parameters, and states that are logically evaluated by the control program. For example, the evaluation or state of each permission may be the result of a logical operation that evaluates to a true or false condition. These permissions can include, for example, the state of field equipment (e.g., run / stop / on / off), the completion of a previous step or action, or the value of a process parameter being above or below a specified threshold. Furthermore, branching from each successive step in the logic sequence is based on an evaluation of each permission signal applied to that step.

[0006] Therefore, the application designer configures the sequence logic to require the permissions to be satisfied, meaning that these permissions must evaluate to the expected Boolean state of true or false before proceeding to the next step. Thus, at each step, one or more permissions are evaluated, and when each of these permissions is satisfied, the action for that step is taken. Once the action is completed, the step is indicated as completed, and the process repeats for the next step in the sequence logic.

[0007] During normal plant operation, the control system typically operates in automatic mode, and the sequence program or sequence logic evaluates feedback signals when determining when to move to the next step in the sequence logic without direct human interaction. The sequence program then performs the associated actions at each step.

[0008] However, sometimes a plant may encounter an abnormal situation, such as one of the expected feedback signals associated with a permit not occurring in the expected manner. This situation may cause the sequence program to stop or stall. However, once a sequence program is stalled, human interaction is usually required to resolve the problem and allow the sequence program to continue. Importantly, a sequence stall may result in equipment stalling, which can lead to manufacturing delays, loss of output or revenue, higher operating costs, and possibly even equipment damage. However, in traditional control systems, operators may not be aware of the impending abnormal situation and the resulting sequence stall until the situation actually occurs and the sequence stops.

[0009] A major contributing factor to operator unawareness and the resulting sequence of stall events is the sheer complexity of the systems involved in process control. Large and dynamic systems like power plants and refineries include thousands of sensors and actuators to determine and control the physical parameters of the system. Accordingly, verifying that important process parameters in such systems are within their proper operating ranges becomes a daunting task. Further complicating matters, process plants may operate in a variety of different states to accommodate varying production requirements. For example, a power plant may generate varying levels of electricity depending on the current demand on the associated power grid. Consequently, the sensors, actuators, and other components of a process control system may have different acceptable ranges for important operating parameters corresponding to each potential operating state of the plant. Conventional systems designed to monitor and verify these important parameters check the current values of the parameters against known upper and lower limits for each operating mode in each state of the plant. However, this monitoring technique is inadequate because it ignores the correlations that exist between and within the various parameters of the system.

[0010] However, these correlations can be significant because changes to any process parameter in a process can affect the values of other process parameters in the process. For example, assume that the process variables of a process include only temperature and pressure. Temperature and pressure may be correlated, such that a change in pressure causes a change in temperature. However, the resulting change in temperature is not a random event. Pressure and temperature are correlated in a known, predictable manner. Therefore, for example, by changing pressure by a known amount, a desired temperature change can be achieved. Unfortunately, power plants and other environments in which process control systems are implemented are typically not small, closed systems in which each pair of process variables affects only one another. Instead, typical process control system environments include a large number of interacting process variables, meaning that a change in one process variable can affect multiple other process variables. Therefore, creating a one-to-one relationship set for process variables, as in the fictitious system exemplified above (e.g., pressure-temperature), may not adequately describe the correlations between and among process variables. Nevertheless, even in such large systems, the changes in multiple process variables resulting from a change in any one process variable are still quantifiable and predictable.

[0011] For example, a data-driven approach can be used to derive these correlations in large systems. This approach typically involves collecting a large amount of data for each process variable. After collection, the data is then analyzed to determine estimated correlations between each group of process variables. By analyzing a data set that includes measured values for each variable before and after changes to other process variables, the data-driven approach can provide an approximate value for any process variable after a change to any other process variable. Generally, such data-driven approaches provide more accurate estimates when more data is included, because data-driven approaches rely on a robust data set to make accurate estimates. In any case, these estimated correlations can be implemented in an online environment of a process plant to verify that important process parameters are within their appropriate operating ranges.

[0012] State estimation is a known technique for accurately incorporating such dependencies into the online environment of a process plant. Simply put, state estimation techniques verify that important process parameters are within appropriate operating ranges by, in part, taking into account the dependencies between and among them. Multivariable state estimation techniques (MSET) are a common approach to implementing state estimation, which involves establishing and monitoring a predetermined list of significant process parameters, each of which has an associated upper and lower operating limit for each operating state of the process plant. Typically, if any parameter violates these predetermined limits, the process control system issues a parameter-specific alarm. The advantage of this technique stems from the fact that, as described above, process parameters are coupled or at least interdependent. In other words, a change in one process parameter may affect one, some, or every other process parameter. Therefore, a change in one significant process parameter without a corresponding change in other process parameters may be a precursor to component failure, process drift, or more directly, sequence stagnation.

[0013] More specifically, the MSET determines whether a process is operating "normally" by estimating a set of significant process parameter values for the process based on online data and determining whether the online data deviates substantially from the estimated results. Generally speaking, a process is considered to be operating "normally" if each process variable is within a specified threshold range, and being outside the specified threshold range may indicate that the process is approaching a fault condition (e.g., component failure, sequence stagnation, etc.). To illustrate, a fault detection system incorporated into a process control system may include the MSET in memory to facilitate monitoring of significant process parameters. The fault detection system may first receive an online data set directly from a sensor that actively monitors the process parameters of the process or from a data historian or other memory resource. The online data includes a numerical value representing the measured level of each process variable. For example, the value representing the measured level of pressure in the online data may indicate 5 pounds per square inch (psi). Similarly, values representing temperature, viscosity, flow rate, and / or any other significant process variable may include online data.

[0014] After receiving the online data, the fault detection system uses the online data in a series of mathematical operations that define the MSET. These operations produce an estimated data set, and the fault detection system compares the online data against the estimated data set. Generally, the estimated data reflects an estimated value of each significant process parameter included in the online data based on the estimated relationships between and among the significant process parameters, as described above. More specifically, the estimated data represents the value of each process variable based on the relationship of each corresponding process variable to each other process variable included in the data set. If the fault detection system determines that the online data does not deviate substantially from the estimated data (for example, the corresponding process parameter does not exceed a threshold variance), the fault detection system determines that the online data represents a "normal" operating condition of the process. However, if the fault detection system determines that the online data deviates substantially from the estimated data, the fault detection system determines that the online data represents an "abnormal" operating condition of the process.

[0015] To illustrate, assume a system includes three process variables: temperature, pressure, and flow rate. In this example, assume that the received online data set indicates a temperature of 100°F, a pressure of 200 psi, and a flow rate of 1 cubic meter per second. Using MSET, the resulting estimated data set may indicate an estimated temperature of 103°F, an estimated pressure of 198 psi, and an estimated flow rate of 1.1 cubic meters per second. In this case, the temperature is estimated to be higher based on (i) the correlation determined between temperature and pressure, (ii) the correlation determined between temperature and flow rate, and (iii) the online data values for temperature, pressure, and flow rate. Similar analysis applies to explain the lower estimated pressure and higher estimated flow rate. If any or all of the estimated values fall outside a predetermined range, the fault detection system generates an alert prompting an operator, technician, etc. to take corrective action.

[0016] Generally speaking, the mathematical operations that define MSET involve online data and a system matrix. As previously mentioned, online data can be received directly from sensors actively monitoring process parameters, or the data can be acquired from a data historian. The system matrix is a collection of vectors, where each vector consists of a collection of variables that collectively represent the "normal" operating conditions of the process. Similar to the online data, these variables are scalar values (e.g., numbers) corresponding to process variable measurements. The primary purpose of the system matrix is to reliably produce an accurate estimated data set when combined with online data according to the mathematical operations of MSET. If the system matrix is constructed correctly, the estimated data accurately represents the expected value of each process variable in any online data set under normal operating conditions. Therefore, when the system matrix is constructed correctly, a fault detection system using MSET is better able to accurately predict abnormal operating conditions of the process. In any case, since each vector in the system matrix represents the "normal" operating conditions of the process, the process variable values comprising each vector can be relied upon to accurately represent the correlations existing between and within each process vector. Therefore, when the system matrix includes more vectors representing the "normal" operating conditions of the process, the system matrix better summarizes the correlations between and among the significant process parameters of the process. In this way, the accuracy of the estimated data set generated by using the system matrix in MSET is related to the number of vectors that make up the system matrix (e.g., the "size" of the system matrix).

[0017] Accordingly, selecting or generating a system matrix is a critical step in ensuring the success of any fault detection system that implements MSET. Fault detection systems can include a training routine to generate the system matrix as a first step before implementing MSET. Existing training techniques for generating the system matrix prompt engineers for initial parameter inputs to define the training process. However, these initial parameter inputs are often non-intuitive and arbitrary, leading to operator confusion, poorly constructed system matrices, and generally inaccurate MSETs, which can allow abnormal process operation by failing to identify significant process parameter deviations.

[0018] While many fault detection systems have been proposed and implemented in process plants, only the most sophisticated ones are typically capable of performing high-fidelity validation of process operations due to the constantly changing conditions within a process plant, including equipment degradation over time and the presence of unaccounted-for disturbance variables within the plant. Furthermore, in many known process control systems, training a fault detection system to monitor a process plant or portion of a process plant can be difficult because training activities are performed separately from the display, and control activities are performed within the process plant's online environment. As previously mentioned, training a fault detection system is further complicated because existing training methods incorporate arbitrary and unintuitive initial parameter inputs that may be irrelevant to process operation. Consequently, most conventional fault detection systems using MSET remain poorly aligned with the actual operation of the process within the process plant. Summary of the Invention

[0019] An improved training technique for a fault detection system using an MSET generates a system matrix using operator-specific (or engineer-specific) root mean square (RMS) thresholds corresponding to each process variable of a process within a process plant and a maximum system matrix size. The improved training technique iteratively expands the system matrix by including online process data representing "normal" process operating conditions in the system matrix until the RMS error value for each process variable meets the corresponding RMS error threshold, or until the maximum system matrix size is reached. In this manner, the improved training technique can adequately define the boundaries of "normal" process operating conditions within the system matrix by including enough online process data to meet the RMS error threshold for each process variable.

[0020] This improved training technique allows operators to recognize potential abnormal situations within process operations before they actually occur. Operators can then potentially take steps to mitigate the root cause of the problem, thereby reducing the likelihood of or preventing a control sequence stall or equipment damage.

[0021] More specifically, the improved training technique generates a system matrix using an RMS error threshold, a maximum system matrix size, and a training data set indicating normal operating conditions for the process. The training data set indicating normal operating conditions for the process includes a plurality of vectors, each of which includes one or more data values. In practice, the data values correspond to measured values of process variables, and each vector represents the measured values of all process variables monitored in the process at a given time.

[0022] A fault monitoring system using MSET can analyze the RMS error value of each process variable during online operation of the process to detect potential abnormal operating conditions. Each process variable can have a unique RMS error threshold based on the process operation. For example, a process may have a dominant variable, which is generally defined as the process variable with the largest percentage change over the full range of normal process operating conditions. Typically, the dominant variable should have the largest RMS error threshold of all process variables because the dominant variable experiences the largest fluctuations of all process variables.

[0023] The improved training technique allows the operator to specify an RMS error threshold for each process variable. For example, the operator can specify that the leading variable has the maximum RMS error threshold of all process variables. The improved training technique generates a system matrix based on the RMS error thresholds, which reflects the expected or acceptable RMS error threshold values for each process variable during online operation of the process. This, in turn, increases the accuracy of the MSET and reduces operator confusion associated with warnings generated by the fault monitoring system. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] Figure 1 is a block diagram of a distributed process control network located within a process plant including operator workstations implementing an improved system matrix training technique for a fault detection system using MSET to detect the presence of a fault in the operation of the process plant.

[0025] Figure 2 is a block diagram of a process detection system and a training system using MSET, the training system implementing an improved system matrix training technique to detect the presence of faults in the operation of a process plant.

[0026] Figure 3A is a flow chart of an improved system matrix training technique for generating a system matrix for a fault detection system to detect the presence of faults in the operation of a process plant.

[0027] Figure 3B is a flow chart of an improved system matrix training technique for generating a system matrix for a fault detection system to detect the presence of faults in the operation of a process plant.

[0028] Figure 4A is a flow chart of an improved system matrix training technique for generating a set of system matrices for a fault detection system to detect the presence of faults in the operation of a process plant.

[0029] Figure 4Bis a flow chart of an improved system matrix training technique that generates an aggregated system matrix for use in a fault detection system to detect the presence of faults in the operation of a process plant. DETAILED DESCRIPTION

[0030] Figure 1 A process plant 10 is shown having an example control network, such as that associated with a power generation plant, in which the improved training techniques may be implemented. Figure 1 The process plant includes a distributed process control system having one or more controllers 12, each of which is connected to one or more field devices 14 and 16 via a bus 19 and an input / output (I / O) device or card 18, which may be, for example, a fieldbus interface, a Profibus interface, a HART interface, a standard 4-20ma interface, or the like. The bus 19 may be any type of communication medium, such as a serial bus, a wireless bus or connection, or the I / O card 18 may be physically located at the process controller 12 or may be located remotely. The controller 12 is also coupled to one or more host computers or operator workstations 20 and 22 via a data highway 24, which may be, for example, an Ethernet link. The databases 28A and 28B may be connected to the highway 24 and operate as data historians, wherein, in the case of the data historian 28A, the data historian 28A collects and stores historical parameters, status, and other data associated with the controllers 12 and field devices 14 and 16 within the plant 10, and, in the case of the configuration database 28B, the configuration database 28B may store configuration and other control data for the plant 10. For example, the database 28B may operate as a configuration database that stores the current configuration of the process control system in the plant 10 that is downloaded to and stored within the controllers 12 and field devices 14 and 16. While the controllers 12, I / O cards 18, and field devices 14 and 16 are typically located in and throughout a sometimes harsh plant environment, the operator workstations 20 and 22 and the databases 28A and 28B are typically located within a control room or other less harsh environment that is easily accessible to engineers, operators, or maintenance personnel.

[0031] As is well known, each controller 12 may be, for example, a controller sold by Emerson Process Management Power Water Solutions. Controllers, each controller 12 stores and runs a controller application that implements a control strategy using any number of different, independently executed control modules or blocks 29. Each control module 29 may be composed of what are commonly referred to as function blocks, where each function block is a portion or subroutine of an overall control routine and operates in conjunction with other function blocks (via communications called links) to implement a process control loop in the process plant 10. As is well known, a function block can be, but need not be, an object in an object-oriented programming protocol that typically performs one of the following functions to perform some physical function within the process plant 10: an input function, such as an input function associated with a transmitter, sensor, or other process parameter measurement device; a control function, such as a control function associated with executing a control routine such as proportional integral derivative (PID), fuzzy logic, or the like; or an output function that controls the operation of some device, such as a valve. Of course, there are hybrid or other types of complex function blocks, such as model predictive controllers (MPCs), optimizers, and the like. Although fieldbus protocols and The system protocol uses control modules and function blocks that are typically designed and implemented in an object-oriented programming protocol, but the control modules can be designed using any desired control programming scheme, including, for example, sequential function blocks, ladder logic, etc., and are not limited to design and implementation using function blocks or any other specific programming technique.

[0032] exist Figure 1 In the illustrated plant 10, field devices 14 and 16 are connected to the controller 12 and may be standard 4-20 ma devices or may be smart field devices such as HART, Profibus, or other similar devices that include a processor and memory. Fieldbus field devices, or any other desired type of field device. Some of these devices, such as fieldbus field devices (in Figure 1 16 in the figure), can store and execute modules or submodules associated with the control strategy implemented in the controller 12, such as function blocks. Function blocks 30 are Figure 1 1 and 2. The field devices 14 and 16 are shown as being arranged in two different fieldbus field devices 16, which can be executed in conjunction with the control module 29 in the controller 12 to implement one or more process control loops, as is well known. Of course, the field devices 14 and 16 can be any type of device, such as sensors, valves, transmitters, and positioners, and the I / O device 18 can be any type of I / O device that conforms to any desired communication or controller protocol, such as HART, Fieldbus, Profibus, etc.

[0033] In addition, the sequence logic 32 can be stored in the controller 12 or in one or more of the workstations 20, 22, or other computer devices to monitor or control various control programs to perform sequence control activities. As noted above, the sequence logic module 32 implements a time-sequential set of control actions on various equipment within the plant 10. The initiation of each successive control action is based on the completion of the previous control action monitored by the sequence logic 32 and the conditions of a certain number of permissions to be met. Therefore, the control of the plant 10 is carried out in a step-by-step manner based on the operation of the sequence logic 32. Generally, each sequence logic 32 includes a series of related steps that are executed in a continuous manner. Each step generally includes or represents a certain number of permissions that need to be met and one or more actions to be completed before the step ends. Permissions are generally functions of one or more external feedback inputs, parameters, and states that are logically evaluated by the control program. For example, the evaluation or state of each permission is the result of a logical operation that evaluates to a true or false condition. These permissions can be, for example, the state of field equipment (e.g., run / stop / on / off), the completion of a previous step or action, or the value of a process parameter being above or below a specified threshold. Furthermore, transitioning from each successive step in the logic sequence is based on an evaluation of each permissive signal applied to that step.

[0034] Furthermore, in a known manner, one or more workstations 20 and 22 may include user interface applications to enable users, such as operators, configuration engineers, maintenance personnel, and the like, to interface with the process control network in the plant 10. Specifically, the workstation 22 is shown to include one or more user interface applications 35 that can be executed on a processor in the workstation 22 to communicate with a database 28, a control module 29, or other routines in the controller 12 or I / O device 18, and with the field devices 14 and 16, as well as modules 30 and 32 in these field devices, controllers, and the like, to obtain information from the plant 10, such as information related to the ongoing status of the process control system. The user interface applications 35 can process and / or display the collected information on a display device 37 associated with one or more of the workstations 20 and 22. The collected, processed, and / or displayed information can include, for example, process status information, alarms and warnings generated in the plant 10, and maintenance data. Likewise, one or more applications 39 may be stored and executed in the workstations 22 and 20 to perform configuration activities, such as creating or configuring modules 29, 30, and 32 to be executed in the plant 10, and to perform control operator activities, such as changing set points or other control variables in the plant 10. Of course, the number and types of routines 35 and 39 are not limited to the description provided herein, and other numbers and types of process control-related routines may be stored and implemented in the workstations 20 and 22, if desired.

[0035] Figure 1 The workstation 20 is also shown as including a fault detection application 40, which may include a user interface application and data structures for performing fault detection with respect to the operation of the plant 10. Specifically, the fault detection application 40 monitors the process plant control network implemented by the control blocks 29, 30, and 32, as well as other control routines executed in the controller 12 and possibly in the field devices 14, 16. The fault detection application 40 may be accessed by any authorized user (e.g., a configuration engineer, an operator, or some other type of user) to perform training of the fault detection application 40, and the fault detection application 40 enables the user to perform various training and fault detection activities with respect to the process plant 10 while the control system of the process plant 10 remains operational and online to control the plant 10.

[0036] like Figure 1 As shown, the fault detection application 40 can be stored in the memory 42 of the workstation 20, and each component of the fault detection application 40 is adapted to be executed on the processor 46 associated with the workstation 20. Although the entire fault detection application 40 is shown as being stored in the workstation 20, certain components of the fault detection application 40 can be stored and executed in other workstations or computer devices within the plant 10 or associated with the plant 10. In addition, the fault detection application 40 can provide display output to the display screen 37 associated with the workstation 20 or any other desired display screen or display device, including a handheld device, a laptop computer, other workstations, and a printer. Similarly, the fault detection application 40 can be decomposed and executed on two or more computers or devices that can be configured to operate in conjunction with each other. For example, the application 40 can be executed in the controller 12 or the field devices 14 and 16.

[0037] Generally speaking, the fault detection application 40 provides or implements fault detection related to the operation of the process plant 10, and more specifically, fault detection related to the process plant control system implemented by the control routines 29, 30, and 32 within the controller 12 and the field devices 14 and 16. In particular, the fault detection application 40 can determine potential abnormal operating conditions of the process plant 10 by applying MSET to online process variable data received from the controller 12 and the field devices 14 and 16 to calculate a set of estimated values for each process variable represented in the online process variable data. The fault detection application 40 calculates an RMS error value for each process variable using the set of estimated values and the online process variable data, and the application 40 compares the RMS error value for each process variable to a corresponding RMS error threshold for each process variable. If the fault detection application 40 determines that the RMS error value for the corresponding process variable exceeds the corresponding RMS error threshold for the corresponding process variable, the application 40 determines that a potential abnormal operating condition exists in the operation of the plant 10. Accordingly, the fault detection application 40 generates and transmits a warning signal to the display screen 37 or any other display screen or display device.

[0038] For example, the sequence logic 32 may instruct the controller 12 to measure all or certain process variables of the plant 10 and transmit the measurements to the fault detection application 40. The output of the fault detection application 40 may be applied to the permissions of the sequence logic 32. For example, if the application 40 determines that a potential abnormal operating condition exists in the operation of the plant 10, the permissions may not be satisfied, the process operation in the plant 10 may not proceed to the subsequent steps of the sequence logic 32, and the fault detection application 40 may then generate and transmit a warning signal to the display screen 37 to prevent a potential sequence stall before a stall signal is noticed.

[0039] However, before the fault detection application 40 can apply MSET to the online process variable data, the application 40 must generate a system matrix by applying the training technique to the training data received from the controller 12 and the field devices 14 and 16 or the historian database (e.g., historian database 28A). Although the controlled plant 10 is described herein as a power plant controlled using distributed control techniques, the fault detection training techniques described herein can be used with other types of plants and control systems, including industrial manufacturing plants, water and wastewater treatment plants, and control systems that are implemented centrally or within a single computer and, therefore, are not distributed throughout the plant.

[0040] Figure 2 An example process control system 50, training system 52, and fault detection system 54 are generally shown for use in, for example, Figure 1 The process control system 50 may also include Figure 1The control modules 29, 30 and 32, and the Figure 1 The training system 52 and the fault detection system 54 may each be incorporated into the operator workstation 20 or 22, and more specifically, into the memory 42. The training system 52 and the fault detection system 54 may each be additionally incorporated as part of the fault detection application 40.

[0041] Generally speaking, the process control system 50 monitors physical parameters (e.g., temperature, pressure, etc.) of processes operating in a plant to determine when the physical parameters may need to be changed. More specifically, the process control system 50 may measure the outputs from field devices that control the physical parameters of the processes to generate control signals that adjust the operation of the field devices to change the physical parameters as needed. The process control system 50 may generate these control signals in response to, for example, receiving a new setpoint for the process or detecting the presence of a fault condition in the operation of the process.

[0042] The fault detection system 54 can detect the presence of a fault condition in the operation of the process by using the MSET, which requires a system matrix to perform the calculations that define the MSET. Generally, to generate the system matrix, the process control system 50 can record and / or receive (e.g., from a data historian) a data set that includes online data for the process, an error threshold corresponding to each process variable, and a maximum system matrix size. The process control system 50 can transmit the data set to the training system 52, which generates the system matrix by applying a system matrix training sequence to the data set. The training system 52 can then transmit the system matrix to the fault detection system 54 so that subsequent online data can be compared with estimated data generated using the system matrix in the MSET. If the fault detection system 54 determines that the difference between the subsequent online data and the estimated data exceeds the error threshold, the fault detection system 54 can determine the presence of a fault in the operation of the process and generate a warning signal to notify the operator.

[0043] The process control system 50 can record online data about the process and receive error thresholds and maximum system matrix sizes for each process variable. The process control system 50 can notify an operator of changes to one or more field devices and can receive input from the operator regarding adjustments to one or more field devices, such as new set points for the plant or control signals for specific field devices.

[0044] In particular, the process control system 50 includes a process controller 56 that is communicatively and physically coupled to a process 58 and a user interface 60. The process controller 56 may include Figure 1The process controller 56 includes a controller 12 that generates one or more control signals to be transmitted to various control devices in the plant 10, as well as control signals implemented or generated by the sequence logic 32 for controlling control modules in the process, which are collectively used to control the plant 10. Of course, the process controller 56 may include any desired type of controller that may implement any desired type of control routine or technique, such as PID, fuzzy logic, neural networks, and model predictive control routines, among others.

[0045] Likewise, process 58 includes units, machines, equipment, and associated hardware configured to implement the controlled process. For example, in a power plant, process 58 may include generators, fuel delivery systems, heat exchangers, condensers, steam generators, valves, storage tanks, etc., as well as sensors and transmitters configured to measure various process parameters or variables throughout the plant.

[0046] The user interface 60 may allow an operator to view and / or interact with data associated with the process controller 56 and the process 58. That is, the user interface 60 may be a workstation (e.g., the workstation 20) and may have a display screen that enables the operator to view control signals generated by the process controller 56, online data from the process 58, and / or other suitable data. The operator may also input commands through the user interface 60, such as control signals for controlling the operation of the process 58, error thresholds corresponding to each process variable, and a maximum system matrix size.

[0047] More specifically, the process controller 56 may receive online data Y from the process 58 and generate one or more control signals U that adjust the operation of one or more field devices (e.g., field devices 14, 16) based on the online data Y. These control signals are Figure 2 The vector U in FIG is shown to indicate that the process controller 56 can provide a control signal vector to the process 58 to control the operation of the plant 10. Similarly, as Figure 2 As shown in FIG, a vector of process variables Y is measured in a process 58 (e.g., by sensors, etc.) and communicated as feedback signals to a process controller 56 for use in generating a control signal U. The process controller 56 may also receive additional inputs such as set point values SP and state variables for use in generating the control signal U, and these inputs may be communicated by an operator at a user interface 60.

[0048] For example, the process controller 56 may receive a setpoint from an operator indicating that the plant 10 is changing from a first operating state to a second operating state requiring a higher temperature in certain portions of the plant 10. The process controller 56 may also receive an online data set Y indicating current physical parameters, such as current state variables, indicating that a higher temperature is required in at least certain portions of the plant. The process controller 56 may then analyze the online data set Y to generate one or more control signals U that adjust the operation of one or more field devices (e.g., opening / closing valves, activating / deactivating fans, etc.) to produce a higher temperature in certain portions of the plant 10. After the field devices are adjusted, the process 58 (e.g., via the field devices) may transmit a subsequent online data set Y including subsequent state variables to the process controller 56 to confirm that a higher temperature is present in certain portions of the plant 10.

[0049] In any case, once the process controller 56 receives the online data set Y, the process controller 56 may store the online data set Y in a memory (e.g., the memory 42). For example, an operator may use the user interface 60 to input an instruction that causes the process controller 56 to store the online data set Y. The operator may also input an instruction to start a system matrix training sequence to generate a system matrix. Subsequently, the process control system 50 may transmit all or a portion of the stored online data to the training system 52 for use as a training data set (e.g., training data set Z).

[0050] Generally, the training dataset Z represents an aggregation of online data Y as measured in the process 58 (including data recorded in a historian database for offline purposes) and represents the normal operating conditions of the process 58. In practice, the online data Y as measured in the process 58 represents a continuously or at least frequently updated data stream representing the current operating state of the process 58. The process controller 56 aggregates the online data Y by executing a routine to determine and select normal process variable measurements, or simply by receiving a command to aggregate the online data Y. In addition, the training dataset Z may include dynamic information to account for changes in the operating state of the process 58 since the training dataset Z was obtained. This dynamic information may include: first, second, or any higher-order derivatives of the process variables; the mean, median, mode, standard deviation, maximum, minimum, or any other statistical representation of the historical values of the process variables; the frequency content of the process variable signals; timestamp information for the process variable signals; and / or any other suitable information. Furthermore, this dynamic information may be included in the vectors of the training dataset Z, or may comprise a different vector to be included in the training dataset Z.

[0051] A system matrix training sequence typically requires a training data set, a set of error thresholds, and a maximum system matrix size. Each error threshold typically corresponds to the deviation of a process variable from an estimate generated by the training system 52 by applying MSET to the training data set Z. Typically, each error threshold is calculated based on a percentage of the acceptable range of values for the corresponding process variable during online operation of the process and is calculated prior to the system matrix training sequence. The set of error thresholds can be calculated, for example, by the training system 52. The maximum system matrix size typically corresponds to the maximum number of vectors to be included in the system matrix and can be based on the storage capacity and / or processing power of the operator workstation 20, 22, the controller 14, and / or the field device 14 or 16. In practice, the maximum system matrix size is not application-dependent; therefore, an engineer can select a value for the maximum system matrix size based on the processing speed and memory capacity of the computer executing the training process. The maximum system matrix size can be fixed by the operator as a non-adjustable parameter to standardize the training process by generating a system matrix of constant size and to expedite the completion of future training sequences by eliminating additional user input. Thus, the engineer can input error parameters and a maximum system matrix size (collectively referred to as "training start input X") used to calculate a set of error thresholds.

[0052] In an embodiment, when an operator or engineer inputs a command to begin a system matrix training sequence, the engineer / operator may also designate a process variable as a dominant variable. A dominant variable is typically defined as the process variable having the largest percentage change over the entire range of normal process 58 operating conditions. Alternatively, the training system 52 may automatically determine the dominant variable by analyzing the percentage change of each process variable over the normal operating range to determine the process variable corresponding to the largest percentage change over the normal operating range. In practice, the dominant variable may be the process variable that has the greatest impact on the other process variables of the process 58, or may simply be the variable of greatest interest to the engineer / operator. Thus, the engineer / operator may designate a dominant variable in situations where the training system 52 may not automatically designate a variable of interest after the aforementioned numerical analysis. In any case, when the engineer / operator designates a dominant variable, the user interface 60 transmits the dominant variable designation as part of the training initiation input X.

[0053] Generally, the training system 52 uses input from the process control system 50 to generate a system matrix for use in fault detection during online operation of the process 58. The training system 52 generates the system matrix by applying a system matrix training sequence to the input received from the process control system 50. More specifically, the training system 52 determines whether the input received from the process control system 50 includes the necessary data to execute the system matrix training sequence, and if so, executes the system matrix training sequence by iteratively applying MSET to the training data set Z and the training start input X to generate the system matrix.

[0054] like Figure 2 As shown, the training system 52 includes a training initiation module 62 and a system matrix determination module 64. The training initiation module 62 generally uses input from the process control system 50 to determine whether the necessary data for executing the system matrix training sequence is present. More specifically, the training initiation module 62 analyzes the training data set Z and the training initiation input X to determine whether they collectively include the training data set, error parameters, and maximum system matrix size, each of which is required to execute the system matrix training sequence. If the training initiation module 62 determines that each of the training data set, error parameters, and maximum system matrix size is present, the training initiation module 62 may generate an error threshold set and a start signal. The training initiation module 62 includes the training data set, error threshold set, maximum system matrix size, and start signal in a training start signal V, which is configured to initiate the system matrix training sequence. The module 62 then transmits the training start signal V to the system matrix determination module 64.

[0055] As an example of generating a set of error threshold values, assume that a process 58 operating in the plant 10 includes n process variables such that 1≤i≤n, where i represents a particular process variable. When a system matrix training sequence is initiated, the user interface 60 may display a request for the operator to select a maximum system matrix size and an error parameter (e.g., a percentage) corresponding to an error threshold value for each process variable (i). The error threshold value (herein represented as T rms,i ) can be defined as follows:

[0056]

[0057] Among them, x max,i and x min,i are the maximum and minimum “normal” values for each process variable (i) in the training data set Z, and α is an error parameter that the operator can adjust to change the error threshold as needed. For example, if the engineer / operator needs to reduce T rms,i, and to improve the accuracy of the system matrix training sequence accordingly, the engineer / operator can reduce α. Once the operator adjusts α to the desired level and provides the maximum system matrix size, the user interface 60 transmits α and the maximum system matrix size to the training system 52 via the training start input X. The training system 52, specifically the training start module 62, receives the training start input X and the training data set Z and calculates the error threshold for each process variable (i) using equation (1).

[0058] However, if the training initiation module 62 determines that one or more of the training dataset, error parameters, and maximum system matrix size are not present, the training initiation module 62 may not generate the training initiation signal V and, therefore, not initiate the system matrix training sequence. For example, because the training initiation input X was not received, the training initiation module 62 may determine that the training dataset is present, but the error parameters and maximum system matrix size are not present. Typically, the system matrix training sequence is performed offline, so the engineer / operator may not initiate the training sequence. However, in some embodiments, the training initiation input X may represent an operator command to initiate or restart the system matrix training sequence. In these embodiments, once the engineer / operator determines that the training system 52 has sufficient training dataset Z to perform the system matrix training sequence, the engineer / operator may input the training initiation input X via the user interface 60, instructing the training initiation module 62 to generate the training initiation signal V. In some embodiments, the training initiation module 62 may generate the training initiation signal V based solely on the training dataset Z, but the training initiation module 62 typically postpones generating the training initiation signal V until the engineer / operator provides the training initiation input X via the user interface 60.

[0059] Furthermore, in some embodiments, if the training initiation input X does not include one or both of an error parameter and a maximum system matrix size, the training initiation module 62 may retrieve the error parameter and / or the maximum system matrix size from memory. For example, the training initiation module 62 may retrieve the error parameter and / or the maximum system matrix size that may be predetermined by an operator and stored in memory. The training initiation module 62 may also calculate the error parameter and / or the maximum system matrix size based on a previous system matrix training sequence or some other suitable generation technique / model. For example, the training initiation module 62 may calculate the value of the error parameter and / or the value of the maximum system matrix size based on known processing power / storage capacity and / or the required / expected system matrix training accuracy, respectively. For example, if the storage capacity (e.g., available memory) of the control network cannot accommodate a system matrix larger than 2 MB, the training initiation module 62 may calculate a maximum system matrix size corresponding to a file size less than or equal to 2 MB.

[0060] The training initiation signal V may include a training data set, a set of error thresholds, a maximum system matrix size, and an initiation signal configured to cause the system matrix determination module 64 to execute a system matrix training sequence. Generally, the set of error thresholds may correspond to RMS error thresholds for each process variable, but it will be appreciated that any suitable error metric, such as variance, may be used to define the set of error thresholds. RMS error is a familiar error metric in the field of process modeling, widely accepted by practitioners (e.g., plant operators), and provides a robust, customizable error threshold because RMS error is typically a value of interest when evaluating online data Y, whether or not explicitly included in the training process.

[0061] In any case, the training initiation module 62 may transmit a training initiation signal V to the system matrix determination module 64 to initiate a system matrix training sequence. Generally, the system matrix determination module 64 generates a system matrix by executing the system matrix training sequence using the data included in the training initiation signal V. More specifically, the system matrix determination module 64 executes the system matrix training sequence to generate a system matrix by iteratively applying MSET to the training data set Z and evaluating the result using the training initiation input X.

[0062] At a high level, the system matrix training sequence performed by the system matrix determination module 64 includes iterative analysis and incorporation of vectors from the training data set Z into the current system matrix D i Usually, at the beginning of the system matrix training sequence, the current system matrix D i Includes two vectors from the training data set Z. During each iteration of the system matrix training sequence performed by the system matrix determination module 64, one or more vectors from the training data set Z are typically added to the current system matrix D i More specifically, the system matrix determination module 64 may analyze the vectors from the training data set Z by applying the mathematical operations defining MSET to the training data set Z to generate an estimate vector for each vector in the training data set Z. The estimate vector may generally include an estimate value for each process variable included in the training data set Z. The system matrix determination module 64 may then calculate an RMS error value for each process variable represented in the training data set Z by comparing the value of the process variable in the training data set Z with the corresponding value in the estimate vector. If the RMS error value of any process variable exceeds a corresponding error threshold, the vector from the training data set Z corresponding to the maximum error for that process variable will be selected and included in the current system matrix D i The system matrix determination module 64 can iteratively update the current system matrix D in this way. i Until the system matrix determination module 64 determines the current system matrix Di is the final system matrix D f , because, for example, the error threshold is no longer exceeded and / or the current system matrix reaches the maximum system matrix size included in the input data of the training start module 62. After the system matrix training sequence, the system matrix determination module 64 can convert the final system matrix D f Transmitted to the fault detection system 54 for use in fault detection during online operation of the process 58 .

[0063] In practice, the fault detection system 54 is configured to detect potential fault conditions (eg, "abnormal" operating conditions) in the plant 10. To do so, the fault detection system 54 uses the final system matrix D f The fault detection system 54 may receive the final system matrix D from the training system 52 and apply the mathematical operation defined in MSET to the online data Y to identify any process variables in the online data Y that exceed their corresponding error thresholds and generate a warning signal indicating an abnormal operating condition for the process control system 50. f and error threshold sets, and may receive online data Y from the process control system 50 .

[0064] The fault detection system 54 includes a process estimation model 66 and a fault determination module 68. In general, the process estimation model 66 uses the final system matrix D f The mathematical operations defining MSET are applied to the online data Y. More specifically, the process estimation model 66 can be constructed by utilizing the final system matrix D f MSET is applied to determine an estimate vector matrix Y′ that includes an estimate vector corresponding to each vector in the online data Y. The process estimation model 66 then transmits the estimate vector matrix Y′ and a set of error thresholds to the fault determination module 68 .

[0065] Generally, the fault determination module 68 identifies any process variable in the online data Y that exceeds its corresponding error threshold and generates an alert signal for the process control system 50 indicating an abnormal operating condition. More specifically, the fault determination module 68 calculates an RMS error value for each process variable included in the online data Y by comparing each vector in the online data Y with its corresponding vector in the estimation vector matrix Y'. If any RMS error value exceeds the corresponding error threshold, the fault determination module 68 generates an alert signal A indicating a potential fault or other abnormal operating condition associated with the process 58 for transmission to at least the user interface 60. In this manner, the module 68 can alert an operator to an abnormal process 58 operating condition, which allows the operator to take corrective action to prevent equipment damage, equipment failure, sequence stalls, or other potential problems with the plant 10.

[0066] Figure 3A3 is a flow chart of a system matrix training sequence 300 for generating a system matrix for a fault detection system to detect faults in the operation of a process plant. Generally speaking, when the system matrix determination module 64 receives a start signal, a training data set Z, a maximum system matrix size D o,max , and the error threshold set E o When the system matrix training sequence 300 can begin ("yes" branch of the "start" box). Typically, the system matrix training sequence 300 is performed offline. Therefore, once the training data set Z, the maximum system matrix size D o,max , and the error threshold set E o , the training start module 62 may automatically generate a start signal. More specifically, once the system matrix determination module 64 receives the start signal, the system matrix determination module 64 may attempt to begin the system matrix training sequence 300. If the system matrix determination module 64 receives the start signal but has not yet received or otherwise accessed the training data set Z, the maximum system matrix size D o,max , or error threshold set E o If one or more of the following are true, the system matrix determination module 64 may not begin the system matrix training sequence 300 (the "No" branch of the "Start" block).

[0067] The training start signal is typically a command received from the training start module 62, which instructs the system matrix determination module 64 to begin the system matrix training sequence 300. Maximum system matrix size D o,max is typically a scalar value representing the maximum number of vectors from the training data set Z that the system matrix training sequence 300 may include in the system matrix. The system matrix training sequence 300 may be executed by the system matrix determination module 64, for example.

[0068] Error threshold set E o It can be represented by an error matrix 302, where each entry in the error matrix 302 is an error threshold for a process variable of a process (e.g., process 58). For example, assume that the process has n process variables. The error matrix 302 can have n entries, and each entry in the error matrix 302 can be an error threshold for a corresponding process variable. Accordingly, Trms 1,1 is the error threshold for the first process variable, Trms 2,1 is the error threshold for the second process variable, Trms 3,1 is the error threshold for the third process variable, etc. Each error threshold included in the error threshold set may be calculated by, for example, the training initiation module 62 .

[0069] The training data set Z may be represented by a training data matrix 304, where each entry in the training data matrix 304 may be an online measurement of a process variable of a process (e.g., process 58) at a particular time. Each column of the training data matrix 304 may represent: n ) at different moments in time (e.g., T1, T2, …, T L ). Each row of the training data matrix 304 may represent the measurement results of a single process variable of the process at different moments in time during the online operation of the process. For example, assume that the process has n process variables and each of the process variables is measured L times to create a training data set Z. The training data matrix 304 may have n x L entries, and each entry in the training data matrix 304 may be an online measurement result of a process variable of the process. Accordingly, a 1,1,obs is the online measurement result of the first process variable collected at the first time, a 2,1,obs is the online measurement result of the second process variable collected at the first time, a 2,2,obs is an online measurement result of a second process variable collected at a second time, etc. (for example, the label "obs" generally refers to online data of a process).

[0070] The system matrix training sequence 300 continues by generating an initial system matrix 308 (block 306). Generally speaking, the initial system matrix 308 includes two vectors from the training data set Z, each of which includes a minimum value and a maximum value for the dominant process variable. The dominant process variable may be identified in the training initiation signal X, and / or the system matrix determination module 64 may determine the dominant process variable by analyzing the percentage change of each process variable within the normal operating range to determine the process variable corresponding to the maximum percentage change within the normal operating range. The system matrix determination module 64 may analyze each entry in the training data set Z corresponding to the dominant process variable to determine both the minimum value and the maximum value of the dominant process variable. Subsequently, the system matrix determination module 64 generates the initial system matrix 308, which is defined as:

[0071] D i =[x max,d ,x min,d ] (2)

[0072] Among them, x max,d and x min,d Denote two different vectors (eg, two different columns of data) from the training data set Z, which contain the maximum and minimum values of the dominant variable, respectively.

[0073] For example, assume that the dominant process variable in the process represented by the training data matrix 304 is a first process variable (eg, PV1). The system matrix determination module 64 may analyze each of the L entries associated with the first process variable (eg, a 1,1,obs ,a 1,2,obs ,a 1,3,obs ,…,a 1,L,obs ) to determine a first process variable entry having a value less than each of the other first process variable entries and a first process variable entry having a value greater than each of the other first process variable entries. For example, assume that the system matrix determination module 64 determines a 1,1,obs and a 1,2,obs The system matrix determination module 64 can be a training data set Z, which includes a 1,1,obs and a 1,2,obs vector x i,1,obs and x i,2,obs Included in the initial system matrix 308.

[0074] Typically, the two vectors that make up the initial system matrix 308 may be insufficient to define the boundaries of "normal" process operating conditions for all process variables in the process. More specifically, the initial system matrix 308 may be insufficient to estimate process variable values, which results in the RMS error value for each process variable meeting a corresponding RMS error threshold, which in turn may generate a false positive / false negative determination that a fault condition exists within the process (e.g., process 58). To avoid this outcome, the system matrix training sequence 300 can estimate process variable values using the initial system matrix 308, check whether any of the process variable RMS error values exceeds a corresponding RMS error threshold, and include more vectors from the training data set Z in the initial system matrix 308 (hereinafter referred to as the "current system matrix" or the "currently configured system matrix") to better represent "normal" process operating conditions in the system matrix. The system matrix training sequence 300 can also iteratively perform these actions using the currently configured system matrix until the RMS error value for each process variable meets the corresponding RMS error threshold, or until the maximum system matrix size is reached.

[0075] Accordingly, the system matrix training sequence 300 continues by using the currently configured system matrix in MSET to generate an estimated data matrix 312 (block 310). The system matrix determination module 64 applies MSET to the training data set Z according to the following formula:

[0076]

[0077] To generate the estimated data matrix 312, where X o is the observation vector in the training dataset Z, and X e is the estimated vector in the estimation dataset 312. o,1 ,X o,2 ,X o,3 ,…,X o,L ), the system matrix determination module 64 determines L corresponding estimation vectors (e.g., X e,1 ,X e,2 ,X e,3 ,…,X e,L For example, suppose the training dataset Z includes three observation vectors (e.g., X o,1 ,X o,2 , and X o,3 ). By observing the vector (X o,1 ,X o,2 , and X o,3 ), the system matrix (e.g., initial system matrix 308) is operated on each vector in the system matrix, and the system matrix determination module 64 determines three corresponding estimated vectors (e.g., X e,1 ,X e,2 , and X e,3 ).

[0078] The system matrix training sequence 300 is obtained by converting each estimated vector X e The corresponding observation vector X o The comparison continues by calculating the RMS error value for each process variable (block 314). Generally, the system matrix determination module 64 may generate a difference matrix according to the following formula:

[0079] Δ i,j =a i,j,est -a i,j,obs (4)

[0080] For all i=1, ..., n and j=1, ..., L. That is, the system matrix determination module 64 can select the corresponding entries in the estimated data matrix 312 (e.g., a 1,1,est ,a 1,2,est ,a 1,3,est ,…,a n,L,est ) (the notation “est” generally refers to the estimated data of the process) by subtracting each entry in the training data set 304 (e.g., a 1,1,obs ,a 1,2,obs ,a 1,3,obs ,…,a n,L,obs ) to generate each entry in the difference matrix 316 (e.g., Δ 1,1 ,Δ1,2 ,Δ 1,3 ,…,Δ n,L ). For example, the system matrix determination module 64 can obtain the 1,1,est Subtract item a from 1,1,obs , to generate the entry Δ in the difference matrix 316 1,1 .

[0081] The system matrix determination module 64 may also identify a maximum error value for each process variable by calculating the absolute value of each entry in the difference matrix 316. The system matrix determination module 64 may identify the entry with the largest absolute value for each process variable and designate the entry with the largest absolute value as the maximum error value for the process variable (e.g., 316a, 316b, 316c). For example, the system matrix determination module 64 may calculate the absolute value of each entry in the difference matrix 316 corresponding to the first process variable (PV1), identify the entry with the largest absolute value, and designate the entry with the largest absolute value as the maximum error value 316a for the first process variable.

[0082] The system matrix determination module 64 may also calculate the RMS error value for each process variable to generate the RMS error matrix 318 according to the following formula:

[0083]

[0084] For all i=1, ..., n. For example, the system matrix determination module 64 may calculate the RMS error of the first process variable ( PV1 ) to generate the entry Erms in the RMS error matrix 318 1,1 .

[0085] In general, the EMS error value indicates the accuracy of the MSET using the system matrix for a given iteration of the system matrix training sequence 200 as applied to the training data set. As the accuracy of the MSET using the system matrix increases, the RMS error value decreases. Therefore, for each iteration of the system matrix training sequence 300, the RMS error value corresponding to each process variable should decrease. Therefore, in an embodiment, the system matrix determination module 64 may compare the RMS error value for each process variable at the iteration with the RMS error value of the process variable at the previous iteration to ensure that the accuracy of the MSET using the system matrix increases.

[0086] The system matrix training sequence 300 continues by comparing the RMS error for each process variable to a corresponding RMS error threshold to determine whether any RMS error value exceeds the corresponding RMS error threshold (block 320). Generally, the system matrix determination module 64 subtracts the RMS error thresholds included in the error matrix 302 from the RMS error values included in the RMS error matrix 318 to calculate RMS difference values to be included in the RMS difference matrix 322. More specifically, the system matrix determination module 64 calculates the RMS difference values according to the following formula:

[0087] Drms i,1 =Erms i,1 -Trms i,1 (6)

[0088] For all i=1, ..., n. For example, the system matrix determination module 64 may calculate the RMS difference value for the first process variable ( PV1 ) to generate an entry Drms in the RMS difference matrix 322 1,1 As in Figure 3B As shown, the system matrix determination module 64 then determines (block 324) whether the RMS error value exceeds the RMS threshold value based on the following relationship:

[0089] 0 <Drms i,1 (7)

[0090] For all i=1, ..., n, the system matrix determination module 64 may determine that the RMS difference of any process variable is greater than zero ("yes" branch of block 324), or that the RMS difference of the process variable is less than or equal to zero ("no" branch of block 324).

[0091] If the system matrix determination module 64 determines that at least one RMS difference value is greater than zero ("yes" branch of block 324), the system matrix determination module 64 may determine at least one vector from the training data set Z to be included in the system matrix (block 326). More specifically, the system matrix determination module 64 may determine the maximum error vector for each process variable having an RMS difference value greater than zero. For example, assuming the RMS error value corresponding to the first process variable (e.g., Drms 1,1 ) is greater than zero, and it is assumed that the largest entry in the difference matrix 316 for the first process variable is included in the third vector entry (eg, Δ 1,3 =Δ 1,max ). The system matrix determination module 64 may then specify a third vector entry in the training data set Z (eg, T3 = [a 1,3,obs ,a 2,3,obs ,a 3,3,obs ,…,a n,3,obs ]) as the maximum error vector of the first process variable.

[0092] The system matrix determination module 64 may then include the maximum error vector in the system matrix to perform another iteration of the system matrix training sequence 300 (block 328). Generally, the system matrix determination module 64 may generate a current system matrix 330 that includes the vectors that make up the initial system matrix 308 and the maximum error (e.g., x(Δ i,max For example, assume that during the first iteration of the system matrix training sequence 300, the first process variable (PV1) and the third process variable (PV3) have an RMS difference greater than zero, and the values of the maximum error corresponding to each process variable from the training data set Z are a 1,3,obs and a 3,5,obs The system matrix determination module 64 may specify a vector (T3 = [a 1,3,obs ,a 2,3,obs ,a 3,3,obs ,…,a n,3,obs ] and T5=[a 1,5,obs ,a 2,5,obs ,a 3,5,obs ,…,a n,5,obs ]) as the maximum error vectors of the first process variable and the third process variable, and these vectors may be included in the initial system matrix 308. Thus, the system matrix determination module 64 generates a current system matrix 330, which includes [x max,d ,x min,d ,T3,T5].

[0093] Before initiating a subsequent iteration of the system matrix training sequence 300, the system matrix determination module 64 may check the size of the current system matrix 330 to ensure that it does not exceed the maximum system matrix size D o,max (Block 332). Generally, the system matrix determination module 64 may simply count the number of vectors included in the current system matrix 330 and determine whether this number exceeds the maximum system matrix size D o,max If the number of vectors in the current system matrix 330 is greater than or equal to the maximum system matrix size D o,max (“Yes” branch of block 332), the system matrix determination module 64 can determine the final system matrix D by specifying the current system matrix 330 as the final system matrix D f (Block 334), and the final system matrix D f and error threshold set E oThe system matrix training sequence 300 is terminated by transmitting the result to the process estimation module 66 (block 336). Additionally or alternatively, the system matrix determination module 64 may send a warning signal to the engineer / operator that the system matrix training sequence 300 has failed to meet the RMS error threshold for all process variables for the training data set X. If the number of vectors in the current system matrix 330 is less than the maximum system matrix size D o,max (“No” branch of block 332 ), the system matrix determination module 64 may initiate a subsequent iteration of the system matrix training sequence 300 by applying MSET to the training data set Z according to equation (3) (block 310 ) using the current system matrix 330 .

[0094] The maximum error vector is incorporated into the current system matrix 330 (and, by extension, the final system matrix D f ) increases the overall accuracy of the fault detection system 54. Each maximum error vector is included in the training data set Z, and each maximum error vector represents a normal operating condition for the process 58. Additionally, each maximum error vector includes at least one process variable that exceeds an error threshold that defines a "normal" operating condition for the process 58, and therefore, the fault detection system 54 may have incorrectly identified a maximum error vector as an "abnormal" operating condition (e.g., a "false positive") prior to the system matrix training sequence 300. However, the system matrix training sequence 300 includes each maximum error variable in the system matrix, which increases the accuracy of the estimated values generated by applying MSET to the online data Y. Because the error values (e.g., difference matrix 316) generated by comparing the online data Y with the estimated values can more accurately indicate the deviation of the online data Y from the "normal" operating condition, the fault detection system 54 can subsequently generate fewer false positives.

[0095] Additionally, in some embodiments, the system matrix determination module 64 may analyze RMS error values for previous iterations of the system matrix training sequence 300 to extrapolate RMS error values for subsequent iterations of the system matrix training sequence 300. In these embodiments, the system matrix determination module 64 may determine that the RMS error values for one or more process variables are reduced by extrapolation, but the reduction is not sufficient to achieve the maximum system matrix size D. o,max It is not sufficient to previously satisfy the RMS error threshold (e.g., satisfy Equation (7) for at least one process variable). This determination may indicate that the system matrix training sequence 300 has failed, and therefore, the system matrix determination module 64 may be unable to determine the final system matrix D f In this case, it is possible to use different input training parameters (for example, different error threshold sets E o , different maximum system matrix sizes D o,max, etc.), the system matrix determination module 64 may need to execute the system matrix training sequence 300 again. Accordingly, the system matrix determination module 64 may generate a warning signal (e.g., warning signal A) to warn the operator via the user interface 60 of the failed system matrix training sequence 300.

[0096] If the system matrix determination module 64 determines that all RMS differences are less than or equal to zero (the "No" branch of block 324), the system matrix determination module 64 may designate the current system matrix (e.g., the current system matrix 330) as the final system matrix D f , to terminate the system matrix training sequence 300 (block 334). The system matrix determination module 64 may then convert the final system matrix D f and error threshold set E o The final system matrix D is transmitted to the fault detection system 54 (block 336), and more specifically, to the process estimation module 66 for use during online operation of the process 58. f and error threshold set E o Perform fault detection.

[0097] Figure 4A FIG4 is a flow chart of a multiple system matrix training sequence iteration 400 that generates a system matrix set for a fault detection system to detect faults in process plant operations. As a general principle, when a large amount of data exists in a control system, the data typically arrives in the form of many smaller data sets. The smaller data sets may be in the form of multiple files, multiple tables in a database (e.g., historian 28A, configuration database 28B), or multiple data packets in a communication network or a computer's internal memory (e.g., memory 42). Even when data arrives on a network in a single package, users (e.g., operators) tend to divide the data into smaller portions for easier manipulation and processing. For example, a fault detection system (e.g., fault detection system 54) may store multiple system matrices as a result of multiple iterations of the system matrix training sequence 300 initiated by an operator, each with a different training data set Z, which may cause problems for the fault detection system 54.

[0098] In general, the multi-system matrix training sequence iteration 400 is shown by following Figure 3A and Figure 3B The training sequence described in is intended to accommodate scenarios with smaller data sets in process control systems. The system matrix determination module 64 may receive multiple training data sets Z1-Z Y , where multiple training data sets Z1-Z YEach set in can describe the normal operating conditions of the process in a unique operating state or time of day. The system matrix determination module 64 can apply the system matrix training sequence 300 to multiple training data sets Z1-Z Y Each set in, and multiple final system matrices D can be generated f,1 -D f,Y Accordingly, the system matrix determination module 64 may store a plurality of final system matrices D in a memory (eg, the memory 42). f,1 -D f,Y , to create a final system matrix database that can be used by the fault detection system 54 to accurately estimate the values corresponding to the online data Y. For example, the process estimation module 66 can receive the online data Y from the process control system 50, determine the operating state of the process 58 by analyzing the values of the online data Y, and access the final system matrix database to obtain a plurality of final system matrices D corresponding to the operating states of the process 58. f,1 -D f,Y A matrix in for use in MSET.

[0099] However, the number of matrices included in the final system matrix database may itself cause problems in situations where a process plant (e.g., plant 10) has a large number of operating states or an engineer / operator initiates a large number of system matrix training sequences 300. More specifically, the fault detection system 54 may determine during online execution of the fault determination protocol that the protocol has exceeded a predetermined time threshold, that the number of stored system matrices has exceeded a predetermined threshold, and / or that the fault detection system 54 is otherwise insufficiently operational to process the online data Y.

[0100] In response, the fault detection system 54 may generate a warning signal A incorporating such insufficient information, and the warning signal A may include aggregating multiple final system matrices D f,1 -D f,Y In general, the aggregate system matrix is formed by combining multiple final system matrices D f,1 -D f,Y Aggregated into a single system matrix, which can include the components used to create multiple final system matrices D f,1 -D f,Y The corresponding training data set Z1-Z Y However, the final system matrix D f,1 -D f,YAll of them are simply aggregated into a single system matrix, because the overall amount of data does not change, which is beneficial in maintaining multiple final system matrices D f,1 -D f,Y In order to accommodate the limited memory capacity and maintain the characteristics of the entire training data set, the training system 52 can use multiple final system matrices D f,1 -D f,Y As a training data set, the system matrix training sequence 300 is performed. In this way, the aggregate system matrix can be obtained by f,1 -D f,Y to include the minimum sufficient amount of data across multiple final system matrices D f,1 -D f,Y The entire training data set is used to define the boundaries of “normal” process operating conditions.

[0101] Accordingly, in response to a warning signal (e.g., warning signal A) or at the request of an engineer / operator, the engineer / operator may initiate an aggregate system matrix training sequence 410, as shown in FIG4 . In general, the aggregate system matrix training sequence 410 generates an aggregate final system matrix D f,agg For use in a fault detection system to detect faults in process operations. Aggregating the system matrix sequence 410 includes executing the system matrix training sequence 300 using a plurality of final system matrices D f,1 -D f,Y The aggregate training data set Z for each matrix in agg , to generate the aggregate final system matrix D f,agg More specifically, the system matrix determination module 64 can access the final system matrix database and calculate the final system matrix D f,1 -D f,Y All of are included in the aggregation matrix 412 to generate the aggregated training data set Z agg The system matrix determination module 64 then applies the system matrix training sequence 300 to the aggregated training data set Z agg , and generate the aggregated final system matrix D f,agg The system matrix determination module 64 can then aggregate the final system matrix D f,agg is transmitted to the fault detection system 54 for use in the fault detection process, as shown in FIG. Figure 2 As stated.

[0102] In this way, Figure 4B The aggregate system matrix training sequence 410 can alleviate the processing and storage burden in the training system 52 and the fault detection system 54 caused by the large amount of data. f,1 -Df,Y When multiple final system matrices D f,1 -D f,Y Each matrix in maintains multiple final system matrices D f,1 -D f,Y The corresponding training data set Z1-Z Y Therefore, when combining multiple final system matrices D f,1 -D f,Y To create the aggregated training data set Z agg Aggregate training dataset Z agg It is then used to generate the aggregate final system matrix D f,agg , aggregate the final system matrix D f,agg Including all training data sets Z1-Z Y Therefore, a large number of "normal" operating conditions of the process are encapsulated in this single aggregate final system matrix D f,agg This reduces the disk space requirements of the internal memory 42 and increases the speed of the training system 52 and the fault detection system 54 by minimizing the data requirements for real-time calculations.

[0103] When implemented, any simulation software described herein may be stored in any computer-readable memory such as a disk, optical disk, or other storage medium, in the RAM or ROM of a computer or processor, or the like. In addition, the software may be delivered to a user, process plant, or operator workstation using any known or desired delivery method, including, for example, on a computer-readable disk or other transmittable computer storage mechanism, or via a communication channel such as a telephone line, the Internet, the World Wide Web, any other local area network or wide area network, or the like. (Such delivery is considered equivalent or interchangeable with providing the software via a transmittable storage medium.) In addition, the software may be provided directly without modulation or encryption, or may be modulated and / or encrypted using any appropriate modulation carrier wave and / or encryption technique before being transmitted over a communication channel.

[0104] Although the present invention has been described with reference to specific examples, these are intended to be illustrative only and not limiting. It will be apparent to those skilled in the art that various changes, additions, or deletions to the disclosed embodiments can be made without departing from the spirit and scope of the present invention.

Claims

1. A system for detecting a fault in the operation of a process, comprising: a process controller coupled to the process for controlling the process; a user interface coupled to the process controller and configured to receive an error threshold set and a maximum system matrix size from an operator; a fault detection system for detecting a fault in the operation of the process, wherein the fault detection system is configured to: determine an estimate vector by applying a multivariable state estimation technique (MSET) to an online data set from the process using a final system matrix and the error threshold set, and generate a warning signal indicative of a fault in the operation of the process by comparing the estimate vector with the online data set; and a training system communicatively coupled to the process controller, the user interface, and the fault detection system for generating a final system matrix, wherein the training system is configured to: (a) generate an initial system matrix using a training data set comprising a plurality of training data set vectors, (b) designate the initial system matrix as a current system matrix, (c) using the current system matrix and the training data set to calculate an estimation vector set in the MSET, (d) determining a root mean square (RMS) error and a maximum error for each process variable in the training data set by comparing the estimation vector set with the training data set, (e) identifying a first process variable having an RMS error greater than a corresponding error threshold, (f) storing a first training data set vector including the maximum error for the first process variable in the current system matrix, (g) iteratively performing steps (c)-(f) until the RMS error for each process variable does not exceed a corresponding error threshold or the size of the current system matrix exceeds the maximum system matrix size, (h) designating the current system matrix as a final system matrix, and (i) transmitting the final system matrix and the error threshold set to the fault detection system.

2. The system according to claim 1, wherein: The initial system matrix includes: (i) a minimum training data set vector including a minimum value in the training data set of at least one of the process variables; and (ii) a maximum training data set vector including a maximum value in the training data set of at least one of the process variables.

3. The system according to claim 2, wherein: The user interface is further configured to receive a dominant variable designation from an operator indicating a dominant variable of the process, and wherein (i) the minimum training data set vector includes a minimum value of the dominant variable, and (ii) the maximum training data set vector includes a maximum value of the dominant variable.

4. The system according to claim 1, wherein: Comparing the set of estimate vectors to the training data set includes subtracting each training data set vector from a corresponding estimate vector to calculate a respective error corresponding to each process variable of each training data set vector.

5. The system according to claim 4, wherein: Determining the maximum error for each process variable includes comparing absolute values of the respective errors for the process variables in each training data set vector.

6. The system according to claim 1, wherein: The training data set is a plurality of final system matrices.

7. The system according to claim 1, wherein: The online data includes a plurality of online data vectors, and wherein the fault detection system is configured to: determine one or more RMS errors by comparing each online data vector with a corresponding estimation vector; identify a fault RMS error that exceeds a corresponding RMS error threshold; generate the warning signal corresponding to the fault RMS error; and transmit the warning signal to the user interface.

8. The system according to claim 1, wherein: The training data set does not include state variables indicative of an operating state of the process, and wherein each training data set vector is indicative of a normal operating condition of the process.

9. A method of training a fault detection system for detecting faults in operation of a process within a process plant, the fault detection system comprising a process estimation model and a fault determination module, the method comprising: receiving a training data set comprising one or more training data set vectors from a process controller; receiving from a user interface a set of error thresholds and a maximum system matrix size; A final system matrix is determined by performing the following steps: (a) generating an initial system matrix using the training data set, (b) designating the initial system matrix as a current system matrix, (c) calculating an estimation vector set using the current system matrix and the training data set in a multivariable state estimation technique (MSET), (d) determining a root mean square (RMS) error and a maximum error for each process variable in the training data set by comparing the estimation vector set with the training data set, (e) identifying a first process variable having an RMS error greater than a corresponding error threshold, (f) storing a first training data set vector including the maximum error for the first process variable in the current system matrix, (g) iteratively performing steps (c)-(f) until the RMS error for each process variable does not exceed a corresponding error threshold or the size of the current system matrix exceeds the maximum system matrix size, and (h) designating the current system matrix as a final system matrix; and updating the process estimation model by incorporating the final system matrix and the set of error thresholds; The method further includes receiving an online data vector from the process; determining, by the process estimation model, an estimation vector by applying the MSET using the final system matrix; and generating, by the fault determination module, a warning signal indicating a fault in the operation of the process by comparing the estimation vector with the online data vector.

10. The method according to claim 9, wherein: The initial system matrix includes: (i) a minimum training data set vector including a minimum value in the training data set of at least one of the process variables; and (ii) a maximum training data set vector including a maximum value in the training data set of at least one of the process variables.

11. The method according to claim 10, further comprising: A dominant variable designation is received from the user interface indicating a dominant variable of the process, and wherein (i) the minimum training data set vector includes a minimum value of the dominant variable, and (ii) the maximum training data set vector includes a maximum value of the dominant variable.

12. The method according to claim 9, wherein Comparing the set of estimate vectors to the training data set includes subtracting each training data set vector from a corresponding estimate vector to calculate a respective error corresponding to each process variable of each training data set vector.

13. The method according to claim 12, wherein: Determining the maximum error for each process variable includes comparing absolute values of the respective errors for the process variables in each training data set vector.

14. The method according to claim 9, wherein The training data set is a plurality of final system matrices.

15. The method according to claim 9, further comprising: The fault determination module determines an RMS error of each process vector of the online data vector by comparing the online data vector with the estimation vector; The fault determination module identifies a fault RMS error that exceeds a corresponding error threshold; the fault determination module generates the warning signal corresponding to the fault RMS error; The fault determination module transmits the warning signal to the user interface for display to an operator.

16. The method according to claim 9, wherein The training data set does not include state variables indicative of an operating state of the process, and wherein each training data set vector is indicative of a normal operating condition of the process.

17. A fault detection training system for detecting faults in the operation of a process, comprising: A fault detection system for detecting a fault in the operation of a process, wherein the fault detection system is configured to: determine an estimate vector by applying a multivariable state estimation technique (MSET) to an online data set from the process using a final system matrix and a set of error thresholds, and generate a warning signal indicative of a fault in the operation of the process by comparing the estimate vector with the online data set; and a training system communicatively coupled to the fault detection system for generating a final system matrix, wherein the training system is configured to perform the following steps: (a) generating an initial system matrix using a training data set comprising a plurality of training data set vectors, (b) designating the initial system matrix as a current system matrix, (c) using the current system matrix and (c) calculating an estimation vector set based on the training data set, (d) determining a root mean square (RMS) error and a maximum error for each process variable in the training data set by comparing the estimation vector set with the training data set, (e) identifying a first process variable having an RMS error greater than a corresponding error threshold, (f) storing a first training data set vector including the maximum error for the first process variable in the current system matrix, (g) iteratively performing steps (c)-(f) until the RMS error for each process variable does not exceed the corresponding error threshold or the size of the current system matrix exceeds a maximum system matrix size, (h) designating the current system matrix as a final system matrix, and (i) transmitting the final system matrix and the error threshold set to the fault detection system.

18. The fault detection training system according to claim 17, wherein: The initial system matrix includes: (i) a minimum training data set vector including a minimum value in the training data set of at least one of the process variables; and (ii) a maximum training data set vector including a maximum value in the training data set of at least one of the process variables.

19. The fault detection training system according to claim 18, wherein: (i) the minimum training data set vector includes the minimum value of the dominant variable of the process, and (ii) the maximum training data set vector includes the maximum value of the dominant variable of the process.

20. The fault detection training system according to claim 17, wherein: Comparing the set of estimate vectors to the training data set includes subtracting each training data set vector from a corresponding estimate vector to calculate a respective error corresponding to each process variable of each training data set vector.

21. The fault detection training system according to claim 20, wherein: Determining the maximum error for each process variable includes comparing absolute values of the respective errors for the process variables in each training data set vector.

22. The fault detection training system according to claim 17, wherein: The training data set is a plurality of final system matrices.

23. The fault detection training system according to claim 17, wherein: The online data includes a plurality of online data vectors, and wherein the fault detection system is configured to: determine one or more RMS errors by comparing each online data vector with a corresponding estimation vector; identify a fault RMS error that exceeds a corresponding RMS error threshold; generate the warning signal corresponding to the fault RMS error; and transmit the warning signal to a user interface for display to an operator.

24. The fault detection training system according to claim 17, wherein: The training data set does not include state variables indicative of an operating state of the process, and wherein each training data set vector is indicative of a normal operating condition of the process.

25. A method of training a fault detection system for detecting faults in operation of a process within a process plant, the fault detection system comprising a process estimation model and a fault determination module, the method comprising: receiving a plurality of training data sets from a process controller, each training data set of the plurality of training data sets comprising one or more training data set vectors; receiving from a user interface a set of error thresholds and a maximum system matrix size; The aggregated final system matrix is determined by performing the following steps: (a) generating an initial system matrix using a corresponding training data set from the plurality of training data sets, (b) designating the initial system matrix as a current system matrix, (c) calculating an estimation vector set using the current system matrix and the corresponding training data set in a multivariable state estimation technique (MSET), (d) determining a root mean square (RMS) error and a maximum error for each process variable in the corresponding training data set by comparing the estimation vector set with the corresponding training data set, (e) identifying a first process variable having an RMS error greater than a corresponding error threshold, (f) storing a first corresponding training data set vector including the maximum error for the first process variable in the current system matrix, and (g) iteratively performing steps ( c)-(f) until the RMS error of each process variable does not exceed a corresponding error threshold or the size of the current system matrix exceeds the maximum system matrix size, (h) designating the current system matrix as a final system matrix, (i) iteratively performing steps (a)-(h) until a corresponding final system matrix is designated for each corresponding training data set in the plurality of training data sets, (j) generating an aggregated training data set including each corresponding final system matrix, (m) performing steps (a)-(h) using the aggregated training data set until the RMS error of each process variable does not exceed a corresponding error threshold or the size of the current system matrix exceeds the maximum system matrix size, and (n) designating the final system matrix as the aggregated final system matrix; and updating the process estimation model by incorporating the aggregated final system matrix and the set of error thresholds; The method further includes receiving an online data vector from the process; determining, by the process estimation model, an estimation vector by applying the MSET using the aggregated final system matrix; and generating, by the fault determination module, a warning signal indicating a fault in the operation of the process by comparing the estimation vector with the online data vector.

Citation Information

Patent Citations

  • System failure early warning method based on baseline model and Bayesian factor

    CN102880170A

  • Method and system to estimate variables in an integrated gasification combined cycle (IGCC) plant

    CN103430121A