| 4099413 | Thermal noise thermometer | July, 1978 | Ohte et al. | 374/175 |
| 4337516 | Sensor fault detection by activity monitoring | June, 1982 | Murphy et al. | 702/183 |
| 4517468 | Diagnostic system and method | May, 1985 | Kemper et al. | 290/52 |
| 4530234 | Method and system for measuring properties of fluids | July, 1985 | Cullick et al. | 73/53 |
| 4635214 | Failure diagnostic processing system | January, 1987 | Kasai et al. | 702/183 |
| 4642782 | Rule based diagnostic system with dynamic alteration capability | February, 1987 | Kemper et al. | 706/53 |
| 4644479 | Diagnostic apparatus | February, 1987 | Kemper et al. | 702/185 |
| 4649515 | Methods and apparatus for system fault diagnosis and control | March, 1987 | Thompson et al. | 702/52 |
| 4663539 | Local power switching control subsystem | May, 1987 | Sharp et al. | 307/38 |
| 4707796 | Reliability and maintainability indicator | November, 1987 | Calabro et al. | 702/34 |
| 4777585 | Analogical inference method and apparatus for a control system | October, 1988 | Kokawa et al. | 706/52 |
| 4831564 | Apparatus for estimating and displaying remainder of lifetime of xenon lamps | May, 1989 | Suga | 702/34 |
| 4873655 | Sensor conditioning method and apparatus | October, 1989 | Kondraske | 702/86 |
| 4907167 | Process control system with action logging | March, 1990 | Skeirik | 700/10 |
| 4924418 | Universal monitor | May, 1990 | Bachman et al. | 702/188 |
| 4934196 | Coriolis mass flow rate meter having a substantially increased noise immunity | June, 1990 | Romano | 738/613.8 |
| 4964125 | Method and apparatus for diagnosing faults | October, 1990 | Kim | 371/15.1 |
| 4992965 | Circuit arrangement for the evaluation of a signal produced by a semiconductor gas sensor | February, 1991 | Holter et al. | 700/36 |
| 5005142 | Smart sensor system for diagnostic monitoring | April, 1991 | Lipchak et al. | 428/203 |
| 5043862 | Method and apparatus of automatically setting PID constants | August, 1991 | Takahashi et al. | 364/162 |
| 5053815 | Reproduction apparatus having real time statistical process control | October, 1991 | Wendell | 355/208 |
| 5081598 | Method for associating text in automatic diagnostic system to produce recommended actions automatically | January, 1992 | Bellows et al. | 364/550 |
| 5089984 | Adaptive alarm controller changes multiple inputs to industrial controller in order for state word to conform with stored state word | February, 1992 | Struger et al. | 395/650 |
| 5098197 | Optical Johnson noise thermometry | March, 1992 | Shepard et al. | 374/120 |
| 5099436 | Methods and apparatus for performing system fault diagnosis | March, 1992 | McCown et al. | 364/550 |
| 5103409 | Field measuring instrument and its abnormality managing method | April, 1992 | Shimizu et al. | 364/556 |
| 5111531 | Process control using neural network | May, 1992 | Grayson et al. | 395/23 |
| 5121467 | Neural network/expert system process control system and method | June, 1992 | Skeirik | 395/11 |
| 5122976 | Method and apparatus for remotely controlling sensor processing algorithms to expert sensor diagnoses | June, 1992 | Bellows et al. | 702/105 |
| 5130936 | Method and apparatus for diagnostic testing including a neural network for determining testing sufficiency | July, 1992 | Sheppard et al. | 702/123 |
| 5134574 | Performance control apparatus and method in a processing plant | July, 1992 | Beaverstock et al. | 702/84 |
| 5142612 | Computer neural network supervisory process control system and method | August, 1992 | Skeirik | 395/11 |
| 5148378 | Sensor controller system | September, 1992 | Shibayama et al. | 702/116 |
| 5167009 | On-line process control neural network using data pointers | November, 1992 | Skeirik | 395/27 |
| 5175678 | Method and procedure for neural control of dynamic processes | December, 1992 | Frerichs et al. | 700/47 |
| 5193143 | Problem state monitoring | March, 1993 | Kaemmerer et al. | 395/51 |
| 5197114 | Computer neural network regulatory process control system and method | March, 1993 | Skeirik | 395/22 |
| 5197328 | Diagnostic apparatus and method for fluid control valves | March, 1993 | Fitzgerald | 73/168 |
| 5212765 | On-line training neural network system for process control | May, 1993 | Skeirik | 395/11 |
| 5214582 | Interactive diagnostic system for an automotive vehicle, and method | May, 1993 | Gray | 701/33 |
| 5224203 | On-line process control neural network using data pointers | June, 1993 | Skeirik | 395/22 |
| 5228780 | Dual-mode self-validating resistance/Johnson noise thermometer system | July, 1993 | Shepard et al. | 374/175 |
| 5235527 | Method for diagnosing abnormality of sensor | August, 1993 | Ogawa et al. | 364/571.05 |
| 5265031 | Diagnostic gas monitoring process utilizing an expert system | November, 1993 | Malczewski | 702/24 |
| 5265222 | Symbolization apparatus and process control system and control support system using the same apparatus | November, 1993 | Nishiya et al. | 395/3 |
| 5274572 | Method and apparatus for knowledge-based signal monitoring and analysis | December, 1993 | O'Neill et al. | 702/57 |
| 5282131 | Control system for controlling a pulp washing system using a neural network controller | January, 1994 | Rudd et al. | 700/44 |
| 5282261 | Neural network process measurement and control | January, 1994 | Skeirik | 706/23 |
| 5293585 | Industrial expert system | March, 1994 | Morita | 395/52 |
| 5303181 | Programmable chip enable logic function | April, 1994 | Stockton | 365/96 |
| 5305230 | Process control system and power plant process control system | April, 1994 | Matsumoto et al. | 700/287 |
| 5311421 | Process control method and system for performing control of a controlled system by use of a neural network | May, 1994 | Nomura et al. | 700/37 |
| 5317520 | Computerized remote resistance measurement system with fault detection | May, 1994 | Castle | 702/58 |
| 5327357 | Method of decarburizing molten metal in the refining of steel using neural networks | July, 1994 | Feinstein et al. | 700/271 |
| 5333240 | Neural network state diagnostic system for equipment | July, 1994 | Matsumoto et al. | 706/20 |
| 5341307 | Apparatus and method for controlling flow rate in vibratory feeders | August, 1994 | Myhre et al. | 364/479.1 |
| 5349541 | Method and apparatus utilizing neural networks to predict a specified signal value within a multi-element system | September, 1994 | Alexandro, Jr. et al. | 395/500.39 |
| 5357449 | Combining estimates using fuzzy sets | October, 1994 | Oh | 700/188 |
| 5361628 | System and method for processing test measurements collected from an internal combustion engine for diagnostic purposes | November, 1994 | Marko et al. | 73/116 |
| 5365423 | Control system for distributed sensors and actuators | November, 1994 | Chand | 700/12 |
| 5367612 | Neurocontrolled adaptive process control system | November, 1994 | Bozich et al. | 395/22 |
| 5384699 | Preventive maintenance system for the photomultiplier detector blocks of pet scanners | January, 1995 | Levy et al. | 250/363.03 |
| 5386373 | Virtual continuous emission monitoring system with sensor validation | January, 1995 | Keeler et al. | 700/266 |
| 5394341 | Apparatus for detecting the failure of a sensor | February, 1995 | Kepner | 702/183 |
| 5394543 | Knowledge based machine initiated maintenance system | February, 1995 | Hill et al. | 395/575 |
| 5404064 | Low-frequency electrostrictive ceramic plate voltage sensor | April, 1995 | Mermelstein et al. | 310/319 |
| 5408406 | Neural net based disturbance predictor for model predictive control | April, 1995 | Mathur et al. | 700/45 |
| 5408586 | Historical database training method for neural networks | April, 1995 | Skeirik | 395/23 |
| 5414645 | Method of fault diagnosis in an apparatus having sensors | May, 1995 | Hirano | 700/185 |
| 5419197 | Monitoring diagnostic apparatus using neural network | May, 1995 | Ogi et al. | 73/659 |
| 5430642 | Control device for controlling a controlled apparatus, and a control method therefor | July, 1995 | Nakajima et al. | 700/50 |
| 5439245 | System for chassis control | August, 1995 | Breitenbacher et al. | 280/492.3 |
| 5440478 | Process control method for improving manufacturing operations | August, 1995 | Fisher et al. | 700/109 |
| 5467355 | Image forming apparatus provided with self-diagnosis system | November, 1995 | Umeda et al. | 364/571.04 |
| 5469735 | Self-diagnosing apparatus and method for determining occurence of failure in inner cylinder pressure responsive sensor applicable to engine combustion detecting/controlling system | November, 1995 | Watanabe | 73/181 |
| 5483387 | High pass optical filter | January, 1996 | Bauhahn et al. | 359/855 |
| 5485753 | Piezoresistive silicon pressure sensor implementing long diaphragms with large aspect ratios | January, 1996 | Burns et al. | 73/720 |
| 5486996 | Parameterized neurocontrollers | January, 1996 | Samad et al. | 700/32 |
| 5488697 | Problem state monitoring system | January, 1996 | Kaemmerer et al. | 395/51 |
| 5489831 | Pulse width modulating motor controller | February, 1996 | Harris | 318/701 |
| 5511004 | Diagnostic method for an evolutionary process | April, 1996 | Dubost et al. | 364/551.01 |
| 5548528 | Virtual continuous emission monitoring system | August, 1996 | Keeler et al. | 364/497 |
| 5561599 | Method of incorporating independent feedforward control in a multivariable predictive controller | October, 1996 | Lu | 700/44 |
| 5570300 | Self-validating sensors | October, 1996 | Henry et al. | 702/45 |
| 5572420 | Method of optimal controller design for multivariable predictive control utilizing range control | November, 1996 | Lu | 700/33 |
| 5598521 | Directly connected display of process control system in an open systems windows environment | January, 1997 | Kilgore et al. | 395/326 |
| 5600148 | Low power infrared scene projector array and method of manufacture | February, 1997 | Cole et al. | 250/495.1 |
| 5640491 | Control system using an adaptive neural network for target and path optimization for a multivariable, nonlinear process | June, 1997 | Bhat et al. | 395/22 |
| 5671335 | Process optimization using a neural network | September, 1997 | Davis et al. | 395/23 |
| 5675504 | Method of predicting residual chlorine in water supply systems | October, 1997 | Serodes et al. | 702/25 |
| 5704011 | Method and apparatus for providing multivariable nonlinear control | December, 1997 | Hansen et al. | 395/22 |
| 5781878 | Apparatus and method for diagnosing degradation or malfunction of oxygen sensor | July, 1998 | Mizoguchi et al. | 701/109 |
| 5834918 | Self-tuning tracking controller for permanent-magnet synchronous motors | November, 1998 | Taylor et al. | 318/601 |
| 5924086 | Method for developing a neural network tool for process identification | July, 1999 | Mathur et al. | 706/25 |
| EP0122622 | October, 1984 | Electronic thermometer. | ||
| EP0413814 | February, 1991 | ELECTRONIC THERMOMETER. | ||
| EP0487419 | May, 1992 | Device for production control and method for production control using the same | ||
| EP0594227 | April, 1994 | Automatic control system of press compaction. | ||
| EP0624847 | November, 1994 | Device and method to generate an approximating function. | ||
| EP0644470 | March, 1995 | Production control system selecting optimum dispatching rule. | ||
| FR2334827 | July, 1977 | |||
| DE3540204C1 | September, 1986 | |||
| DE4008560A1 | September, 1990 | |||
| DE4433593A1 | June, 1995 | |||
| DE19502499A1 | August, 1996 | |||
| JP58129316 | August, 1983 | DEVICE FOR DIAGNOSING ABNORMALITY OF DETECTOR | ||
| JP59116811 | July, 1984 | |||
| JP59211196 | November, 1984 | |||
| JP59211896 | November, 1984 | |||
| JP0060507 | January, 1985 | |||
| JP6076619 | May, 1985 | |||
| JP60131495 | July, 1985 | |||
| JP6230915 | February, 1987 | |||
| JP0641914 | January, 1989 | |||
| JP64001914 | January, 1989 | |||
| JP6472699 | March, 1989 | |||
| JP0025105 | January, 1990 | |||
| JP5122768 | May, 1993 | |||
| JP0619729 | March, 1994 | |||
| JP06242192 | September, 1994 | JUDGING DEVICE FOR LIFE OF BATTERY | ||
| JP0763586 | March, 1995 | |||
| JP07234988 | September, 1995 | ABNORMALITY DIAGNOSTIC DEVICE | ||
| JP0854923 | February, 1996 | |||
| JP8136386 | May, 1996 | |||
| JP8166309 | June, 1996 | |||
| GB928704 | June, 1963 | |||
| WO/1994/025933 | November, 1994 | METHOD AND APPARATUS FOR DETERMINING THE SENSITIVITY OF INPUTS TO A NEURAL NETWORK ON OUTPUT PARAMETERS | ||
| WO/1997/021157 | June, 1997 | A METHOD OF PREDICTIVE MAINTENANCE OF A PROCESS CONTROL SYSTEM HAIVNG FLUID MOVEMENT |
This is a Continuation-In-Part application of Ser. No. 08/623,569, filed on Mar. 28, 1996. Now, U.S. Pat. No. 6,017,143, Jan. 25, 2000.
a process signal input providing a process signal related to a process;
memory containing a nominal parameter value;
computing circuitry providing an event output in response to an event in the process, the evens detected based upon the process signal and the nominal parameter value, the computing circuitry providing the event output when the process has stabilized after initialization; and
output circuitry outputting the event output;
wherein the process control loop is selected from the group consisting of two wire process control loops, three wire process control loops and four wire process control loops.
receiving a process signal related to a process;
retrieving a nominal parameter value stored in a memory;
waiting until the process has stabilized after initialization;
detecting an event in the process based upon the process signal and the nominal parameter value when the process has stabilized; and
outputting a signal indicative of the event output;
wherein the process control loop is selected from the group consisting of two wire process control loops, three wire process control loops and four wire process control loops.
The present invention relates to devices which couple to process control loops of the type used in industry. More specifically, the invention relates to detection of events in a process control system by monitoring process signals.
Process control loops are used in industry to control operation of a process, such as in an oil refinery. A transmitter is typically part of the loop and is located in the field to measure and transmit a process variable such as pressure, flow or temperature, for example, to control room equipment. A controller such as a valve controller is also part of the process control loop and controls position of a valve based upon a control signal received over the control loop or generated internally. Other controllers control electric motors or solenoids for example. The control room equipment is also part of the process control loop such that an operator or computer in the control room is capable of monitoring the process based upon process variables received from transmitters in the field and responsively controlling the process by sending control signals to the appropriate control devices. Another process device which may be part of a control loop is a portable communicator which is capable of monitoring and transmitting process signals on the process control loop. Typically, communicators configure the devices which form the loop.
It is desirable to detect the occurrence of an event in the process control system. Typically, the prior art has been limited to simple detection techniques. For example, a process variable such as pressure is monitored and an alarm is sounded or a safety shutdown is initiated if the process variable exceeds predefined limits. However, in order to identify what event triggered the alarm, it is necessary to use complex models which are difficult to implement in a process environment where there is limited power and resources for large computations.
A process device couples to a process control loop. The process device receives a process signal. A memory in the process device contains a nominal parameter value. Computing circuitry provides an event output based upon the stored nominal value and the process signal. The computing circuitry providing an event output when the process has stabilized after initialization. Output circuitry provides an output in response to the event output.
FIG. 1 is a simplified diagram showing a process control loop including a transmitter, controller, hand-held communicator and control room.
FIG. 2 is a block diagram of a process device in accordance with the present invention.
FIG. 3 is a diagram showing application of rules to calculated statistical parameters and sensitivity parameters to provide a process event output.
FIG. 4 is a graph of a process signal output versus time showing various types of events.
FIG. 5 is a block diagram showing an inference engine operating on process events in accordance with the present invention.
FIG. 6 is a simplified block diagram of an inference engine for use in the present invention.
FIG. 7 is a graph of an independent process signal versus time.
Process variables are typically the primary variables which are being controlled in a process. As used herein, process variable means any variable which describes the condition of the process such as, for example, pressure, flow, temperature, product level, pH, turbidity, vibration, position, motor current, any other characteristic of the process, etc. Control signal means any signal (other than a process variable) which is used to control the process. For example, a control signal includes a desired process variable value (i.e. a setpoint) such as a desired temperature, pressure, flow, product level, pH or turbidity, etc., which is adjusted by a controller. Additionally, a control signal includes calibration values, alarms, alarm conditions, the signal which is provided to a control element such as a valve position signal which is provided to a valve actuator, an energy level which is provided to a heating element, a solenoid on/off signal, etc., or any other signal which relates to control of the process. A diagnostic signal as used herein includes information related to operation of devices and elements in the process control loop, but does not include process variables or control signals. For example, diagnostic signals include valve stem position, applied torque or force, actuator pressure, pressure of a pressurized gas used to actuate a valve, electrical voltage, current, power, resistance, capacitance, inductance, device temperature, stiction, friction, full on and off positions, travel, frequency, amplitude, spectrum and spectral components, stiffness, electric or magnetic field strength, duration, intensity, motion, electric motor back emf, motor current, loop related parameters (such as control loop resistance, voltage, or current), or any other parameter which may be detected or measured in the system. Furthermore, process signal includes any signal which is related to the process or element in the process such as, for example, a process variable, a control signal or a diagnostic signal. Process devices include any device which forms part of or couples to a process control loop and is used in the control or monitoring of a process.
FIG. 1 is a diagram showing an example of a process control system 2 which includes process piping 4 which carries a process fluid and two wire process control loop 6 carrying loop current I. A transmitter 8, controller 10, which couples to a final control element in the loop such as an actuator, valve, a pump, motor or solenoid, communicator 12, and control room 14 are all part of process control loop 6. It is understood that loop 6 is shown in one configuration and any appropriate process control loop may be used such as a 4-20 mA loop, 2, 3 or 4 wire loop, multi-drop loop and a loop operating in accordance with the HART®, Fieldbus or other digital or analog communication protocol. In operation, transmitter 8 senses a process variable such as flow, Q, using sensor 16 and transmits the sensed process variable over loop 6. The process variable may be received by controller/valve actuator 10, communicator 12 and/or control room equipment 14. Controller 10 is shown coupled to valve 18 and is capable of controlling the process by adjusting valve 18 thereby changing the flow, Q, in pipe 4. Controller 10 receives a control input over loop 6 from, for example, control room 14, transmitter 8 or communicator 12 and responsively adjusts valve 18. In another embodiment, controller 10 internally generates the control signal based upon process signals H receives over loop 6. Communicator 12 may be the portable communicator shown in FIG. 1 or may be a permanently mounted process unit which monitors the process and performs computations. Process devices include, for example, transmitter 8 (such as a 3095 transmitter available from Rosemount Inc.), controller 10, communicator 12 and control room 14 shown in FIG. 1. Another type of process device is a PC, programmable logic unit (PLC) or other computer coupled to the loop using appropriate I/O circuitry to allow monitoring, managing, and/or transmitting on the loop.
Any of the process devices 8, 10, 12 or 14 shown in FIG. 1 may include event monitoring circuitry in accordance with the present invention. FIG. 2 is a block diagram of a process device 40 forming part of loop 6. Device 40 is shown generically and may be part of any process device such as transmitter 8, controller 10, communicator 12 or control room equipment 14. Control room equipment 14 may comprise, for example, a DCS system implemented with a PLC and controller 10 may also comprise a "smart" motor and pump. Process device 40 includes I/O circuitry 42 coupled to loop 6 at terminals 44. In general, unless process device 40 is a controller located in the control room, device 40 is wholly powered by loop 6. FIG. 2 shows the equivalent circuit of a resistor and a battery. I/O circuitry has preselected input and output impedance known in the art to facilitate appropriate communication from and to device 40. Device 40 includes microprocessor 46, coupled to I/O circuitry 42, memory 48 coupled to microprocessor 46 and clock 50 coupled to microprocessor 46. Microprocessor 46 receives a process signal input 52. Block input is intended to signify input of any process signal, and as explained above, the process signal input may be a process variable, or a control signal and may be received from loop 6 using I/O circuitry 42 or may be generated internally within field device 40. Field device 40 is shown with a sensor input channel 54 and a control channel 56. Typically, a transmitter such as transmitter 8 will exclusively include sensor input channel 54 while a controller such as controller 10 will exclusively include a control channel 56. Other devices on loop 6 such as communicator 12 and control room equipment 14 may not include channels 54 and 56. It is understood that device 40 may contain a plurality of channels to monitor a plurality of process variables and/or control a plurality of control elements as appropriate.
Sensor input channel 54 includes sensor 16, sensing a process variable and providing a sensor output to amplifier 58 which has an output which is digitized by analog to digital converter 60. Channel 54 is typically used in transmitters such as transmitter 8. Compensation circuitry 62 compensates the digitized signal and provides a digitized process variable signal to microprocessor 46. In one embodiment, channel 54 comprises a diagnostic channel which receives a diagnostic signal.
When process device 40 operates as a controller such as controller 8, device 40 includes control channel 56 having control element 18 such as a valve, for example. Control element 18 is coupled to microprocessor 46 through digital to analog converter 64, amplifier 66 and actuator 68. Digital to analog converter 64 digitizes a command output from microprocessor 46 which is amplified by amplifier 66. Actuator 68 controls the control element 18 based upon the output from amplifier 66. In one embodiment, actuator 68 is coupled directly to loop 6 and controls a source of pressurized gas (not shown) to position control element 18 in response to the current I flowing through loop 6. In one embodiment, controller 10 includes control channel 56 to control a control element and also includes sensor input channel 54 which provides a diagnostic signal such as valve stem position, force, torque, actuator pressure, pressure of a source of pressurized air, etc.
In one embodiment, I/O circuitry 42 provides a power output used to completely power other circuitry in process device 40 using power received from loop 6. Typically, field devices such as transmitter 8, or controller 10 are powered off the loop 6 while communicator 12 or control room 14 has a separate power source. As described above, process signal input 52 provides a process signal to microprocessor 46. The process signal may be a process variable from sensor 16, the control output provided to control element 18, a diagnostic signal sensed by sensor 16, or a control signal, process variable or diagnostic signal received over loop 6, or a process signal received or generated by some other means such as another I/O channel.
A user I/O circuit 76 is also connected to microprocessor 46 and provides communication between device 40 and a user. Typically, user I/O circuit 76 includes a display and audio for output and a keypad for input. Typically, communicator 12 and control room 14 includes I/O circuit 76 which allows a user to monitor and input process signals such as process variables, control signals (setpoints, calibration values, alarms, alarm conditions, etc.) along with rules, sensitivity parameters and trained values as described below. A user may also use circuit 76 in communicator 12 or control room 14 to send and receive such process signals to transmitter 8 and controller 10 over loop 6. Further, such circuitry could be directly implemented in transmitter 8, controller 10 or any other process device 40.
Microprocessor 46 acts in accordance with instructions stored in memory 48. Memory 48 also contains trained values 78, rules 80 and sensitivity parameters 82 in accordance with the present invention. The combination of the sensitivity parameters 82 and the trained values 78 provide a nominal value 79. FIG. 3 is a block diagram 83 showing a logical implementation of device 40. Logical block 84 receives process signals and calculates statistical parameters for the process signals. These statistical parameters include standard deviation, mean, sample variance, root-mean-square (RMS), range (AR) and rate of change (ROC) of the process signal, for example. These are given by the following equations: ##EQU1## ΔR=x MAX -x MIN Eq. 5
Where N is the total number of data points in the sample period, x i and x i -1 are two consecutive values of the process signal and T is the time interval between the two values. Further, x MAX and x MIN are the respective maximum and minimum of the process signal over a sampling or training time period. These statistical parameters are calculated alone or in a combination. It is understood that the invention includes statistical parameter other than those explicitly set forth which may be implemented to analyze a process signal. The calculated statistical parameter is received by rule calculation block 86 which operates in accordance with rules 80 stored in memory 48. Rules block 86 also receives trained values 78 from memory 48. Trained values are the nominal or (i.e., typical) statistical parameters value for the process signal and comprise the same statistical parameters (standard deviation, mean, sample variance, root-mean-square (RMS), range and rate of change, etc.) used in logical block 84. In one embodiment, the trained values are provided by the manufacturer and stored in memory 48 of transmitter 40 during manufacture. In another embodiment, the trained values are periodically updated by addressing device 40 over loop 6. In still another embodiment, input circuitry 76 may generate or receive the trained values or be used to transmit the trained values to another process device over loop 6. In yet another embodiment, the trained values are generated by statistical parameter logical block 84 which generates, or learns, the nominal or normal statistical parameters during normal operation of the process. These statistical parameters are used to generate the trained values 78 in memory 48 for future use. This allows dynamic adjustment of trained values 78 for each specific loop and operating condition. In this embodiment, statistical parameters 84 are monitored for a user selectable period of time based upon the process dynamic response time.
Rules block 86 receives sensitivity parameters 82 from memory 48. Rules logical block 86 provides examples of a number of different rules. Each sensitivity parameter value 82 provides an acceptable range or relationship as determined by the appropriate rule between the calculated statistical parameters 84 and the appropriate trained values 78. The sensitivity parameter values 82 may be set by the manufacturer, received over loop 6 or input using input circuitry 76. The sensitivity parameters are adjusted for the specific application. For example, in process control applications where high accuracy is required, the sensitivity parameters are set so as to allow only small variations of the process signals relative to the trained values. The use of sensitivity parameters allow the diagnostic and event detection decision making to be controlled based upon the particular process and the requirements of the user.
FIG. 4 is an example of a process signal versus time which shows different process events (e.g. normal, bias, drift, noise, spike and stuck) which are detected using the present invention. The process signal shown in FIG. 4 is initially in a normal state and then moves to a bias condition. Next, the process signal goes through a drift condition followed by a noisy signal condition. Finally, a series of spike events occur in the process signal followed by a stuck condition. The rules used to detect these events are described below.
Drift
Drift occurs when a process signal changes over time from its true (i.e. nominal) value. One embodiment of the invention includes a rule which operates on a statistical parameter mean (μ), the trained parameter mean (μ') and a tuning parameter alpha (α) to detect drift.
Drift sensitivity is controlled by a single sensitivity parameter, alpha (α). Alpha (α) represents a percentage above or below the normal mean signal level that is tolerable before a drift or event is detected. The following rule performed by rule calculation block 86 detects a drift event: if μ<μ'(1-α) then a negative drift event if μ>μ'(1+α) then a positive drift event,
where μ is the current mean of the process signal from 84, μ' is the trained mean from 78 and α is the sensitivity parameter from 82 which defines the acceptable variations from the mean. Additionally, the mean is monitored over time. A drift event is only detected if, over a series of consecutive sampling period, the mean is moving away from the trained value. The trained mean (μ') may be learned by training device 40 during normal operation of the process.
Bias
Bias is the result of a temporary drift "stabilizing" at a certain level above or below the expected signal level. Once the drift stops, the resulting signal has a bias, sometimes called an offset from the true/nominal value. A bias is detected using the same rule used for drift. Additionally, the mean is monitored over time. If the mean is not continuing to move away from the trained mean (μ'), then the event is categorized as bias, not drift.
Noise
A different combination of a rule, tuning parameters and trained values detect noise in the process signal. Noise detection sensitivity is adjusted by adjusting the sensitivity parameter beta (β). Beta (β) is the amount the current standard deviation (σ) can be above the trained standard deviation (σ') before detection of a noise event. For example, if the user desires to detect a noise event when the process signal is twice as noisy as the trained value, β should be sent to 2.0. Range (ΔR) is also used by the rule to differentiate noise from normal signal variations. An example rule for noise detection is: if σ>βσ' and if ΔR>ΔR' then noise detected.
Where σ and σ' are the current and trained standard deviation ΔR and ΔR' are the current and trained range, respectively, and β is the noise sensitivity parameter.
Stuck
Yet another combination of a rule, statistical value, tuning parameters and trained values detect a stuck condition in a process signal. A "stuck" process signal is one which a condition of the process signal does not vary with time. Stuck sensitivity is controlled by adjusting the sensitivity parameter 82 gamma (γ). A value for gamma (γ) is expressed as a percentage of the trained standard deviation (σ') and represents how small a change in standard deviation from the trained value triggers detection of a stuck event. For example, if a user wishes to detect a stuck condition when the process signal noise level is half of the trained value, γ should be set equal to 50 percent (0.5). Further, range of the signal (ΔR) can be used to eliminate errors that arise with small signals. One example rule is: If (σ+ΔR)≤γ(σ'+ΔR') then a stuck event is detected.
Spike
A different combination of a rule, a statistical value, trained value and sensitivity parameter is used to detect a spike event. A spike event occurs when the signal momentarily goes to an extreme value. Sensitivity to spikes in the process signal is controlled by adjusting a sensitivity parameter from δ stored in 82. δ is the acceptable trained maximum rate of change (ΔP max ) between two consecutive data points. For example, if the user wishes to detect any spikes that have a rate of change (ROC) from block 84 that is 30% greater than Δr max from block 78 relative to the trained value, δ from 82 should be set to 1.30. An example rule is: if ROC>δΔr MAX then a spike event is detected
Other rules include a cyclic rule to detect cyclical oscillations in the process signal and an erratic rule to detect erratic behavior in the process signal. It should be understood that other rules may be implemented to observe other events in the process signal and may use different formulas or computational techniques to detect and event. A rule may operate on more than one statistical parameter or on more than one process signal. For example, if a process variable such as flow rate exceeds a predetermined limit while another process variable such as process temperature spikes, a rule could determine that the process is overheating and an emergency shut down condition could exist. Furthermore, another type of rule is implemented in fuzzy logic in which the statistical parameter is operated on by a sensitivity parameter which is a membership function applied to the trained values.
All of the rules discussed herein provide a process event output based upon the operation of the rule. It should be understood that the process event output may have a plurality of discrete or continuous values based upon operation of the rule. Note that the combination of the sensitivity parameter and the trained value provides a nominal parameter value and that the rule operates on the nominal parameter value and the statistical parameter. The various process signals, parameters and trained values can be combined using weighted averages or appropriate fuzzy logic. Membership functions include, for example, trapezoidal and triangular functions. For example, the statistical parameter can be mapped onto the chosen membership function. These are then used during training to generate the trained values, and to generate the statistical parameters for use by the rules.
In one embodiment, the trained values are obtained by determining that the process is stable, and generating the statistical parameters for a selectable period of time. These are stored as the trained values. The selectable period of time should be about the same as sampling period or block used to generate the statistical parameters during operation. This process may be user initiated or automated.
The output of a rule can be transmitted over loop 6, output on user I/O circuit 76, stored for future use, used as an input to another computation such as another rule or a control function, or used in any appropriate manner. In another embodiment, the present invention monitors related process signals and performs comparisons and correlations between these signals. For example, in FIG. 2 process signals such as the output of A/D converter 60, compensation circuit 62, and current I through loop 6 can be analyzed in accordance with FIG. 3. For example, the plurality of process signals should all be within a desired tolerance between one another as set forth by the appropriate combination of sensitivity parameters, rules, and trained values.
FIG. 5 is a block diagram 100 showing inference engine 102. Inference engine 102 resides in process device 40, is part of loop 6, and receives process variables 104, control signals 106 and process events 108. Process events are detected in accordance with the present invention. Inference engine 102 includes computation circuitry 110 and process data 112. Process data 112 may comprise, for example, process history information such as logged process variables, control signals, process events or other process signals and may contain process specific information which further defines the process being monitored. Time stamped process variables are disclosed in U.S. Ser. No. 08/618,330, filed Mar. 19, 1996, now U.S. Pat. No. 5,754,896, May 19, 1998 entitled FIELD TRANSMITTER FOR STORING INFORMATION which is a continuation of U.S. Ser. No. 08/200,626, filed Feb. 23, 1994, entitled FIELD TRANSMITTER FOR STORING INFORMATION incorporated herein by reference. Upon the occurrence of a process event, the inference engine 102 determines which component in the various process devices is faulty. Computation circuitry 110 analyzes process variables 104, control signals 106, process events 108 and other process signals to determine the cause of the process event. Computation circuitry operates in accordance with a series of rules such as those used in the known technique of an expert system. Computation circuitry 110 operates on all of the inputs including process data 112 and provides a faulty element output such as a warning signal. For example, if a drift event is detected, inference engine 102 operates to determine the cause of the drifts. For example, the drift may be due to a control setpoint which was changed in which case computation circuitry 110 determines that the control loop is operating properly. However, if the setpoint was not changed, the inference engine further analyzes the various inputs and, for example, checks the integrity of the device reporting a process event, such as a valve motor, pump, vibration equipment, etc., by running appropriate diagnostics. If the valve, for example, indicates that the valve is operating properly, the inference engine may then perform transmitter diagnostics to determine if a transmitter and associated sensors are operating properly. These diagnostics may observe information from the specific element being reviewed and may also observe information being received from other sources on the control loop such as upstream or downstream sensors, etc. Computation circuitry 110 uses any appropriate computational technique such a series of rules, fuzzy logic or neural networks. In a preferred embodiment, inference engine is implemented in a microprocessor and memory and may be located in a control room, at some remote location or in the field itself. Inference engine 102 may be implemented in any of the process devices 8, 10, 12, 14 or as software operation in a personal computer shown in FIG. 1. The faulty element output can be provided to an operator or can be used by additional computational circuitry which performs further diagnostics on the loop.
FIG. 6 shows a block diagram 200 of a simplified, example inference engine such as engine 102 operating in accordance with a rule base. Upon the occurrence of a process event, at block 202 the inference engine 102 examines the process event to identify the specific event which was detected. If the event was a drift event, control moves on to block 204. If the event was some other event such as spike, noise or bias, control moves to a rule base constructed in accordance with the specific event which was detected. At block 204, the inference engine checks to see if the setpoint of the process was recently changed. If the setpoint was recently changed, then the inference engine will wait until the process has stabilized (indicated by a small value for ROC), and then start re-learning the process so as to set a new baseline value. However, if the setpoint was not changed, the inference engine moves on to block 206 to run further diagnostics. At block 206, the inference engine instructs process device 40 to run on board diagnostics to further determine the cause of the drift. At block 208, if the diagnostics run by device 40 identify the cause of the drift, the inference engine provides an output identifying a faulty component. However, if the diagnostics indicate that device 40 is operating properly, inference engine instructs related devices to run diagnostics at block 210. For example, related devices may be upstream or downstream, controllers or transmitters. At block 212, the inference engine determines if one of the related process devices is the faulty device. If the fault which caused the drift is one of the related devices, the inference engine provides an output identifying the device and faulty component. If none of the related devices are in error, the inference engine observes other process signals at block 214 in an attempt to identify known process conditions at block 216. If the cause of the drift is due to a known process condition, for example, a fluid pressure drop caused by the filling of a reserve tank with process fluid, the specific condition is identified. If the process condition is not known, the operator is informed that a drift event has been detected and its cause cannot be identified. At any point in the flow chart 200, based upon any of the various rules, the inference engine may initiate a shutdown procedure to alarm or, as appropriate in the application, shut down the process. As discussed above, actual inference engines may contain a more detailed rule base and may employ other forms of logic such as fuzzy logic or neural networks, specific to each process control application.
Another aspect of the present invention includes determining an appropriate time for initiating operation of the event detection and diagnostic techniques described herein. Typically, such techniques are not initiated until operation of the process has stabilized. Process stability can be determined by monitoring a process variable and examining, for example, the rate of change (ROC) of the RMS or STD value of any pertinent independent variable. Independent variables include differential pressure, line pressure, temperature, mass flow, level, volumetric flow, etc. If the rate of change of the RMS or STD is insignificant, i.e. less than 1% or 2% of the entire span of the variable, it may be determined that the process has "settled" or become stabilized at which point the diagnostic procedures may be started. Further, such monitoring may be performed on other process signals such as control signals generated by a smart transmitter or in a central control location. Additionally, when it is determined that the process is stabilized, the trained values may be generated.
Monitoring of process signals may also be used to detect process repeatability in batch processes. FIG. 7 is a graph of a process signal versus time for a batch process. The angle alpha or beta (or equivalently the ROC of the signal) is monitored during a bench marking process. During normal operation, the batch process is monitored and if the angles alpha or beta (or the ROC) of the process signal deviate more than a specified amount from the learned parameters, an indication that a failure has occurred in the batch process or controller can be provided. In yet another aspect of the present invention, the diagnostic and event detection technique set forth herein may be used with a control signal as their input. For example, the noise rule set forth above may be employed for detecting a poorly tuned control system. The control signal may be generated in the field using a field control unit.
Although the present invention has been described with reference to preferred embodiments, workers skilled in the art will recognize that changes may be made in form and detail without departing from the spirit and scope of the invention. For example, all of the various functions and circuitry described herein can be implemented in any appropriate circuitry including software, ASICs, fuzzy logic techniques, or even analog implementations. Further, the process device may include any number or combination of input and control channels and may operate on any number of process signals, alone or in their combination, and the rules may operate accordingly.