US20080167839A1 - Method and System for Modeling a Process in a Process Plant - Google Patents
Method and System for Modeling a Process in a Process Plant Download PDFInfo
- Publication number
- US20080167839A1 US20080167839A1 US11/619,846 US61984607A US2008167839A1 US 20080167839 A1 US20080167839 A1 US 20080167839A1 US 61984607 A US61984607 A US 61984607A US 2008167839 A1 US2008167839 A1 US 2008167839A1
- Authority
- US
- United States
- Prior art keywords
- model
- regression
- regression models
- data sets
- models
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 396
- 230000008569 process Effects 0.000 title claims abstract description 290
- 230000002159 abnormal effect Effects 0.000 claims abstract description 93
- 239000002131 composite material Substances 0.000 claims abstract description 92
- 230000001419 dependent effect Effects 0.000 claims description 28
- 230000006870 function Effects 0.000 description 69
- 238000010586 diagram Methods 0.000 description 37
- 238000004891 communication Methods 0.000 description 33
- 238000012423 maintenance Methods 0.000 description 32
- 230000002265 prevention Effects 0.000 description 31
- 238000012544 monitoring process Methods 0.000 description 30
- 238000001514 detection method Methods 0.000 description 27
- 238000004886 process control Methods 0.000 description 26
- 230000007704 transition Effects 0.000 description 17
- 230000015654 memory Effects 0.000 description 16
- 238000012549 training Methods 0.000 description 12
- 239000000463 material Substances 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 238000012417 linear regression Methods 0.000 description 9
- 238000003860 storage Methods 0.000 description 9
- 238000005259 measurement Methods 0.000 description 8
- 238000003070 Statistical process control Methods 0.000 description 7
- 238000012905 input function Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 238000013480 data collection Methods 0.000 description 6
- 238000009826 distribution Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 238000010248 power generation Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 230000001105 regulatory effect Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000012628 principal component regression Methods 0.000 description 3
- 238000012706 support-vector machine Methods 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000011112 process operation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 238000004231 fluid catalytic cracking Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 238000012887 quadratic function Methods 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000010963 scalable process Methods 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
Images
Classifications
-
- C—CHEMISTRY; METALLURGY
- C10—PETROLEUM, GAS OR COKE INDUSTRIES; TECHNICAL GASES CONTAINING CARBON MONOXIDE; FUELS; LUBRICANTS; PEAT
- C10G—CRACKING HYDROCARBON OILS; PRODUCTION OF LIQUID HYDROCARBON MIXTURES, e.g. BY DESTRUCTIVE HYDROGENATION, OLIGOMERISATION, POLYMERISATION; RECOVERY OF HYDROCARBON OILS FROM OIL-SHALE, OIL-SAND, OR GASES; REFINING MIXTURES MAINLY CONSISTING OF HYDROCARBONS; REFORMING OF NAPHTHA; MINERAL WAXES
- C10G11/00—Catalytic cracking, in the absence of hydrogen, of hydrocarbon oils
- C10G11/14—Catalytic cracking, in the absence of hydrogen, of hydrocarbon oils with preheated moving solid catalysts
- C10G11/18—Catalytic cracking, in the absence of hydrogen, of hydrocarbon oils with preheated moving solid catalysts according to the "fluidised-bed" technique
- C10G11/187—Controlling or regulating
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/021—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system adopting a different treatment of each operating region or a different mode of the monitored system, e.g. transient modes; different operating configurations of monitored system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
- G05B23/024—Quantitative history assessment, e.g. mathematical relationships between available data; Functions therefor; Principal component analysis [PCA]; Partial least square [PLS]; Statistical classifiers, e.g. Bayesian networks, linear regression or correlation analysis; Neural networks
Definitions
- This disclosure relates generally to process control systems and, more particularly, to systems for monitoring and/or modeling processes.
- Process control systems such as distributed or scalable process control systems like those used in chemical, petroleum or other processes, typically include one or more process controllers communicatively coupled to each other, to at least one host or operator workstation and to one or more field devices via analog, digital or combined analog/digital buses.
- the field devices which may be, for example valves, valve positioners, switches and transmitters (e.g., temperature, pressure and flow rate sensors), perform functions within the process such as opening or closing valves and measuring process parameters.
- the process controller receives signals indicative of process measurements made by the field devices and/or other of information pertaining to the field devices, uses this information to implement a control routine and then generates control signals which are sent over the buses to the field devices to control the operation of the process.
- Information from the field devices and the controller is typically made available to one or more applications executed by the operator workstation to enable an operator to perform any desired function with respect to the process, such as viewing the current state of the process, modifying the operation of the process, etc.
- Fieldbus A number of standard and open smart device communication protocols such as the HART®, PROFIBUS®, WORLDFIP®, Device Net®, and CAN protocols, have been developed to enable smart field devices made by different manufacturers to be used together within the same process control network.
- the all digital, two wire bus protocol promulgated by the Fieldbus Foundation, known as the FOUNDATIONTM Fieldbus (hereinafter “Fieldbus”) protocol uses function blocks located in different field devices to perform control operations previously performed within a centralized controller.
- the Fieldbus field devices are capable of storing and executing one or more function blocks, each of which receives inputs from and/or provides outputs to other function blocks (either within the same device or within different devices), and performs some process control operation, such as measuring or detecting a process parameter, controlling a device or performing a control operation, like implementing a proportional-integral-derivative (PID) control routine.
- the different function blocks within a process control system are configured to communicate with each other (e.g., over a bus) to form one or more process control loops, the individual operations of which are spread throughout the process and are, thus, decentralized.
- Information from the field devices and the process controllers is typically made available to one or more other hardware devices such as operator workstations, maintenance workstations, personal computers, handheld devices, data historians, report generators, centralized databases, etc., to enable an operator or a maintenance person to perform desired functions with respect to the process such as, for example, changing settings of the process control routine, modifying the operation of the control modules within the process controllers or the smart field devices, viewing the current state of the process or of particular devices within the process plant, viewing alarms generated by field devices and process controllers, simulating the operation of the process for the purpose of training personnel or testing the process control software, diagnosing problems or hardware failures within the process plant, etc.
- hardware devices such as operator workstations, maintenance workstations, personal computers, handheld devices, data historians, report generators, centralized databases, etc.
- While a typical process plant has many process control and instrumentation devices such as valves, transmitters, sensors, etc. connected to one or more process controllers, there are many other supporting devices that are also necessary for or related to process operation.
- These additional devices include, for example, power supply equipment, power generation and distribution equipment, rotating equipment such as turbines, motors, etc., which are located at numerous places in a typical plant. While this additional equipment does not necessarily create or use process variables and, in many instances, is not controlled or even coupled to a process controller for the purpose of affecting the process operation, this equipment is nevertheless important to, and ultimately necessary for proper operation of the process.
- problems frequently arise within a process plant environment, especially a process plant having a large number of field devices and supporting equipment. These problems may take the form of broken or malfunctioning devices, logic elements, such as software routines, being in improper modes, process control loops being improperly tuned, one or more failures in communications between devices within the process plant, etc.
- problems While numerous in nature, generally result in the process operating in an abnormal state (i.e., the process plant being in an abnormal situation) which is usually associated with suboptimal performance of the process plant.
- Many diagnostic tools and applications have been developed to detect and determine the cause of problems within a process plant and to assist an operator or a maintenance person to diagnose and correct the problems, once the problems have occurred and been detected.
- operator workstations which are typically connected to the process controllers through communication connections such as a direct or wireless bus, Ethernet, modem, phone line, and the like, have processors and memories that are adapted to run software or firmware, such as the DeltaVTM and Ovation control systems, sold by Emerson Process Management which includes numerous control module and control loop diagnostic tools.
- maintenance workstations which may be connected to the process control devices, such as field devices, via the same communication connections as the controller applications, or via different communication connections, such as OPC connections, handheld connections, etc., typically include one or more applications designed to view maintenance alarms and alerts generated by field devices within the process plant, to test devices within the process plant and to perform maintenance activities on the field devices and other devices within the process plant. Similar diagnostic applications have been developed to diagnose problems within the supporting equipment within the process plant.
- the AMSTM Suite: Intelligent Device Manager application (at least partially disclosed in U.S. Pat. No. 5,960,214 entitled “Integrated Communication Network for use in a Field Device Management System”) sold by Emerson Process Management, enables communication with and stores data pertaining to field devices to ascertain and track the operating state of the field devices.
- the AMSTM application may be used to communicate with a field device to change parameters within the field device, to cause the field device to run applications on itself such as, for example, self-calibration routines or self-diagnostic routines, to obtain information about the status or health of the field device, etc.
- This information may include, for example, status information (e.g., whether an alarm or other similar event has occurred), device configuration information (e.g., the manner in which the field device is currently or may be configured and the type of measuring units used by the field device), device parameters (e.g., the field device range values and other parameters), etc.
- status information e.g., whether an alarm or other similar event has occurred
- device configuration information e.g., the manner in which the field device is currently or may be configured and the type of measuring units used by the field device
- device parameters e.g., the field device range values and other parameters
- process plants include equipment monitoring and diagnostic applications such as, for example, Machinery HealthTM applications provided by CSI, or any other known applications used to monitor, diagnose, and optimize the operating state of various rotating equipment. Maintenance personnel usually use these applications to maintain and oversee the performance of rotating equipment in the plant, to determine problems with the rotating equipment, and to determine when and if the rotating equipment must be repaired or replaced.
- process plants include power control and diagnostic applications such as those provided by, for example, the Liebert and ASCO companies, to control and maintain the power generation and distribution equipment. It is also known to run control optimization applications such as, for example, real-time optimizers (RTO+), within a process plant to optimize the control activities of the process plant.
- RTO+ real-time optimizers
- optimization applications typically use complex algorithms and/or models of the process plant to predict how inputs may be changed to optimize operation of the process plant with respect to some desired optimization variable such as, for example, profit.
- Typical displays include alarming displays that receive alarms generated by the process controllers or other devices within the process plant, control displays indicating the operating state of the process controllers and other devices within the process plant, maintenance displays indicating the operating state of the devices within the process plant, etc.
- these and other diagnostic applications may enable an operator or a maintenance person to retune a control loop or to reset other control parameters, to run a test on one or more field devices to determine the current status of those field devices, to calibrate field devices or other equipment, or to perform other problem detection and correction activities on devices and equipment within the process plant.
- these various applications and tools are very helpful in identifying and correcting problems within a process plant
- these diagnostic applications are generally configured to be used only after a problem has already occurred within a process plant and, therefore, after an abnormal situation already exists within the plant.
- an abnormal situation may exist for some time before it is detected, identified and corrected using these tools, resulting in the suboptimal performance of the process plant for the period of time during which the problem is detected, identified and corrected.
- a control operator will first detect that some problem exists based on alarms, alerts or poor performance of the process plant. The operator will then notify the maintenance personnel of the potential problem. The maintenance personnel may or may not detect an actual problem and may need further prompting before actually running tests or other diagnostic applications, or performing other activities needed to identify the actual problem.
- the maintenance personnel may need to order parts and schedule a maintenance procedure, all of which may result in a significant period of time between the occurrence of a problem and the correction of that problem, during which time the process plant runs in an abnormal situation generally associated with the sub-optimal operation of the plant.
- this technique places statistical data collection and processing blocks or statistical processing monitoring (SPM) blocks, in each of a number of devices, such as field devices, within a process plant.
- the statistical data collection and processing blocks collect, for example, process variable data and determine certain statistical measures associated with the collected data, such as a mean, a median, a standard deviation, etc. These statistical measures may then be sent to a user and analyzed to recognize patterns suggesting the future occurrence of a known abnormal situation. Once a particular suspected future abnormal situation is detected, steps may be taken to correct the underlying problem, thereby avoiding the abnormal situation in the first place.
- SPM statistical processing monitoring
- SPC Statistical Process Control
- a small sample of a variable such as a key quality variable, is used to generate statistical data for the small sample.
- the statistical data for the small sample is then compared to statistical data corresponding to a much larger sample of the variable.
- the variable may be generated by a laboratory or analyzer, or retrieved from a data historian.
- SPC alarms are generated when the small sample's average or standard deviation deviates from the large sample's average or standard deviation, respectively, by some predetermined amount.
- An intent of SPC is to avoid making process adjustments based on normal statistical variation of the small samples. Charts of the average or standard deviation of the small samples may be displayed to the operator on a console separate from a control console.
- MSPC multivariable statistical process control
- PCA principal component analysis
- PLS projections to latent structures
- a model is utilized, such as a correlation-based model or a first-principles model, that relates process inputs to process outputs.
- the model may be calibrated to the actual plant operation by adjusting internal tuning constants or bias terms.
- the model can be used to predict when the process is moving into an abnormal region and alert the operator to take action. An alarm may be generated when there is a significant deviation in actual versus predicted behavior or when there is a big change in a calculated efficiency parameter.
- Model-based performance monitoring systems typically cover as small as a single unit operation (e.g. a pump, a compressor, a heater, a column, etc.) or a combination of operations that make up a process unit (e.g. crude unit, fluid catalytic cracking unit (FCCU), reformer, etc.)
- Example methods and systems are disclosed that may facilitate detecting an abnormal operation associated with a process plant.
- a composite model for modeling at least a portion of the process plant may be configurable to include multiple regression models corresponding to multiple different operating regions of the portion of the process plant.
- a new model may be generated from two or more of the regression models, and the composite model may be revised to replace the two or more regression models with the new model.
- the composite model may be utilized, for example, by determining if the actual operation of the portion of the process plant deviates significantly from the operation predicted by the composite model. If there is a significant deviation, this may indicate an abnormal operation.
- a method for generating a model of a process in a process plant may comprise collecting a plurality of groups of data sets for the process in the process plant, the data sets generated from process variables of the process.
- the method may also comprise generating a plurality of regression models of the process using the groups of data sets, wherein each regression model is generated using a corresponding group of data sets from the plurality of groups, and wherein each regression model comprises a plurality of corresponding parameters generated using the corresponding group of data sets.
- the method may comprise generating a composite model of the process to include the plurality of regression models.
- the method may comprise generating a new model of the process using parameters of at least two of the regression models, and revising the composite model of the process to replace the at least two of the regression models with the new model.
- a tangible medium storing machine readable instructions may be capable of causing one or more machines to collect a plurality of groups of data sets for the process in the process plant, the data sets generated from process variables of the process. Additionally, the machine readable instructions may be capable of causing one or more machines to generate a plurality of regression models of the process using the groups of data sets, wherein each regression model is generated using a corresponding group of data sets from the plurality of groups, and wherein each model comprises a plurality of corresponding parameters generated using the corresponding group of data sets. Also, the machine readable instructions may be capable of causing one or more machines to generate a composite model of the process to include the plurality of regression models. Further, the machine readable instructions may be capable of causing one or more machines to generate a new model of the process using parameters of at least two of the regression models, and to revise the composite model of the process to replace the at least two of the regression models with the new model.
- a method for generating a model of a process in a process plant may comprise collecting data sets for the process in the process plant, the data sets generated from process variables of the process, and generating a new regression model of the process using the collected data sets.
- the method also may comprise revising a composite model of the process to include the new regression model in a plurality of regression models of the composite model, wherein each regression model in the plurality of regression models comprises a plurality of corresponding parameters generated using a corresponding group of data sets from a plurality of groups of data sets.
- the method may comprise determining whether a number N of regression models in the composite model exceeds a number N MAX .
- the method may further comprise, if the number N of regression models exceeds the number N MAX , generating a new model of the process using parameters of at least two of the regression models in the plurality of regression models, and revising the composite model of the process to replace the at least two of the regression models with the new model.
- a tangible medium storing machine readable instructions may be capable of causing one or more machines to collect data sets for the process in the process plant, the data sets generated from process variables of the process. Additionally, the machine readable instructions may be capable of causing one or more machines to generate a new regression model of the process using the collected data sets, and to revise a composite model of the process to include the new regression model in a plurality of regression models of the composite model, wherein each regression model in the plurality of regression models comprises a plurality of corresponding parameters generated using a corresponding group of data sets from a plurality of groups of data sets.
- the machine readable instructions may be capable of causing one or more machines to determine whether a number N of regression models in the composite model exceeds a number N MAX , and to, if the number N of regression models exceeds the number N MAX , generate a new model of the process using parameters of at least two of the regression models in the plurality of regression models. Still further, the machine readable instructions may be capable of causing one or more machines to revise the composite model of the process to replace the at least two of the regression models with the new model.
- a system for detecting an abnormal operation in a process plant may include a configurable composite model of the process in the process plant comprising a plurality of regression models.
- Each regression model may have been generated using a corresponding group of data sets from a plurality of groups of data sets, the data sets generated from process variables of the process. Additionally, each regression model may comprise a plurality of corresponding parameters generated using the corresponding group of data sets.
- the configurable composite model may be capable of being subsequently configured to replace at least two of the regression models with a new model generated using parameters of the at least two of the regression models.
- the system may further include a deviation detector coupled to the configurable composite model, the deviation detector configured to determine if the process significantly deviates from an output of the composite model.
- FIG. 1 is an exemplary block diagram of a process plant having a distributed control and maintenance network including one or more operator and maintenance workstations, controllers, field devices and supporting equipment;
- FIG. 2 is an exemplary block diagram of a portion of the process plant of FIG. 1 , illustrating communication interconnections between various components of an abnormal situation prevention system located within different elements of the process plant;
- FIG. 3 is an example abnormal operation detection (AOD) system that utilizes one or more regression models
- FIG. 4 is flow diagram of an example method that may be implemented using the example AOD system of FIG. 3 ;
- FIG. 5 is a flow diagram of an example method for initially training the model of FIG. 3 ;
- FIG. 6A is a graph showing a plurality of data sets that may be used by the model of FIG. 3 to develop a regression model
- FIG. 6B is a graph showing a regression model developed using the plurality of data sets of FIG. 6A ;
- FIG. 6C is graph showing the regression model of FIG. 6B and its range of validity
- FIG. 7 is flow diagram of an example method that may be implemented using the example abnormal operation detection system of FIG. 3 ;
- FIG. 8A is a graph showing a received data set and a corresponding predicted value generated by the model of FIG. 3 ;
- FIG. 8B is a graph showing another received data set and another corresponding predicted value generated by the model of FIG. 3 ;
- FIG. 9A is a graph showing a plurality of data sets that may be used by the model of FIG. 3 to develop a second regression model in a different operating region;
- FIG. 9B is a graph showing a second regression model developed using the plurality of data sets of FIG. 9A ;
- FIG. 9C is a graph showing an updated model and its range of validity
- FIG. 10 is a flow diagram of an example method for updating the model of FIG. 3 ;
- FIG. 11A is a graph showing a plurality of data sets that may be used by the model of FIG. 3 to develop further regression models in different operating regions;
- FIG. 11B is a graph showing a further regression models developed using the plurality of data sets of FIG. 11A ;
- FIG. 11C is a graph showing a further updated model and its range of validity
- FIG. 12 is another example AOD system that utilizes one or more regression models
- FIG. 13 is a block diagram of an example control system for regulating the level of material in a tank
- FIG. 14 is a block diagram of an example system that may be used to detect an abnormal condition associated with the control system of FIG. 13 ;
- FIG. 15 is an example state transition diagram corresponding to an alternative operation of an AOD system such as the AOD systems of FIGS. 3 and 12 ;
- FIG. 16 is a flow diagram of an example method of operation in a LEARNING state of an AOD system
- FIG. 17 is a flow diagram of an example method for updating a model of an AOD system
- FIG. 18 is a flow diagram of an example method of operation in a MONITORING state of an AOD system
- FIG. 19A is a graph showing a plurality of data sets collected during a LEARNING state an AOD system
- FIG. 19B is a graph showing an initial regression model corresponding to the plurality of data sets of FIG. 19A ;
- FIG. 19C is a graph showing a received data set and a corresponding predicted value generated during a MONITORING state of an AOD system
- FIG. 19D is a graph showing a received data set that is out of a validity range of a model
- FIG. 19E is a graph showing a plurality of data sets in different operating region collected during a LEARNING state an AOD system
- FIG. 19F is a graph showing a second regression model developed using the plurality of data sets of FIG. 19E ;
- FIG. 19G is a graph showing an updated model and also showing a received data set and a corresponding predicted value generated during a MONITORING state of an AOD system;
- FIG. 19H is a graph showing a plurality of data sets collected during a LEARNING state an AOD system
- FIG. 19I is a graph showing an updated model developed using the plurality of data sets of FIG. 19H ;
- FIG. 20 is a block diagram of yet another example AOD system implemented on a Fieldbus segment of a process plant
- FIG. 21 is a depiction of an interface device connected within a further process plant to facilitate implementation of one or more AOD systems;
- FIG. 22 is a depiction of an interface device connected within still another process plant to facilitate implementation of one or more AOD systems
- FIG. 23 is a graph illustrating the merger of two adjacent regression models into a single regression model
- FIG. 24 is flow diagram of an example method for generating and revising a composite model
- FIG. 25 is flow diagram of an example method for revising a composite model to replace two or more regression models with a new model
- FIG. 26A is a graph of an example composite model including four regression models and three interpolation models
- FIG. 26B is a graph of the example composite model of FIG. 26A that illustrates a new model calculated based on a first pair of regression models
- FIG. 26C is a graph of the example composite model of FIG. 26A that illustrates another new model calculated based on a second pair of regression models;
- FIG. 26D is a graph of the example composite model of FIG. 26A that illustrates a further new model calculated based on a third pair of regression models;
- FIG. 26E is a graph of a revised composite model corresponding to the example composite model of FIG. 26A wherein a pair of regression models and an interpolation model in FIG. 26A have been replaced by the new model illustrated in FIG. 26C ;
- FIG. 27 is flow diagram of an example method for updating a composite model.
- an example process plant 10 in which an abnormal situation prevention system may be implemented includes a number of control and maintenance systems interconnected together with supporting equipment via one or more communication networks.
- the process plant 10 of FIG. 1 includes one or more process control systems 12 and 14 .
- the process control system 12 may be a traditional process control system such as a PROVOX or RS3 system or any other control system which includes an operator interface 12 A coupled to a controller 12 B and to input/output (I/O) cards 12 C which, in turn, are coupled to various field devices such as analog and Highway Addressable Remote Transmitter (HART) field devices 15 .
- HART Highway Addressable Remote Transmitter
- the process control system 14 which may be a distributed process control system, includes one or more operator interfaces 14 A coupled to one or more distributed controllers 14 B via a bus, such as an Ethernet bus.
- the controllers 14 B may be, for example, DeltaVTM controllers sold by Emerson Process Management of Austin, Tex. or any other desired type of controllers.
- the controllers 14 B are connected via I/O devices to one or more field devices 16 , such as for example, HART or Fieldbus field devices or any other smart or non-smart field devices including, for example, those that use any of the PROFIBUS®, WORLDFIP®, Device-Net®, AS-Interface and CAN protocols.
- the field devices 16 may provide analog or digital information to the controllers 14 B related to process variables as well as to other device information.
- the operator interfaces 14 A may store and execute tools 17 , 19 available to the process control operator for controlling the operation of the process including, for example, control optimizers, diagnostic experts, neural networks, tuners, etc.
- maintenance systems such as computers executing the AMSTM Suite: Intelligent Device Manager application or any other device monitoring and communication applications may be connected to the process control systems 12 and 14 or to the individual devices therein to perform maintenance and monitoring activities.
- a maintenance computer 18 may be connected to the controller 12 B and/or to the devices 15 via any desired communication lines or networks (including wireless or handheld device networks) to communicate with and, in some instances, reconfigure or perform other maintenance activities on the devices 15 .
- maintenance applications such as the AMS application may be installed in and executed by one or more of the user interfaces 14 A associated with the distributed process control system 14 to perform maintenance and monitoring functions, including data collection related to the operating status of the devices 16 .
- the process plant 10 also includes various rotating equipment 20 , such as turbines, motors, etc. which are connected to a maintenance computer 22 via some permanent or temporary communication link (such as a bus, a wireless communication system or hand held devices which are connected to the equipment 20 to take readings and are then removed).
- the maintenance computer 22 may store and execute known monitoring and diagnostic applications 23 provided by, for example, CSI (an Emerson Process Management Company) or other any other known applications used to diagnose, monitor and optimize the operating state of the rotating equipment 20 .
- Maintenance personnel usually use the applications 23 to maintain and oversee the performance of rotating equipment 20 in the plant 10 , to determine problems with the rotating equipment 20 and to determine when and if the rotating equipment 20 must be repaired or replaced.
- outside consultants or service organizations may temporarily acquire or measure data pertaining to the equipment 20 and use this data to perform analyses for the equipment 20 to detect problems, poor performance or other issues effecting the equipment 20 .
- the computers running the analyses may not be connected to the rest of the system 10 via any communication line or may be connected only temporarily.
- a power generation and distribution system 24 having power generating and distribution equipment 25 associated with the plant 10 is connected via, for example, a bus, to another computer 26 which runs and oversees the operation of the power generating and distribution equipment 25 within the plant 10 .
- the computer 26 may execute known power control and diagnostics applications 27 such a as those provided by, for example, Liebert and ASCO or other companies to control and maintain the power generation and distribution equipment 25 .
- outside consultants or service organizations may use service applications that temporarily acquire or measure data pertaining to the equipment 25 and use this data to perform analyses for the equipment 25 to detect problems, poor performance or other issues effecting the equipment 25 .
- the computers (such as the computer 26 ) running the analyses may not be connected to the rest of the system 10 via any communication line or may be connected only temporarily.
- a computer system 30 implements at least a portion of an abnormal situation prevention system 35 , and in particular, the computer system 30 stores and implements a configuration application 38 and, optionally, an abnormal operation detection system 42 , which will be described in more detail below. Additionally, the computer system 30 may implement an alert/alarm application 43 .
- the abnormal situation prevention system 35 may communicate with abnormal operation detection systems (not shown in FIG. 1 ) optionally located in the field devices 15 , 16 , the controllers 12 B, 14 B, the rotating equipment 20 or its supporting computer 22 , the power generation equipment 25 or its supporting computer 26 , and any other desired devices and equipment within the process plant 10 , and/or the abnormal operation detection system 42 in the computer system 30 , to configure each of these abnormal operation detection systems and to receive information regarding the operation of the devices or subsystems that they are monitoring.
- abnormal operation detection systems not shown in FIG. 1
- the abnormal operation detection systems optionally located in the field devices 15 , 16 , the controllers 12 B, 14 B, the rotating equipment 20 or its supporting computer 22 , the power generation equipment 25 or its supporting computer 26 , and any other desired devices and equipment within the process plant 10 , and/or the abnormal operation detection system 42 in the computer system 30 , to configure each of these abnormal operation detection systems and to receive information regarding the operation of the devices or subsystems that they are monitoring.
- the abnormal situation prevention system 35 may be communicatively connected via a hardwired bus 45 to each of at least some of the computers or devices within the plant 10 or, alternatively, may be connected via any other desired communication connection including, for example, wireless connections, dedicated connections which use OPC, intermittent connections, such as ones which rely on handheld devices to collect data, etc.
- the abnormal situation prevention system 35 may obtain data pertaining to the field devices and equipment within the process plant 10 via a LAN or a public connection, such as the Internet, a telephone connection, etc. (illustrated in FIG. 1 as an Internet connection 46 ) with such data being collected by, for example, a third party service provider.
- the abnormal situation prevention system 35 may be communicatively coupled to computers/devices in the plant 10 via a variety of techniques and/or protocols including, for example, Ethernet, Modbus, HTML, XML, proprietary techniques/protocols, etc.
- OPC optical coherence control
- FIG. 2 illustrates a portion 50 of the example process plant 10 of FIG. 1 for the purpose of describing one manner in which the abnormal situation prevention system 35 and/or the alert/alarm application 43 may communicate with various devices in the portion 50 of the example process plant 10 . While FIG. 2 illustrates communications between the abnormal situation prevention system 35 and one or more abnormal operation detection systems within HART and Fieldbus field devices, it will be understood that similar communications can occur between the abnormal situation prevention system 35 and other devices and equipment within the process plant 10 , including any of the devices and equipment illustrated in FIG. 1 .
- the portion 50 of the process plant 10 illustrated in FIG. 2 includes a distributed process control system 54 having one or more process controllers 60 connected to one or more field devices 64 and 66 via input/output (I/O) cards or devices 68 and 70 , which may be any desired types of I/O devices conforming to any desired communication or controller protocol.
- the field devices 64 are illustrated as HART field devices and the field devices 66 are illustrated as Fieldbus field devices, although these field devices could use any other desired communication protocols.
- each of the field devices 64 and 66 may be any type of device such as, for example, a sensor, a valve, a transmitter, a positioner, etc., and may conform to any desired open, proprietary or other communication or programming protocol, it being understood that the I/O devices 68 and 70 must be compatible with the desired protocol used by the field devices 64 and 66 .
- one or more user interfaces or computers 72 and 74 (which may be any types of personal computers, workstations, etc.) accessible by plant personnel such as configuration engineers, process control operators, maintenance personnel, plant managers, supervisors, etc. are coupled to the process controllers 60 via a communication line or bus 76 which may be implemented using any desired hardwired or wireless communication structure, and using any desired or suitable communication protocol such as, for example, an Ethernet protocol.
- a database 78 may be connected to the communication bus 76 to operate as a data historian that collects and stores configuration information as well as on-line process variable data, parameter data, status data, and other data associated with the process controllers 60 and field devices 64 and 66 within the process plant 10 .
- the database 78 may operate as a configuration database to store the current configuration, including process configuration modules, as well as control configuration information for the process control system 54 as downloaded to and stored within the process controllers 60 and the field devices 64 and 66 .
- the database 78 may store historical abnormal situation prevention data, including statistical data collected by the field devices 64 and 66 within the process plant 10 , statistical data determined from process variables collected by the field devices 64 and 66 , and other types of data that will be described below.
- process controllers 60 , I/O devices 68 and 70 , and field devices 64 and 66 are typically located down within and distributed throughout the sometimes harsh plant environment, the workstations 72 and 74 , and the database 78 are usually located in control rooms, maintenance rooms or other less harsh environments easily accessible by operators, maintenance personnel, etc.
- the process controllers 60 store and execute one or more controller applications that implement control strategies using a number of different, independently executed, control modules or blocks.
- the control modules may each be made up of what are commonly referred to as function blocks, wherein each function block is a part or a subroutine of an overall control routine and operates in conjunction with other function blocks (via communications called links) to implement process control loops within the process plant 10 .
- function blocks which may be objects in an object-oriented programming protocol, typically perform one of an input function, such as that associated with a transmitter, a sensor or other process parameter measurement device, a control function, such as that associated with a control routine that performs PID, fuzzy logic, etc.
- control or an output function, which controls the operation of some device, such as a valve, to perform some physical function within the process plant 10 .
- some device such as a valve
- hybrid and other types of complex function blocks exist, such as model predictive controllers (MPCs), optimizers, etc.
- MPCs model predictive controllers
- optimizers etc.
- the control modules may be designed using any desired control programming scheme including, for example, sequential function blocks, ladder logic, etc., and are not limited to being designed using function blocks or any other particular programming technique.
- the maintenance workstation 74 includes a processor 74 A, a memory 74 B and a display device 74 C.
- the memory 74 B stores the abnormal situation prevention application 35 and the alert/alarm application 43 discussed with respect to FIG. 1 in a manner that these applications can be implemented on the processor 74 A to provide information to a user via the display 74 C (or any other display device, such as a printer).
- Each of one or more of the field devices 64 and 66 may include a memory (not shown) for storing routines such as routines for implementing statistical data collection pertaining to one or more process variables sensed by sensing device and/or routines for abnormal operation detection, which will be described below.
- Each of one or more of the field devices 64 and 66 may also include a processor (not shown) that executes routines such as routines for implementing statistical data collection and/or routines for abnormal operation detection.
- Statistical data collection and/or abnormal operation detection need not be implemented by software. Rather, one of ordinary skill in the art will recognize that such systems may be implemented by any combination of software, firmware, and/or hardware within one or more field devices and/or other devices.
- some (and potentially all) of the field devices 64 and 66 include abnormal operation detection blocks 80 and 82 , which will be described in more detail below. While the blocks 80 and 82 of FIG. 2 are illustrated as being located in one of the devices 64 and in one of the devices 66 , these or similar blocks could be located in any number of the field devices 64 and 66 , could be located in other devices, such as the controller 60 , the I/O devices 68 , 70 or any of the devices illustrated in FIG. 1 . Additionally, the blocks 80 and 82 could be in any subset of the devices 64 and 66 .
- the blocks 80 and 82 or sub-elements of these blocks collect data, such a process variable data, from the device in which they are located and/or from other devices. Additionally, the blocks 80 and 82 or sub-elements of these blocks may process the variable data and perform an analysis on the data for any number of reasons.
- the block 80 which is illustrated as being associated with a valve, may have a stuck valve detection routine which analyzes the valve process variable data to determine if the valve is in a stuck condition.
- the block 80 may include a set of one or more statistical process monitoring (SPM) blocks or units such as blocks SPM 1 -SPM 4 which may collect process variable or other data within the valve and perform one or more statistical calculations on the collected data to determine, for example, a mean, a median, a standard deviation, a root-mean-square (RMS), a rate of change, a range, a minimum, a maximum, etc. of the collected data and/or to detect events such as drift, bias, noise, spikes, etc., in the collected data.
- SPM statistical process monitoring
- SPM statistical process monitoring
- SPM block is used herein to describe functionality that performs statistical process monitoring on at least one process variable or other process parameter, and may be performed by any desired software, firmware or hardware within the device or even outside of a device for which data is collected. It will be understood that, because the SPMs are generally located in the devices where the device data is collected, the SPMs can acquire quantitatively more and qualitatively more accurate process variable data. As a result, the SPM blocks are generally capable of determining better statistical calculations with respect to the collected process variable data than a block located outside of the device in which the process variable data is collected.
- the blocks 80 and 82 are shown to include SPM blocks in FIG. 2 , the SPM blocks may instead be stand-alone blocks separate from the blocks 80 and 82 , and may be located in the same device as the corresponding block 80 or 82 or may be in a different device.
- the SPM blocks discussed herein may comprise known Foundation Fieldbus SPM blocks, or SPM blocks that have different or additional capabilities as compared with known Foundation Fieldbus SPM blocks.
- the term statistical process monitoring (SPM) block is used herein to refer to any type of block or element that collects data, such as process variable data, and performs some statistical processing on this data to determine a statistical measure, such as a mean, a standard deviation, etc.
- this term is intended to cover software, firmware, hardware and/or other elements that perform this function, whether these elements are in the form of function blocks, or other types of blocks, programs, routines or elements and whether or not these elements conform to the Foundation Fieldbus protocol, or some other protocol, such as Profibus, HART, CAN, etc. protocol. If desired, the underlying operation of blocks 50 may be performed or implemented at least partially as described in U.S. Pat. No. 6,017,143, which is hereby incorporated by reference herein.
- the blocks 80 and 82 are shown to include SPM blocks in FIG. 2 , SPM blocks are not required of the blocks 80 and 82 .
- abnormal operation detection routines of the blocks 80 and 82 could operate using process variable data not processed by an SPM block.
- the blocks 80 and 82 could each receive and operate on data provided by one or more SPM block located in other devices.
- the process variable data could be processed in a manner that is not provided by many typical SPM blocks.
- the process variable data could be filtered by a finite impulse response (FIR) or infinite impulse response (IIR) filter such as a bandpass filter or some other type of filter.
- FIR finite impulse response
- IIR infinite impulse response
- the process variable data could be trimmed so that it remained in a particular range.
- known SPM blocks could be modified to provide such different or additional processing capabilities.
- the block 82 of FIG. 2 may have a plugged line detection unit that analyzes the process variable data collected by the transmitter to determine if a line within the plant is plugged.
- the block 82 may includes one or more SPM blocks or units such as blocks SPM 1 -SPM 4 which may collect process variable or other data within the transmitter and perform one or more statistical calculations on the collected data to determine, for example, a mean, a median, a standard deviation, etc. of the collected data.
- the blocks 80 and 82 are illustrated as including four SPM blocks each, the blocks 80 and 82 could have any other number of SPM blocks therein for collecting and determining statistical data.
- FIG. 3 is a block diagram of an example abnormal operation detection (AOD) system 100 that could be utilized in the abnormal operation detection blocks 80 and 82 of FIG. 2 .
- the AOD system 100 includes a first SPM block 104 and a second SPM block 108 coupled to a model 112 .
- the first SPM block 104 receives a first process variable and generates first statistical data from the first process variable.
- the first statistical data could be any of various kinds of statistical data such as mean data, median data, standard deviation data, rate of change data, range data, etc., calculated from the first process variable. Such data could be calculated based on a sliding window of first process variable data or based on non-overlapping windows of first process variable data.
- the first SPM block 104 may generate mean data using a most recent first process variable sample and 49 previous samples of the first process variable. In this example, a mean variable value may be generated for each new first process variable sample received by the first SPM block 104 . As another example, the first SPM block 104 may generate mean data using non-overlapping time periods. In this example, a window of five minutes (or some other suitable time period) could be used, and a mean variable value would thus be generated every five minutes. In a similar manner, the second SPM block 108 receives a second process variable and generates second statistical data from the second process variable in a manner similar to the SPM block 104 .
- the model 112 includes an independent variable X input and a dependent variable Y.
- the model 112 may be trained using a plurality of data sets (X, Y), to model Y (dependent variable) as a function of X (independent variable).
- the model 112 may include one or more regression models, each regression model for a different operating region. Each regression model may utilize a function to model the dependent variable Y as a function of the independent variable X over some range of X.
- the regression model may comprise be a linear regression model, for example, or some other regression model.
- a linear regression model comprises some linear combination of functions f(X), g(X), h(X), . . . .
- X first order function
- other types of functions may be utilized as well such as higher order polynomials, sinusoidal functions, logarithmic functions, exponential functions, power functions, etc.
- the model 112 may be used to generate a predicted value (Y P ) of a dependent variable Y based on a given independent variable X input.
- the output Y P of the model 112 is provided to a deviation detector 116 .
- the deviation detector 116 receives the output Y P of the regression model 112 as well as the dependent variable input Y to the model 112 .
- the deviation detector 116 compares the dependent variable Y to the value Y P generated by the model 112 to determine if the dependent variable Y is significantly deviating from the predicted value Y P .
- the deviation detector 116 may generate an indicator of the deviation.
- the indicator may comprise an alert or alarm.
- the AOD system 100 can be modified in various ways.
- the SPM blocks 104 and 108 could be omitted.
- other types of processing in addition to or instead of the SPM blocks 104 and 108 could be utilized.
- the process variable data could be filtered, trimmed, etc., prior to the SPM blocks 104 and 108 , or rather than utilizing the SPM blocks 104 and 108 .
- model 112 is illustrated as having a single independent variable input X, a single dependent variable input Y, and a single predicted value Y P , the model 112 could include a regression model that models multiple variables Y as a function of multiple variables X.
- the model 112 could comprise a multiple linear regression (MLR) model, a principal component regression (PCR) model, a partial least squares (PLS) model, a ridge regression (RR) model, a variable subset selection (VSS) model, a support vector machine (SVM) model, etc.
- MLR multiple linear regression
- PCR principal component regression
- PLS partial least squares
- RR ridge regression
- VSS variable subset selection
- SVM support vector machine
- the AOD system 100 could be implemented wholly or partially in a field device.
- the SPM blocks 104 and 108 could be implemented in a field device 66 and the model 112 and/or the deviation detector 116 could be implemented in the controller 60 or some other device.
- the AOD system 100 could be implemented as a function block, such as a function block to be used in system that implements a Fieldbus protocol. Such a function block may or may not include the SPM blocks 104 and 108 .
- each of at least some of the blocks 104 , 108 , 112 , and 116 may be implemented as a function block.
- the AOD system 100 may be in communication with the abnormal situation prevention system 35 ( FIGS. 1 and 2 ).
- the AOD system 100 may be in communication with the configuration application 38 to permit a user to configure the AOD system 100 .
- the SPM blocks 104 and 108 , the model 112 , and the deviation detector 116 may have user configurable parameters that may be modified via the configuration application 38 .
- the AOD system 100 may provide information to the abnormal situation prevention system 35 and/or other systems in the process plant.
- the deviation indicator generated by the deviation detector 116 could be provided to the abnormal situation prevention system 35 and/or the alert/alarm application 43 to notify an operator of the abnormal condition.
- parameters of the model could be provided to the abnormal situation prevention system 35 and/or other systems in the process plant so that an operator can examine the model and/or so that the model parameters can be stored in a database.
- the AOD system 100 may provide X, Y, and/or Y P values to the abnormal situation prevention system 35 so that an operator can view the values, for instance, when a deviation has been detected.
- FIG. 4 is a flow diagram of an example method 150 for detecting an abnormal operation in a process plant.
- the method 150 could be implemented using the example AOD system 100 of FIG. 3 and will be used to explain the operation of the AOD system 100 .
- the method 150 could be implemented by a system different than the AOD system 100 .
- a model such as the model 112 , is trained.
- the model could be trained using independent variable X and dependent variable Y data sets to configure it to model Y as a function of X.
- the model could include multiple regression models that each model Y as a function of X for a different range of X.
- the trained model generates predicted values (Y P ) of the dependent variable Y using values of the independent variable X that it receives.
- the actual values of Y are compared to the corresponding predicted values Y P to determine if Y is significantly deviating from Y P .
- the deviation detector 116 receives the output Y P of the model 112 and compares it to the dependent variable Y. If it is determined that Y has significantly deviated from Y P an indicator of the deviation may be generated at a block 166 . In the AOD system 100 , for example, the deviation detector 116 may generate the indicator.
- the indicator may be an alert or alarm, for example, or any other type of signal, flag, message, etc., indicating that a significant deviation has been detected.
- the block 154 may be repeated after the model has been initially trained and after it has generated predicted values Y P of the dependent variable Y.
- the model could be retrained if a set point in the process has been changed.
- FIG. 5 is a flow diagram of an example method 200 for initially training a model such as the model 112 of FIG. 3 .
- a block 204 at least an adequate number of data sets (X, Y) for the independent variable X and the dependent variable Y may be received in order to train a model.
- the data sets (X, Y) may comprise process variable data, process variable data that has been filtered or otherwise processed, statistical data generated from the process variable data, etc.
- the model 112 may receive data sets (X, Y) from the SPM blocks 104 and 108 .
- a graph 220 shows an example of a plurality of data sets (X,Y) received by a model.
- a validity range [X MIN , X MAX ] for the model may be generated.
- the validity range may indicate a range of the independent variable X for which the model is valid.
- the validity range may indicate that the model is valid only for X values in which X is greater than or equal to X MIN and less than or equal to X MAX .
- X MIN could be set as the smallest value of X in the data sets (X,Y) received at the block 204
- X MAX could be set as the largest value of X in the data sets (X,Y) received at the block 204 .
- X MIN could be set to the X value of the leftmost data set
- X MAX could be set as the X value of the rightmost data set, for example.
- the determination of validity range could be implemented in other ways as well.
- the model block 112 could generate the validity range.
- a regression model for the range [X MIN , X MAX ] may be generated based on the data sets (X, Y) received at the block 204 .
- Any of a variety of techniques, including known techniques, may be used to generate the regression model, and any of a variety of functions could be used as the model.
- the model of could comprise a linear equation, a quadratic equation, a higher order equation, etc.
- a curve 224 superimposed on the data sets (X, Y) received at the block 204 illustrates a regression model that has been generated to model the data sets (X, Y).
- the curve 224 is illustrated without the data sets (X, Y).
- the regression model corresponding to the curve 224 is valid in the range [X MIN , X MAX ].
- the model block 112 could generate the regression model for the range [X MIN , X MAX ].
- FIG. 7 is a flow diagram of an example method 240 for using a model to determine whether abnormal operation is occurring, has occurred, or may occur, wherein the model may be updated if the modeled process moves into a different operating region.
- the method 240 may be implemented by an AOD system such as the AOD system 100 of FIG. 3 .
- the method 240 could be implemented by other types of AOD systems as well.
- the method 240 may be implemented after an initial model has been generated.
- the method 200 of FIG. 5 for example, could be used to generate the initial model.
- a data set (X, Y) is received.
- the model 112 could receive a data set (X, Y) from the SPM blocks 104 and 108 , for example. Then, at a block 248 , it may be determined whether the data set (X, Y) received at the block 244 is in a validity range.
- the validity range may indicate a range in which the model is valid.
- the model 112 could examine the value X received at the block 244 to determine if it is within the validity range [X MIN , X MAX ]. If it is determined that the data set (X, Y) received at the block 244 is in the validity range, the flow may proceed to a block 252 .
- a predicted value Y P of the dependent variable Y may be generated using the model.
- the model generates the predicted value Y P from the value X received at the block 244 .
- the model 112 generates the predicted value Y P from the value X received from the SPM block 104 .
- the value Y received at the block 244 may be compared with the predicted value Y P .
- the comparison may be implemented in a variety of ways. For example, a difference or a percentage difference could be generated. Other types of comparisons could be used as well.
- FIG. 8A an example received data set is illustrated in the graph 220 as a dot, and the corresponding predicted value, Y P , is illustrated as an “x”. As illustrated in FIG. 8A , it has been calculated that the difference between Y received at the block 244 and the predicted value Y P is ⁇ 1.9808%. Referring now to FIG.
- FIG. 8B another example received data set is illustrated in the graph 220 as a dot, and the corresponding predicted value, Y P , is illustrated as an “x”. As illustrated in FIG. 8B , it has been calculated that the difference between Y received at the block 244 and the predicted value Y P is ⁇ 28.957%. In the AOD system 100 of FIG. 3 , the deviation detector 116 may perform the comparison.
- a block 260 it may be determined whether the value Y received at the block 244 significantly deviates from the predicted value Y P based on the comparison of the block 256 .
- the determination at the block 260 may be implemented in a variety of ways and may depend upon how the comparison of the block 256 was implemented. For example, if a difference value was generated at the block 256 , it may be determined whether this difference value exceeds some threshold.
- the threshold may be a predetermined or configurable value. Also, the threshold may be constant or may vary. For example, the threshold may vary depending upon the value of the independent variable X value received at the block 244 .
- a percentage difference value may be determined whether this percentage value exceeds some threshold percentage.
- a significant deviation may be determined only if two or some other number of consecutive comparisons exceed a threshold.
- the difference between Y received at the block 244 and the predicted value Y P is ⁇ 1.9808%. If, for example, a threshold of 10% is to be used to determine whether a deviation is significant, the absolute value of the difference illustrated in FIG. 8A is below that threshold.
- the difference between Y received at the block 244 and the predicted value Y P is ⁇ 28.957%.
- the absolute value of the difference illustrated in FIG. 8B is above the threshold value 10% so an abnormal condition indicator may be generated as will be discussed below.
- the deviation detector 116 may implement the block 260 .
- determining if the value Y significantly deviates from the predicted value Y P may be implemented using a variety of techniques, including known techniques. For instance, determining if the value Y significantly deviates from the predicted value Y P may include analyzing the present values of Y and Y P . For example, Y could be subtracted from Y P , or vice versa, and the result may be compared to a threshold to see if it exceeds the threshold. It may optionally comprise also analyzing past values of Y and Y P . Further, it may comprise comparing Y or a difference between Y and Y P to one or more thresholds. Each of the one or more thresholds may be fixed or may change.
- a threshold may change depending on the value of X or some other variable.
- U.S. patent application Ser. No. 11/492,347 entitled “METHODS AND SYSTEMS FOR DETECTING DEVIATION OF A PROCESS VARIABLE FROM EXPECTED VALUES,” filed Jul. 25, 2006, and which is hereby incorporated by reference herein, describes example systems and methods for detecting whether a process variable significantly deviates from an expected value, and any of these systems and methods may optionally be utilized.
- One of ordinary skill in the art will recognize many other ways of determining if the value Y significantly deviates from the predicted value Y P . Further, blocks 256 and 260 may be combined.
- criteria to be used in the comparing Y to Y P (block 256 ) and/or the criteria to be used in determining if Y significantly deviates from Y P (block 260 ) may be configurable by a user via the configuration application 38 ( FIGS. 1 and 2 ) for example.
- the type of comparison e.g., generate difference, generate absolute value of difference, generate percentage difference, etc.
- the threshold or thresholds to be used in determining whether the deviation is significant may be configurable. Alternatively, such criteria may not be readily configurable by an operator.
- the flow may return to the block 244 to receive the next data set (X,Y). If however, it is determined that the value Y does significantly deviate from the predicted value Y P , the flow may proceed to the block 264 .
- an indicator of a deviation may be generated.
- the indicator may be an alert or alarm, for example.
- the generated indicator may include additional information such as whether the value Y received at the block 244 was higher than expected or lower than expected, for example.
- the deviation detector 116 may generate the indicator.
- the flow may proceed to a block 268 .
- FIG. 9A it shows a graph illustrating a received data set 290 that is not in the validity range.
- the data set (X, Y) received at the block 244 may be added to an appropriate group of data sets that may be used to train the model at a subsequent time.
- the data set (X,Y) received at the block 244 may be added to a data group corresponding to other received data sets in which the value of X is less than X MIN .
- the data set (X,Y) received at the block 244 may be added to a data group corresponding to other received data sets in which the value of X is greater than X MAX .
- the data set 290 has been added to a group of data sets 294 corresponding to data sets in which the value of X is less than X MIN .
- the model block 112 may implement the block 268 .
- a block 272 it may be determined if enough data sets are in the data group to which the data set was added at the block 268 in order to generate a regression model corresponding to the data in that group.
- This determination may be implemented using a variety of techniques. For example, the number of data sets in the group may be compared to a minimum number, and if the number of data sets in the group is at least this minimum number, it may be determined that there are enough data sets in order to generate a regression model. The minimum number may be selected using a variety of techniques, including techniques known to those of ordinary skill in the art. If it is determined that there are enough data sets in order to generate a regression model, the model may be updated at a block 276 , as will be described below with reference to FIG. 10 . If it is determined, however, that there are not enough data sets in order to generate a regression model, the flow may return to the block 244 to receive the next data set (X, Y).
- FIG. 10 is a flow diagram of an example method 276 for updating the model after it is determined that there are enough data sets in a group in order to generate a regression model for data sets outside the current validity range [X MIN , X MAX ].
- a range [X′ MIN , X′ MAX ] for a new regression model may be determined.
- the validity range may indicate a range of the independent variable X for which the new regression model will be valid. For instance, the validity range may indicate that the model is valid only for X values in which X is greater than or equal to X′ MIN and less than or equal to X′ MAX .
- X′ MIN could be set as the smallest value of X in the group of data sets (X,Y), and X′ MAX could be set as the largest value of X in the group of data sets (X,Y).
- X′ MIN could be set to the X value of the leftmost data set in the group 294
- X′ MAX could be set as the X value of the rightmost data set in the group 294 , for example.
- the model block 112 could generate the validity range.
- a regression model for the range [X′ MIN , X′ MAX ] may be generated based on the data sets (X, Y) in the group. Any of a variety of techniques, including known techniques, may be used to generate the regression model, and any of a variety of functions could be used as the model.
- the model could comprise a linear equation, a quadratic equation, etc.
- a curve 312 superimposed on the group 294 illustrates a regression model that has been generated to model the data sets in the group 294 .
- the regression model corresponding to the curve 312 is valid in the range [X′ MIN , X′ MAX ], and the regression model corresponding to the curve 224 is valid in the range [X MIN , X MAX ].
- the model 112 could generate the regression model for the range [X′ MIN , X′ MAX ].
- the range [X MIN , X MAX ] will now be referred to as [X MIN — 1 , X MAX — 1 ], and the range [X′ MIN , X′ MAX ] will now be referred to as [X MIN — 2 , X MAX — 2 ].
- the regression model corresponding to the range [X MIN — 1 , X MAX — 1 ] will be referred to as f 1 (x)
- regression model corresponding to the range [X MIN — 2 , X MAX — 2 ] will be referred to as f 2 (x).
- the model may now be represented as:
- f ⁇ ( X ) ⁇ f 1 ⁇ ( X ) ⁇ ⁇ for ⁇ ⁇ X MIN_ ⁇ 1 ⁇ X ⁇ X MAX_ ⁇ 1 f 2 ⁇ ( X ) ⁇ ⁇ for ⁇ ⁇ X MIN_ ⁇ 2 ⁇ X ⁇ X MAX_ ⁇ 2 ( Equ . ⁇ 1 )
- an interpolation model may be generated between the regression models corresponding to the ranges [X MIN — 1 , X MAX — 1 ] and [X MIN — 2 , X MAX — 2 ].
- the interpolation model described below comprises a linear function, but in other implementations, other types of functions, such as a quadratic function, can be used. If X MAX — 1 is less than X MIN — 2 , then the interpolation model may be calculated as:
- the interpolation model may be calculated as:
- f ⁇ ( X ) ⁇ ⁇ f 1 ⁇ ( X ) for ⁇ ⁇ X MIN_ ⁇ 1 ⁇ X ⁇ X MAX_ ⁇ 1 ⁇ ( f 2 ⁇ ( X MIN_ ⁇ 2 ) - f 1 ⁇ ( X MAX_ ⁇ 1 ) X MIN_ ⁇ 2 - X MAX_ ⁇ 1 ) ⁇ ( X - X MIN_ ⁇ 2 ) + f 2 ⁇ ( X MIN_ ⁇ 2 ) for ⁇ ⁇ X MAX_ ⁇ 1 ⁇ X ⁇ X MIN_ ⁇ 2 ⁇ f 2 ⁇ ( X ) for ⁇ ⁇ X MIN_ ⁇ 2 ⁇ X ⁇ X MAX_ ⁇ 2 ( Equ . ⁇ 4 )
- the interpolation model may be represented as:
- f ⁇ ( X ) ⁇ ⁇ f 2 ⁇ ( X ) for ⁇ ⁇ X MIN_ ⁇ 2 ⁇ X ⁇ X MAX_ ⁇ 2 ⁇ ( f 1 ⁇ ( X MIN_ ⁇ 1 ) - f 2 ⁇ ( X MAX_ ⁇ 2 ) X MIN_ ⁇ 1 - X MAX_ ⁇ 2 ) ⁇ ( X - X MIN_ ⁇ 1 ) + f 1 ⁇ ( X MIN_ ⁇ 1 ) for ⁇ ⁇ X MAX_ ⁇ 2 ⁇ X ⁇ X MIN_ ⁇ 1 ⁇ f 1 ⁇ ( X ) for ⁇ ⁇ X MIN_ ⁇ 1 ⁇ X ⁇ X MAX_ ⁇ 1 ( Equ . ⁇ 5 )
- the model may comprise a plurality of regression models.
- a first regression model i.e., f 1 (X)
- a second regression model i.e., f 2 (X)
- the model may also comprise an interpolation model to model the dependent variable Y in between operating regions corresponding to the regression models.
- the validity range may be updated. For example, if X MAX — 1 is less than X MIN — 2 , then X MIN may be set to X MIN — 1 and X MAX may be set to X MAX — 2 Similarly, if X MAX — 2 is less than X MIN — 1 , then X MIN may be set to X MIN — 2 and X MAX may be set to X MAX — 1 FIG. 9C illustrates the new model with the new validity range.
- the model may be updated a plurality of times using a method such as the method 276 .
- FIG. 11A illustrates a first group 354 of data sets and a second group 358 of data sets outside of the validity region corresponding to the model illustrated in FIG. 9C
- FIG. 11B illustrates corresponding to regression models generated for the first group 354 of data sets and the second group 358 of data sets.
- FIG. 11C illustrates a new updated model that includes the regression models generated for the first group 354 of data sets and the second group 358 of data sets as well as new interpolation models.
- 11 C illustrates a new validity range for the model.
- the abnormal situation prevention system 35 may cause, for example, graphs similar to some or all of the graphs illustrated in FIGS. 6A , 6 B, 6 C, 8 A, 8 B, 9 A, 9 B, 9 C, 11 A, 11 B and 11 C to be displayed on a display device.
- the abnormal situation prevention system 35 may use this data to generate a display illustrating how the model 112 is modeling the dependent variable Y as a function of the independent variable X.
- the display may include a graph similar to one or more of the graphs of FIGS. 6C , 9 C and 11 C.
- the AOD system 100 may also provide the abnormal situation prevention system 35 or a database, for example, with some or all of the data sets used to generate the model 112 .
- the abnormal situation prevention system 35 may use this data to generate a display having a graph similar to one or more of the graphs of FIGS. 6A , 6 B, 9 A, 9 B, 11 A and 11 B.
- the AOD system 100 may also provide the abnormal situation prevention system 35 or a database, for example, with some or all of the data sets that the AOD system 100 is evaluating during its monitoring phase.
- the AOD system 100 may also provide the abnormal situation prevention system 35 or a database, for example, with the comparison data for some or all of the data sets. In this case, as just one example, the abnormal situation prevention system 35 may use this data to generate a display having a graph similar to one or more of the graphs of FIGS. 8A and 8B .
- FIG. 12 is a block diagram of another example AOD system 400 that could be used for the abnormal operation detection blocks 80 and 82 of FIG. 2 .
- the AOD system 400 includes a first SPM block 404 and a second SPM block 408 .
- the SPM block 404 receives a load variable associated with a process and generates a mean signal corresponding to the load variable.
- the SPM block 408 receives a monitored variable associated with the process and generates a mean signal based on the monitored variable.
- the SPM block 408 generates a standard deviation signal based on the monitored variable.
- the mean signals from the SPM block 404 and the SPM block 408 , as well as the standard deviation signal from the SPM block 408 may be generated using a variety of techniques, including known techniques.
- the SPM block 404 could generate mean values by calculating the means of non-overlapping blocks of load variable samples.
- the blocks could have a fixed length such as a particular number of samples or a time period. As a particular example used for illustrative purposes, if the block was five minutes in length, the SPM block 404 would generate a mean value every five minutes.
- the configuration application 38 could be used to configure the SPM blocks 404 and 408 .
- the SPM blocks 404 and 408 may not be readily configurable by an operator.
- the mean output of the SPM block 404 is provided as an independent variable (X) input of a model 412
- the mean output of the SPM block 408 is provided as a dependent variable (Y) input of the model 412
- the model 412 may comprise a model such as the model 112 of FIG. 3 , for example.
- the mean output of the SPM block 404 is also provided as an independent variable (X) input of a model 416
- the standard deviation output of the SPM block 408 is provided as a dependent variable (Y) input of the model 416 .
- the model 416 may comprise a model such as the model 112 of FIG. 3 , for example.
- the model 412 generally models the mean of the monitored variable as a function of the mean of the load variable.
- the model 416 generally models the standard deviation of the monitored variable as a function of the mean of the load variable. This may be useful in situations where the standard deviation of the monitored variable tends to change as the load variable changes.
- the Y P outputs of the models 412 and 416 are provided to a deviation detector 420 . Additionally, the mean output of the SPM block 408 is provided to the deviation detector 420 .
- the deviation detector 420 generally compares the mean ( ⁇ mv ) of the monitored variable to the predicted mean ( ⁇ Pmv ) generated by the model 412 . Additionally, the deviation detector 420 utilizes this comparison as well as the predicted standard deviation ( ⁇ Pmv ) generated by the model 416 to determine if a significant deviation has occurred. More specifically, the deviation detector 420 generates a status signal as follows:
- the AOD system 400 could be implemented as a function block, such as a function block to be used in system that implements a Fieldbus protocol.
- each of some or all of blocks 404 , 408 , 412 , 416 and 420 may be implemented as a separate function block.
- FIG. 13 is a block diagram of an example control system 450 for regulating the level of material in a tank 454 .
- a control system such as the control system 450 is often referred to in the process control industry as a Level Regulatory Control Loop.
- the control system 450 includes a flow sensor 458 to sense the flow of material into the tank 454 , and a flow sensor 462 to sense the flow of material exiting the tank 454 .
- the flow sensor 458 may generate a signal IF indicative of the flow rate of material entering the tank 454 , for example, and the flow sensor 462 may generate a signal OF indicative of the flow rate of material exiting the tank 454 , for example.
- the control system 450 may also include a level sensor 466 to sense the level of material in the tank 454 .
- the level sensor 466 may generate a signal LVL indicative of the level of material in the tank 454 , for example.
- a pump 470 may facilitate draining material from the tank 454 , and a valve 474 may be used to regulate the flow rate of material exiting the tank.
- a position of the valve may be altered using a control demand (CD) signal in a manner well known to those of ordinary skill in the art.
- the valve 474 may include a sensor that generates a signal VP indicative of the position of the valve.
- a PID control routine 478 may be used to control the valve 474 in order to regulate the level of material in the tank 454 according to a set point (SP). Any of a variety of suitable control routines may be utilized for the PID control routine 478 . In general, such a routine may utilize one or more of the following signals to generate a control demand (CD) signal to appropriately control the valve 454 : SP, LVL, VP, IF and/or OF.
- CD control demand
- the measurement drift condition may be indicative of a problem with a sensor, such as the level sensor 466 .
- a measurement drift condition may result in the signal LVL not accurately indicating the actual level in the tank 454 .
- the valve problem condition may indicate a problem with the valve 474 . This may result, for example, in the VP signal indicating a different valve position than that indicated by the CD signal.
- underlying problems may cause another problem to occur, such as the level in the tank becoming too high or too low. This may lead to an alert or alarm being generated. But it may take an operator some time to determine the underlying problem that led to the alert/alarm.
- FIG. 14 is a block diagram of an example system 500 that may be used to detect an abnormal condition associated with the control system 450 of FIG. 13 . It is to be understood, however, that the system 500 could be used with other control systems as well. It is believed that a system such as the system 500 may help to detect a measurement drift or valve problem before such underlying conditions lead to a more serious problem such as a tank level being too high or too low. Thus, the system 500 may help to limit down time because, for example, replacement parts could be ordered in advance of a shut down. Similarly, economic loss may be reduced because a shut down could be scheduled in advance, as opposed to the system being shut down immediately in response to tank level alarm. Alternatively, a faulty sensor or valve could be replaced without shutting the process down.
- the system 500 includes a first AOD block 504 and a second AOD block 508 .
- Each of the AOD blocks 504 and 508 may comprise an AOD system such as the AOD system 400 of FIG. 12 .
- each of the AOD blocks 504 and 508 may include a load variable (LV) input, a monitored variable (MV) input, and a status (S) output as in the AOD system 400 of FIG. 12 .
- LV load variable
- MV monitored variable
- S status
- the LVL signal may be provided to the LV input of the AOD block 504 and also to the LV input of the AOD block 508 .
- the CD signal may be provided to the MV input of the AOD block 504 .
- the CD signal may also be provided to a subtraction block 512 , along with the VP signal.
- the subtraction block 512 may generate an output signal VP-CD, which may be provided to the MV input of the AOD block 508 .
- the AOD block 504 generally models the mean of the CD signal as a function of the mean of the LVL signal.
- the AOD block 508 generally models the mean of the signal VP-CD as a function of the mean of the LVL signal.
- a status signal S 1 generated by the AOD block 504 and a status signal S 2 generated by the AOD block 508 may be provided to a logic block 516 .
- the signals S 1 and S 2 may be generated in the manner described with respect to FIG. 12 .
- the logic block 516 may generate a control system status signal that generally indicates whether an abnormal condition has been detected and provides information as to the type of abnormal condition. For example, the logic block 516 may generate an indicator of a valve problem if the status signal S 2 has a value of either “UP” or “DOWN”. Also, the logic block 516 may generate an indicator of a measurement drift problem if the status signal S 2 has a value of “NO CHANGE” and the status signal S 1 has a value of either “UP” or “DOWN”. If the status signals S 1 and S 2 both have values of “NO CHANGE,” the logic block 516 may generate an indicator that no abnormal condition has been detected.
- a system similar to the system 500 of FIG. 14 could be utilized to detect other types of abnormal conditions associated with a control system such as the control system 450 of FIG. 13 .
- a similar system could be used to detect a liquid leak condition, a head loss condition, etc.
- system 500 could be a function block, such as a function block to be used in system that implements a Fieldbus protocol.
- each of at least some of the blocks 504 , 508 , 512 , and 516 may be implemented as a function block.
- the model may automatically update itself when enough data sets have been obtained in a particular operating region. However, it may be desired that such updates do not occur unless a human operator permits it. Additionally, it may be desired to allow a human operator to cause the model to update even when received data sets are in the validity region.
- FIG. 15 is an example state transition diagram 550 corresponding to an alternative operation of an AOD system such as the AOD system 100 of FIG. 3 and AOD system 400 of FIG. 12 .
- the operation corresponding to the state diagram 550 allows a human operator more control over the AOD system.
- an operator may cause a LEARN command to be sent to the AOD system when the operator desires that the model of the AOD system be forced into a LEARNING state 554 .
- the AOD system obtains data sets for generating a regression model.
- the operator may cause a MONITOR command to be sent to the AOD system.
- the AOD system may transition to a MONITORING state 558 .
- An initial state of the AOD system may be an UNTRAINED state 560 , for example.
- the AOD system may transition from the UNTRAINED state 560 to the LEARNING state 554 when a LEARN command is received. If a MONITOR command is received, the AOD system may remain in the UNTRAINED state 560 .
- an indication may be displayed on a display device to notify the operator that the AOD system has not yet been trained.
- each received data set may be analyzed to determine if it is in the validity range. If the received data set is not in the validity range, the AOD system may remain in the OUT OF RANGE state 562 . If, however, a received data set is within the validity range, the AOD system may transition to the MONITORING state 558 . Additionally, if a LEARN command is received, the AOD system may transition to the LEARNING state 554 .
- the AOD system may collect data sets so that a regression model may be generated in one or more operating regions corresponding to the collected data sets. Additionally, the AOD system optionally may check to see if a maximum number of data sets has been received. The maximum number may be governed by storage available to the AOD system, for example. Thus, if the maximum number of data sets has been received, this may indicate that the AOD system is, or is in danger of, running low on available memory for storing data sets, for example. In general, if it is determined that the maximum number of data sets has been received, or if a MONITOR command is received, the model of the AOD system may be updated and the AOD system may transition to the MONITORING state 558 .
- FIG. 16 is a flow diagram of an example method 600 of operation in the LEARNING state 554 .
- a block 604 it may be determined if a MONITOR command was received. If a MONITOR command was received, the flow may proceed to a block 608 .
- a block 608 it may be determined if a minimum number of data sets has been collected in order to generate a regression model. If the minimum number of data sets has not been collected, the AOD system may remain in the LEARNING state 554 .
- an indication may be displayed on a display device to notify the operator that the AOD system is still in the LEARNING state because the minimum number of data sets has not yet been collected.
- the flow may proceed to a block 612 .
- the model of the AOD system may be updated as will be described in more detail with reference to FIG. 17 .
- the AOD system may transition to the MONITORING state 558 .
- the flow may proceed to a block 620 , at which a new data set may be received.
- the received data set may be added to an appropriate training group.
- An appropriate training group may be determined based on the X value of the data set, for instance. As an illustrative example, if the X value is less than X MIN of the model's validity range, the data set could be added to a first training group. And, if the X value is greater than X MAX of the model's validity range, the data set could be added to a second training group.
- a block 628 it may be determined if a maximum number of data sets has been received. If the maximum number has been received, the flow may proceed to the block 612 , and the AOD system will eventually transition to the MONITORING state 558 as described above. On the other hand, if the maximum number has not been received, the AOD system will remain in the LEARNING state 554 .
- the method 600 can be modified in various ways. As just one example, if it is determined that the maximum number of data sets has been received at the block 628 , the AOD system could merely stop adding data sets to a training group. Additionally or alternatively, the AOD system could cause a user to be prompted to give authorization to update the model. In this implementation, the model would not be updated, even if the maximum number of data sets had been obtained, unless a user authorized the update.
- FIG. 17 is a flow diagram of an example method 650 that may be used to implement the block 612 of FIG. 16 .
- a range [X′ MIN , X′ MAX ] may be determined for the regression model to be generated using the newly collected data sets.
- the range [X′ MIN , X′ MAX ] may be implemented using a variety of techniques, including known techniques.
- the regression model corresponding to the range [X′ MIN , X′ MAX ] may be generated using some or all of the data sets collected and added to the training group as described with reference to FIG. 16 .
- the regression model may be generated using a variety of techniques, including known techniques.
- a block 662 it may be determined if this is the initial training of the model. As just one example, it may be determined if the validity range [X MIN , X MAX ] is some predetermined range that indicates that the model has not yet been trained. If it is the initial training of the model, the flow may proceed to a block 665 , at which the validity range [X MIN , X MAX ] will be set to the range determined at the block 654 .
- the flow may proceed to a block 670 .
- it may be determined whether the range [X′ MIN , X′ MAX ] overlaps with the validity range [X MIN , X MAX ]. If there is overlap, the flow may proceed to a block 674 , at which the ranges of one or more other regression models or interpolation models may be updated in light of the overlap.
- the other regression model or interpolation model may be discarded. This may help to conserve memory resources, for example.
- the validity range may be updated, if needed. For example, if X′ MIN is less than X MIN of the validity range, X MIN of the validity range may be set to the X′ MIN .
- the flow may proceed to a block 682 .
- an interpolation model may be generated, if needed.
- the validity range may be updated.
- the blocks 682 and 686 may be implemented in a manner similar to that described with respect to blocks 316 and 320 of FIG. 10 .
- the method 650 can be modified in various ways. As just one example, if it is determined that the range [X′ MIN , X′ MAX ] overlaps with the validity range [X MIN , X MAX ], one or more of the range [X′ MIN , X′ MAX ] and the operating ranges for the other regression models and interpolation models could be modified so that none of these ranges overlap.
- FIG. 18 is a flow diagram of an example method 700 of operation in the MONITORING state 558 .
- a block 704 it may be determined if a LEARN command was received. If a LEARN command was received, the flow may proceed to a block 708 .
- the AOD system may transition to the LEARNING state 554 . If a LEARN command was not received, the flow may proceed to a block 712 .
- a data set (X,Y) may be received as described previously. Then, at a block 716 , it may be determined whether the received data set (X,Y) is within the validity range [X MIN , X MAX ]. If the data set is outside of the validity range [X MIN , X MAX ], the flow may proceed to a block 720 , at which the AOD system may transition to the OUT OF RANGE state 562 . But if it is determined at the block 716 that the data set is within the validity range [X MIN , X MAX ], the flow may proceed to blocks 724 , 728 and 732 . The blocks 724 , 728 and 732 may be implemented similarly to the blocks 158 , 162 and 166 , respectively, as described with reference to FIG. 4 .
- FIGS. 19A-19I are graphs to help illustrate an example of how an AOD system could operate.
- FIG. 19A shows a graph 800 illustrating the AOD system in the LEARNING state 554 while its model is being initially trained.
- the graph 800 of FIG. 19A includes a group 804 of data sets that have been collected. After an operator has caused a MONITOR command to be issued, or if a maximum number of data sets has been collected, a regression model corresponding to the group 804 of data sets may be generated.
- the graph 800 of FIG. 19B includes a curve 808 indicative of the regression model corresponding to the group 804 of data sets. Then, the AOD system may transition to the MONITORING state 558 .
- the graph 800 of FIG. 19C illustrates operation of the AOD system in the MONITORING state 558 .
- the AOD system receives a data set 812 that is within the validity range.
- the model generates a prediction Y P (indicated by an x in the graph of FIG. 19C ) using the regression model indicated by the curve 808 .
- the AOD system receives a data set 816 that is not within the validity range. This may cause the AOD system to transition to the OUT OF RANGE state 562 .
- the graph 800 of FIG. 19E illustrates operation of the AOD system after it has transitioned back to the LEARNING state 554 .
- the graph of FIG. 19E includes a group 820 of data sets that have been collected. After an operator has caused a MONITOR command to be issued, or if a maximum number of data sets has been collected, a regression model corresponding to the group 820 of data sets may be generated.
- the graph 800 of FIG. 19F includes a curve 824 indicative of the regression model corresponding to the group 820 of data sets. Next, an interpolation model may be generated for the operating region between the curves 808 and 824 .
- the AOD system may transition back to the MONITORING state 558 .
- the graph of FIG. 19G illustrates the AOD system again operating in the MONITORING state 558 .
- the AOD system receives a data set 828 that is within the validity range.
- the model generates a prediction Y P (indicated by an x in the graph of FIG. 19G ) using the regression model indicated by the curve 824 of FIG. 19F .
- the graph 800 of FIG. 19H illustrates operation of the AOD system after it has again transitioned to the LEARNING state 554 .
- the graph of FIG. 19H includes a group 832 of data sets that have been collected. After an operator has caused a MONITOR command to be issued, or if a maximum number of data sets has been collected, a regression model corresponding to the group 832 of data sets may be generated.
- the graph 800 of FIG. 19I includes a curve 836 indicative of the regression model corresponding to the group 832 of data sets.
- ranges of the other regression models may be updated.
- the ranges of the regression models corresponding to the curves 808 and 824 have been shortened as a result of adding the regression model corresponding to the curve 836 .
- the interpolation model for the operating region between the regression models corresponding to the curves 808 and 824 has been overridden by the regression model corresponding to curve 836 .
- the interpolation model may be deleted from a memory associated with the AOD system if desired.
- the AOD system may operate as described previously.
- the graph of FIG. 19I shows a received data set 840 that is within the validity range.
- the model generates a prediction Y P (indicated by an x in the graph of FIG. 19I ) using the regression model indicated by the curve 836 .
- FIG. 20 is a block diagram showing one possible way in which an AOD system may be implemented in a process plant.
- a Fieldbus system 900 includes a flow transmitter 904 and a temperature transmitter 908 on a same Fieldbus segment 912 .
- the flow transmitter 904 may implement an analog input function block 914 and an SPM block 916 .
- the flow transmitter 904 may implement an abnormal operation detection function block 918 .
- the function block 918 may include at least one model and a deviation detector that function in a manner similar to that described above with respect to FIGS. 3 and/or 12 , for example.
- the temperature transmitter 908 may implement an analog input function block 922 and an SPM block 924 .
- the analog input function block 914 may provide a process variable signal to the SPM block 916 .
- the SPM block 916 may generate one or more statistical signals based on the process variable signal, and may provide the statistical signals to the abnormal operation detection function block 918 .
- the analog input function block 922 may provide a process variable signal to the SPM block 924 .
- the SPM block 924 may generate one or more statistical signals based on the process variable signal, and may provide the statistical signals to the abnormal operation detection function block 918 via the Fieldbus segment 912 .
- the SPM blocks 916 and 924 may be incorporated within the abnormal operation detection function block 918 .
- the analog input function block 914 may provide its process variable signal to the abnormal operation detection function block 918 .
- the analog input function block 922 may provide its process variable signal to the abnormal operation detection function block 918 via the Fieldbus segment 912 .
- SPM blocks may not always be utilized in connection with abnormal operation detection function block 918 , and thus may be omitted in some implementations.
- some field devices are capable of making sensing of two or more process variables.
- Such a field device may be capable of implementing all of blocks 914 , 916 , 918 , 922 , and 924 .
- FIG. 21 illustrates another manner of implementing AOD systems in a process plant.
- the abnormal situation prevention application 35 may be stored in a device other than a host workstation or personal computer.
- the example system 940 of FIG. 21 includes a set of field devices 945 (illustrated as Fieldbus field devices, but they could be other types of devices as well) connected to an interface device 950 , which may be, for example, the Rosemount 3420 device.
- the interface device 950 which is not a personal computer, may include some or all of the functionality of the abnormal situation prevention system 35 described above.
- the interface device 950 may include a server application 952 to receive and organize data delivered from the field devices 945 (which may be various different types of field devices). If desired, this server application 952 may include an OPC server. The configuration application 38 (or a portion of it) may also be stored in a memory of, and executed on a processor of, the interface device 950 to allow configuration of AOD blocks, SPM blocks, detection logic, models, etc., as described above. Additionally, the interface device 950 may include one or more SPM blocks 954 therein to collect process variable data directly from one or more of the field devices (such as field devices which do not include SPM blocks or functionality) and to generate SPM parameters, as discussed above.
- this server application 952 may include an OPC server.
- the configuration application 38 (or a portion of it) may also be stored in a memory of, and executed on a processor of, the interface device 950 to allow configuration of AOD blocks, SPM blocks, detection logic, models, etc., as described above.
- the interface device 950 may include one
- the interface device 950 may include one or more AOD blocks 956 therein to receive the SPM parameters and/or process variable data from field devices and to generate indicators of deviation, as discussed above.
- the SPM blocks 954 and/or the AOD blocks 956 stored in and executed in the interface device 950 are able to compensate for the lack of SPM blocks and/or AOD blocks within certain ones of the field devices 945 and may be used to provide SPM data for field devices which do not themselves support SPM blocks or SPM functionality and/or models and deviation detectors for field devices which do not themselves support AOD blocks or AOD functionality.
- the interface device 950 may typically have more memory and more processing power than a field device, implementing SPM blocks and/or AOD blocks in the interface device 950 may permit more complex AOD analysis to be performed. For example, more complex regression and/or interpolation models could be implemented as compared to regression models or interpolation models implemented in a field device.
- the interface device 950 may communicate with other devices such as a host workstation 958 via a hardwired connection, such as a 2-wire, a 3-wire, a 4-wire, etc. connection, to provide SPM data, or data developed therefrom, such as alerts, data plots, etc. to those devices for viewing by a user. Additionally, as illustrated in FIG. 21 , the interface device 950 may be connected via one or more wireless communication connections to a web browser 960 and to a handheld computing device 962 , such as a telephone, a personal data assistant (PDA), a laptop computer, etc.
- PDA personal data assistant
- an application may be stored in and executed in other devices, such as the host workstation 958 , in the web browser 960 or in the handheld computing device 962 and these applications may communicate with the interface device 950 to obtain data for the application.
- the devices 958 , 960 and 962 may include the configuration application 38 to enable a user to configure AOD blocks and/or SPM blocks implemented in the interface device 950 .
- the data from the interface device 950 may be accessed indirectly from the host 958 by a web browser 964 and provided to other users via any desired web connection.
- the interface device 950 may include a web server therein and may communicate with any other device, such as the devices 958 , 960 , 962 , and 964 using any desired protocol, such as OPC, Modbus, Ethernet, HTML, XML, etc.
- any desired protocol such as OPC, Modbus, Ethernet, HTML, XML, etc.
- FIG. 22 illustrates a further process plant system 970 in which an interface device 950 , which may be similar to or the same as that of FIG. 21 , is connected between a set of field devices 974 (forming part of a heat exchanger 978 ) and a process controller system 980 .
- the interface device 950 which may include all of the applications and functionality of the device 950 of FIG. 21 , may provide data for viewing to a host 984 , and may provide alerts or alarms generated by AOD systems or other systems to the controller system 980 .
- the controller system 980 may integrate these alerts or alarms with other controller type alerts and alarms for viewing by, for example, a control operator at an operator workstation 988 .
- the host workstation 984 may include any desired viewing application to view the data collected in and provided by the interface device 950 in any desired manner, including any of those discussed herein. Likewise, this data may be made available for viewing by other users via a web browser 990 .
- the various applications discussed herein as being associated with the abnormal situation prevention system 35 , the SPM blocks (if used), and the AOD systems may be distributed in different devices. For instance, data (such as SPM data) may be collected in one device, such as a field device 974 , and sent to another device, such as in the interface device 950 , that implements an AOD system.
- Alerts, alarms, or other indicators generated by the AOD system may be sent to yet another device, such as the workstation 988 , for presentation to a user.
- configuration information may be input via a user interface device, such as a host, a web browser, a PDA, etc. and sent to a different device, such as the interface device 950 , for configuring an AOD system.
- AOD systems such as those described herein, may be implemented in a variety of devices within a process plant. In at least some of these devices, memory resources may be constrained.
- a model that includes multiple regression models will be referred to as a composite model for ease of explanation.
- FIG. 23 is a graph illustrating the merger of two adjacent regression models a(x) and b(x) into a single regression model ⁇ (x).
- the regression model a(x) may be valid in a region x>a min and x ⁇ a max
- the regression model b(x) may be valid in a region x>b min and x ⁇ b max .
- the regression model ⁇ (x) may be chosen such that it is a model that is a best fit of the regression model a(x) over the region x>a min and x ⁇ a max and the regression model b(x) over the region x>b min and x ⁇ b max according to some criteria.
- the regression model ⁇ (x) could be determined as a model that provides the minimum integral square error (ISE) when compared to the regression model a(x) over the region x>a min and x ⁇ a max and the regression model b(x) over the region x>b min and x ⁇ b max .
- regression models ⁇ (x), a(x), and b(x) are polynomials of order p such that
- the ISE between a polynomial ⁇ (x) and a polynomial a(x) over the region x>a min and x ⁇ a max and a polynomial b(x) over the region x>b min and x ⁇ b max may be written as:
- A [ A 1 A 2 ⁇ A p + 1 A 2 A 3 ⁇ A p + 2 ⁇ ⁇ ⁇ ⁇ A p + 1 A p + 2 ⁇ A 2 ⁇ p + 1 ] ( Equ . ⁇ 12 )
- B [ B 1 B 2 ⁇ B p + 1 B 2 B 3 ⁇ B p + 2 ⁇ ⁇ ⁇ ⁇ B p + 1 B p + 2 ⁇ B 2 ⁇ p + 1 ] ( Equ . ⁇ 15 ) B k ⁇ b max k - b min k k ( Equ . ⁇ 16 )
- the gradient of the ISE may be written as:
- the polynomial ⁇ (x) that minimizes the ISE can be found by setting the gradient of ISE to zero and solving for ⁇ right arrow over ( ⁇ ) ⁇ :
- Equation 9 can be extended for the ISE between the polynomial ⁇ (x) and three or more other polynomials:
- Equation 18 can be extended to calculate the polynomial ⁇ (x) that minimizes ISE with regard to three or more other polynomials:
- each regression model requires storage for its respective parameters a, b, and c.
- the composite model would require storage for 30 parameters. If two of these regression models can be combined into one model, the composite model would then require storage for only 27 parameters.
- FIG. 24 is a flow diagram of an example method 1000 that may be implemented by an AOD system, such as the AOD system 100 of FIG. 3 , the AOD system 400 of FIG. 12 , and the AOD block 504 and the AOD block 508 of FIG. 14 , or some other AOD system.
- groups of data sets may be received. Each group may correspond to a different operating region of the process, for example. Receiving groups of data sets may be accomplished in a manner similar to that described above with respect to FIG. 7 or FIG. 16 , for example.
- a respective regression model may be generated for each group received at the block 1004 . Generating the regression models may be accomplished in a manner similar to that described above with respect to FIGS. 5 , 10 , or 17 , for example.
- a composite model may be generated having the regression models generated at the block 1008 . Generating the composite model may be accomplished in a manner similar to that described above with respect to FIGS. 10 and 17 , for example. For instance, generating the composite model may comprise generating interpolation models between regression models and updating validity ranges.
- the blocks 1004 , 1008 , and 1012 may be performed in an iterative manner. For example, a first group of data sets may be received, and then a first regression model may be generated using the first group of data sets. Next, the composite model may be generated as merely the first regression model. Then, a second group of data sets may be received, and a second regression model generated using the second group of data sets. Next, the composite model may be updated to include the first regression model and the second regression model. This pattern may continue with third, fourth, fifth, etc., groups of data sets. Generating the resulting composite model may comprise the various updating stages.
- two or more groups of data sets could be received before any regression models are generated.
- two or more regression models could be generated before a composite model is generated and/or updated.
- a new model may be generated using a plurality of the regression models generated at the block 1008 .
- two or more regression models may be merged into a single model using a technique such as the technique described above with reference to FIG. 23 .
- the composite model may be revised to replace the two or more regression models with the new model.
- the new model may be generated from particular regression models according to some criteria.
- the new model may be generated from the first two regression models in some list, or the last two regression models in the list.
- the new model may be generated from two adjacent regression models having a smallest gap between their respective validity ranges. If more than one pair of regression models have the same smallest gap, other criteria can be used to select one pair.
- the new model may be generated from two adjacent regression models having a smallest cumulative validity range.
- the new model may be generated from the two adjacent regression models giving the smallest integral square error, between the new model and the two adjacent regression models.
- a pair of adjacent regression models may be chosen pseudorandomly.
- FIG. 25 is a flow diagram of an example method 1040 for updating a composite model by selecting two or more regression models for merger.
- a plurality of new models may be generated, where each new model corresponds to a merger of a different subset of regression models.
- a new model may be generated for each possible combination of a particular number of adjacent regression models in the composite model.
- one of the new models may be selected according to some criteria. For example, the new model that has the lowest ISE may be selected.
- the method 1040 may include calculating the ISE for each new model.
- the blocks 1044 and 1048 may be implemented iteratively. For example, as each additional regression model is added to the composite model, one or more new models corresponding to the merger of the additional regression model with any adjacent regression models may be calculated, and the ISE for each of such new model may be calculated and stored for future use.
- the composite model may be revised to replace with the chosen new model the corresponding subset of regression models in a manner similar to that described previously.
- Table 1 includes the validity ranges and coefficients of the regression models 1060 A, 1060 B, 1060 C, and 1060 D.
- FIG. 26B illustrates a new model 1064 A generated using the regression models 1060 A and 1060 B.
- the new model 1064 A would replace the regression models 1060 A and 1060 B as well as the interpolation model 1062 A.
- FIG. 26C illustrates a new model 1064 B generated using the regression models 1060 B and 1060 C.
- the new model 1064 B would replace the regression models 1060 B and 1060 C as well as the interpolation model 1062 B.
- FIG. 26D illustrates a new model 1064 C generated using the regression models 1060 C and 1060 D.
- the new model 1064 C would replace the regression models 1060 C and 1060 D as well as the interpolation model 1062 C.
- Table 2 includes the validity ranges and coefficients of the new models 1064 A, 1064 B, and 1064 C, as well as their associated ISE's.
- the composite model can be revised to replace the regression models 1060 B and 1060 C as well as the interpolation model 1062 B with the new model 1064 B.
- FIG. 26E is an illustration of the revised composite model.
- Table 3 includes the validity ranges and coefficients of the models (not including the interpolation models) of the revised composite
- FIG. 27 is a flow diagram of an example method 1070 for updating a composite model that may have a limit to the number of regression models it may include.
- the method 1070 includes like numbered blocks from the method 276 of FIG. 10 and can be utilized as an alternative to the method 276 of FIG. 10 .
- a block 1074 a number N of regression models in the composite model may be incremented.
- it may be determined if the number N is equal to a number N MAX .
- the number N MAX may be a maximum number of regression models that the composite model may include.
- the number N MAX may be a number that is some amount less than the maximum number of regression models that the composite model may include.
- the number N MAX may be one, two, three, etc., less than the maximum number of regression models that the composite model may include.
- it may be determined if the number N is greater than greater than N MAX , or it may be determined if the number N is greater than or equal to N MAX .
- the flow may end. If, however, it is determined that the N is equal to N MAX , the flow may proceed to a block 1082 .
- a new model may be determined using as subset of the regression models, and the composite model may be revised to replace the subset with the new model.
- the number N may be decremented. For example, if the new model replaces two regression models, the number N may be decremented by one. As another example, if the new model replaces three regression models, the number N may be decremented by two.
- the blocks 1082 and 1086 may be repeated one or more times. Similarly, the block 1082 could be repeated one or more times, and then, at the block 1086 , the number N may be decremented by an appropriate amount.
- example methods for reducing the number of regression models were described in the context of regression models having a single independent variable input X and a single dependent variable input Y, the methods could also be used with regression models that model multiple variables Y as a function of multiple variables X. For example, a new model could be generated to replace two or more MLR models, PCR models, PLS models, RR models, VSS models, SVM models, etc.
- example methods for reducing the number of regression models were described in the context of linear regression models that utilize polynomials, it is to be understood that the methods may also be implemented with other types of the models such as models that utilize sinusoidal functions, logarithmic functions, exponential functions, power functions, etc.
- the example systems and methods described above may be modified in various ways. For example, blocks may be omitted, reordered, or combined, additional blocks may be added, etc.
- the block 604 could be implemented at a different point in the flow. Similarly, the block 604 could be implemented as an interrupt routine, and thus it could actually occur at various points with the flow of FIG. 16 depending upon when the MONITOR command is received.
- a regression model comprised a linear regression model of a single dependent variable as a function of a single independent variable
- linear regression models may be utilized.
- linear or non-linear regression models may model multiple dependent variables as functions of multiple independent variables.
- the AOD systems, models, regression models, interpolation models, deviation detectors, logic blocks, method blocks, etc., described herein may be implemented using any combination of hardware, firmware, and software.
- systems and techniques described herein may be implemented in a standard multi-purpose processor or using specifically designed hardware or firmware as desired.
- the software may be stored in any computer readable memory such as on a magnetic disk, a laser disk, or other storage medium, in a RAM or ROM or flash memory of a computer, processor, I/O device, field device, interface device, etc.
- the software may be delivered to a user or a process control system via any known or desired delivery method including, for example, on a computer readable disk or other transportable computer storage mechanism or via communication media.
- Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism.
- modulated data signal means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
- communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency, infrared and other wireless media.
- the software may be delivered to a user or a process control system via a communication channel such as a telephone line, the Internet, etc. (which are viewed as being the same as or interchangeable with providing such software via a transportable storage medium).
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Chemical & Material Sciences (AREA)
- Automation & Control Theory (AREA)
- Oil, Petroleum & Natural Gas (AREA)
- General Physics & Mathematics (AREA)
- General Chemical & Material Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Organic Chemistry (AREA)
- Chemical Kinetics & Catalysis (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
Description
- This application is related to the following commonly-owned, co-pending patent application: U.S. patent application Ser. No. 11/492,467, entitled “METHOD AND SYSTEM FOR DETECTING ABNORMAL OPERATION IN A PROCESS PLANT,” filed on Jul. 25, 2006. The above-referenced patent application is hereby incorporated by reference herein, in its entirety.
- This disclosure relates generally to process control systems and, more particularly, to systems for monitoring and/or modeling processes.
- Process control systems, such as distributed or scalable process control systems like those used in chemical, petroleum or other processes, typically include one or more process controllers communicatively coupled to each other, to at least one host or operator workstation and to one or more field devices via analog, digital or combined analog/digital buses. The field devices, which may be, for example valves, valve positioners, switches and transmitters (e.g., temperature, pressure and flow rate sensors), perform functions within the process such as opening or closing valves and measuring process parameters. The process controller receives signals indicative of process measurements made by the field devices and/or other of information pertaining to the field devices, uses this information to implement a control routine and then generates control signals which are sent over the buses to the field devices to control the operation of the process. Information from the field devices and the controller is typically made available to one or more applications executed by the operator workstation to enable an operator to perform any desired function with respect to the process, such as viewing the current state of the process, modifying the operation of the process, etc.
- In the past, conventional field devices were used to send and receive analog (e.g., 4 to 20 milliamps) signals to and from the process controller via an analog bus or analog lines. These 4 to 20 mA signals were limited in nature in that they were indicative of measurements made by the device or of control signals generated by the controller required to control the operation of the device. However, in the past decade or so, smart field devices including a microprocessor and a memory have become prevalent in the process control industry. In addition to performing a primary function within the process, smart field devices store data pertaining to the device, communicate with the controller and/or other devices in a digital or combined digital and analog format, and perform secondary tasks such as self calibration, identification, diagnostics, etc. A number of standard and open smart device communication protocols such as the HART®, PROFIBUS®, WORLDFIP®, Device Net®, and CAN protocols, have been developed to enable smart field devices made by different manufacturers to be used together within the same process control network. Moreover, the all digital, two wire bus protocol promulgated by the Fieldbus Foundation, known as the FOUNDATION™ Fieldbus (hereinafter “Fieldbus”) protocol uses function blocks located in different field devices to perform control operations previously performed within a centralized controller. In this case, the Fieldbus field devices are capable of storing and executing one or more function blocks, each of which receives inputs from and/or provides outputs to other function blocks (either within the same device or within different devices), and performs some process control operation, such as measuring or detecting a process parameter, controlling a device or performing a control operation, like implementing a proportional-integral-derivative (PID) control routine. The different function blocks within a process control system are configured to communicate with each other (e.g., over a bus) to form one or more process control loops, the individual operations of which are spread throughout the process and are, thus, decentralized.
- Information from the field devices and the process controllers is typically made available to one or more other hardware devices such as operator workstations, maintenance workstations, personal computers, handheld devices, data historians, report generators, centralized databases, etc., to enable an operator or a maintenance person to perform desired functions with respect to the process such as, for example, changing settings of the process control routine, modifying the operation of the control modules within the process controllers or the smart field devices, viewing the current state of the process or of particular devices within the process plant, viewing alarms generated by field devices and process controllers, simulating the operation of the process for the purpose of training personnel or testing the process control software, diagnosing problems or hardware failures within the process plant, etc.
- While a typical process plant has many process control and instrumentation devices such as valves, transmitters, sensors, etc. connected to one or more process controllers, there are many other supporting devices that are also necessary for or related to process operation. These additional devices include, for example, power supply equipment, power generation and distribution equipment, rotating equipment such as turbines, motors, etc., which are located at numerous places in a typical plant. While this additional equipment does not necessarily create or use process variables and, in many instances, is not controlled or even coupled to a process controller for the purpose of affecting the process operation, this equipment is nevertheless important to, and ultimately necessary for proper operation of the process.
- As is known, problems frequently arise within a process plant environment, especially a process plant having a large number of field devices and supporting equipment. These problems may take the form of broken or malfunctioning devices, logic elements, such as software routines, being in improper modes, process control loops being improperly tuned, one or more failures in communications between devices within the process plant, etc. These and other problems, while numerous in nature, generally result in the process operating in an abnormal state (i.e., the process plant being in an abnormal situation) which is usually associated with suboptimal performance of the process plant. Many diagnostic tools and applications have been developed to detect and determine the cause of problems within a process plant and to assist an operator or a maintenance person to diagnose and correct the problems, once the problems have occurred and been detected. For example, operator workstations, which are typically connected to the process controllers through communication connections such as a direct or wireless bus, Ethernet, modem, phone line, and the like, have processors and memories that are adapted to run software or firmware, such as the DeltaV™ and Ovation control systems, sold by Emerson Process Management which includes numerous control module and control loop diagnostic tools. Likewise, maintenance workstations, which may be connected to the process control devices, such as field devices, via the same communication connections as the controller applications, or via different communication connections, such as OPC connections, handheld connections, etc., typically include one or more applications designed to view maintenance alarms and alerts generated by field devices within the process plant, to test devices within the process plant and to perform maintenance activities on the field devices and other devices within the process plant. Similar diagnostic applications have been developed to diagnose problems within the supporting equipment within the process plant.
- Thus, for example, the AMS™ Suite: Intelligent Device Manager application (at least partially disclosed in U.S. Pat. No. 5,960,214 entitled “Integrated Communication Network for use in a Field Device Management System”) sold by Emerson Process Management, enables communication with and stores data pertaining to field devices to ascertain and track the operating state of the field devices. In some instances, the AMS™ application may be used to communicate with a field device to change parameters within the field device, to cause the field device to run applications on itself such as, for example, self-calibration routines or self-diagnostic routines, to obtain information about the status or health of the field device, etc. This information may include, for example, status information (e.g., whether an alarm or other similar event has occurred), device configuration information (e.g., the manner in which the field device is currently or may be configured and the type of measuring units used by the field device), device parameters (e.g., the field device range values and other parameters), etc. Of course, this information may be used by a maintenance person to monitor, maintain, and/or diagnose problems with field devices.
- Similarly, many process plants include equipment monitoring and diagnostic applications such as, for example, Machinery Health™ applications provided by CSI, or any other known applications used to monitor, diagnose, and optimize the operating state of various rotating equipment. Maintenance personnel usually use these applications to maintain and oversee the performance of rotating equipment in the plant, to determine problems with the rotating equipment, and to determine when and if the rotating equipment must be repaired or replaced. Similarly, many process plants include power control and diagnostic applications such as those provided by, for example, the Liebert and ASCO companies, to control and maintain the power generation and distribution equipment. It is also known to run control optimization applications such as, for example, real-time optimizers (RTO+), within a process plant to optimize the control activities of the process plant. Such optimization applications typically use complex algorithms and/or models of the process plant to predict how inputs may be changed to optimize operation of the process plant with respect to some desired optimization variable such as, for example, profit.
- These and other diagnostic and optimization applications are typically implemented on a system-wide basis in one or more of the operator or maintenance workstations, and may provide preconfigured displays to the operator or maintenance personnel regarding the operating state of the process plant, or the devices and equipment within the process plant. Typical displays include alarming displays that receive alarms generated by the process controllers or other devices within the process plant, control displays indicating the operating state of the process controllers and other devices within the process plant, maintenance displays indicating the operating state of the devices within the process plant, etc. Likewise, these and other diagnostic applications may enable an operator or a maintenance person to retune a control loop or to reset other control parameters, to run a test on one or more field devices to determine the current status of those field devices, to calibrate field devices or other equipment, or to perform other problem detection and correction activities on devices and equipment within the process plant.
- While these various applications and tools are very helpful in identifying and correcting problems within a process plant, these diagnostic applications are generally configured to be used only after a problem has already occurred within a process plant and, therefore, after an abnormal situation already exists within the plant. Unfortunately, an abnormal situation may exist for some time before it is detected, identified and corrected using these tools, resulting in the suboptimal performance of the process plant for the period of time during which the problem is detected, identified and corrected. In many cases, a control operator will first detect that some problem exists based on alarms, alerts or poor performance of the process plant. The operator will then notify the maintenance personnel of the potential problem. The maintenance personnel may or may not detect an actual problem and may need further prompting before actually running tests or other diagnostic applications, or performing other activities needed to identify the actual problem. Once the problem is identified, the maintenance personnel may need to order parts and schedule a maintenance procedure, all of which may result in a significant period of time between the occurrence of a problem and the correction of that problem, during which time the process plant runs in an abnormal situation generally associated with the sub-optimal operation of the plant.
- Additionally, many process plants can experience an abnormal situation which results in significant costs or damage within the plant in a relatively short amount of time. For example, some abnormal situations can cause significant damage to equipment, the loss of raw materials, or significant unexpected downtime within the process plant if these abnormal situations exist for even a short amount of time. Thus, merely detecting a problem within the plant after the problem has occurred, no matter how quickly the problem is corrected, may still result in significant loss or damage within the process plant. As a result, it is desirable to try to prevent abnormal situations from arising in the first place, instead of simply trying to react to and correct problems within the process plant after an abnormal situation arises.
- One technique that may be used to collect data that enables a user to predict the occurrence of certain abnormal situations within a process plant before these abnormal situations actually arise, with the purpose of taking steps to prevent the predicted abnormal situation before any significant loss within the process plant takes place. This procedure is disclosed in U.S. patent application Ser. No. 09/972,078, entitled “Root Cause Diagnostics”, now U.S. Pat. No. 7,085,610 (based in part on U.S. patent application Ser. No. 08/623,569, now U.S. Pat. No. 6,017,143). The entire disclosures of both of these applications are hereby incorporated by reference herein. Generally speaking, this technique places statistical data collection and processing blocks or statistical processing monitoring (SPM) blocks, in each of a number of devices, such as field devices, within a process plant. The statistical data collection and processing blocks collect, for example, process variable data and determine certain statistical measures associated with the collected data, such as a mean, a median, a standard deviation, etc. These statistical measures may then be sent to a user and analyzed to recognize patterns suggesting the future occurrence of a known abnormal situation. Once a particular suspected future abnormal situation is detected, steps may be taken to correct the underlying problem, thereby avoiding the abnormal situation in the first place.
- Other techniques have been developed to monitor and detect problems in a process plant. One such technique is referred to as Statistical Process Control (SPC). SPC has been used to monitor variables, such as quality variables, associated with a process and flag an operator when the quality variable is detected to have moved from its “statistical” norm. With SPC, a small sample of a variable, such as a key quality variable, is used to generate statistical data for the small sample. The statistical data for the small sample is then compared to statistical data corresponding to a much larger sample of the variable. The variable may be generated by a laboratory or analyzer, or retrieved from a data historian. SPC alarms are generated when the small sample's average or standard deviation deviates from the large sample's average or standard deviation, respectively, by some predetermined amount. An intent of SPC is to avoid making process adjustments based on normal statistical variation of the small samples. Charts of the average or standard deviation of the small samples may be displayed to the operator on a console separate from a control console.
- Another technique analyzes multiple variables and is referred to as multivariable statistical process control (MSPC). This technique uses algorithms such as principal component analysis (PCA) and projections to latent structures (PLS) which analyze historical data to create a statistical model of the process. In particular, samples of variables corresponding to normal operation and samples of variables corresponding to abnormal operation are analyzed to generate a model to determine when an alarm should be generated. Once the model has been defined, variables corresponding to a current process may be provided to the model, which may generate an alarm if the variables indicate an abnormal operation.
- With model-based performance monitoring system techniques, a model is utilized, such as a correlation-based model or a first-principles model, that relates process inputs to process outputs. The model may be calibrated to the actual plant operation by adjusting internal tuning constants or bias terms. The model can be used to predict when the process is moving into an abnormal region and alert the operator to take action. An alarm may be generated when there is a significant deviation in actual versus predicted behavior or when there is a big change in a calculated efficiency parameter. Model-based performance monitoring systems typically cover as small as a single unit operation (e.g. a pump, a compressor, a heater, a column, etc.) or a combination of operations that make up a process unit (e.g. crude unit, fluid catalytic cracking unit (FCCU), reformer, etc.)
- Example methods and systems are disclosed that may facilitate detecting an abnormal operation associated with a process plant. Generally speaking, a composite model for modeling at least a portion of the process plant may be configurable to include multiple regression models corresponding to multiple different operating regions of the portion of the process plant. Also, a new model may be generated from two or more of the regression models, and the composite model may be revised to replace the two or more regression models with the new model. The composite model may be utilized, for example, by determining if the actual operation of the portion of the process plant deviates significantly from the operation predicted by the composite model. If there is a significant deviation, this may indicate an abnormal operation.
- In one embodiment, a method for generating a model of a process in a process plant may comprise collecting a plurality of groups of data sets for the process in the process plant, the data sets generated from process variables of the process. The method may also comprise generating a plurality of regression models of the process using the groups of data sets, wherein each regression model is generated using a corresponding group of data sets from the plurality of groups, and wherein each regression model comprises a plurality of corresponding parameters generated using the corresponding group of data sets. Additionally, the method may comprise generating a composite model of the process to include the plurality of regression models. Further, the method may comprise generating a new model of the process using parameters of at least two of the regression models, and revising the composite model of the process to replace the at least two of the regression models with the new model.
- In another embodiment, a tangible medium storing machine readable instructions is disclosed. The machine readable instructions may be capable of causing one or more machines to collect a plurality of groups of data sets for the process in the process plant, the data sets generated from process variables of the process. Additionally, the machine readable instructions may be capable of causing one or more machines to generate a plurality of regression models of the process using the groups of data sets, wherein each regression model is generated using a corresponding group of data sets from the plurality of groups, and wherein each model comprises a plurality of corresponding parameters generated using the corresponding group of data sets. Also, the machine readable instructions may be capable of causing one or more machines to generate a composite model of the process to include the plurality of regression models. Further, the machine readable instructions may be capable of causing one or more machines to generate a new model of the process using parameters of at least two of the regression models, and to revise the composite model of the process to replace the at least two of the regression models with the new model.
- In yet another embodiment, a method for generating a model of a process in a process plant may comprise collecting data sets for the process in the process plant, the data sets generated from process variables of the process, and generating a new regression model of the process using the collected data sets. The method also may comprise revising a composite model of the process to include the new regression model in a plurality of regression models of the composite model, wherein each regression model in the plurality of regression models comprises a plurality of corresponding parameters generated using a corresponding group of data sets from a plurality of groups of data sets. Additionally, the method may comprise determining whether a number N of regression models in the composite model exceeds a number NMAX. The method may further comprise, if the number N of regression models exceeds the number NMAX, generating a new model of the process using parameters of at least two of the regression models in the plurality of regression models, and revising the composite model of the process to replace the at least two of the regression models with the new model.
- In still another embodiment, a tangible medium storing machine readable instructions is disclosed. The machine readable instructions may be capable of causing one or more machines to collect data sets for the process in the process plant, the data sets generated from process variables of the process. Additionally, the machine readable instructions may be capable of causing one or more machines to generate a new regression model of the process using the collected data sets, and to revise a composite model of the process to include the new regression model in a plurality of regression models of the composite model, wherein each regression model in the plurality of regression models comprises a plurality of corresponding parameters generated using a corresponding group of data sets from a plurality of groups of data sets. Further, the machine readable instructions may be capable of causing one or more machines to determine whether a number N of regression models in the composite model exceeds a number NMAX, and to, if the number N of regression models exceeds the number NMAX, generate a new model of the process using parameters of at least two of the regression models in the plurality of regression models. Still further, the machine readable instructions may be capable of causing one or more machines to revise the composite model of the process to replace the at least two of the regression models with the new model.
- In yet another embodiment, a system for detecting an abnormal operation in a process plant may include a configurable composite model of the process in the process plant comprising a plurality of regression models. Each regression model may have been generated using a corresponding group of data sets from a plurality of groups of data sets, the data sets generated from process variables of the process. Additionally, each regression model may comprise a plurality of corresponding parameters generated using the corresponding group of data sets. The configurable composite model may be capable of being subsequently configured to replace at least two of the regression models with a new model generated using parameters of the at least two of the regression models. The system may further include a deviation detector coupled to the configurable composite model, the deviation detector configured to determine if the process significantly deviates from an output of the composite model.
-
FIG. 1 is an exemplary block diagram of a process plant having a distributed control and maintenance network including one or more operator and maintenance workstations, controllers, field devices and supporting equipment; -
FIG. 2 is an exemplary block diagram of a portion of the process plant ofFIG. 1 , illustrating communication interconnections between various components of an abnormal situation prevention system located within different elements of the process plant; -
FIG. 3 is an example abnormal operation detection (AOD) system that utilizes one or more regression models; -
FIG. 4 is flow diagram of an example method that may be implemented using the example AOD system ofFIG. 3 ; -
FIG. 5 is a flow diagram of an example method for initially training the model ofFIG. 3 ; -
FIG. 6A is a graph showing a plurality of data sets that may be used by the model ofFIG. 3 to develop a regression model; -
FIG. 6B is a graph showing a regression model developed using the plurality of data sets ofFIG. 6A ; -
FIG. 6C is graph showing the regression model ofFIG. 6B and its range of validity; -
FIG. 7 is flow diagram of an example method that may be implemented using the example abnormal operation detection system ofFIG. 3 ; -
FIG. 8A is a graph showing a received data set and a corresponding predicted value generated by the model ofFIG. 3 ; -
FIG. 8B is a graph showing another received data set and another corresponding predicted value generated by the model ofFIG. 3 ; -
FIG. 9A is a graph showing a plurality of data sets that may be used by the model ofFIG. 3 to develop a second regression model in a different operating region; -
FIG. 9B is a graph showing a second regression model developed using the plurality of data sets ofFIG. 9A ; -
FIG. 9C is a graph showing an updated model and its range of validity; -
FIG. 10 is a flow diagram of an example method for updating the model ofFIG. 3 ; -
FIG. 11A is a graph showing a plurality of data sets that may be used by the model ofFIG. 3 to develop further regression models in different operating regions; -
FIG. 11B is a graph showing a further regression models developed using the plurality of data sets ofFIG. 11A ; -
FIG. 11C is a graph showing a further updated model and its range of validity; -
FIG. 12 is another example AOD system that utilizes one or more regression models; -
FIG. 13 is a block diagram of an example control system for regulating the level of material in a tank; -
FIG. 14 is a block diagram of an example system that may be used to detect an abnormal condition associated with the control system ofFIG. 13 ; -
FIG. 15 is an example state transition diagram corresponding to an alternative operation of an AOD system such as the AOD systems ofFIGS. 3 and 12 ; -
FIG. 16 is a flow diagram of an example method of operation in a LEARNING state of an AOD system; -
FIG. 17 is a flow diagram of an example method for updating a model of an AOD system; -
FIG. 18 is a flow diagram of an example method of operation in a MONITORING state of an AOD system; -
FIG. 19A is a graph showing a plurality of data sets collected during a LEARNING state an AOD system; -
FIG. 19B is a graph showing an initial regression model corresponding to the plurality of data sets ofFIG. 19A ; -
FIG. 19C is a graph showing a received data set and a corresponding predicted value generated during a MONITORING state of an AOD system; -
FIG. 19D is a graph showing a received data set that is out of a validity range of a model; -
FIG. 19E is a graph showing a plurality of data sets in different operating region collected during a LEARNING state an AOD system; -
FIG. 19F is a graph showing a second regression model developed using the plurality of data sets ofFIG. 19E ; -
FIG. 19G is a graph showing an updated model and also showing a received data set and a corresponding predicted value generated during a MONITORING state of an AOD system; -
FIG. 19H is a graph showing a plurality of data sets collected during a LEARNING state an AOD system; -
FIG. 19I is a graph showing an updated model developed using the plurality of data sets ofFIG. 19H ; -
FIG. 20 is a block diagram of yet another example AOD system implemented on a Fieldbus segment of a process plant; -
FIG. 21 is a depiction of an interface device connected within a further process plant to facilitate implementation of one or more AOD systems; -
FIG. 22 is a depiction of an interface device connected within still another process plant to facilitate implementation of one or more AOD systems; -
FIG. 23 is a graph illustrating the merger of two adjacent regression models into a single regression model; -
FIG. 24 is flow diagram of an example method for generating and revising a composite model; -
FIG. 25 is flow diagram of an example method for revising a composite model to replace two or more regression models with a new model; -
FIG. 26A is a graph of an example composite model including four regression models and three interpolation models; -
FIG. 26B is a graph of the example composite model ofFIG. 26A that illustrates a new model calculated based on a first pair of regression models; -
FIG. 26C is a graph of the example composite model ofFIG. 26A that illustrates another new model calculated based on a second pair of regression models; -
FIG. 26D is a graph of the example composite model ofFIG. 26A that illustrates a further new model calculated based on a third pair of regression models; -
FIG. 26E is a graph of a revised composite model corresponding to the example composite model ofFIG. 26A wherein a pair of regression models and an interpolation model inFIG. 26A have been replaced by the new model illustrated inFIG. 26C ; and -
FIG. 27 is flow diagram of an example method for updating a composite model. - Referring now to
FIG. 1 , anexample process plant 10 in which an abnormal situation prevention system may be implemented includes a number of control and maintenance systems interconnected together with supporting equipment via one or more communication networks. In particular, theprocess plant 10 ofFIG. 1 includes one or moreprocess control systems process control system 12 may be a traditional process control system such as a PROVOX or RS3 system or any other control system which includes anoperator interface 12A coupled to acontroller 12B and to input/output (I/O)cards 12C which, in turn, are coupled to various field devices such as analog and Highway Addressable Remote Transmitter (HART)field devices 15. Theprocess control system 14, which may be a distributed process control system, includes one ormore operator interfaces 14A coupled to one or more distributedcontrollers 14B via a bus, such as an Ethernet bus. Thecontrollers 14B may be, for example, DeltaV™ controllers sold by Emerson Process Management of Austin, Tex. or any other desired type of controllers. Thecontrollers 14B are connected via I/O devices to one ormore field devices 16, such as for example, HART or Fieldbus field devices or any other smart or non-smart field devices including, for example, those that use any of the PROFIBUS®, WORLDFIP®, Device-Net®, AS-Interface and CAN protocols. As is known, thefield devices 16 may provide analog or digital information to thecontrollers 14B related to process variables as well as to other device information. The operator interfaces 14A may store and executetools - Still further, maintenance systems, such as computers executing the AMS™ Suite: Intelligent Device Manager application or any other device monitoring and communication applications may be connected to the
process control systems maintenance computer 18 may be connected to thecontroller 12B and/or to thedevices 15 via any desired communication lines or networks (including wireless or handheld device networks) to communicate with and, in some instances, reconfigure or perform other maintenance activities on thedevices 15. Similarly, maintenance applications such as the AMS application may be installed in and executed by one or more of theuser interfaces 14A associated with the distributedprocess control system 14 to perform maintenance and monitoring functions, including data collection related to the operating status of thedevices 16. - The
process plant 10 also includes variousrotating equipment 20, such as turbines, motors, etc. which are connected to amaintenance computer 22 via some permanent or temporary communication link (such as a bus, a wireless communication system or hand held devices which are connected to theequipment 20 to take readings and are then removed). Themaintenance computer 22 may store and execute known monitoring anddiagnostic applications 23 provided by, for example, CSI (an Emerson Process Management Company) or other any other known applications used to diagnose, monitor and optimize the operating state of therotating equipment 20. Maintenance personnel usually use theapplications 23 to maintain and oversee the performance of rotatingequipment 20 in theplant 10, to determine problems with the rotatingequipment 20 and to determine when and if therotating equipment 20 must be repaired or replaced. In some cases, outside consultants or service organizations may temporarily acquire or measure data pertaining to theequipment 20 and use this data to perform analyses for theequipment 20 to detect problems, poor performance or other issues effecting theequipment 20. In these cases, the computers running the analyses may not be connected to the rest of thesystem 10 via any communication line or may be connected only temporarily. - Similarly, a power generation and
distribution system 24 having power generating anddistribution equipment 25 associated with theplant 10 is connected via, for example, a bus, to anothercomputer 26 which runs and oversees the operation of the power generating anddistribution equipment 25 within theplant 10. Thecomputer 26 may execute known power control anddiagnostics applications 27 such a as those provided by, for example, Liebert and ASCO or other companies to control and maintain the power generation anddistribution equipment 25. Again, in many cases, outside consultants or service organizations may use service applications that temporarily acquire or measure data pertaining to theequipment 25 and use this data to perform analyses for theequipment 25 to detect problems, poor performance or other issues effecting theequipment 25. In these cases, the computers (such as the computer 26) running the analyses may not be connected to the rest of thesystem 10 via any communication line or may be connected only temporarily. - As illustrated in
FIG. 1 , acomputer system 30 implements at least a portion of an abnormalsituation prevention system 35, and in particular, thecomputer system 30 stores and implements aconfiguration application 38 and, optionally, an abnormaloperation detection system 42, which will be described in more detail below. Additionally, thecomputer system 30 may implement an alert/alarm application 43. - Generally speaking, the abnormal
situation prevention system 35 may communicate with abnormal operation detection systems (not shown inFIG. 1 ) optionally located in thefield devices controllers equipment 20 or its supportingcomputer 22, thepower generation equipment 25 or its supportingcomputer 26, and any other desired devices and equipment within theprocess plant 10, and/or the abnormaloperation detection system 42 in thecomputer system 30, to configure each of these abnormal operation detection systems and to receive information regarding the operation of the devices or subsystems that they are monitoring. The abnormalsituation prevention system 35 may be communicatively connected via ahardwired bus 45 to each of at least some of the computers or devices within theplant 10 or, alternatively, may be connected via any other desired communication connection including, for example, wireless connections, dedicated connections which use OPC, intermittent connections, such as ones which rely on handheld devices to collect data, etc. Likewise, the abnormalsituation prevention system 35 may obtain data pertaining to the field devices and equipment within theprocess plant 10 via a LAN or a public connection, such as the Internet, a telephone connection, etc. (illustrated inFIG. 1 as an Internet connection 46) with such data being collected by, for example, a third party service provider. Further, the abnormalsituation prevention system 35 may be communicatively coupled to computers/devices in theplant 10 via a variety of techniques and/or protocols including, for example, Ethernet, Modbus, HTML, XML, proprietary techniques/protocols, etc. Thus, although particular examples using OPC to communicatively couple the abnormalsituation prevention system 35 to computers/devices in theplant 10 are described herein, one of ordinary skill in the art will recognize that a variety of other methods of coupling the abnormalsituation prevention system 35 to computers/devices in theplant 10 can be used as well. -
FIG. 2 illustrates aportion 50 of theexample process plant 10 ofFIG. 1 for the purpose of describing one manner in which the abnormalsituation prevention system 35 and/or the alert/alarm application 43 may communicate with various devices in theportion 50 of theexample process plant 10. WhileFIG. 2 illustrates communications between the abnormalsituation prevention system 35 and one or more abnormal operation detection systems within HART and Fieldbus field devices, it will be understood that similar communications can occur between the abnormalsituation prevention system 35 and other devices and equipment within theprocess plant 10, including any of the devices and equipment illustrated inFIG. 1 . - The
portion 50 of theprocess plant 10 illustrated inFIG. 2 includes a distributedprocess control system 54 having one ormore process controllers 60 connected to one ormore field devices devices field devices 64 are illustrated as HART field devices and thefield devices 66 are illustrated as Fieldbus field devices, although these field devices could use any other desired communication protocols. Additionally, each of thefield devices O devices field devices - In any event, one or more user interfaces or
computers 72 and 74 (which may be any types of personal computers, workstations, etc.) accessible by plant personnel such as configuration engineers, process control operators, maintenance personnel, plant managers, supervisors, etc. are coupled to theprocess controllers 60 via a communication line orbus 76 which may be implemented using any desired hardwired or wireless communication structure, and using any desired or suitable communication protocol such as, for example, an Ethernet protocol. In addition, adatabase 78 may be connected to thecommunication bus 76 to operate as a data historian that collects and stores configuration information as well as on-line process variable data, parameter data, status data, and other data associated with theprocess controllers 60 andfield devices process plant 10. Thus, thedatabase 78 may operate as a configuration database to store the current configuration, including process configuration modules, as well as control configuration information for theprocess control system 54 as downloaded to and stored within theprocess controllers 60 and thefield devices database 78 may store historical abnormal situation prevention data, including statistical data collected by thefield devices process plant 10, statistical data determined from process variables collected by thefield devices - While the
process controllers 60, I/O devices field devices workstations 72 and 74, and thedatabase 78 are usually located in control rooms, maintenance rooms or other less harsh environments easily accessible by operators, maintenance personnel, etc. - Generally speaking, the
process controllers 60 store and execute one or more controller applications that implement control strategies using a number of different, independently executed, control modules or blocks. The control modules may each be made up of what are commonly referred to as function blocks, wherein each function block is a part or a subroutine of an overall control routine and operates in conjunction with other function blocks (via communications called links) to implement process control loops within theprocess plant 10. As is well known, function blocks, which may be objects in an object-oriented programming protocol, typically perform one of an input function, such as that associated with a transmitter, a sensor or other process parameter measurement device, a control function, such as that associated with a control routine that performs PID, fuzzy logic, etc. control, or an output function, which controls the operation of some device, such as a valve, to perform some physical function within theprocess plant 10. Of course, hybrid and other types of complex function blocks exist, such as model predictive controllers (MPCs), optimizers, etc. It is to be understood that while the Fieldbus protocol and the DeltaV™ system protocol use control modules and function blocks designed and implemented in an object-oriented programming protocol, the control modules may be designed using any desired control programming scheme including, for example, sequential function blocks, ladder logic, etc., and are not limited to being designed using function blocks or any other particular programming technique. - As illustrated in
FIG. 2 , the maintenance workstation 74 includes aprocessor 74A, amemory 74B and adisplay device 74C. Thememory 74B stores the abnormalsituation prevention application 35 and the alert/alarm application 43 discussed with respect toFIG. 1 in a manner that these applications can be implemented on theprocessor 74A to provide information to a user via thedisplay 74C (or any other display device, such as a printer). - Each of one or more of the
field devices field devices - As shown in
FIG. 2 , some (and potentially all) of thefield devices blocks FIG. 2 are illustrated as being located in one of thedevices 64 and in one of thedevices 66, these or similar blocks could be located in any number of thefield devices controller 60, the I/O devices FIG. 1 . Additionally, theblocks devices - Generally speaking, the
blocks blocks block 80, which is illustrated as being associated with a valve, may have a stuck valve detection routine which analyzes the valve process variable data to determine if the valve is in a stuck condition. In addition, theblock 80 may include a set of one or more statistical process monitoring (SPM) blocks or units such as blocks SPM1-SPM4 which may collect process variable or other data within the valve and perform one or more statistical calculations on the collected data to determine, for example, a mean, a median, a standard deviation, a root-mean-square (RMS), a rate of change, a range, a minimum, a maximum, etc. of the collected data and/or to detect events such as drift, bias, noise, spikes, etc., in the collected data. The specific statistical data generated, nor the method in which it is generated is not critical. Thus, different types of statistical data can be generated in addition to, or instead of, the specific types described above. Additionally, a variety of techniques, including known techniques, can be used to generate such data. The term statistical process monitoring (SPM) block is used herein to describe functionality that performs statistical process monitoring on at least one process variable or other process parameter, and may be performed by any desired software, firmware or hardware within the device or even outside of a device for which data is collected. It will be understood that, because the SPMs are generally located in the devices where the device data is collected, the SPMs can acquire quantitatively more and qualitatively more accurate process variable data. As a result, the SPM blocks are generally capable of determining better statistical calculations with respect to the collected process variable data than a block located outside of the device in which the process variable data is collected. - It is to be understood that although the
blocks FIG. 2 , the SPM blocks may instead be stand-alone blocks separate from theblocks block blocks 50 may be performed or implemented at least partially as described in U.S. Pat. No. 6,017,143, which is hereby incorporated by reference herein. - It is to be understood that although the
blocks FIG. 2 , SPM blocks are not required of theblocks blocks blocks - The
block 82 ofFIG. 2 , which is illustrated as being associated with a transmitter, may have a plugged line detection unit that analyzes the process variable data collected by the transmitter to determine if a line within the plant is plugged. In addition, theblock 82 may includes one or more SPM blocks or units such as blocks SPM1-SPM4 which may collect process variable or other data within the transmitter and perform one or more statistical calculations on the collected data to determine, for example, a mean, a median, a standard deviation, etc. of the collected data. While theblocks blocks - Overview of an Abnormal Operation Detection (AOD) System
-
FIG. 3 is a block diagram of an example abnormal operation detection (AOD)system 100 that could be utilized in the abnormal operation detection blocks 80 and 82 ofFIG. 2 . TheAOD system 100 includes afirst SPM block 104 and asecond SPM block 108 coupled to amodel 112. Thefirst SPM block 104 receives a first process variable and generates first statistical data from the first process variable. The first statistical data could be any of various kinds of statistical data such as mean data, median data, standard deviation data, rate of change data, range data, etc., calculated from the first process variable. Such data could be calculated based on a sliding window of first process variable data or based on non-overlapping windows of first process variable data. As one example, thefirst SPM block 104 may generate mean data using a most recent first process variable sample and 49 previous samples of the first process variable. In this example, a mean variable value may be generated for each new first process variable sample received by thefirst SPM block 104. As another example, thefirst SPM block 104 may generate mean data using non-overlapping time periods. In this example, a window of five minutes (or some other suitable time period) could be used, and a mean variable value would thus be generated every five minutes. In a similar manner, thesecond SPM block 108 receives a second process variable and generates second statistical data from the second process variable in a manner similar to theSPM block 104. - The
model 112 includes an independent variable X input and a dependent variable Y. As will be described in more detail below, themodel 112 may be trained using a plurality of data sets (X, Y), to model Y (dependent variable) as a function of X (independent variable). As will be described in more detail below, themodel 112 may include one or more regression models, each regression model for a different operating region. Each regression model may utilize a function to model the dependent variable Y as a function of the independent variable X over some range of X. The regression model may comprise be a linear regression model, for example, or some other regression model. Generally, a linear regression model comprises some linear combination of functions f(X), g(X), h(X), . . . . For modeling an industrial process, a typically adequate linear regression model may comprise a first order function of X (e.g., Y=m*X+b) or a second order function of X (e.g., Y=a*X2+b*X+c). Of course, other types of functions may be utilized as well such as higher order polynomials, sinusoidal functions, logarithmic functions, exponential functions, power functions, etc. - After it has been trained, the
model 112 may be used to generate a predicted value (YP) of a dependent variable Y based on a given independent variable X input. The output YP of themodel 112 is provided to adeviation detector 116. Thedeviation detector 116 receives the output YP of theregression model 112 as well as the dependent variable input Y to themodel 112. Generally speaking, thedeviation detector 116 compares the dependent variable Y to the value YP generated by themodel 112 to determine if the dependent variable Y is significantly deviating from the predicted value YP. If the dependent variable Y is significantly deviating from the predicted value YP, this may indicate that an abnormal situation has occurred, is occurring, or may occur in the near future, and thus thedeviation detector 116 may generate an indicator of the deviation. In some implementations, the indicator may comprise an alert or alarm. - One of ordinary skill in the art will recognize that the
AOD system 100 can be modified in various ways. For example, the SPM blocks 104 and 108 could be omitted. As another example, other types of processing in addition to or instead of the SPM blocks 104 and 108 could be utilized. For example, the process variable data could be filtered, trimmed, etc., prior to the SPM blocks 104 and 108, or rather than utilizing the SPM blocks 104 and 108. - Additionally, although the
model 112 is illustrated as having a single independent variable input X, a single dependent variable input Y, and a single predicted value YP, themodel 112 could include a regression model that models multiple variables Y as a function of multiple variables X. For example, themodel 112 could comprise a multiple linear regression (MLR) model, a principal component regression (PCR) model, a partial least squares (PLS) model, a ridge regression (RR) model, a variable subset selection (VSS) model, a support vector machine (SVM) model, etc. - The
AOD system 100 could be implemented wholly or partially in a field device. As just one example, the SPM blocks 104 and 108 could be implemented in afield device 66 and themodel 112 and/or thedeviation detector 116 could be implemented in thecontroller 60 or some other device. In one particular implementation, theAOD system 100 could be implemented as a function block, such as a function block to be used in system that implements a Fieldbus protocol. Such a function block may or may not include the SPM blocks 104 and 108. In another implementation, each of at least some of theblocks - The
AOD system 100 may be in communication with the abnormal situation prevention system 35 (FIGS. 1 and 2 ). For example, theAOD system 100 may be in communication with theconfiguration application 38 to permit a user to configure theAOD system 100. For instance, one or more of the SPM blocks 104 and 108, themodel 112, and thedeviation detector 116 may have user configurable parameters that may be modified via theconfiguration application 38. - Additionally, the
AOD system 100 may provide information to the abnormalsituation prevention system 35 and/or other systems in the process plant. For example, the deviation indicator generated by thedeviation detector 116 could be provided to the abnormalsituation prevention system 35 and/or the alert/alarm application 43 to notify an operator of the abnormal condition. As another example, after themodel 112 has been trained, parameters of the model could be provided to the abnormalsituation prevention system 35 and/or other systems in the process plant so that an operator can examine the model and/or so that the model parameters can be stored in a database. As yet another example, theAOD system 100 may provide X, Y, and/or YP values to the abnormalsituation prevention system 35 so that an operator can view the values, for instance, when a deviation has been detected. -
FIG. 4 is a flow diagram of anexample method 150 for detecting an abnormal operation in a process plant. Themethod 150 could be implemented using theexample AOD system 100 ofFIG. 3 and will be used to explain the operation of theAOD system 100. However, one of ordinary skill in the art will recognize that themethod 150 could be implemented by a system different than theAOD system 100. At ablock 154, a model, such as themodel 112, is trained. For example, the model could be trained using independent variable X and dependent variable Y data sets to configure it to model Y as a function of X. The model could include multiple regression models that each model Y as a function of X for a different range of X. - Then, at a
block 158, the trained model generates predicted values (YP) of the dependent variable Y using values of the independent variable X that it receives. Next, at ablock 162, the actual values of Y are compared to the corresponding predicted values YP to determine if Y is significantly deviating from YP. For example, thedeviation detector 116 receives the output YP of themodel 112 and compares it to the dependent variable Y. If it is determined that Y has significantly deviated from YP an indicator of the deviation may be generated at ablock 166. In theAOD system 100, for example, thedeviation detector 116 may generate the indicator. The indicator may be an alert or alarm, for example, or any other type of signal, flag, message, etc., indicating that a significant deviation has been detected. - As will be discussed in more detail below, the
block 154 may be repeated after the model has been initially trained and after it has generated predicted values YP of the dependent variable Y. For example, the model could be retrained if a set point in the process has been changed. - Overview of the Model
-
FIG. 5 is a flow diagram of anexample method 200 for initially training a model such as themodel 112 ofFIG. 3 . At ablock 204, at least an adequate number of data sets (X, Y) for the independent variable X and the dependent variable Y may be received in order to train a model. As described above, the data sets (X, Y) may comprise process variable data, process variable data that has been filtered or otherwise processed, statistical data generated from the process variable data, etc. In the AOD system ofFIG. 3 , themodel 112 may receive data sets (X, Y) from the SPM blocks 104 and 108. Referring now toFIG. 6A , agraph 220 shows an example of a plurality of data sets (X,Y) received by a model. - Referring again to
FIG. 5 , at ablock 208, a validity range [XMIN, XMAX] for the model may be generated. The validity range may indicate a range of the independent variable X for which the model is valid. For instance, the validity range may indicate that the model is valid only for X values in which X is greater than or equal to XMIN and less than or equal to XMAX. As just one example, XMIN could be set as the smallest value of X in the data sets (X,Y) received at theblock 204, and XMAX could be set as the largest value of X in the data sets (X,Y) received at theblock 204. Referring again toFIG. 6A , XMIN could be set to the X value of the leftmost data set, and XMAX could be set as the X value of the rightmost data set, for example. Of course, the determination of validity range could be implemented in other ways as well. In theAOD system 100 ofFIG. 3 , themodel block 112 could generate the validity range. - At a
block 212, a regression model for the range [XMIN, XMAX] may be generated based on the data sets (X, Y) received at theblock 204. Any of a variety of techniques, including known techniques, may be used to generate the regression model, and any of a variety of functions could be used as the model. For example, the model of could comprise a linear equation, a quadratic equation, a higher order equation, etc. InFIG. 6B , acurve 224 superimposed on the data sets (X, Y) received at theblock 204 illustrates a regression model that has been generated to model the data sets (X, Y). InFIG. 6C , thecurve 224 is illustrated without the data sets (X, Y). The regression model corresponding to thecurve 224 is valid in the range [XMIN, XMAX]. In theAOD system 100 ofFIG. 3 , themodel block 112 could generate the regression model for the range [XMIN, XMAX]. - Utilizing the Model Through Operating Region Changes
- It may be that, after the model has been initially trained, the system that it models may move into a different, but normal operating region. For example, a set point may be changed.
FIG. 7 is a flow diagram of anexample method 240 for using a model to determine whether abnormal operation is occurring, has occurred, or may occur, wherein the model may be updated if the modeled process moves into a different operating region. Themethod 240 may be implemented by an AOD system such as theAOD system 100 ofFIG. 3 . Of course, themethod 240 could be implemented by other types of AOD systems as well. Themethod 240 may be implemented after an initial model has been generated. Themethod 200 ofFIG. 5 , for example, could be used to generate the initial model. - At a
block 244, a data set (X, Y) is received. In theAOD system 100 ofFIG. 3 , themodel 112 could receive a data set (X, Y) from the SPM blocks 104 and 108, for example. Then, at ablock 248, it may be determined whether the data set (X, Y) received at theblock 244 is in a validity range. The validity range may indicate a range in which the model is valid. In theAOD system 100 ofFIG. 3 , themodel 112 could examine the value X received at theblock 244 to determine if it is within the validity range [XMIN, XMAX]. If it is determined that the data set (X, Y) received at theblock 244 is in the validity range, the flow may proceed to ablock 252. - At the
block 252, a predicted value YP of the dependent variable Y may be generated using the model. In particular, the model generates the predicted value YP from the value X received at theblock 244. In theAOD system 100 ofFIG. 3 , themodel 112 generates the predicted value YP from the value X received from theSPM block 104. - Then, at a
block 256, the value Y received at theblock 244 may be compared with the predicted value YP. The comparison may be implemented in a variety of ways. For example, a difference or a percentage difference could be generated. Other types of comparisons could be used as well. Referring now toFIG. 8A , an example received data set is illustrated in thegraph 220 as a dot, and the corresponding predicted value, YP, is illustrated as an “x”. As illustrated inFIG. 8A , it has been calculated that the difference between Y received at theblock 244 and the predicted value YP is −1.9808%. Referring now toFIG. 8B , another example received data set is illustrated in thegraph 220 as a dot, and the corresponding predicted value, YP, is illustrated as an “x”. As illustrated inFIG. 8B , it has been calculated that the difference between Y received at theblock 244 and the predicted value YP is −28.957%. In theAOD system 100 ofFIG. 3 , thedeviation detector 116 may perform the comparison. - Referring again to
FIG. 7 , at ablock 260, it may be determined whether the value Y received at theblock 244 significantly deviates from the predicted value YP based on the comparison of theblock 256. The determination at theblock 260 may be implemented in a variety of ways and may depend upon how the comparison of theblock 256 was implemented. For example, if a difference value was generated at theblock 256, it may be determined whether this difference value exceeds some threshold. The threshold may be a predetermined or configurable value. Also, the threshold may be constant or may vary. For example, the threshold may vary depending upon the value of the independent variable X value received at theblock 244. As another example, if a percentage difference value was generated at theblock 256, it may be determined whether this percentage value exceeds some threshold percentage. As yet another example, a significant deviation may be determined only if two or some other number of consecutive comparisons exceed a threshold. Referring again toFIG. 8A , the difference between Y received at theblock 244 and the predicted value YP is −1.9808%. If, for example, a threshold of 10% is to be used to determine whether a deviation is significant, the absolute value of the difference illustrated inFIG. 8A is below that threshold Referring again toFIG. 8B on the other hand, the difference between Y received at theblock 244 and the predicted value YP is −28.957%. The absolute value of the difference illustrated inFIG. 8B is above thethreshold value 10% so an abnormal condition indicator may be generated as will be discussed below. In theAOD system 100 ofFIG. 3 , thedeviation detector 116 may implement theblock 260. - In general, determining if the value Y significantly deviates from the predicted value YP may be implemented using a variety of techniques, including known techniques. For instance, determining if the value Y significantly deviates from the predicted value YP may include analyzing the present values of Y and YP. For example, Y could be subtracted from YP, or vice versa, and the result may be compared to a threshold to see if it exceeds the threshold. It may optionally comprise also analyzing past values of Y and YP. Further, it may comprise comparing Y or a difference between Y and YP to one or more thresholds. Each of the one or more thresholds may be fixed or may change. For example, a threshold may change depending on the value of X or some other variable. U.S. patent application Ser. No. 11/492,347, entitled “METHODS AND SYSTEMS FOR DETECTING DEVIATION OF A PROCESS VARIABLE FROM EXPECTED VALUES,” filed Jul. 25, 2006, and which is hereby incorporated by reference herein, describes example systems and methods for detecting whether a process variable significantly deviates from an expected value, and any of these systems and methods may optionally be utilized. One of ordinary skill in the art will recognize many other ways of determining if the value Y significantly deviates from the predicted value YP. Further, blocks 256 and 260 may be combined.
- Some or all of criteria to be used in the comparing Y to YP(block 256) and/or the criteria to be used in determining if Y significantly deviates from YP(block 260) may be configurable by a user via the configuration application 38 (
FIGS. 1 and 2 ) for example. For instance, the type of comparison (e.g., generate difference, generate absolute value of difference, generate percentage difference, etc.) may be configurable. Also, the threshold or thresholds to be used in determining whether the deviation is significant may be configurable. Alternatively, such criteria may not be readily configurable by an operator. - Referring again to
FIG. 7 , if it is determined that the value Y received at theblock 244 does not significantly deviate from the predicted value YP, the flow may return to theblock 244 to receive the next data set (X,Y). If however, it is determined that the value Y does significantly deviate from the predicted value YP, the flow may proceed to theblock 264. At theblock 264, an indicator of a deviation may be generated. The indicator may be an alert or alarm, for example. The generated indicator may include additional information such as whether the value Y received at theblock 244 was higher than expected or lower than expected, for example. Referring toFIG. 8A , because the difference between Y received at theblock 244 and the predicted value YP is −1.9808%, which is below thethreshold 10%, no indicator is generated. On the other hand, referring toFIG. 8B , the difference between Y received at theblock 244 and the predicted value YP is −28.957%, which is above thethreshold 10%. Therefore, an indicator is generated. In theAOD system 100 ofFIG. 3 , thedeviation detector 116 may generate the indicator. - Referring again to the
block 248 ofFIG. 7 , if it is determined that the data set (X, Y) received at theblock 244 is not in the validity range, the flow may proceed to ablock 268. Referring now toFIG. 9A , it shows a graph illustrating a receiveddata set 290 that is not in the validity range. Referring again toFIG. 7 , at theblock 268, the data set (X, Y) received at theblock 244 may be added to an appropriate group of data sets that may be used to train the model at a subsequent time. For example, if the value of X received at theblock 244 is less than XMIN, the data set (X,Y) received at theblock 244 may be added to a data group corresponding to other received data sets in which the value of X is less than XMIN. Similarly, if the value of X received at theblock 244 is greater than XMAX, the data set (X,Y) received at theblock 244 may be added to a data group corresponding to other received data sets in which the value of X is greater than XMAX. Referring toFIG. 9A , thedata set 290 has been added to a group ofdata sets 294 corresponding to data sets in which the value of X is less than XMIN. In theAOD system 100 ofFIG. 3 , themodel block 112 may implement theblock 268. - Then, at a
block 272, it may be determined if enough data sets are in the data group to which the data set was added at theblock 268 in order to generate a regression model corresponding to the data in that group. This determination may be implemented using a variety of techniques. For example, the number of data sets in the group may be compared to a minimum number, and if the number of data sets in the group is at least this minimum number, it may be determined that there are enough data sets in order to generate a regression model. The minimum number may be selected using a variety of techniques, including techniques known to those of ordinary skill in the art. If it is determined that there are enough data sets in order to generate a regression model, the model may be updated at ablock 276, as will be described below with reference toFIG. 10 . If it is determined, however, that there are not enough data sets in order to generate a regression model, the flow may return to theblock 244 to receive the next data set (X, Y). -
FIG. 10 is a flow diagram of anexample method 276 for updating the model after it is determined that there are enough data sets in a group in order to generate a regression model for data sets outside the current validity range [XMIN, XMAX]. At ablock 304, a range [X′MIN, X′MAX] for a new regression model may be determined. The validity range may indicate a range of the independent variable X for which the new regression model will be valid. For instance, the validity range may indicate that the model is valid only for X values in which X is greater than or equal to X′MIN and less than or equal to X′MAX. As just one example, X′MIN could be set as the smallest value of X in the group of data sets (X,Y), and X′MAX could be set as the largest value of X in the group of data sets (X,Y). Referring again toFIG. 9A , X′MIN could be set to the X value of the leftmost data set in thegroup 294, and X′MAX could be set as the X value of the rightmost data set in thegroup 294, for example. In theAOD system 100 ofFIG. 3 , themodel block 112 could generate the validity range. - At a
block 308, a regression model for the range [X′MIN, X′MAX] may be generated based on the data sets (X, Y) in the group. Any of a variety of techniques, including known techniques, may be used to generate the regression model, and any of a variety of functions could be used as the model. For example, the model could comprise a linear equation, a quadratic equation, etc. InFIG. 9B , acurve 312 superimposed on thegroup 294 illustrates a regression model that has been generated to model the data sets in thegroup 294. The regression model corresponding to thecurve 312 is valid in the range [X′MIN, X′MAX], and the regression model corresponding to thecurve 224 is valid in the range [XMIN, XMAX]. In theAOD system 100 ofFIG. 3 , themodel 112 could generate the regression model for the range [X′MIN, X′MAX]. - For ease of explanation, the range [XMIN, XMAX] will now be referred to as [XMIN
— 1, XMAX— 1], and the range [X′MIN, X′MAX] will now be referred to as [XMIN— 2, XMAX— 2]. Additionally, the regression model corresponding to the range [XMIN— 1, XMAX— 1] will be referred to as f1(x), and regression model corresponding to the range [XMIN— 2, XMAX— 2] will be referred to as f2(x). Thus, the model may now be represented as: -
- Referring again to
FIG. 10 , at ablock 316, an interpolation model may be generated between the regression models corresponding to the ranges [XMIN— 1, XMAX— 1] and [XMIN— 2, XMAX— 2]. The interpolation model described below comprises a linear function, but in other implementations, other types of functions, such as a quadratic function, can be used. If XMAX— 1 is less than XMIN— 2, then the interpolation model may be calculated as: -
- Similarly, if XMAX
— 2 is less than XMIN— 1, then the interpolation model may be calculated as: -
- Thus, the model may now be represented as:
-
- if XMAX
— 1 is less than XMIN— 2. And, if XMAX— 2 is less than XMIN— 1, the interpolation model may be represented as: -
- As can be seen from
equations — 1≦X≦XMAX— 1), and a second regression model (i.e., f2(X)) may be used to model the dependent variable Y in a second operating region (i.e., XMIN— 2≦X≦XMAX— 2). Additionally, as can be seen fromequations 4 and 5, the model may also comprise an interpolation model to model the dependent variable Y in between operating regions corresponding to the regression models. - Referring again to
FIG. 10 , at ablock 320, the validity range may be updated. For example, if XMAX— 1 is less than XMIN— 2, then XMIN may be set to XMIN— 1 and XMAX may be set to XMAX— 2 Similarly, if XMAX— 2 is less than XMIN— 1, then XMIN may be set to XMIN— 2 and XMAX may be set to XMAX— 1FIG. 9C illustrates the new model with the new validity range. - Referring now to
FIGS. 7 and 10 , the model may be updated a plurality of times using a method such as themethod 276. For example,FIG. 11A illustrates afirst group 354 of data sets and asecond group 358 of data sets outside of the validity region corresponding to the model illustrated inFIG. 9C , andFIG. 11B illustrates corresponding to regression models generated for thefirst group 354 of data sets and thesecond group 358 of data sets. Additionally,FIG. 11C illustrates a new updated model that includes the regression models generated for thefirst group 354 of data sets and thesecond group 358 of data sets as well as new interpolation models. Further, 11C illustrates a new validity range for the model. - The abnormal situation prevention system 35 (
FIGS. 1 and 2 ) may cause, for example, graphs similar to some or all of the graphs illustrated inFIGS. 6A , 6B, 6C, 8A, 8B, 9A, 9B, 9C, 11A, 11B and 11C to be displayed on a display device. For instance, if theAOD system 100 provides model criteria data to the abnormalsituation prevention system 35 or a database, for example, the abnormalsituation prevention system 35 may use this data to generate a display illustrating how themodel 112 is modeling the dependent variable Y as a function of the independent variable X. For example, the display may include a graph similar to one or more of the graphs ofFIGS. 6C , 9C and 11C. Optionally, theAOD system 100 may also provide the abnormalsituation prevention system 35 or a database, for example, with some or all of the data sets used to generate themodel 112. In this case, the abnormalsituation prevention system 35 may use this data to generate a display having a graph similar to one or more of the graphs ofFIGS. 6A , 6B, 9A, 9B, 11A and 11B. Optionally, theAOD system 100 may also provide the abnormalsituation prevention system 35 or a database, for example, with some or all of the data sets that theAOD system 100 is evaluating during its monitoring phase. Additionally, theAOD system 100 may also provide the abnormalsituation prevention system 35 or a database, for example, with the comparison data for some or all of the data sets. In this case, as just one example, the abnormalsituation prevention system 35 may use this data to generate a display having a graph similar to one or more of the graphs ofFIGS. 8A and 8B . -
FIG. 12 is a block diagram of anotherexample AOD system 400 that could be used for the abnormal operation detection blocks 80 and 82 ofFIG. 2 . TheAOD system 400 includes afirst SPM block 404 and asecond SPM block 408. TheSPM block 404 receives a load variable associated with a process and generates a mean signal corresponding to the load variable. Similarly, theSPM block 408 receives a monitored variable associated with the process and generates a mean signal based on the monitored variable. Additionally, theSPM block 408 generates a standard deviation signal based on the monitored variable. The mean signals from theSPM block 404 and theSPM block 408, as well as the standard deviation signal from the SPM block 408 may be generated using a variety of techniques, including known techniques. For example, the SPM block 404 could generate mean values by calculating the means of non-overlapping blocks of load variable samples. The blocks could have a fixed length such as a particular number of samples or a time period. As a particular example used for illustrative purposes, if the block was five minutes in length, the SPM block 404 would generate a mean value every five minutes. Theconfiguration application 38, for example, could be used to configure the SPM blocks 404 and 408. Optionally, the SPM blocks 404 and 408 may not be readily configurable by an operator. - The mean output of the
SPM block 404 is provided as an independent variable (X) input of amodel 412, and the mean output of theSPM block 408 is provided as a dependent variable (Y) input of themodel 412. Themodel 412 may comprise a model such as themodel 112 ofFIG. 3 , for example. The mean output of theSPM block 404 is also provided as an independent variable (X) input of amodel 416, and the standard deviation output of theSPM block 408 is provided as a dependent variable (Y) input of themodel 416. Themodel 416 may comprise a model such as themodel 112 ofFIG. 3 , for example. - In the
AOD system 400, themodel 412 generally models the mean of the monitored variable as a function of the mean of the load variable. Themodel 416 generally models the standard deviation of the monitored variable as a function of the mean of the load variable. This may be useful in situations where the standard deviation of the monitored variable tends to change as the load variable changes. - The YP outputs of the
models deviation detector 420. Additionally, the mean output of theSPM block 408 is provided to thedeviation detector 420. Thedeviation detector 420 generally compares the mean (μmv) of the monitored variable to the predicted mean (μPmv) generated by themodel 412. Additionally, thedeviation detector 420 utilizes this comparison as well as the predicted standard deviation (σPmv) generated by themodel 416 to determine if a significant deviation has occurred. More specifically, thedeviation detector 420 generates a status signal as follows: -
- if μmv>μPmv+mσPmv), then generate the status signal indicating that the mean μmv appears to be too high (“UP”);
- if μmv<μPmv−mσPmv), then generate the status signal indicating that the mean μmv appears to be too low (“DOWN”);
- otherwise, generate the status signal indicating that the mean μmv appears to be in a normal range (“NO CHANGE”).
where m is a real number that may be fixed or may be modifiable by a user. As a default, m could be set to 3, for example. Of course, any other suitable default value could be used. The value of m could be configured using theconfiguration application 38, for example. In some implementations, the status signal may be in the form of an alert or alarm.
- In one particular implementation, the
AOD system 400 could be implemented as a function block, such as a function block to be used in system that implements a Fieldbus protocol. In another implementation, each of some or all ofblocks - Using AOD System in a Level Regulatory Control Loop
- AOD systems such as those described above can be used in various ways in a process plant to facilitate abnormal situation prevention. An example of using AOD systems to prevent an abnormal situation in a process plant will be described with reference to
FIGS. 13 and 14 .FIG. 13 is a block diagram of anexample control system 450 for regulating the level of material in atank 454. A control system such as thecontrol system 450 is often referred to in the process control industry as a Level Regulatory Control Loop. Thecontrol system 450 includes aflow sensor 458 to sense the flow of material into thetank 454, and aflow sensor 462 to sense the flow of material exiting thetank 454. Theflow sensor 458 may generate a signal IF indicative of the flow rate of material entering thetank 454, for example, and theflow sensor 462 may generate a signal OF indicative of the flow rate of material exiting thetank 454, for example. Thecontrol system 450 may also include alevel sensor 466 to sense the level of material in thetank 454. Thelevel sensor 466 may generate a signal LVL indicative of the level of material in thetank 454, for example. - A
pump 470 may facilitate draining material from thetank 454, and avalve 474 may be used to regulate the flow rate of material exiting the tank. A position of the valve may be altered using a control demand (CD) signal in a manner well known to those of ordinary skill in the art. Thevalve 474 may include a sensor that generates a signal VP indicative of the position of the valve. - A
PID control routine 478 may be used to control thevalve 474 in order to regulate the level of material in thetank 454 according to a set point (SP). Any of a variety of suitable control routines may be utilized for thePID control routine 478. In general, such a routine may utilize one or more of the following signals to generate a control demand (CD) signal to appropriately control the valve 454: SP, LVL, VP, IF and/or OF. - In control systems such as the
control system 450, two typical abnormal conditions are encountered: a measurement drift and a valve problem. The measurement drift condition may be indicative of a problem with a sensor, such as thelevel sensor 466. For example, a measurement drift condition may result in the signal LVL not accurately indicating the actual level in thetank 454. The valve problem condition may indicate a problem with thevalve 474. This may result, for example, in the VP signal indicating a different valve position than that indicated by the CD signal. With prior art techniques, such underlying problems may cause another problem to occur, such as the level in the tank becoming too high or too low. This may lead to an alert or alarm being generated. But it may take an operator some time to determine the underlying problem that led to the alert/alarm. -
FIG. 14 is a block diagram of anexample system 500 that may be used to detect an abnormal condition associated with thecontrol system 450 ofFIG. 13 . It is to be understood, however, that thesystem 500 could be used with other control systems as well. It is believed that a system such as thesystem 500 may help to detect a measurement drift or valve problem before such underlying conditions lead to a more serious problem such as a tank level being too high or too low. Thus, thesystem 500 may help to limit down time because, for example, replacement parts could be ordered in advance of a shut down. Similarly, economic loss may be reduced because a shut down could be scheduled in advance, as opposed to the system being shut down immediately in response to tank level alarm. Alternatively, a faulty sensor or valve could be replaced without shutting the process down. - The
system 500 includes afirst AOD block 504 and asecond AOD block 508. Each of the AOD blocks 504 and 508 may comprise an AOD system such as theAOD system 400 ofFIG. 12 . Thus, each of the AOD blocks 504 and 508 may include a load variable (LV) input, a monitored variable (MV) input, and a status (S) output as in theAOD system 400 ofFIG. 12 . - Referring now to
FIGS. 13 and 14 , the LVL signal may be provided to the LV input of theAOD block 504 and also to the LV input of theAOD block 508. The CD signal may be provided to the MV input of theAOD block 504. The CD signal may also be provided to asubtraction block 512, along with the VP signal. Thesubtraction block 512 may generate an output signal VP-CD, which may be provided to the MV input of theAOD block 508. In thesystem 500, the AOD block 504 generally models the mean of the CD signal as a function of the mean of the LVL signal. Similarly, the AOD block 508 generally models the mean of the signal VP-CD as a function of the mean of the LVL signal. - A status signal S1 generated by the
AOD block 504 and a status signal S2 generated by the AOD block 508 may be provided to alogic block 516. The signals S1 and S2 may be generated in the manner described with respect toFIG. 12 . Thelogic block 516 may generate a control system status signal that generally indicates whether an abnormal condition has been detected and provides information as to the type of abnormal condition. For example, thelogic block 516 may generate an indicator of a valve problem if the status signal S2 has a value of either “UP” or “DOWN”. Also, thelogic block 516 may generate an indicator of a measurement drift problem if the status signal S2 has a value of “NO CHANGE” and the status signal S1 has a value of either “UP” or “DOWN”. If the status signals S1 and S2 both have values of “NO CHANGE,” thelogic block 516 may generate an indicator that no abnormal condition has been detected. - One of ordinary skill in the art will recognize that a system similar to the
system 500 ofFIG. 14 could be utilized to detect other types of abnormal conditions associated with a control system such as thecontrol system 450 ofFIG. 13 . For example, a similar system could be used to detect a liquid leak condition, a head loss condition, etc. - In one particular implementation, the
system 500 could be a function block, such as a function block to be used in system that implements a Fieldbus protocol. In another implementation, each of at least some of theblocks - Manual Control of AOD System
- In the AOD systems described with respect to
FIGS. 5 , 7 and 10, the model may automatically update itself when enough data sets have been obtained in a particular operating region. However, it may be desired that such updates do not occur unless a human operator permits it. Additionally, it may be desired to allow a human operator to cause the model to update even when received data sets are in the validity region. -
FIG. 15 is an example state transition diagram 550 corresponding to an alternative operation of an AOD system such as theAOD system 100 ofFIG. 3 andAOD system 400 ofFIG. 12 . The operation corresponding to the state diagram 550 allows a human operator more control over the AOD system. For example, as will be described in more detail below, an operator may cause a LEARN command to be sent to the AOD system when the operator desires that the model of the AOD system be forced into aLEARNING state 554. Generally speaking, in theLEARNING state 554, which will be described in more detail below, the AOD system obtains data sets for generating a regression model. Similarly, when the operator desires that the AOD system create a regression model and begin monitoring incoming data sets, the operator may cause a MONITOR command to be sent to the AOD system. Generally speaking, in response to the MONITOR command, the AOD system may transition to aMONITORING state 558. - An initial state of the AOD system may be an
UNTRAINED state 560, for example. The AOD system may transition from theUNTRAINED state 560 to theLEARNING state 554 when a LEARN command is received. If a MONITOR command is received, the AOD system may remain in theUNTRAINED state 560. Optionally, an indication may be displayed on a display device to notify the operator that the AOD system has not yet been trained. - In an OUT OF
RANGE state 562, each received data set may be analyzed to determine if it is in the validity range. If the received data set is not in the validity range, the AOD system may remain in the OUT OFRANGE state 562. If, however, a received data set is within the validity range, the AOD system may transition to theMONITORING state 558. Additionally, if a LEARN command is received, the AOD system may transition to theLEARNING state 554. - In the
LEARNING state 554, the AOD system may collect data sets so that a regression model may be generated in one or more operating regions corresponding to the collected data sets. Additionally, the AOD system optionally may check to see if a maximum number of data sets has been received. The maximum number may be governed by storage available to the AOD system, for example. Thus, if the maximum number of data sets has been received, this may indicate that the AOD system is, or is in danger of, running low on available memory for storing data sets, for example. In general, if it is determined that the maximum number of data sets has been received, or if a MONITOR command is received, the model of the AOD system may be updated and the AOD system may transition to theMONITORING state 558. -
FIG. 16 is a flow diagram of anexample method 600 of operation in theLEARNING state 554. At ablock 604, it may be determined if a MONITOR command was received. If a MONITOR command was received, the flow may proceed to ablock 608. At theblock 608, it may be determined if a minimum number of data sets has been collected in order to generate a regression model. If the minimum number of data sets has not been collected, the AOD system may remain in theLEARNING state 554. Optionally, an indication may be displayed on a display device to notify the operator that the AOD system is still in the LEARNING state because the minimum number of data sets has not yet been collected. - If, on the other hand, the minimum number of data sets has been collected, the flow may proceed to a
block 612. At theblock 612, the model of the AOD system may be updated as will be described in more detail with reference toFIG. 17 . Next, at ablock 616, the AOD system may transition to theMONITORING state 558. - If, at the
block 604 it has been determined that a MONITOR command was not received, the flow may proceed to ablock 620, at which a new data set may be received. Next, at ablock 624, the received data set may be added to an appropriate training group. An appropriate training group may be determined based on the X value of the data set, for instance. As an illustrative example, if the X value is less than XMIN of the model's validity range, the data set could be added to a first training group. And, if the X value is greater than XMAX of the model's validity range, the data set could be added to a second training group. - At a
block 628, it may be determined if a maximum number of data sets has been received. If the maximum number has been received, the flow may proceed to theblock 612, and the AOD system will eventually transition to theMONITORING state 558 as described above. On the other hand, if the maximum number has not been received, the AOD system will remain in theLEARNING state 554. One of ordinary skill in the art will recognize that themethod 600 can be modified in various ways. As just one example, if it is determined that the maximum number of data sets has been received at theblock 628, the AOD system could merely stop adding data sets to a training group. Additionally or alternatively, the AOD system could cause a user to be prompted to give authorization to update the model. In this implementation, the model would not be updated, even if the maximum number of data sets had been obtained, unless a user authorized the update. -
FIG. 17 is a flow diagram of anexample method 650 that may be used to implement theblock 612 ofFIG. 16 . At ablock 654, a range [X′MIN, X′MAX] may be determined for the regression model to be generated using the newly collected data sets. The range [X′MIN, X′MAX] may be implemented using a variety of techniques, including known techniques. At ablock 658, the regression model corresponding to the range [X′MIN, X′MAX] may be generated using some or all of the data sets collected and added to the training group as described with reference toFIG. 16 . The regression model may be generated using a variety of techniques, including known techniques. - At a
block 662, it may be determined if this is the initial training of the model. As just one example, it may be determined if the validity range [XMIN, XMAX] is some predetermined range that indicates that the model has not yet been trained. If it is the initial training of the model, the flow may proceed to ablock 665, at which the validity range [XMIN, XMAX] will be set to the range determined at theblock 654. - If at the
block 662 it is determined that this is not the initial training of the model, the flow may proceed to ablock 670. At theblock 670, it may be determined whether the range [X′MIN, X′MAX] overlaps with the validity range [XMIN, XMAX]. If there is overlap, the flow may proceed to ablock 674, at which the ranges of one or more other regression models or interpolation models may be updated in light of the overlap. Optionally, if a range of one of the other regression models or interpolation models is completely within the range [X′MIN, X′MAX], the other regression model or interpolation model may be discarded. This may help to conserve memory resources, for example. At ablock 678, the validity range may be updated, if needed. For example, if X′MIN is less than XMIN of the validity range, XMIN of the validity range may be set to the X′MIN. - If at the
block 670 it is determined whether the range [X′MIN, X′MAX] does not overlap with the validity range [XMIN, XMAX], the flow may proceed to ablock 682. At theblock 682, an interpolation model may be generated, if needed. At theblock 686, the validity range may be updated. Theblocks blocks FIG. 10 . - One of ordinary skill in the art will recognize that the
method 650 can be modified in various ways. As just one example, if it is determined that the range [X′MIN, X′MAX] overlaps with the validity range [XMIN, XMAX], one or more of the range [X′MIN, X′MAX] and the operating ranges for the other regression models and interpolation models could be modified so that none of these ranges overlap. -
FIG. 18 is a flow diagram of anexample method 700 of operation in theMONITORING state 558. At ablock 704, it may be determined if a LEARN command was received. If a LEARN command was received, the flow may proceed to ablock 708. At theblock 708, the AOD system may transition to theLEARNING state 554. If a LEARN command was not received, the flow may proceed to ablock 712. - At the
block 712, a data set (X,Y) may be received as described previously. Then, at ablock 716, it may be determined whether the received data set (X,Y) is within the validity range [XMIN, XMAX]. If the data set is outside of the validity range [XMIN, XMAX], the flow may proceed to ablock 720, at which the AOD system may transition to the OUT OFRANGE state 562. But if it is determined at theblock 716 that the data set is within the validity range [XMIN, XMAX], the flow may proceed toblocks blocks blocks FIG. 4 . - To help further explain state transition diagram 550 of
FIG. 15 , the flow diagram 600 ofFIG. 16 , the flow diagram 650 ofFIG. 17 , and the flow diagram 700 ofFIG. 18 , reference is now made toFIGS. 19A-19I , which are graphs to help illustrate an example of how an AOD system could operate.FIG. 19A shows agraph 800 illustrating the AOD system in theLEARNING state 554 while its model is being initially trained. In particular, thegraph 800 ofFIG. 19A includes agroup 804 of data sets that have been collected. After an operator has caused a MONITOR command to be issued, or if a maximum number of data sets has been collected, a regression model corresponding to thegroup 804 of data sets may be generated. Thegraph 800 ofFIG. 19B includes acurve 808 indicative of the regression model corresponding to thegroup 804 of data sets. Then, the AOD system may transition to theMONITORING state 558. - The
graph 800 ofFIG. 19C illustrates operation of the AOD system in theMONITORING state 558. In particular, the AOD system receives adata set 812 that is within the validity range. The model generates a prediction YP(indicated by an x in the graph ofFIG. 19C ) using the regression model indicated by thecurve 808. InFIG. 19D , the AOD system receives adata set 816 that is not within the validity range. This may cause the AOD system to transition to the OUT OFRANGE state 562. - If the operator subsequently causes a LEARN command to be issued, the AOD system will transition again to the
LEARNING state 554. Thegraph 800 ofFIG. 19E illustrates operation of the AOD system after it has transitioned back to theLEARNING state 554. In particular, the graph ofFIG. 19E includes agroup 820 of data sets that have been collected. After an operator has caused a MONITOR command to be issued, or if a maximum number of data sets has been collected, a regression model corresponding to thegroup 820 of data sets may be generated. Thegraph 800 ofFIG. 19F includes acurve 824 indicative of the regression model corresponding to thegroup 820 of data sets. Next, an interpolation model may be generated for the operating region between thecurves - Then, the AOD system may transition back to the
MONITORING state 558. The graph ofFIG. 19G illustrates the AOD system again operating in theMONITORING state 558. In particular, the AOD system receives adata set 828 that is within the validity range. The model generates a prediction YP(indicated by an x in the graph ofFIG. 19G ) using the regression model indicated by thecurve 824 ofFIG. 19F . - If the operator again causes a LEARN command to be issued, the AOD system will again transition to the
LEARNING state 554. Thegraph 800 ofFIG. 19H illustrates operation of the AOD system after it has again transitioned to theLEARNING state 554. In particular, the graph ofFIG. 19H includes agroup 832 of data sets that have been collected. After an operator has caused a MONITOR command to be issued, or if a maximum number of data sets has been collected, a regression model corresponding to thegroup 832 of data sets may be generated. Thegraph 800 ofFIG. 19I includes acurve 836 indicative of the regression model corresponding to thegroup 832 of data sets. - Next, ranges of the other regression models may be updated. For example, referring to
FIGS. 19F and 19I , the ranges of the regression models corresponding to thecurves curve 836. Additionally, the interpolation model for the operating region between the regression models corresponding to thecurves curve 836. Thus, the interpolation model may be deleted from a memory associated with the AOD system if desired. - After transitioning to the
MONITORING state 558, the AOD system may operate as described previously. For example, the graph ofFIG. 19I shows a receiveddata set 840 that is within the validity range. The model generates a prediction YP(indicated by an x in the graph ofFIG. 19I ) using the regression model indicated by thecurve 836. - Examples of Implementing AOD Systems in One or More Process Plant Devices
- As described previously, AOD systems such as those described herein, may be implemented in a variety of devices within a process plant.
FIG. 20 is a block diagram showing one possible way in which an AOD system may be implemented in a process plant. InFIG. 20 , aFieldbus system 900 includes aflow transmitter 904 and atemperature transmitter 908 on asame Fieldbus segment 912. Theflow transmitter 904 may implement an analoginput function block 914 and anSPM block 916. Additionally, theflow transmitter 904 may implement an abnormal operationdetection function block 918. Thefunction block 918 may include at least one model and a deviation detector that function in a manner similar to that described above with respect toFIGS. 3 and/or 12, for example. Thetemperature transmitter 908 may implement an analoginput function block 922 and an SPM block 924. - In operation, the analog
input function block 914 may provide a process variable signal to theSPM block 916. In turn, the SPM block 916 may generate one or more statistical signals based on the process variable signal, and may provide the statistical signals to the abnormal operationdetection function block 918. Similarly, the analoginput function block 922 may provide a process variable signal to the SPM block 924. In turn, the SPM block 924 may generate one or more statistical signals based on the process variable signal, and may provide the statistical signals to the abnormal operationdetection function block 918 via theFieldbus segment 912. - In another implementation, the SPM blocks 916 and 924 may be incorporated within the abnormal operation
detection function block 918. In this implementation, the analoginput function block 914 may provide its process variable signal to the abnormal operationdetection function block 918. Similarly, the analoginput function block 922 may provide its process variable signal to the abnormal operationdetection function block 918 via theFieldbus segment 912. Of course, as described above, SPM blocks may not always be utilized in connection with abnormal operationdetection function block 918, and thus may be omitted in some implementations. - As is known, some field devices are capable of making sensing of two or more process variables. Such a field device may be capable of implementing all of
blocks -
FIG. 21 illustrates another manner of implementing AOD systems in a process plant. In thesystem 940 ofFIG. 21 , some or all of the abnormalsituation prevention application 35, theconfiguration application 38, and/or the alert/alarm application 43 may be stored in a device other than a host workstation or personal computer. Theexample system 940 ofFIG. 21 includes a set of field devices 945 (illustrated as Fieldbus field devices, but they could be other types of devices as well) connected to aninterface device 950, which may be, for example, the Rosemount 3420 device. In this case, theinterface device 950, which is not a personal computer, may include some or all of the functionality of the abnormalsituation prevention system 35 described above. In particular, theinterface device 950 may include aserver application 952 to receive and organize data delivered from the field devices 945 (which may be various different types of field devices). If desired, thisserver application 952 may include an OPC server. The configuration application 38 (or a portion of it) may also be stored in a memory of, and executed on a processor of, theinterface device 950 to allow configuration of AOD blocks, SPM blocks, detection logic, models, etc., as described above. Additionally, theinterface device 950 may include one or more SPM blocks 954 therein to collect process variable data directly from one or more of the field devices (such as field devices which do not include SPM blocks or functionality) and to generate SPM parameters, as discussed above. Further, theinterface device 950 may include one or more AOD blocks 956 therein to receive the SPM parameters and/or process variable data from field devices and to generate indicators of deviation, as discussed above. In this manner, the SPM blocks 954 and/or the AOD blocks 956 stored in and executed in theinterface device 950 are able to compensate for the lack of SPM blocks and/or AOD blocks within certain ones of thefield devices 945 and may be used to provide SPM data for field devices which do not themselves support SPM blocks or SPM functionality and/or models and deviation detectors for field devices which do not themselves support AOD blocks or AOD functionality. Also, because theinterface device 950 may typically have more memory and more processing power than a field device, implementing SPM blocks and/or AOD blocks in theinterface device 950 may permit more complex AOD analysis to be performed. For example, more complex regression and/or interpolation models could be implemented as compared to regression models or interpolation models implemented in a field device. - The
interface device 950 may communicate with other devices such as ahost workstation 958 via a hardwired connection, such as a 2-wire, a 3-wire, a 4-wire, etc. connection, to provide SPM data, or data developed therefrom, such as alerts, data plots, etc. to those devices for viewing by a user. Additionally, as illustrated inFIG. 21 , theinterface device 950 may be connected via one or more wireless communication connections to aweb browser 960 and to ahandheld computing device 962, such as a telephone, a personal data assistant (PDA), a laptop computer, etc. In this example, an application may be stored in and executed in other devices, such as thehost workstation 958, in theweb browser 960 or in thehandheld computing device 962 and these applications may communicate with theinterface device 950 to obtain data for the application. If desired, thedevices configuration application 38 to enable a user to configure AOD blocks and/or SPM blocks implemented in theinterface device 950. Likewise, as illustrated inFIG. 21 , the data from theinterface device 950 may be accessed indirectly from thehost 958 by aweb browser 964 and provided to other users via any desired web connection. Of course, theinterface device 950 may include a web server therein and may communicate with any other device, such as thedevices -
FIG. 22 illustrates a furtherprocess plant system 970 in which aninterface device 950, which may be similar to or the same as that ofFIG. 21 , is connected between a set of field devices 974 (forming part of a heat exchanger 978) and aprocess controller system 980. Here, theinterface device 950, which may include all of the applications and functionality of thedevice 950 ofFIG. 21 , may provide data for viewing to ahost 984, and may provide alerts or alarms generated by AOD systems or other systems to thecontroller system 980. Thecontroller system 980 may integrate these alerts or alarms with other controller type alerts and alarms for viewing by, for example, a control operator at anoperator workstation 988. Of course, if desired, thehost workstation 984 may include any desired viewing application to view the data collected in and provided by theinterface device 950 in any desired manner, including any of those discussed herein. Likewise, this data may be made available for viewing by other users via aweb browser 990. Thus, as will be understood, the various applications discussed herein as being associated with the abnormalsituation prevention system 35, the SPM blocks (if used), and the AOD systems may be distributed in different devices. For instance, data (such as SPM data) may be collected in one device, such as afield device 974, and sent to another device, such as in theinterface device 950, that implements an AOD system. Alerts, alarms, or other indicators generated by the AOD system may be sent to yet another device, such as theworkstation 988, for presentation to a user. Likewise, configuration information may be input via a user interface device, such as a host, a web browser, a PDA, etc. and sent to a different device, such as theinterface device 950, for configuring an AOD system. - Reducing Number of Regression Models
- As described previously, AOD systems such as those described herein, may be implemented in a variety of devices within a process plant. In at least some of these devices, memory resources may be constrained. With the AOD systems described above, the model that models the process may include several regression models, and the number of regression models may increase as the process moves into different operating regions, for example. Additionally, as the number of regression models increases, the amount of memory needed to store parameters (e.g., coefficients) of the regression models may increase. For example, if each regression model is of the form Y=a*X2+b*X+c, then each regression model requires storage for its respective parameters a, b, and c. Continuing with this example, if there are 10 regression models, the model would require storage for 30 parameters. If memory resources of the device implementing the model are constrained, the increasing number of regression models may use up all available memory. With such devices, it may be useful to limit the number of regression models that a model may include and/or to permit reduction in the number of regression models of the model. Hereinafter, a model that includes multiple regression models will be referred to as a composite model for ease of explanation.
- To reduce the number of regression models in a composite model, a plurality of adjacent regression models may be merged into a single regression model.
FIG. 23 is a graph illustrating the merger of two adjacent regression models a(x) and b(x) into a single regression model α(x). The regression model a(x) may be valid in a region x>amin and x<amax, while the regression model b(x) may be valid in a region x>bmin and x<bmax. There may be an interpolated model (not shown) between amax and bmin. The regression model α(x) may be chosen such that it is a model that is a best fit of the regression model a(x) over the region x>amin and x<amax and the regression model b(x) over the region x>bmin and x<bmax according to some criteria. For example, the regression model α(x) could be determined as a model that provides the minimum integral square error (ISE) when compared to the regression model a(x) over the region x>amin and x<amax and the regression model b(x) over the region x>bmin and x<bmax. - If the regression models α(x), a(x), and b(x) are polynomials of order p such that
-
α(x)=α0+α1 x+αx 2+ . . . +αp x p (Equ. 6) -
a(x)=a 0 +a 1 x+a 2 x 2 + . . . +a p x P (Equ. 7) -
b(x)=b 0 +b 1 x+b 2 x 2 + . . . +b p x p, (Equ. 8) - the ISE between a polynomial α(x) and a polynomial a(x) over the region x>amin and x<amax and a polynomial b(x) over the region x>bmin and x<bmax may be written as:
-
- The gradient of the ISE may be written as:
-
∇ISE=2·A·({right arrow over (α)}−{right arrow over (a)})+2·B·({right arrow over (α)}−{right arrow over (b)}) (Equ. 17) - The polynomial α(x) that minimizes the ISE can be found by setting the gradient of ISE to zero and solving for {right arrow over (α)}:
-
{right arrow over (α)}=(A+B)−1(A{right arrow over (a)}+B{right arrow over (b)}) (Equ. 15) -
Equation 9 can be extended for the ISE between the polynomial α(x) and three or more other polynomials: -
ISE=({right arrow over (α)}−{right arrow over (a)})T ·A·({right arrow over (α)}− {right arrow over (a)})+({right arrow over (α)}−{right arrow over (b)})T ·B·({right arrow over (α)}− {right arrow over (b)})+({right arrow over (α)}−{right arrow over (c)})T ·C·({right arrow over (α)}− {right arrow over (c)})+ (Equ. 18) - where {right arrow over (c)} is a vector of the coefficients of a third polynomial c(x) and C is defined similar to A and B above (see
Equations Equation 18 can be extended to calculate the polynomial α(x) that minimizes ISE with regard to three or more other polynomials: -
{right arrow over (α)}=(A+B+C+ . . . )−1(A{right arrow over (α)}+B{right arrow over (b)}+C{right arrow over (c)}+ . . . ) (Equ. 19) - By replacing two or more regression models with a single regression model α(x), the number of parameters that need to be stored can be reduced. For example, if each regression model is of the form Y=a*X2+b*X+c, then each regression model requires storage for its respective parameters a, b, and c. Continuing with this example, if there are 10 regression models, the composite model would require storage for 30 parameters. If two of these regression models can be combined into one model, the composite model would then require storage for only 27 parameters.
-
FIG. 24 is a flow diagram of anexample method 1000 that may be implemented by an AOD system, such as theAOD system 100 ofFIG. 3 , theAOD system 400 ofFIG. 12 , and theAOD block 504 and the AOD block 508 ofFIG. 14 , or some other AOD system. At ablock 1004, groups of data sets may be received. Each group may correspond to a different operating region of the process, for example. Receiving groups of data sets may be accomplished in a manner similar to that described above with respect toFIG. 7 orFIG. 16 , for example. - At a
block 1008, a respective regression model may be generated for each group received at theblock 1004. Generating the regression models may be accomplished in a manner similar to that described above with respect toFIGS. 5 , 10, or 17, for example. At ablock 1012, a composite model may be generated having the regression models generated at theblock 1008. Generating the composite model may be accomplished in a manner similar to that described above with respect toFIGS. 10 and 17 , for example. For instance, generating the composite model may comprise generating interpolation models between regression models and updating validity ranges. - The
blocks - On the other hand, two or more groups of data sets could be received before any regression models are generated. Similarly, two or more regression models could be generated before a composite model is generated and/or updated.
- At a
block 1016, a new model may be generated using a plurality of the regression models generated at theblock 1008. For example, two or more regression models may be merged into a single model using a technique such as the technique described above with reference toFIG. 23 . At ablock 1020, the composite model may be revised to replace the two or more regression models with the new model. - The new model may be generated from particular regression models according to some criteria. For example, the new model may be generated from the first two regression models in some list, or the last two regression models in the list. As another example, the new model may be generated from two adjacent regression models having a smallest gap between their respective validity ranges. If more than one pair of regression models have the same smallest gap, other criteria can be used to select one pair. As yet another example, the new model may be generated from two adjacent regression models having a smallest cumulative validity range. As yet another example, the new model may be generated from the two adjacent regression models giving the smallest integral square error, between the new model and the two adjacent regression models. One of ordinary skill in the art will recognize many other ways to select two or more regression models that are to be merged. For instance, a pair of adjacent regression models may be chosen pseudorandomly.
-
FIG. 25 is a flow diagram of anexample method 1040 for updating a composite model by selecting two or more regression models for merger. At ablock 1044, a plurality of new models may be generated, where each new model corresponds to a merger of a different subset of regression models. For example, a new model may be generated for each possible combination of a particular number of adjacent regression models in the composite model. - Then, at a
block 1048, one of the new models may be selected according to some criteria. For example, the new model that has the lowest ISE may be selected. In this implementation, themethod 1040 may include calculating the ISE for each new model. Theblocks - At a
block 1052, the composite model may be revised to replace with the chosen new model the corresponding subset of regression models in a manner similar to that described previously. - To illustrate application of the
method 1040, an example will be described.FIG. 26A is a graph of an example composite model including fourregression models regression models -
TABLE 1 Regression Model Xmin Xmax a0 a1 a2 1060A 6.0129 6.9805 18.3933 −5.0544 0.3891 1060B 7.5225 8.4781 20.1076 −4.5600 0.2912 1060C 9.0237 9.9692 −12.3376 2.7415 −0.1215 1060D 10.5020 11.4418 1.5813 −0.6256 0.0727
Additionally, the composite model includes threeinterpolation models -
FIG. 26B illustrates anew model 1064A generated using theregression models new model 1064A would replace theregression models interpolation model 1062A.FIG. 26C illustrates anew model 1064B generated using theregression models new model 1064B would replace theregression models interpolation model 1062B.FIG. 26D illustrates anew model 1064C generated using theregression models new model 1064C would replace theregression models interpolation model 1062C. Table 2 includes the validity ranges and coefficients of thenew models -
TABLE 2 New Model Xmin Xmax a0 a1 a2 ISE 1064A 6.0129 8.4781 3.1165 −0.4425 0.0421 0.003186 1064B 7.5225 9.9692 8.4027 −1.6566 0.1114 0.000483 1064C 9.0237 11.4418 15.9324 −3.0553 0.1750 0.005270 - It can be seen from Table 2 that the
new model 1064B has the lowest associated ISE. Thus, the composite model can be revised to replace theregression models interpolation model 1062B with thenew model 1064B.FIG. 26E is an illustration of the revised composite model. Table 3 includes the validity ranges and coefficients of the models (not including the interpolation models) of the revised composite -
TABLE 3 Model Xmin Xmax a0 a1 a2 1060A 6.0129 6.9805 18.3933 −5.0544 0.3891 1064B 7.5225 9.9692 8.4027 −1.6566 0.1114 1060D 10.5020 11.4418 1.5813 −0.6256 0.0727 -
FIG. 27 is a flow diagram of anexample method 1070 for updating a composite model that may have a limit to the number of regression models it may include. Themethod 1070 includes like numbered blocks from themethod 276 ofFIG. 10 and can be utilized as an alternative to themethod 276 ofFIG. 10 . After theblocks FIG. 10 (i.e., after a new regression model has been generated and the composite model has been updated), at a block 1074 a number N of regression models in the composite model may be incremented. Then, at ablock 1078, it may be determined if the number N is equal to a number NMAX. The number NMAX may be a maximum number of regression models that the composite model may include. Alternatively, the number NMAX may be a number that is some amount less than the maximum number of regression models that the composite model may include. For example the number NMAX may be one, two, three, etc., less than the maximum number of regression models that the composite model may include. In other implementations, it may be determined if the number N is greater than greater than NMAX, or it may be determined if the number N is greater than or equal to NMAX. - If it is determined that the N is not equal to NMAX, the flow may end. If, however, it is determined that the N is equal to NMAX, the flow may proceed to a
block 1082. At theblock 1082, a new model may be determined using as subset of the regression models, and the composite model may be revised to replace the subset with the new model. Then, at ablock 1086, the number N may be decremented. For example, if the new model replaces two regression models, the number N may be decremented by one. As another example, if the new model replaces three regression models, the number N may be decremented by two. Optionally, theblocks block 1082 could be repeated one or more times, and then, at theblock 1086, the number N may be decremented by an appropriate amount. - Additionally, although example methods for reducing the number of regression models were described in the context of regression models having a single independent variable input X and a single dependent variable input Y, the methods could also be used with regression models that model multiple variables Y as a function of multiple variables X. For example, a new model could be generated to replace two or more MLR models, PCR models, PLS models, RR models, VSS models, SVM models, etc. Similarly, although example methods for reducing the number of regression models were described in the context of linear regression models that utilize polynomials, it is to be understood that the methods may also be implemented with other types of the models such as models that utilize sinusoidal functions, logarithmic functions, exponential functions, power functions, etc.
- One of ordinary skill in the art will recognize that the example systems and methods described above may be modified in various ways. For example, blocks may be omitted, reordered, or combined, additional blocks may be added, etc. As just one specific example, with regard to
FIG. 16 , theblock 604 could be implemented at a different point in the flow. Similarly, theblock 604 could be implemented as an interrupt routine, and thus it could actually occur at various points with the flow ofFIG. 16 depending upon when the MONITOR command is received. - Although examples were described in which a regression model comprised a linear regression model of a single dependent variable as a function of a single independent variable, one of ordinary skill in the art will recognize that other linear regression models and non-linear regression models may be utilized. One of ordinary skill in the art will also recognize that the linear or non-linear regression models may model multiple dependent variables as functions of multiple independent variables.
- The AOD systems, models, regression models, interpolation models, deviation detectors, logic blocks, method blocks, etc., described herein may be implemented using any combination of hardware, firmware, and software. Thus, systems and techniques described herein may be implemented in a standard multi-purpose processor or using specifically designed hardware or firmware as desired. When implemented in software, the software may be stored in any computer readable memory such as on a magnetic disk, a laser disk, or other storage medium, in a RAM or ROM or flash memory of a computer, processor, I/O device, field device, interface device, etc. Likewise, the software may be delivered to a user or a process control system via any known or desired delivery method including, for example, on a computer readable disk or other transportable computer storage mechanism or via communication media. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency, infrared and other wireless media. Thus, the software may be delivered to a user or a process control system via a communication channel such as a telephone line, the Internet, etc. (which are viewed as being the same as or interchangeable with providing such software via a transportable storage medium).
- Thus, while the present invention has been described with reference to specific examples, which are intended to be illustrative only and not to be limiting of the invention, it will be apparent to those of ordinary skill in the art that changes, additions or deletions may be made to the disclosed embodiments without departing from the spirit and scope of the invention.
Claims (27)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/619,846 US8032341B2 (en) | 2007-01-04 | 2007-01-04 | Modeling a process using a composite model comprising a plurality of regression models |
PCT/US2007/088579 WO2008085705A1 (en) | 2007-01-04 | 2007-12-21 | Method and system for modeling a process in a process plant |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/619,846 US8032341B2 (en) | 2007-01-04 | 2007-01-04 | Modeling a process using a composite model comprising a plurality of regression models |
Publications (2)
Publication Number | Publication Date |
---|---|
US20080167839A1 true US20080167839A1 (en) | 2008-07-10 |
US8032341B2 US8032341B2 (en) | 2011-10-04 |
Family
ID=39361221
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/619,846 Active 2029-08-11 US8032341B2 (en) | 2007-01-04 | 2007-01-04 | Modeling a process using a composite model comprising a plurality of regression models |
Country Status (2)
Country | Link |
---|---|
US (1) | US8032341B2 (en) |
WO (1) | WO2008085705A1 (en) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080177513A1 (en) * | 2007-01-04 | 2008-07-24 | Fisher-Rosemount Systems, Inc. | Method and System for Modeling Behavior in a Process Plant |
US20110264424A1 (en) * | 2008-11-19 | 2011-10-27 | Toshiharu Miwa | Apparatus abnormality diagnosis method and system |
US8145358B2 (en) | 2006-07-25 | 2012-03-27 | Fisher-Rosemount Systems, Inc. | Method and system for detecting abnormal operation of a level regulatory control loop |
US20120233099A1 (en) * | 2011-03-07 | 2012-09-13 | Honeywell International Inc. | Optimization problem solving |
US20140249656A1 (en) * | 2013-03-01 | 2014-09-04 | Semiconductor Manufacturing International (Shanghai) Corporation | Method and apparatus for alarm monitoring |
TWI499880B (en) * | 2013-12-04 | 2015-09-11 | Metal Ind Res & Dev Ct | Manufacturing execution system and method for process parameter adjustment thereof |
US9465382B2 (en) | 2013-11-25 | 2016-10-11 | Institute For Information Industry | Embedded system, fool-proof control method and non-transitory computer-readable storage medium |
US20170227953A1 (en) * | 2014-08-04 | 2017-08-10 | Tlv Co., Ltd. | Equipment Monitoring System, Equipment Monitoring Program, and Equipment Monitoring Method |
US20170262561A1 (en) * | 2014-09-11 | 2017-09-14 | Nec Corporation | Information processing apparatus, information processing method, and recording medium |
EP3190519A4 (en) * | 2014-09-03 | 2018-05-16 | Nec Corporation | Monitoring device and monitoring method thereof, monitoring system, and recording medium in which computer program is stored |
US10255060B2 (en) * | 2013-08-06 | 2019-04-09 | Endress + Hauser Process Solutions Ag | Method for extending an embedded software component of a field device |
US10346228B2 (en) | 2017-07-12 | 2019-07-09 | Siemens Aktiengesellschaft | Method and system for deviation detection in sensor datasets |
WO2020069306A1 (en) * | 2018-09-28 | 2020-04-02 | B.yond, Inc. | Self-intelligent improvement in predictive data models |
CN113242782A (en) * | 2018-12-31 | 2021-08-10 | Abb瑞士股份有限公司 | Method and system for detecting anomalies in a robotic system |
EP4020102A1 (en) * | 2020-12-28 | 2022-06-29 | ABB Schweiz AG | System and method for operating an industrial process |
US20220308571A1 (en) * | 2021-03-26 | 2022-09-29 | Yokogawa Electric Corporation | Apparatus, method, and computer-readable medium |
US20230028886A1 (en) * | 2019-11-20 | 2023-01-26 | University Of Tennessee Research Foundation | Methods of detecting anomalous operation of industrial systems and respective control systems, and related systems and articles of manufacture |
CN118071336A (en) * | 2024-04-25 | 2024-05-24 | 杭州电缆股份有限公司 | Equipment operation management method and system for cable production equipment |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5108116B2 (en) * | 2009-01-14 | 2012-12-26 | 株式会社日立製作所 | Device abnormality monitoring method and system |
JP5297272B2 (en) * | 2009-06-11 | 2013-09-25 | 株式会社日立製作所 | Device abnormality monitoring method and system |
WO2012086444A1 (en) * | 2010-12-24 | 2012-06-28 | 日本電気株式会社 | Monitoring data analysis device, monitoring data analysis method, and monitoring data analysis program |
TWI515522B (en) * | 2010-12-28 | 2016-01-01 | 萬國商業機器公司 | Method, computer program, and computer for determining system situation |
Citations (96)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4527271A (en) * | 1982-08-17 | 1985-07-02 | The Foxboro Company | Process control system with improved fault isolation |
US4657179A (en) * | 1984-12-26 | 1987-04-14 | Honeywell Inc. | Distributed environmental/load control system |
US4734873A (en) * | 1984-02-02 | 1988-03-29 | Honeywell Inc. | Method of digital process variable transmitter calibration and a process variable transmitter system utilizing the same |
US4907167A (en) * | 1987-09-30 | 1990-03-06 | E. I. Du Pont De Nemours And Company | Process control system with action logging |
US4910691A (en) * | 1987-09-30 | 1990-03-20 | E.I. Du Pont De Nemours & Co. | Process control system with multiple module sequence options |
US4911035A (en) * | 1987-03-31 | 1990-03-27 | Nissan Motor Co., Ltd. | Air breather device of automatic transmission |
US5006992A (en) * | 1987-09-30 | 1991-04-09 | Du Pont De Nemours And Company | Process control system with reconfigurable expert rules and control modules |
US5008810A (en) * | 1988-09-29 | 1991-04-16 | Process Modeling Investment Corp. | System for displaying different subsets of screen views, entering different amount of information, and determining correctness of input dependent upon current user input |
US5015934A (en) * | 1989-09-25 | 1991-05-14 | Honeywell Inc. | Apparatus and method for minimizing limit cycle using complementary filtering techniques |
US5018215A (en) * | 1990-03-23 | 1991-05-21 | Honeywell Inc. | Knowledge and model based adaptive signal processor |
US5121467A (en) * | 1990-08-03 | 1992-06-09 | E.I. Du Pont De Nemours & Co., Inc. | Neural network/expert system process control system and method |
US5134574A (en) * | 1990-02-27 | 1992-07-28 | The Foxboro Company | Performance control apparatus and method in a processing plant |
US5187674A (en) * | 1989-12-28 | 1993-02-16 | Honeywell Inc. | Versatile, overpressure proof, absolute pressure sensor |
US5189232A (en) * | 1991-06-27 | 1993-02-23 | University Of Utah | Method of making jet fuel compositions via a dehydrocondensation reaction process |
US5193143A (en) * | 1988-01-12 | 1993-03-09 | Honeywell Inc. | Problem state monitoring |
US5197114A (en) * | 1990-08-03 | 1993-03-23 | E. I. Du Pont De Nemours & Co., Inc. | Computer neural network regulatory process control system and method |
US5212765A (en) * | 1990-08-03 | 1993-05-18 | E. I. Du Pont De Nemours & Co., Inc. | On-line training neural network system for process control |
US5224203A (en) * | 1990-08-03 | 1993-06-29 | E. I. Du Pont De Nemours & Co., Inc. | On-line process control neural network using data pointers |
US5282261A (en) * | 1990-08-03 | 1994-01-25 | E. I. Du Pont De Nemours And Co., Inc. | Neural network process measurement and control |
US5291190A (en) * | 1991-03-28 | 1994-03-01 | Combustion Engineering, Inc. | Operator interface for plant component control system |
US5301101A (en) * | 1990-06-21 | 1994-04-05 | Honeywell Inc. | Receding horizon based adaptive control having means for minimizing operating costs |
US5311447A (en) * | 1991-10-23 | 1994-05-10 | Ulrich Bonne | On-line combustionless measurement of gaseous fuels fed to gas consumption devices |
US5311562A (en) * | 1992-12-01 | 1994-05-10 | Westinghouse Electric Corp. | Plant maintenance with predictive diagnostics |
US5325522A (en) * | 1986-10-15 | 1994-06-28 | United States Data Corporation | Apparatus and method for communicating between devices trough use of a real time data base |
US5333298A (en) * | 1991-08-08 | 1994-07-26 | Honeywell Inc. | System for making data available to an outside software package by utilizing a data file which contains source and destination information |
US5384698A (en) * | 1992-08-31 | 1995-01-24 | Honeywell Inc. | Structured multiple-input multiple-output rate-optimal controller |
US5390326A (en) * | 1993-04-30 | 1995-02-14 | The Foxboro Company | Local area network with fault detection and recovery |
US5396415A (en) * | 1992-01-31 | 1995-03-07 | Honeywell Inc. | Neruo-pid controller |
US5398303A (en) * | 1992-02-28 | 1995-03-14 | Yamatake-Honeywell Co., Ltd. | Fuzzy data processing method and data smoothing filter |
US5408406A (en) * | 1993-10-07 | 1995-04-18 | Honeywell Inc. | Neural net based disturbance predictor for model predictive control |
US5486920A (en) * | 1993-10-01 | 1996-01-23 | Honeywell, Inc. | Laser gyro dither strippr gain correction method and apparatus |
US5486996A (en) * | 1993-01-22 | 1996-01-23 | Honeywell Inc. | Parameterized neurocontrollers |
US5488697A (en) * | 1988-01-12 | 1996-01-30 | Honeywell Inc. | Problem state monitoring system |
US5499188A (en) * | 1992-12-14 | 1996-03-12 | Honeywell Inc. | Flexible method for building a recipe in a process control system |
US5519647A (en) * | 1993-05-12 | 1996-05-21 | U.S. Philips Corporation | Apparatus for and method of generating an approximation function |
US5521842A (en) * | 1992-11-25 | 1996-05-28 | Fuji Photo Co., Ltd. | Diagnostic device and a data communication system for use with the diagnostic device |
US5533413A (en) * | 1994-06-30 | 1996-07-09 | Yokogawa Electric Corporation | Equipment diagnosis system |
US5537310A (en) * | 1993-12-27 | 1996-07-16 | Yamatake-Honeywell Co., Ltd. | Internal Model Controller with automatically correcting gain of the internal model controller |
US5541833A (en) * | 1987-03-30 | 1996-07-30 | The Foxboro Company | Multivariable feedforward adaptive controller |
US5596704A (en) * | 1993-11-11 | 1997-01-21 | Bechtel Group, Inc. | Process flow diagram generator |
US5640491A (en) * | 1992-09-14 | 1997-06-17 | Texaco, Inc. | Control system using an adaptive neural network for target and path optimization for a multivariable, nonlinear process |
US5715158A (en) * | 1996-05-31 | 1998-02-03 | Abb Industrial Systems, Inc. | Method and apparatus for controlling an extended process |
US5719767A (en) * | 1994-07-29 | 1998-02-17 | Hyundai Motor Company | Apparatus for notifying the possibility of a malfunction of an automatic transmission and method therefor |
US5729661A (en) * | 1992-11-24 | 1998-03-17 | Pavilion Technologies, Inc. | Method and apparatus for preprocessing input data to a neural network |
US5740324A (en) * | 1990-10-10 | 1998-04-14 | Honeywell | Method for process system identification using neural network |
US5742513A (en) * | 1996-05-15 | 1998-04-21 | Abb Power T&D Company Inc. | Methods and systems for automatic testing of a relay |
US5761518A (en) * | 1996-02-29 | 1998-06-02 | The Foxboro Company | System for replacing control processor by operating processor in partially disabled mode for tracking control outputs and in write enabled mode for transferring control loops |
US5764891A (en) * | 1996-02-15 | 1998-06-09 | Rosemount Inc. | Process I/O to fieldbus interface circuit |
US5768119A (en) * | 1996-04-12 | 1998-06-16 | Fisher-Rosemount Systems, Inc. | Process control system including alarm priority adjustment |
US5777872A (en) * | 1996-09-13 | 1998-07-07 | Honeywell-Measurex Corporation | Method and system for controlling a multiple input/output process with minimum latency |
US5781432A (en) * | 1993-03-02 | 1998-07-14 | Pavilion Technologies, Inc. | Method and apparatus for analyzing a neural network within desired operating parameter constraints |
US5859964A (en) * | 1996-10-25 | 1999-01-12 | Advanced Micro Devices, Inc. | System and method for performing real time data acquisition, process modeling and fault detection of wafer fabrication processes |
US5859773A (en) * | 1992-06-10 | 1999-01-12 | Pavilion Technologies, Inc. | Residual activation neural network |
US5877954A (en) * | 1996-05-03 | 1999-03-02 | Aspen Technology, Inc. | Hybrid linear-neural network process control |
US5892679A (en) * | 1996-09-13 | 1999-04-06 | Honeywell-Measurex Corporation | Method and system for controlling a multiple input/output process with minimum latency using a pseudo inverse constant |
US5892939A (en) * | 1996-10-07 | 1999-04-06 | Honeywell Inc. | Emulator for visual display object files and method of operation thereof |
US5898869A (en) * | 1996-09-20 | 1999-04-27 | The Foxboro Company | Method and system for PCMCIA card boot from dual-ported memory |
US5901058A (en) * | 1997-08-22 | 1999-05-04 | Honeywell Inc. | System and methods for achieving heterogeneous data flow between algorithm blocks in a distributed control system |
US5905989A (en) * | 1996-11-27 | 1999-05-18 | Bently Nevada Corporation | Knowledge manager relying on a hierarchical default expert system: apparatus and method |
US5907701A (en) * | 1996-06-14 | 1999-05-25 | The Foxboro Company | Management of computer processes having differing operational parameters through an ordered multi-phased startup of the computer processes |
US5909586A (en) * | 1996-11-06 | 1999-06-01 | The Foxboro Company | Methods and systems for interfacing with an interface powered I/O device |
US5909541A (en) * | 1993-07-14 | 1999-06-01 | Honeywell Inc. | Error detection and correction for data stored across multiple byte-wide memory devices |
US5909370A (en) * | 1997-12-22 | 1999-06-01 | Honeywell Inc. | Method of predicting overshoot in a control system response |
US5918233A (en) * | 1996-05-30 | 1999-06-29 | The Foxboro Company | Methods and systems for providing electronic documentation to users of industrial process control systems |
US6017143A (en) * | 1996-03-28 | 2000-01-25 | Rosemount Inc. | Device in a process system for detecting events |
US6026352A (en) * | 1996-10-04 | 2000-02-15 | Fisher Controls International, Inc. | Local device and process diagnostics in a process control network having distributed control functions |
US6033257A (en) * | 1995-11-20 | 2000-03-07 | The Foxboro Company | I/O connector module for a field controller in a distributed control system |
US6041263A (en) * | 1996-10-01 | 2000-03-21 | Aspen Technology, Inc. | Method and apparatus for simulating and optimizing a plant model |
US6047221A (en) * | 1997-10-03 | 2000-04-04 | Pavilion Technologies, Inc. | Method for steady-state identification based upon identified dynamics |
US6047220A (en) * | 1996-12-31 | 2000-04-04 | Rosemount Inc. | Device in a process system for validating a control signal from a field device |
US6055483A (en) * | 1997-05-05 | 2000-04-25 | Honeywell, Inc. | Systems and methods using bridge models to globally optimize a process facility |
US6061603A (en) * | 1997-09-10 | 2000-05-09 | Schneider Automation Inc. | System for remotely accessing an industrial control system over a commercial communications network |
US6067505A (en) * | 1997-04-10 | 2000-05-23 | The Foxboro Company | Method and apparatus for self-calibration of a coordinated control system for an electric power generating station |
US6076124A (en) * | 1995-10-10 | 2000-06-13 | The Foxboro Company | Distributed control system including a compact easily-extensible and serviceable field controller |
US6078843A (en) * | 1997-01-24 | 2000-06-20 | Honeywell Inc. | Neural network including input normalization for use in a closed loop control system |
US6169980B1 (en) * | 1992-11-24 | 2001-01-02 | Pavilion Technologies, Inc. | Method for operating a neural network with missing and/or incomplete data |
US20020022894A1 (en) * | 2000-05-23 | 2002-02-21 | Evren Eryurek | Enhanced fieldbus device alerts in a process control system |
US20020038156A1 (en) * | 1996-03-28 | 2002-03-28 | Evren Eryurek | Root cause diagnostics |
US20020077711A1 (en) * | 1999-02-22 | 2002-06-20 | Nixon Mark J. | Fusion of process performance monitoring with process equipment monitoring and control |
US20030014500A1 (en) * | 2001-07-10 | 2003-01-16 | Schleiss Trevor D. | Transactional data communications for process control systems |
US6539267B1 (en) * | 1996-03-28 | 2003-03-25 | Rosemount Inc. | Device in a process system for determining statistical parameter |
US20040039556A1 (en) * | 2002-08-22 | 2004-02-26 | Ibex Process Technology, Inc. | Filter models for dynamic control of complex processes |
US20040078171A1 (en) * | 2001-04-10 | 2004-04-22 | Smartsignal Corporation | Diagnostic systems and methods for predictive condition monitoring |
US20060020423A1 (en) * | 2004-06-12 | 2006-01-26 | Fisher-Rosemount Systems, Inc. | System and method for detecting an abnormal situation associated with a process gain of a control loop |
US20070005298A1 (en) * | 2005-06-22 | 2007-01-04 | International Business Machines Corporation | Monitoring method, system, and computer program based on severity and persistence of problems |
US7233834B2 (en) * | 2003-08-13 | 2007-06-19 | Cargill, Inc. | Computer-aided modeling and manufacture of products |
US7321848B2 (en) * | 2002-02-04 | 2008-01-22 | Tuszynski Steve W | Manufacturing design and process analysis system |
US20080027678A1 (en) * | 2006-07-25 | 2008-01-31 | Fisher-Rosemount Systems, Inc. | Method and system for detecting abnormal operation in a process plant |
US20080052039A1 (en) * | 2006-07-25 | 2008-02-28 | Fisher-Rosemount Systems, Inc. | Methods and systems for detecting deviation of a process variable from expected values |
US20080082295A1 (en) * | 2006-09-28 | 2008-04-03 | Fisher-Rosemount Systems, Inc. | Abnormal situation prevention in a coker heater |
US20080082308A1 (en) * | 2006-09-28 | 2008-04-03 | Fisher-Rosemount Systems, Inc. | Method and system for detecting abnormal operation in a hydrocracker |
US20080082304A1 (en) * | 2006-09-28 | 2008-04-03 | Fisher-Rosemount Systems, Inc. | Abnormal situation prevention in a heat exchanger |
US20080116051A1 (en) * | 2006-09-29 | 2008-05-22 | Fisher-Rosemount Systems, Inc. | Main column bottoms coking detection in a fluid catalytic cracker for use in abnormal situation prevention |
US20080120060A1 (en) * | 2006-09-29 | 2008-05-22 | Fisher-Rosemount Systems, Inc. | Detection of catalyst losses in a fluid catalytic cracker for use in abnormal situation prevention |
US20090089009A1 (en) * | 2007-10-02 | 2009-04-02 | Fisher-Rosemount Systems, Inc. | Simplified algorithm for abnormal situation prevention in load following applications |
US20090097537A1 (en) * | 2007-10-10 | 2009-04-16 | Fisher-Rosemount Systems, Inc. | Simplified algorithm for abnormal situation prevention in load following applications including plugged line diagnostics in a dynamic process |
Family Cites Families (106)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4607325A (en) | 1981-10-21 | 1986-08-19 | Honeywell Inc. | Discontinuous optimization procedure modelling the run-idle status of plural process components |
US4763243A (en) | 1984-06-21 | 1988-08-09 | Honeywell Bull Inc. | Resilient bus system |
US5043863A (en) | 1987-03-30 | 1991-08-27 | The Foxboro Company | Multivariable adaptive feedforward controller |
US4885694A (en) | 1987-04-29 | 1989-12-05 | Honeywell Inc. | Automated building control design system |
US4965742A (en) | 1987-09-30 | 1990-10-23 | E. I. Du Pont De Nemours And Company | Process control system with on-line reconfigurable modules |
US4853175A (en) | 1988-03-10 | 1989-08-01 | The Babcock & Wilcox Company | Power plant interactive display |
US5050095A (en) | 1988-05-31 | 1991-09-17 | Honeywell Inc. | Neural network auto-associative memory with two rules for varying the weights |
US4944035A (en) | 1988-06-24 | 1990-07-24 | Honeywell Inc. | Measurement of thermal conductivity and specific heat |
US4956793A (en) | 1988-06-24 | 1990-09-11 | Honeywell Inc. | Method and apparatus for measuring the density of fluids |
US5373452A (en) | 1988-09-02 | 1994-12-13 | Honeywell Inc. | Intangible sensor and method for making same |
US5140530A (en) | 1989-03-28 | 1992-08-18 | Honeywell Inc. | Genetic algorithm synthesis of neural networks |
US5070458A (en) | 1989-03-31 | 1991-12-03 | Honeywell Inc. | Method of analyzing and predicting both airplane and engine performance characteristics |
US5442544A (en) | 1990-01-26 | 1995-08-15 | Honeywell Inc. | Single input single output rate optimal controller |
US5142612A (en) | 1990-08-03 | 1992-08-25 | E. I. Du Pont De Nemours & Co. (Inc.) | Computer neural network supervisory process control system and method |
US5167009A (en) | 1990-08-03 | 1992-11-24 | E. I. Du Pont De Nemours & Co. (Inc.) | On-line process control neural network using data pointers |
EP0496570B1 (en) | 1991-01-22 | 1998-06-03 | Honeywell Inc. | Two-level system identifier apparatus with optimization |
US5161013A (en) | 1991-04-08 | 1992-11-03 | Honeywell Inc. | Data projection system with compensation for nonplanar screen |
US5675253A (en) * | 1991-11-20 | 1997-10-07 | Auburn International, Inc. | Partial least square regression techniques in obtaining measurements of one or more polymer properties with an on-line nmr system |
US5369599A (en) | 1992-08-04 | 1994-11-29 | Honeywell Inc. | Signal metric estimator |
US5692158A (en) | 1992-08-28 | 1997-11-25 | Abb Power T&D Company Inc. | Methods for generating models of non-linear systems and components and for evaluating parameters in relation to such non-linear models |
JP2794142B2 (en) | 1992-09-14 | 1998-09-03 | 株式会社山武 | Information processing device |
US5351184A (en) | 1993-01-26 | 1994-09-27 | Honeywell Inc. | Method of multivariable predictive control utilizing range control |
DE69421305T2 (en) | 1993-02-15 | 2000-07-20 | Babcock-Hitachi K.K., Tokio/Tokyo | Method and device for preventive maintenance of system components |
JP3147586B2 (en) | 1993-05-21 | 2001-03-19 | 株式会社日立製作所 | Plant monitoring and diagnosis method |
ZA947893B (en) | 1993-09-05 | 1995-05-24 | George Hans Lowe | An indicating system |
US5552984A (en) | 1993-09-16 | 1996-09-03 | Trw Inc. | Diagnostic system for complex systems using virtual components |
US5666297A (en) | 1994-05-13 | 1997-09-09 | Aspen Technology, Inc. | Plant simulation and optimization software apparatus and method using dual execution models |
US5817958A (en) | 1994-05-20 | 1998-10-06 | Hitachi, Ltd. | Plant monitoring and diagnosing method and system, as well as plant equipped with the system |
US5461570A (en) | 1994-06-10 | 1995-10-24 | Johnson & Johnson Vision Products, Inc. | Computer system for quality control correlations |
US5546301A (en) | 1994-07-19 | 1996-08-13 | Honeywell Inc. | Advanced equipment control system |
JP3810449B2 (en) | 1994-07-20 | 2006-08-16 | 富士通株式会社 | Queue device |
US5687090A (en) | 1994-09-01 | 1997-11-11 | Aspen Technology, Inc. | Polymer component characterization method and process simulation apparatus |
JPH08129415A (en) | 1994-10-31 | 1996-05-21 | Hitachi Ltd | Plant failure analysis support system |
US5566065A (en) | 1994-11-01 | 1996-10-15 | The Foxboro Company | Method and apparatus for controlling multivariable nonlinear processes |
US5570282A (en) | 1994-11-01 | 1996-10-29 | The Foxboro Company | Multivariable nonlinear process controller |
US5704011A (en) | 1994-11-01 | 1997-12-30 | The Foxboro Company | Method and apparatus for providing multivariable nonlinear control |
MX9707504A (en) | 1995-03-31 | 1997-11-29 | Abb Power T & D Co | System for optimizing power network design reliability. |
US5572420A (en) | 1995-04-03 | 1996-11-05 | Honeywell Inc. | Method of optimal controller design for multivariable predictive control utilizing range control |
US5574638A (en) | 1995-04-03 | 1996-11-12 | Lu; Zhuxin J. | Method of optimal scaling of variables in a multivariable predictive controller utilizing range control |
US5561599A (en) | 1995-06-14 | 1996-10-01 | Honeywell Inc. | Method of incorporating independent feedforward control in a multivariable predictive controller |
US5680409A (en) | 1995-08-11 | 1997-10-21 | Fisher-Rosemount Systems, Inc. | Method and apparatus for detecting and identifying faulty sensors in a process |
US6144952A (en) | 1995-09-20 | 2000-11-07 | Keeler; James D. | Predictive network with learned preprocessing parameters |
US6008985A (en) | 1995-11-20 | 1999-12-28 | The Foxboro Company | Industrial field controlling device with controller and expansion modules |
US5940290A (en) | 1995-12-06 | 1999-08-17 | Honeywell Inc. | Method of predictive maintenance of a process control system having fluid movement |
US6094600A (en) | 1996-02-06 | 2000-07-25 | Fisher-Rosemount Systems, Inc. | System and method for managing a transaction database of records of changes to field device configurations |
US5819050A (en) | 1996-02-29 | 1998-10-06 | The Foxboro Company | Automatically configurable multi-purpose distributed control processor card for an industrial control system |
US5819232A (en) | 1996-03-22 | 1998-10-06 | E. I. Du Pont De Nemours And Company | Method and apparatus for inventory control of a manufacturing or distribution process |
US5828851A (en) | 1996-04-12 | 1998-10-27 | Fisher-Rosemount Systems, Inc. | Process control system using standard protocol control of standard devices and nonstandard devices |
US5809490A (en) | 1996-05-03 | 1998-09-15 | Aspen Technology Inc. | Apparatus and method for selecting a working data set for model development |
US6110214A (en) | 1996-05-03 | 2000-08-29 | Aspen Technology, Inc. | Analyzer for modeling and optimizing maintenance operations |
US5805442A (en) | 1996-05-30 | 1998-09-08 | Control Technology Corporation | Distributed interface architecture for programmable industrial control systems |
US5984502A (en) | 1996-06-14 | 1999-11-16 | The Foxboro Company | Keypad annunciator graphical user interface |
US5949417A (en) | 1997-01-31 | 1999-09-07 | The Foxboro Company | Dynamic property sheet system |
US6014598A (en) | 1996-06-28 | 2000-01-11 | Arcelik A.S. | Model-based fault detection system for electric motors |
US5847952A (en) | 1996-06-28 | 1998-12-08 | Honeywell Inc. | Nonlinear-approximator-based automatic tuner |
US5796609A (en) | 1996-09-13 | 1998-08-18 | Honeywell-Measurex Corporation | Method and apparatus for internal model control using a state variable feedback signal |
US5960441A (en) | 1996-09-24 | 1999-09-28 | Honeywell Inc. | Systems and methods for providing dynamic data referencing in a generic data exchange environment |
US5948101A (en) | 1996-12-02 | 1999-09-07 | The Foxboro Company | Methods and systems for booting a computer in a distributed computing system |
US6122555A (en) | 1997-05-05 | 2000-09-19 | Honeywell International Inc. | System and methods for globally optimizing a process facility |
US6106785A (en) | 1997-06-30 | 2000-08-22 | Honeywell Inc. | Polymerization process controller |
DE19732046A1 (en) | 1997-07-25 | 1999-01-28 | Abb Patent Gmbh | Process diagnostic system and method for diagnosing processes and states of a technical process |
US5988847A (en) | 1997-08-22 | 1999-11-23 | Honeywell Inc. | Systems and methods for implementing a dynamic cache in a supervisory control system |
US6128279A (en) | 1997-10-06 | 2000-10-03 | Web Balance, Inc. | System for balancing loads among network servers |
US6093211A (en) | 1998-04-09 | 2000-07-25 | Aspen Technology, Inc. | Polymer property distribution functions methodology and simulators |
FI114745B (en) | 1998-06-01 | 2004-12-15 | Metso Automation Oy | Control systems for field devices |
FI108678B (en) | 1998-06-17 | 2002-02-28 | Neles Controls Oy | Control systems for field devices |
US6246950B1 (en) | 1998-09-01 | 2001-06-12 | General Electric Company | Model based assessment of locomotive engines |
US6332110B1 (en) | 1998-12-17 | 2001-12-18 | Perlorica, Inc. | Method for monitoring advanced separation and/or ion exchange processes |
US6298454B1 (en) | 1999-02-22 | 2001-10-02 | Fisher-Rosemount Systems, Inc. | Diagnostics in a process control system |
US8044793B2 (en) | 2001-03-01 | 2011-10-25 | Fisher-Rosemount Systems, Inc. | Integrated device alerts in a process control system |
US6633782B1 (en) | 1999-02-22 | 2003-10-14 | Fisher-Rosemount Systems, Inc. | Diagnostic expert in a process control system |
US6975219B2 (en) | 2001-03-01 | 2005-12-13 | Fisher-Rosemount Systems, Inc. | Enhanced hart device alerts in a process control system |
US6445963B1 (en) | 1999-10-04 | 2002-09-03 | Fisher Rosemount Systems, Inc. | Integrated advanced control blocks in process control systems |
US6421571B1 (en) | 2000-02-29 | 2002-07-16 | Bently Nevada Corporation | Industrial plant asset management system: apparatus and method |
GB2360357A (en) | 2000-03-17 | 2001-09-19 | Alex Davidkhanian | Slag detector for molten steel transfer operations |
US6609036B1 (en) | 2000-06-09 | 2003-08-19 | Randall L. Bickford | Surveillance system and method having parameter estimation and operating mode partitioning |
AU2001273306A1 (en) | 2000-07-05 | 2002-01-14 | Camo, Inc. | Method and system for the dynamic analysis of data |
US7233886B2 (en) | 2001-01-19 | 2007-06-19 | Smartsignal Corporation | Adaptive modeling of changed states in predictive condition monitoring |
US6795798B2 (en) | 2001-03-01 | 2004-09-21 | Fisher-Rosemount Systems, Inc. | Remote analysis of process control plant data |
US6813532B2 (en) | 2001-03-01 | 2004-11-02 | Fisher-Rosemount Systems, Inc. | Creation and display of indices within a process plant |
US6594589B1 (en) | 2001-05-23 | 2003-07-15 | Advanced Micro Devices, Inc. | Method and apparatus for monitoring tool health |
US6711523B2 (en) | 2001-05-24 | 2004-03-23 | Simmonds Precision Products, Inc. | Method and apparatus for determining a condition indicator for use in evaluating the health of a component |
US6901300B2 (en) | 2002-02-07 | 2005-05-31 | Fisher-Rosemount Systems, Inc.. | Adaptation of advanced process control blocks in response to variable process delay |
US6915173B2 (en) * | 2002-08-22 | 2005-07-05 | Ibex Process Technology, Inc. | Advance failure prediction |
US7295954B2 (en) | 2002-09-26 | 2007-11-13 | Lam Research Corporation | Expert knowledge methods and systems for data analysis |
US7451021B2 (en) | 2003-05-06 | 2008-11-11 | Edward Wilson | Model-based fault detection and isolation for intermittently active faults with application to motion-based thruster fault detection and isolation for spacecraft |
US7328126B2 (en) | 2003-09-12 | 2008-02-05 | Tokyo Electron Limited | Method and system of diagnosing a processing system using adaptive multivariate analysis |
US7257515B2 (en) | 2004-03-03 | 2007-08-14 | Hewlett-Packard Development Company, L.P. | Sliding window for alert generation |
US7079984B2 (en) | 2004-03-03 | 2006-07-18 | Fisher-Rosemount Systems, Inc. | Abnormal situation prevention in a process plant |
US7451003B2 (en) | 2004-03-04 | 2008-11-11 | Falconeer Technologies Llc | Method and system of monitoring, sensor validation and predictive fault analysis |
KR100839071B1 (en) | 2004-05-13 | 2008-06-19 | 삼성전자주식회사 | System and method for monitoring the status of process equipment |
AT7710U3 (en) | 2004-06-30 | 2006-07-15 | Avl List Gmbh | METHOD FOR CREATING A MODEL OF A CONTROL SIZE FOR NONLINEAR, STATIONARY REAL SYSTEMS, FOR EXAMPLE, COMBUSTION ENGINES OR SUBSYSTEMS THEREOF |
US7457674B2 (en) | 2004-08-27 | 2008-11-25 | Siemens Corporate Research, Inc. | System, device, and methods for updating system-monitoring models |
US20060074598A1 (en) | 2004-09-10 | 2006-04-06 | Emigholz Kenneth F | Application of abnormal event detection technology to hydrocracking units |
US20060067388A1 (en) | 2004-09-30 | 2006-03-30 | Hossein Sedarat | Methods and apparatuses for detecting impulse noise in a multi-carrier communication system |
JP4376799B2 (en) | 2005-01-19 | 2009-12-02 | 株式会社日立製作所 | Ignition timing control device for internal combustion engine |
US7643969B2 (en) * | 2005-03-04 | 2010-01-05 | Health Outcomes Sciences, Llc | Methods and apparatus for providing decision support |
WO2006107933A1 (en) | 2005-04-04 | 2006-10-12 | Fisher-Rosemount Systems, Inc. | Statistical processing methods used in abnormal situation detection |
US7401263B2 (en) | 2005-05-19 | 2008-07-15 | International Business Machines Corporation | System and method for early detection of system component failure |
US20070097873A1 (en) | 2005-10-31 | 2007-05-03 | Honeywell International Inc. | Multiple model estimation in mobile ad-hoc networks |
US7966150B2 (en) | 2005-11-17 | 2011-06-21 | Florida Power & Light Company | Data analysis applications |
US7269599B2 (en) * | 2005-12-01 | 2007-09-11 | International Business Machines Corporation | Method and system for predicting user activity levels associated with an application |
US7761172B2 (en) | 2006-03-21 | 2010-07-20 | Exxonmobil Research And Engineering Company | Application of abnormal event detection (AED) technology to polymers |
US8145358B2 (en) | 2006-07-25 | 2012-03-27 | Fisher-Rosemount Systems, Inc. | Method and system for detecting abnormal operation of a level regulatory control loop |
US7657399B2 (en) | 2006-07-25 | 2010-02-02 | Fisher-Rosemount Systems, Inc. | Methods and systems for detecting deviation of a process variable from expected values |
US8032340B2 (en) * | 2007-01-04 | 2011-10-04 | Fisher-Rosemount Systems, Inc. | Method and system for modeling a process variable in a process plant |
-
2007
- 2007-01-04 US US11/619,846 patent/US8032341B2/en active Active
- 2007-12-21 WO PCT/US2007/088579 patent/WO2008085705A1/en active Application Filing
Patent Citations (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4527271A (en) * | 1982-08-17 | 1985-07-02 | The Foxboro Company | Process control system with improved fault isolation |
US4734873A (en) * | 1984-02-02 | 1988-03-29 | Honeywell Inc. | Method of digital process variable transmitter calibration and a process variable transmitter system utilizing the same |
US4657179A (en) * | 1984-12-26 | 1987-04-14 | Honeywell Inc. | Distributed environmental/load control system |
US5325522A (en) * | 1986-10-15 | 1994-06-28 | United States Data Corporation | Apparatus and method for communicating between devices trough use of a real time data base |
US5541833A (en) * | 1987-03-30 | 1996-07-30 | The Foxboro Company | Multivariable feedforward adaptive controller |
US4911035A (en) * | 1987-03-31 | 1990-03-27 | Nissan Motor Co., Ltd. | Air breather device of automatic transmission |
US4907167A (en) * | 1987-09-30 | 1990-03-06 | E. I. Du Pont De Nemours And Company | Process control system with action logging |
US4910691A (en) * | 1987-09-30 | 1990-03-20 | E.I. Du Pont De Nemours & Co. | Process control system with multiple module sequence options |
US5006992A (en) * | 1987-09-30 | 1991-04-09 | Du Pont De Nemours And Company | Process control system with reconfigurable expert rules and control modules |
US5488697A (en) * | 1988-01-12 | 1996-01-30 | Honeywell Inc. | Problem state monitoring system |
US5193143A (en) * | 1988-01-12 | 1993-03-09 | Honeywell Inc. | Problem state monitoring |
US5008810A (en) * | 1988-09-29 | 1991-04-16 | Process Modeling Investment Corp. | System for displaying different subsets of screen views, entering different amount of information, and determining correctness of input dependent upon current user input |
US5015934A (en) * | 1989-09-25 | 1991-05-14 | Honeywell Inc. | Apparatus and method for minimizing limit cycle using complementary filtering techniques |
US5187674A (en) * | 1989-12-28 | 1993-02-16 | Honeywell Inc. | Versatile, overpressure proof, absolute pressure sensor |
US5134574A (en) * | 1990-02-27 | 1992-07-28 | The Foxboro Company | Performance control apparatus and method in a processing plant |
US5018215A (en) * | 1990-03-23 | 1991-05-21 | Honeywell Inc. | Knowledge and model based adaptive signal processor |
US5301101A (en) * | 1990-06-21 | 1994-04-05 | Honeywell Inc. | Receding horizon based adaptive control having means for minimizing operating costs |
US5640493A (en) * | 1990-08-03 | 1997-06-17 | E. I. Du Pont De Nemours & Co., Inc. | Historical database training method for neural networks |
US5121467A (en) * | 1990-08-03 | 1992-06-09 | E.I. Du Pont De Nemours & Co., Inc. | Neural network/expert system process control system and method |
US5224203A (en) * | 1990-08-03 | 1993-06-29 | E. I. Du Pont De Nemours & Co., Inc. | On-line process control neural network using data pointers |
US5212765A (en) * | 1990-08-03 | 1993-05-18 | E. I. Du Pont De Nemours & Co., Inc. | On-line training neural network system for process control |
US5282261A (en) * | 1990-08-03 | 1994-01-25 | E. I. Du Pont De Nemours And Co., Inc. | Neural network process measurement and control |
US5197114A (en) * | 1990-08-03 | 1993-03-23 | E. I. Du Pont De Nemours & Co., Inc. | Computer neural network regulatory process control system and method |
US5740324A (en) * | 1990-10-10 | 1998-04-14 | Honeywell | Method for process system identification using neural network |
US5291190A (en) * | 1991-03-28 | 1994-03-01 | Combustion Engineering, Inc. | Operator interface for plant component control system |
US5189232A (en) * | 1991-06-27 | 1993-02-23 | University Of Utah | Method of making jet fuel compositions via a dehydrocondensation reaction process |
US5333298A (en) * | 1991-08-08 | 1994-07-26 | Honeywell Inc. | System for making data available to an outside software package by utilizing a data file which contains source and destination information |
US5311447A (en) * | 1991-10-23 | 1994-05-10 | Ulrich Bonne | On-line combustionless measurement of gaseous fuels fed to gas consumption devices |
US5396415A (en) * | 1992-01-31 | 1995-03-07 | Honeywell Inc. | Neruo-pid controller |
US5398303A (en) * | 1992-02-28 | 1995-03-14 | Yamatake-Honeywell Co., Ltd. | Fuzzy data processing method and data smoothing filter |
US5859773A (en) * | 1992-06-10 | 1999-01-12 | Pavilion Technologies, Inc. | Residual activation neural network |
US5384698A (en) * | 1992-08-31 | 1995-01-24 | Honeywell Inc. | Structured multiple-input multiple-output rate-optimal controller |
US5640491A (en) * | 1992-09-14 | 1997-06-17 | Texaco, Inc. | Control system using an adaptive neural network for target and path optimization for a multivariable, nonlinear process |
US5729661A (en) * | 1992-11-24 | 1998-03-17 | Pavilion Technologies, Inc. | Method and apparatus for preprocessing input data to a neural network |
US6169980B1 (en) * | 1992-11-24 | 2001-01-02 | Pavilion Technologies, Inc. | Method for operating a neural network with missing and/or incomplete data |
US5521842A (en) * | 1992-11-25 | 1996-05-28 | Fuji Photo Co., Ltd. | Diagnostic device and a data communication system for use with the diagnostic device |
US5311562A (en) * | 1992-12-01 | 1994-05-10 | Westinghouse Electric Corp. | Plant maintenance with predictive diagnostics |
US5499188A (en) * | 1992-12-14 | 1996-03-12 | Honeywell Inc. | Flexible method for building a recipe in a process control system |
US5486996A (en) * | 1993-01-22 | 1996-01-23 | Honeywell Inc. | Parameterized neurocontrollers |
US5781432A (en) * | 1993-03-02 | 1998-07-14 | Pavilion Technologies, Inc. | Method and apparatus for analyzing a neural network within desired operating parameter constraints |
US5390326A (en) * | 1993-04-30 | 1995-02-14 | The Foxboro Company | Local area network with fault detection and recovery |
US5519647A (en) * | 1993-05-12 | 1996-05-21 | U.S. Philips Corporation | Apparatus for and method of generating an approximation function |
US5909541A (en) * | 1993-07-14 | 1999-06-01 | Honeywell Inc. | Error detection and correction for data stored across multiple byte-wide memory devices |
US5486920A (en) * | 1993-10-01 | 1996-01-23 | Honeywell, Inc. | Laser gyro dither strippr gain correction method and apparatus |
US5408406A (en) * | 1993-10-07 | 1995-04-18 | Honeywell Inc. | Neural net based disturbance predictor for model predictive control |
US5596704A (en) * | 1993-11-11 | 1997-01-21 | Bechtel Group, Inc. | Process flow diagram generator |
US5537310A (en) * | 1993-12-27 | 1996-07-16 | Yamatake-Honeywell Co., Ltd. | Internal Model Controller with automatically correcting gain of the internal model controller |
US5533413A (en) * | 1994-06-30 | 1996-07-09 | Yokogawa Electric Corporation | Equipment diagnosis system |
US5719767A (en) * | 1994-07-29 | 1998-02-17 | Hyundai Motor Company | Apparatus for notifying the possibility of a malfunction of an automatic transmission and method therefor |
US6076124A (en) * | 1995-10-10 | 2000-06-13 | The Foxboro Company | Distributed control system including a compact easily-extensible and serviceable field controller |
US6033257A (en) * | 1995-11-20 | 2000-03-07 | The Foxboro Company | I/O connector module for a field controller in a distributed control system |
US5764891A (en) * | 1996-02-15 | 1998-06-09 | Rosemount Inc. | Process I/O to fieldbus interface circuit |
US5761518A (en) * | 1996-02-29 | 1998-06-02 | The Foxboro Company | System for replacing control processor by operating processor in partially disabled mode for tracking control outputs and in write enabled mode for transferring control loops |
US6532392B1 (en) * | 1996-03-28 | 2003-03-11 | Rosemount Inc. | Transmitter with software for determining when to initiate diagnostics |
US20020038156A1 (en) * | 1996-03-28 | 2002-03-28 | Evren Eryurek | Root cause diagnostics |
US6397114B1 (en) * | 1996-03-28 | 2002-05-28 | Rosemount Inc. | Device in a process system for detecting events |
US6539267B1 (en) * | 1996-03-28 | 2003-03-25 | Rosemount Inc. | Device in a process system for determining statistical parameter |
US6017143A (en) * | 1996-03-28 | 2000-01-25 | Rosemount Inc. | Device in a process system for detecting events |
US5768119A (en) * | 1996-04-12 | 1998-06-16 | Fisher-Rosemount Systems, Inc. | Process control system including alarm priority adjustment |
US5877954A (en) * | 1996-05-03 | 1999-03-02 | Aspen Technology, Inc. | Hybrid linear-neural network process control |
US5742513A (en) * | 1996-05-15 | 1998-04-21 | Abb Power T&D Company Inc. | Methods and systems for automatic testing of a relay |
US5918233A (en) * | 1996-05-30 | 1999-06-29 | The Foxboro Company | Methods and systems for providing electronic documentation to users of industrial process control systems |
US5715158A (en) * | 1996-05-31 | 1998-02-03 | Abb Industrial Systems, Inc. | Method and apparatus for controlling an extended process |
US5907701A (en) * | 1996-06-14 | 1999-05-25 | The Foxboro Company | Management of computer processes having differing operational parameters through an ordered multi-phased startup of the computer processes |
US5777872A (en) * | 1996-09-13 | 1998-07-07 | Honeywell-Measurex Corporation | Method and system for controlling a multiple input/output process with minimum latency |
US5892679A (en) * | 1996-09-13 | 1999-04-06 | Honeywell-Measurex Corporation | Method and system for controlling a multiple input/output process with minimum latency using a pseudo inverse constant |
US5898869A (en) * | 1996-09-20 | 1999-04-27 | The Foxboro Company | Method and system for PCMCIA card boot from dual-ported memory |
US6041263A (en) * | 1996-10-01 | 2000-03-21 | Aspen Technology, Inc. | Method and apparatus for simulating and optimizing a plant model |
US6026352A (en) * | 1996-10-04 | 2000-02-15 | Fisher Controls International, Inc. | Local device and process diagnostics in a process control network having distributed control functions |
US5892939A (en) * | 1996-10-07 | 1999-04-06 | Honeywell Inc. | Emulator for visual display object files and method of operation thereof |
US5859964A (en) * | 1996-10-25 | 1999-01-12 | Advanced Micro Devices, Inc. | System and method for performing real time data acquisition, process modeling and fault detection of wafer fabrication processes |
US5909586A (en) * | 1996-11-06 | 1999-06-01 | The Foxboro Company | Methods and systems for interfacing with an interface powered I/O device |
US5905989A (en) * | 1996-11-27 | 1999-05-18 | Bently Nevada Corporation | Knowledge manager relying on a hierarchical default expert system: apparatus and method |
US6047220A (en) * | 1996-12-31 | 2000-04-04 | Rosemount Inc. | Device in a process system for validating a control signal from a field device |
US6078843A (en) * | 1997-01-24 | 2000-06-20 | Honeywell Inc. | Neural network including input normalization for use in a closed loop control system |
US6067505A (en) * | 1997-04-10 | 2000-05-23 | The Foxboro Company | Method and apparatus for self-calibration of a coordinated control system for an electric power generating station |
US6055483A (en) * | 1997-05-05 | 2000-04-25 | Honeywell, Inc. | Systems and methods using bridge models to globally optimize a process facility |
US5901058A (en) * | 1997-08-22 | 1999-05-04 | Honeywell Inc. | System and methods for achieving heterogeneous data flow between algorithm blocks in a distributed control system |
US6061603A (en) * | 1997-09-10 | 2000-05-09 | Schneider Automation Inc. | System for remotely accessing an industrial control system over a commercial communications network |
US6047221A (en) * | 1997-10-03 | 2000-04-04 | Pavilion Technologies, Inc. | Method for steady-state identification based upon identified dynamics |
US5909370A (en) * | 1997-12-22 | 1999-06-01 | Honeywell Inc. | Method of predicting overshoot in a control system response |
US20020077711A1 (en) * | 1999-02-22 | 2002-06-20 | Nixon Mark J. | Fusion of process performance monitoring with process equipment monitoring and control |
US20020022894A1 (en) * | 2000-05-23 | 2002-02-21 | Evren Eryurek | Enhanced fieldbus device alerts in a process control system |
US20040078171A1 (en) * | 2001-04-10 | 2004-04-22 | Smartsignal Corporation | Diagnostic systems and methods for predictive condition monitoring |
US20030014500A1 (en) * | 2001-07-10 | 2003-01-16 | Schleiss Trevor D. | Transactional data communications for process control systems |
US7321848B2 (en) * | 2002-02-04 | 2008-01-22 | Tuszynski Steve W | Manufacturing design and process analysis system |
US20040039556A1 (en) * | 2002-08-22 | 2004-02-26 | Ibex Process Technology, Inc. | Filter models for dynamic control of complex processes |
US7233834B2 (en) * | 2003-08-13 | 2007-06-19 | Cargill, Inc. | Computer-aided modeling and manufacture of products |
US20060020423A1 (en) * | 2004-06-12 | 2006-01-26 | Fisher-Rosemount Systems, Inc. | System and method for detecting an abnormal situation associated with a process gain of a control loop |
US20070005298A1 (en) * | 2005-06-22 | 2007-01-04 | International Business Machines Corporation | Monitoring method, system, and computer program based on severity and persistence of problems |
US20080027678A1 (en) * | 2006-07-25 | 2008-01-31 | Fisher-Rosemount Systems, Inc. | Method and system for detecting abnormal operation in a process plant |
US20080052039A1 (en) * | 2006-07-25 | 2008-02-28 | Fisher-Rosemount Systems, Inc. | Methods and systems for detecting deviation of a process variable from expected values |
US20080082295A1 (en) * | 2006-09-28 | 2008-04-03 | Fisher-Rosemount Systems, Inc. | Abnormal situation prevention in a coker heater |
US20080082308A1 (en) * | 2006-09-28 | 2008-04-03 | Fisher-Rosemount Systems, Inc. | Method and system for detecting abnormal operation in a hydrocracker |
US20080082304A1 (en) * | 2006-09-28 | 2008-04-03 | Fisher-Rosemount Systems, Inc. | Abnormal situation prevention in a heat exchanger |
US20080116051A1 (en) * | 2006-09-29 | 2008-05-22 | Fisher-Rosemount Systems, Inc. | Main column bottoms coking detection in a fluid catalytic cracker for use in abnormal situation prevention |
US20080120060A1 (en) * | 2006-09-29 | 2008-05-22 | Fisher-Rosemount Systems, Inc. | Detection of catalyst losses in a fluid catalytic cracker for use in abnormal situation prevention |
US20090089009A1 (en) * | 2007-10-02 | 2009-04-02 | Fisher-Rosemount Systems, Inc. | Simplified algorithm for abnormal situation prevention in load following applications |
US20090097537A1 (en) * | 2007-10-10 | 2009-04-16 | Fisher-Rosemount Systems, Inc. | Simplified algorithm for abnormal situation prevention in load following applications including plugged line diagnostics in a dynamic process |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8145358B2 (en) | 2006-07-25 | 2012-03-27 | Fisher-Rosemount Systems, Inc. | Method and system for detecting abnormal operation of a level regulatory control loop |
US20080177513A1 (en) * | 2007-01-04 | 2008-07-24 | Fisher-Rosemount Systems, Inc. | Method and System for Modeling Behavior in a Process Plant |
US8032340B2 (en) | 2007-01-04 | 2011-10-04 | Fisher-Rosemount Systems, Inc. | Method and system for modeling a process variable in a process plant |
US20110264424A1 (en) * | 2008-11-19 | 2011-10-27 | Toshiharu Miwa | Apparatus abnormality diagnosis method and system |
US8676553B2 (en) * | 2008-11-19 | 2014-03-18 | Hitachi, Ltd. | Apparatus abnormality diagnosis method and system |
US20120233099A1 (en) * | 2011-03-07 | 2012-09-13 | Honeywell International Inc. | Optimization problem solving |
US20140249656A1 (en) * | 2013-03-01 | 2014-09-04 | Semiconductor Manufacturing International (Shanghai) Corporation | Method and apparatus for alarm monitoring |
US9798320B2 (en) * | 2013-03-01 | 2017-10-24 | Semiconductor Manufacturing International (Shanghai) Corporation | Method and apparatus for alarm monitoring |
US10255060B2 (en) * | 2013-08-06 | 2019-04-09 | Endress + Hauser Process Solutions Ag | Method for extending an embedded software component of a field device |
US9465382B2 (en) | 2013-11-25 | 2016-10-11 | Institute For Information Industry | Embedded system, fool-proof control method and non-transitory computer-readable storage medium |
TWI499880B (en) * | 2013-12-04 | 2015-09-11 | Metal Ind Res & Dev Ct | Manufacturing execution system and method for process parameter adjustment thereof |
US20170227953A1 (en) * | 2014-08-04 | 2017-08-10 | Tlv Co., Ltd. | Equipment Monitoring System, Equipment Monitoring Program, and Equipment Monitoring Method |
AT18087U1 (en) * | 2014-08-04 | 2024-01-15 | Tlv Co Ltd | EQUIPMENT MONITORING SYSTEM, EQUIPMENT MONITORING PROGRAM AND EQUIPMENT MONITORING METHOD |
US10678229B2 (en) * | 2014-08-04 | 2020-06-09 | Tlv Co., Ltd. | Equipment monitoring system, equipment monitoring program, and equipment monitoring method |
EP3190519A4 (en) * | 2014-09-03 | 2018-05-16 | Nec Corporation | Monitoring device and monitoring method thereof, monitoring system, and recording medium in which computer program is stored |
US20170262561A1 (en) * | 2014-09-11 | 2017-09-14 | Nec Corporation | Information processing apparatus, information processing method, and recording medium |
US10346228B2 (en) | 2017-07-12 | 2019-07-09 | Siemens Aktiengesellschaft | Method and system for deviation detection in sensor datasets |
WO2020069306A1 (en) * | 2018-09-28 | 2020-04-02 | B.yond, Inc. | Self-intelligent improvement in predictive data models |
US11410063B2 (en) * | 2018-09-28 | 2022-08-09 | B.yond, Inc. | Self-intelligent improvement in predictive data models |
CN113242782A (en) * | 2018-12-31 | 2021-08-10 | Abb瑞士股份有限公司 | Method and system for detecting anomalies in a robotic system |
US20230028886A1 (en) * | 2019-11-20 | 2023-01-26 | University Of Tennessee Research Foundation | Methods of detecting anomalous operation of industrial systems and respective control systems, and related systems and articles of manufacture |
EP4020102A1 (en) * | 2020-12-28 | 2022-06-29 | ABB Schweiz AG | System and method for operating an industrial process |
US20220308571A1 (en) * | 2021-03-26 | 2022-09-29 | Yokogawa Electric Corporation | Apparatus, method, and computer-readable medium |
US12282322B2 (en) * | 2021-03-26 | 2025-04-22 | Yokogawa Electric Corporation | Apparatus, method, and computer-readable medium for indicating the state of a target |
CN118071336A (en) * | 2024-04-25 | 2024-05-24 | 杭州电缆股份有限公司 | Equipment operation management method and system for cable production equipment |
Also Published As
Publication number | Publication date |
---|---|
US8032341B2 (en) | 2011-10-04 |
WO2008085705A1 (en) | 2008-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8032341B2 (en) | Modeling a process using a composite model comprising a plurality of regression models | |
US7912676B2 (en) | Method and system for detecting abnormal operation in a process plant | |
US8032340B2 (en) | Method and system for modeling a process variable in a process plant | |
US8606544B2 (en) | Methods and systems for detecting deviation of a process variable from expected values | |
US8010292B2 (en) | Method and system for detecting abnormal operation in a hydrocracker | |
US8145358B2 (en) | Method and system for detecting abnormal operation of a level regulatory control loop | |
US8762106B2 (en) | Abnormal situation prevention in a heat exchanger | |
US7660701B2 (en) | System and method for detecting an abnormal situation associated with a process gain of a control loop | |
US7657399B2 (en) | Methods and systems for detecting deviation of a process variable from expected values | |
US7966149B2 (en) | Multivariate detection of transient regions in a process control system | |
US20080188972A1 (en) | Method and System for Detecting Faults in a Process Plant | |
US20080082295A1 (en) | Abnormal situation prevention in a coker heater | |
US20090093892A1 (en) | Automatic determination of the order of a polynomial regression model applied to abnormal situation prevention in a process plant | |
US20090093893A1 (en) | System and method for recognizing and compensating for invalid regression model applied to abnormal situation prevention | |
WO2008014341A1 (en) | Methods and systems for detecting deviation of a process variable from expected values |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: FISHER-ROSEMOUNT SYSTEMS, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MILLER, JOHN P.;REEL/FRAME:018897/0597 Effective date: 20070102 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |