The present invention relates generally to process control systems and, more particularly, to the integration of device alerts in a process control system.
Process control systems, like those used in chemical, petroleum or other processes, typically include one or more centralized process controllers communicatively coupled 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 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 or other communication lines to the field devices to control the operation of the process. Information from the field devices and the controllers may be made available to one or more applications executed by the operator workstation to enable an operator to perform desired functions with respect to the process, such as viewing the current state of the process, modifying the operation of the process, etc.
The DeltaV™ process control system sold by Fisher Rosemount Systems, Inc. uses function blocks located or installed in controllers or different field devices to perform control operations. The controllers and, in some cases, the 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 such as 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., within a single device or over a bus) to form one or more process control loops, the individual operations of which may be distributed throughout the process control system. Also, as is well known, in addition to function blocks, FOUNDATION Fieldbus (hereinafter Fieldbus) devices may each have one or more associated resource blocks and/or transducer blocks that represent various capabilities of that device. For example, a Fieldbus temperature transmitter having two temperature sensing elements may include two transducer blocks (i.e., one for each sensing element) and a function block that reads the outputs of the two sensing elements (via the transducer blocks) to produce an average temperature value.
Typically, the function, transducer and resource blocks, or the devices in which these blocks are implemented, are configured to detect errors, faults or problems that occur within the process control loops, the units, the devices, etc. and to send a signal (either automatically, as is the case with Fieldbus devices or in response to polling, as is the case with HART devices) such as an alarm or alert message, to notify an operator at an operator workstation or other user interface that an undesirable condition exists within the process control system or a control loop of the process control system. Such alarms or alerts may indicate, for example, that a block is not communicating, that a block has received or generated an out of range input or output, that a block is undergoing a fault or other undesirable condition, etc. In current alarm processing and display systems, an application executed at, for example, an operator interface/workstation, may be configured to receive messages containing process alarms related to process operation and to display these process alarms in a coherent and manageable manner to thereby enable an operator to manage alarms in some organized or logical way. Such an operator interface system is described in U.S. Pat. No. 5,768,119, entitled “Process Control System Including Alarm Priority Adjustment,” which is incorporated by reference herein.
In the past, conventional field devices were used in process control systems to send and receive analog signals, such as, for example, 4-20 milliamp (mA) signals to and from the process controller via an analog bus or analog lines. However, these 4-20 mA signals are limited in nature because they are only indicative of process measurements made by the device or of process control signals generated by the controller required to control the operation of the device during runtime. As a result, conventional 4-20 mA devices are incapable of generating alarms or alerts pertaining to the operational capability or status of the devices. Thus, alarms associated with the condition or status of these devices have generally not been available within process control systems.
More recently, smart field devices including a microprocessor and a memory have become prevalent in the process control industry. A number of open smart device communication protocols such as the Fieldbus, 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. In addition to performing a primary function within the process, a smart field device may store data pertaining to the device, communicate with the controller and/or other devices in a digital or combined digital and analog format and may perform secondary tasks such as self-calibration, identification, diagnostics, etc. Importantly, the devices conforming to at least some of these protocols (such as the HART and Fieldbus protocols) are capable of detecting problems within the device itself and are capable of generating and sending alarm or alert messages to indicate the detected problems to the appropriate operators, maintenance personnel, engineering personnel and related systems responsible for the operation of the process control system.
Fieldbus devices, for example, communicate alarm or alert information using a well known message format. Fieldbus device alarm messages include a block identification field, a relative identification field, a subcode field and a floating point number field. Generally speaking, the fields provided within a Fieldbus device alarm message specify, in increasing levels of particularity, the source of an alarm message and the nature of the alarm or alert conveyed thereby. In particular, the block identification field within a Fieldbus device alarm message identifies the block within the Fieldbus device from which the alarm message originated. Thus, a controller, workstation, etc. may use the block identification field within a Fieldbus device alarm message to determine which block generated the alarm message and whether the alarm message was generated by a function block, resource block or a transducer block.
The relative identification field of a Fieldbus device alarm message identifies what parameter within a particular block (e.g., a function block, resource block, or transducer block) caused the generation of the alarm message. A given block may have two or more parameters associated with it that can be distinguished from each other by using different values within the relative identification field. For example, a function block may have several inputs and outputs, each of which may be uniquely associated with a different relative identification field value.
The subcode field generally provides a numeric value that is indicative of the nature of the alarm message being transmitted by a device and that is predetermined by the device manufacturer. For example, the subcode field may be used to indicate that a sensor reading is outside of a normal operating range, that a sensor has failed completely, or any other failure that can occur within a Fieldbus device.
In Fieldbus devices the subcode field is device and manufacturer specific so that different types of failures within a particular block of a given Fieldbus device may result in different subcode field values and so that identical types of failures within different devices and/or within similar devices made by different manufacturers may also result in different subcode field values being sent within an alarm message. Because the subcode field is not user configurable and because the subcode field values for particular types of failures are device and/or manufacturer specific, manufacturers typically provide a list of subcodes and corresponding failure types so that the subcode values may be translated into failure types.
The floating point field typically contains a floating point number that is associated with the subcode being reported within the alarm message. Thus, in the case where a subcode field indicates that a sensor reading within a particular transducer block is outside of a normal operating range, the floating point field may contain a floating point value representing the actual out of range sensor reading.
As is commonly known, the blocks (i.e., the transducer, resource and function blocks) within Fieldbus devices are capable of providing an alarm notification or reporting parameter BLOCK_ALM and an alarm description or condition parameter BLOCK_ERR. Generally speaking, the BLOCK_ALM parameter enables a Fieldbus device to report via a controller and an operator workstation to a system user or operator that an alarm condition exists within that Fieldbus device. Whereas, the BLOCK_ERR parameter defines which ones of sixteen different possible alarm or alert conditions have been detected by the Fieldbus device that is reporting an active alarm condition via the BLOCK_ALM parameter. As is known, the BLOCK_ERR parameter includes sixteen bits, each of which represents one of sixteen predefined possible alarm or alert conditions that can occur in connection with a particular block of a particular Fieldbus device. The sixteen predefined alarm or alert conditions include a device needs maintenance soon condition, a device needs maintenance now condition, an input failure condition, an output failure condition, a memory failure condition, a lost static data condition, an other condition, etc. In addition to the sixteen predetermined detectable alert or alarm conditions, some Fieldbus device manufacturers provide Fieldbus devices that include diagnostics to detect other conditions. For example, a Fieldbus device may detect plugged valve lines or a valve drive failure, may provide a travel alarm, etc. and may report these other types of conditions by setting the “other” bit of the BLOCK_ERR parameter and reporting the other condition via the BLOCK_ALM parameter. Alternatively or additionally, some Fieldbus device manufacturers may report these other types of conditions (i.e., those conditions that are not one of the sixteen predefined conditions) using vendor specific alarms and/or parameters, which may vary significantly between device manufacturers.
Unfortunately, the sixteen predefined Fieldbus alarm or alert conditions are grouped together under the BLOCK_ERR parameter and any one active condition (i.e., an alert or alarm condition that has been detected by the device) will cause the BLOCK_ALM parameter to report that the device has an active alarm or alert. Thus, if a first alarm or alert condition becomes active within a traditional Fieldbus device, the BLOCK_ALM parameter reports that first alarm or alert and alarm or alert conditions that become active following that first alarm are not reported until the first reported alarm or alert is cleared or acknowledged. As a result, a relatively low priority alarm or alert condition may mask the reporting of a more serious condition until the system user or operator clears or acknowledges the first reported, lower priority condition. By way of example, a block within a Fieldbus device may detect and report a “device needs maintenance soon” condition using the BLOCK_ERR and BLOCK_ALM parameters. If the device subsequently detects “a device needs maintenance now” condition, that subsequently detected condition may be reflected (i.e., by setting the appropriate bit) within the BLOCK_ERR parameter. However, the BLOCK_ALM parameter will not be able to report the more serious “device needs maintenance now” condition until the alarm or alert reported in connection with the “device needs maintenance soon” condition is cleared or otherwise acknowledged by the system user.
Additionally, the monitoring, processing and reporting of smart field device alarms or alerts in a consistent manner is further complicated when multiple types of smart field devices are integrated within a single process control system. For example, devices conforming to the HART protocol (i.e., HART devices) are often used in conjunction with Fieldbus devices to carry out a process.
All HART devices are configured (according to the HART protocol) to report device status using eight standard conditions. Unfortunately, the eight standard status conditions defined by the HART protocol and provided by HART compatible devices are typically not consistent with the status conditions provided by Fieldbus compatible devices. As a result, reporting, organizing and managing alarm or alert information received from combinations of Fieldbus and HART devices in a consistent manner is very complicated, if not impossible. Furthermore, as is well known, HART devices also typically include one or more non-standard or device specific status conditions that are defined by the device manufacturer. These non-standard status conditions may vary between device types and manufacturers so that a particular type of device produced by different manufacturers or different types of devices produced by a single manufacturer may provide different sets of device specific status conditions. In any case, these non-standard HART device status conditions further complicate the integrated monitoring, processing, display and management of HART device status and Fieldbus device status information.
The non-standard nature of HART device status conditions and alarms or alerts combined with the numerous types of alarm or alert conditions that can be reported by Fieldbus devices, which are typically different from the conditions that are reported by HART devices, has complicated the integration of device alerts or alarms with the business systems that are typically used by a business enterprise in connection with the operation of one or more process control plants. More specifically, communicating device alert or alarm information to business systems to enable the business systems to respond in an appropriate manner is complicated by the fact that the business systems are not typically adapted to process alert or alarm information directly (e.g., Fieldbus alerts, HART alerts, etc.), much less the wide variety of alert or alarm information, which may be communicated using a variety of data formats, that are often used by the devices within a typical process control plant.
As is well known, business systems are typically used to monitor, control and/or manage the operation of one or more process control systems that may be distributed throughout a process control plant or a business enterprise. These business systems generally include enterprise asset management systems, abnormal situation management systems, etc. that may be implemented using any desired platforms such as, for example, workstations, web servers, cellular or other wireless communication devices such as, for example, personal data assistants (PDAs), phones, pagers, etc. More particularly, these business systems may include order processing systems, accounting systems, product shipping and administration systems, production and inventory control systems (e.g., materials resources planning tools), quality assurance systems, computerized maintenance management systems, procurement systems, material and energy control systems, production scheduling systems, etc.
Computerized maintenance management systems (CMMSs) are one particularly important and well known type of business system that may be used to notify plant personnel of a pending maintenance activity or need. These known CMMSs typically generate work orders requesting repair or replacement of failed or otherwise non-functional devices in response to device alerts or status conditions that are indicative of device failures only if that CMMS package has a direct connection to that failure information. Thus, these known CMMSs are not typically able to request replacement or other preventative maintenance of devices based on detection or prediction of an impending device failure. As a result, many CMMSs may only generate work orders requesting repair or replacement of a device in response to device alerts or alarms that indicate that a device has already failed. Unfortunately, repair or replacement of a failed device typically requires an unexpected, potentially dangerous and relatively costly stoppage or shut down of a process control system or plant.
To reduce the number of unexpected device failures and plant stoppages, many CMMSs provide preventative maintenance scheduling functions that use a calendar or time-based approach to replacing, repairing or otherwise performing preventative maintenance on devices throughout a process control plant, particularly those devices that are critical or essential to operation of the plant. In this manner, the operation of a process control plant or process control system may be stopped or shut down at scheduled times that minimize costs and maximize safety. However, the preventative maintenance scheduling functions used by known CMMSs are not typically based on actual device conditions and, thus, are not predictive in nature. Consequently, if devices do not perform as expected (e.g., fail prematurely), the time-based preventative maintenance functions will fail to avert unexpected device failures and plant stoppages or shut downs.
The device alerts integration system and technique described herein enables field devices such as, for example, Fieldbus devices and HART devices within a process control system to send alarm or alert conditions that are detected within the devices and which have been organized using a common prioritization scheme to an event management system. The event management system processes the prioritized device alerts or alarms and communicates with one or more business systems such as, for example, computerized maintenance management systems (CMMSs) to generate work orders, notifications, etc. that may be responsive to a device needing maintenance, an advisable action that should be taken in connection with a device, a failure condition associated with a device and/or a communication problem associated with a device. Of course, the event management system may alternatively or additionally communicate with any other desired business systems in response to the device alerts or alarms that have been organized or prioritized using the system and technique described herein.
In one aspect of the invention, a method of processing a device alert for use in a process control system categorizes the device alert into one of a plurality of alert categories and communicates the categorized device alert to an event management system in response to detection of a condition in a field device. Additionally, the method may communicate a notification of the device alert to a business system based on execution of a rule by the event management system.
In another aspect of the invention, a method of managing device alert information for use within a process control system configures an event management system having a rules-engine that is adapted to process the device alert information and conveys the device alert information between an asset management system and a business system via the event management system in response to the rules-engine.
In yet another aspect of the invention, a system for processing device alerts includes an asset management system that categorizes the device alerts into one of plurality of categories and may further include an event management system having a rules-engine and a state machine, wherein the event management system is communicatively coupled to the asset management system. Additionally, the system may also include a business system communicatively coupled to the event management system.
In still another aspect of the invention, a system for processing device alerts includes a computer readable medium and first software stored on the computer readable medium and adapted to be executed by a processor to receive categorized device alerts from an asset management system. Additionally, the system may also include second software stored on the computer readable medium and adapted to be executed by the processor to execute rules that define relationships between the categorized device alerts and a business system and third software stored on the computer readable medium and adapted to be executed by the processor to send notifications to the business system based on the rules and a state of a process control system.
In still another aspect of the invention, a system for processing device alerts includes a memory and a processor communicatively coupled to the memory. The processor may be programmed to receive categorized device alerts from an asset management system. Additionally, the processor may be programmed to execute rules that define relationships between the categorized device alerts and a business system and wherein the processor is further programmed to send notifications to the business system based on the rules and a state of a process control system.
Referring now to
The field devices 25-39 may be any types of devices, such as sensors, valves, transmitters, positioners, etc., while the I/O cards within the banks of I/O devices 20 and 22 may be any types of I/O devices conforming to any desired communication or controller protocol such as HART, Fieldbus, Profibus, etc. In the embodiment illustrated in
Each of the controllers 12 is configured to implement a control strategy using function, transducer and resource blocks. As is well known, each block is a part (e.g., a subroutine) of an overall control routine and operates in conjunction with other blocks (via communications called links) to implement process control loops within the process control system 10. Function blocks and transducer blocks typically perform input functions, such as those associated with a sensor or other process parameter measurement device, control functions, such as those associated with a control routine that performs PID control, fuzzy logic control, etc., or output functions that control the operation of some device, such as a valve, to perform some physical function within the process control system 10. Of course, hybrid and other types of blocks exist.
Function blocks may be stored in and executed by the controller 12, which is typically the case when function blocks are used for, or are associated with, standard 4-20 mA devices and some types of smart field devices, or may be stored in and implemented by the field devices. While the description of the control system 10 is provided herein using a function, transducer and resource block control strategy, the control strategy could also be implemented using other techniques, such as ladder logic, sequential flow charts, etc. and using any desired proprietary or non-proprietary programming language.
The process control system 10 may also include one or more business systems that may be implemented within one or both of the workstations 14 or within one or more other computer systems (not shown) or other types of platforms (e.g., web servers, wireless communication devices, etc.) that are communicatively coupled to the process control system 10. These business systems may include enterprise asset management systems, abnormal situation management systems, etc. that interoperate with the process control system 10 to efficiently manage its operation. It is important to recognize that the various devices, systems, etc. Making up the process control system 10 may be communicatively coupled via one or more types of communication networks, including the Internet. Preferably, a computerized maintenance system (CMMS) 55 is executed within one of the workstations 14. However, the CMMS 55 may be executed within any other workstation, server or computer system that is communicatively coupled to the process control system 10, if desired.
In the process control system 10 shown in
The alarm processing software 50 is configured to receive alarm messages created by alarm generating software within some or all of the controllers 12, the I/O devices 20 and 22 and/or the field devices 25-39. This alarm processing software 50 is generally illustrated, by way of example only, as software elements 51, 52 and 53 in
If desired, the alarm processing software 50 may receive and filter alarms based on a number of factors. In particular, the alarm processing software 50 may filter alarms based on the workstations or computer systems in which the software 50 is executed, the identity of the person logged into the workstation, and operator configurable settings, such as category, type, priority, status, time of generation, etc. of the alarm. For example, the alarm processing software 50 may filter alarms to selectively display alarms from the areas or sections of the plant that the workstation executing the alarm processing software 50 is configured to receive. In other words, alarms for certain areas or sections of the plant may not be displayed at particular workstations. Instead, each workstation may be limited to displaying alarms for one or more specific areas of the plant. Likewise, alarms may be filtered based on an operator's identity so that individual operators may be limited to viewing certain categories, types, priority levels, etc. of alarms or may be limited to viewing alarms from a section or subsection (e.g., an area) of the plant. The alarm processing software 50 may also filter alarms for display based on an operator's security clearance. In general, these workstation and operator filtering settings are referred to herein as workstation and operator scope controls.
The alarm processing software 50 may also filter the viewable alarms (i.e., those within the workstation and operator scope controls) based on operator configurable settings including, for example, the alarm category (e.g., process, device or hardware alarm), alarm type (e.g., communication, failure, advisory, maintenance, etc.), the alarm priority, the module, device, hardware, node or area to which the alarm pertains, whether the alarm has been acknowledged or suppressed, whether the alarm is active, etc.
Some or all of the Fieldbus devices 32-39 may include three independently reportable device alarm or alert categories that have not previously been used in connection with Fieldbus devices. Generally speaking, each of these independently reportable alarm categories may correspond to a different level of severity and, thus, alarms or alerts within each category may require a different type of response by the system user or operator.
In particular, the Fieldbus devices 32-39 may provide an alarm parameter FAILED_ALM, which is generally indicative of a problem within a device that has ceased to operate properly or which may not be operating at all, thereby preventing the device from performing its normal sensing and/or control functions. For example, a memory failure within a device, a drive failure within a device, or any other device failure that may require immediate attention (i.e., maintenance, repair, etc.) may be reported using the FAILED_ALM parameter. The Fieldbus devices 32-39 may also provide an alarm parameter MAINT_ALM, which is generally indicative of a condition detected within a device that is associated with a requirement for some type of device maintenance, but which is not severe enough to merit reporting via the FAILED_ALM parameter. Device conditions reported using the MAINT_ALM parameter are preferably, but not necessarily, conditions that result from some type of degradation, wear, fatigue, etc. within a device that could ultimately result in failure of the device, but which do not necessarily affect the ability of the device to sense, to control or to perform any other needed function. For example, sticking valves, impulse lines that are becoming plugged, etc. are device conditions that may result in the reporting of an alarm or alert via the MAINT_ALM parameter. Additionally, the Fieldbus devices 32-39 may provide an alarm parameter ADVISE_ALM, which is generally indicative of a condition detected within a device that only merits an alert or alarm of an advisory nature. Generally speaking, alarms or alerts that are reported using the ADVISE_ALM parameter do not have any impact on the operation of the device or the process being controlled and/or monitored using the device. For example, a grounding problem detected by a magmeter, a transient over temperature or a transient over pressure detected by a sensor may be reported using the ADVISE_ALM parameter.
Thus, in contrast to the BLOCK_ALM and BLOCK_ERR parameters used by traditional Fieldbus devices, the independently reportable FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters described herein enable a Fieldbus device to simultaneously report multiple alarms or alerts having different levels of severity. In other words, a single Fieldbus device can, using the independently reportable alarms described herein, report a grounding problem, which does not require any immediate attention, using the ADVISE_ALM and at the same time that Fieldbus device can report a more severe condition such as, for example, a sensor failure that requires immediate attention using the FAILED_ALM parameter, regardless of whether the ADVISE_ALM has been acknowledged or cleared by the system operator.
Preferably, but not necessarily, each of the FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters described herein are formed using a thirty-two bit word based on any desirable data format or type such as, for example, DS-72 or DS-71, which are both well known IEEE standards and, thus, will not be described further herein. Each bit within each thirty-two bit word may be representative of a unique device condition to be reported using the alarm parameter corresponding to that thirty-two bit word. Thus, thirty-two device conditions at each of the three different levels of severity (i.e., FAILED_ALM, MAINT_ALM and ADVISE_ALM) for a total of ninety-six unique alarm or alert conditions may be reported by each Fieldbus device. If desired, one bit within each of the independently reportable alarms FAILED_ALM, MAINT_ALM and ADVISE_ALM may be used for “other” conditions that are not specifically defined, thereby enabling the devices to more flexibly provide for the detection of a variety of device conditions which may not be anticipated during the design of the device and/or which may be needed by a particular user.
While, in general, a lower severity alarm or alert may be reported using the ADVISE_ALM or MAINT_ALM parameters without affecting the ability of a Fieldbus device to simultaneously report a higher severity alarm using the FAILED_ALM parameter, multiple active conditions (i.e., multiple detected device conditions) within a particular alarm parameter may not result in multiple alarm events being sent to the operator workstation 14. For example, if one of the Fieldbus devices detects an over pressure condition and an over temperature condition, the bits corresponding to these conditions will be set within the ADVISE_ALM parameter for that device. However, the first detected condition will cause an alarm event to be generated and sent to the operator workstation 14, while any subsequently detected condition will cause another alarm event to be generated and sent to the workstation only after the alarm event associated with the earlier or first detected condition is cleared or acknowledged by the system operator or user. As a result, if the Fieldbus device detects the over pressure condition first, the subsequently detected over temperature condition will not generate an alarm event until the system user or operator clears or acknowledges the over pressure alarm or alert.
The FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters may be independently reported to the system user or operator via one of the workstations 14 using the Fieldbus alarm message format described above (i.e., the message format including a block identification field, a subcode field, etc.). Further, each of the thirty-two possible conditions associated with each of the FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters is preferably, but not necessarily, represented using a unique subcode when these alarms are sent to a system workstation using the Fieldbus alarm messaging format. Each Fieldbus device includes definitions of the subcodes associated with each of the possible conditions for each of the FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters. Also, each Fieldbus device may define a unique textual message that is descriptive of the condition associated with each of the subcodes. Although each subcode preferably corresponds to a unique device condition and, thus, a unique textual message, it may be desirable in some situations to use a single textual message for more than one device condition.
The independently reportable device alarm parameters described herein may be filtered by each device to enable or to disable the reporting of an alarm or alert in response to one or more the possible device conditions (i.e., the ninety-six possible conditions). Each of the Fieldbus devices 32-39 that are capable of reporting alarms using the independently reportable FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters described herein may further include an active alarm parameter and a mask parameter for each of the independently reportable alarm parameters. In particular, each of the Fieldbus devices 32-39 may include FAILED_ACTIVE and FAILED_MASK parameters, which correspond to the reportable FAILED_ALM parameter, MAINT_ACTIVE and MAINT_MASK parameters, which correspond to the reportable MAINT_ALM parameter, and ADVISE_ACTIVE and ADVISE_MASK parameters, which correspond to the reportable ADVISE_ALM parameter. The mask and active parameters are preferably, but not necessarily, implemented using an unsigned thirty-two bit data format or type. Of course, any other suitable data type or format may be used instead.
Each of the thirty-two bits in the mask and active parameters uniquely corresponds to a condition within its corresponding reportable alarm parameter (i.e., FAILED_ALM, MAINT_ALM and ADVISE_ALM). In general, the bits of the mask parameters of each device may be set or reset during configuration, for example, to enable or to disable the ability of a device to report alarms in response to the detection of conditions associated with the FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters or alarms for that device. In this manner, a system user or operator may selectively enable or disable those conditions for which each device will generate a Fieldbus alert or alarm message. Of course, a system user or operator may enable or disable as many or few device conditions as desired.
In operation, when a Fieldbus device detects a condition, a bit corresponding to that detected condition may be set within an appropriate active parameter. For example, if a Fieldbus device detects a failed sensor, a bit corresponding to that condition within the FAILED_ACTIVE parameter for a transducer block within that device may be set or reset to indicate the sensor failure. Any additional device conditions that are detected (and which have not been acknowledged, canceled or cleared), or which are detected at any time, may also result in bits being set or reset within the active parameter to indicate the existence of those additional conditions. However, as discussed in greater detail below, conditions which are detected following a reported condition (i.e., one for which a Fieldbus alarm message has been sent to the system operator) that has not yet been acknowledged may not be reported until that reported condition has been acknowledged, canceled or otherwise cleared by the system user or operator. The Fieldbus device may then use the FAILED_MASK parameter for the transducer block to filter the device conditions associated with that block for which the user or system operator does not want to receive alarms or alerts. The system user or operator may, at the time of system configuration, define which bits are set or reset in the FAILED_MASK parameter to achieve the desired filtering. By way of example, a logical AND operation may be performed with the FAILED_MASK parameter and the FAILED_ACTIVE parameter to generate the FAILED_ALM parameter to have bits that have been set or reset to indicate the presence of device conditions that are currently active (i.e., have been detected) and which have not been masked by the mask parameter.
In general, each of the independently reportable alarm parameters FAILED_ALM, MAINT_ALM and ADVISE_ALM may report or cause a Fieldbus device to send Fieldbus alarm or alert messages to the system user or operator (for any detected conditions that are active and which are not masked) in the order in which the conditions are detected. In other words, detected conditions within a particular one of the independently reportable alarm parameters for a particular device may be reported to the system user or operator in the order in which the conditions were detected (i.e., on a first in first out basis). Of course, detected conditions may be reported to the system user or operator using some other prioritization or sequencing mechanism if desired. For example, non-masked detected conditions may be reported in reverse chronological order (i.e., on a last in first out basis), based on the type of the condition detected, etc. Additionally, a Fieldbus device may provide a clear alarm message when all the alarm messages associated with a particular alarm parameter are cleared. Furthermore, if a mask parameter for a particular alarm is changed while a condition associated with the alarm parameter is active, the device may clear the alarm and reevaluate the alarm based on any changes that have been made to the mask parameter.
Each of the Fieldbus devices 32-39 may also include priority parameters FAILED_PRI, MAINT_PRI and ADVISE_PRI for each of its respective FAILED_ALM, MAINT_ALM and ADVISE_ALM parameters. These priority parameters may be implemented using unsigned eight bit values, which provide 256 possible priority levels, and may, for example, be assigned a default level or value of two. Setting the priority level of an alarm to zero disables the reporting of that alarm and setting the priority level to any value between 1 and 255 enables a user or system operator to control the manner in which the alarm processing software 50 manages alarms or alerts on a system-wide basis. In particular, the numerous possible priority levels may be used to determine which devices alarms or alerts take precedence over the alarms or alerts of other devices. In this manner, the system user or operator can predefine how the system manages and processes a potentially large number of active alarms.
Each of the Fieldbus devices 32-39 may also include a RECOMMENDED_ACTION parameter that may be mapped to textual information within the device description information, which may be stored within the workstation 14. The textual information referenced by the RECOMMENDED_ACTION parameter may be displayed to the system operator or user to assist in the correction, repair, etc. of a device that has generated an alarm. In the case where a reported alarm has multiple active conditions, the recommended action displayed to the system user or operator may be the most critical or highest priority condition.
As described above, the various types of alerts and alarms generated by the Fieldbus devices 32-39 may be mapped at the device level to a plurality of independently reportable alarm parameters (e.g., FAILED_ALM, MAINT_ALM and ADVISE_ALM). In this manner, alerts or alarms from a plurality of Fieldbus devices can be monitored, processed and displayed in a consistent, logical manner to a system operator or user via the workstation 14. Additionally, within a given Fieldbus device, the independently reportable alarm parameters described herein prevent lower severity types of alerts from masking the communication or display of higher severity types of alerts or alarms to the system operator or user.
Each of the HART devices 28-31 provides eight standard status conditions and, if desired, one or more device specific status conditions. However, these standard and device specific status conditions associated with HART devices are not typically consistent with the status conditions reported by Fieldbus devices. In particular, the HART devices 28-31 do not report status conditions in a manner that is consistent with the independently reportable alarm parameters FAILED_ALM, MAINT_ALM and ADVISE_ALM described herein.
To facilitate the integrated monitoring, processing and display of alerts or alarms associated with the status conditions reported by the HART devices 28-31 and the alerts or alarms reported by the Fieldbus devices 32-39 via the independently reportable alarms parameters described herein, the alarm processing software 50 maps or categorizes HART compliant status information to alert or alarm categories that are consistent with the independently reportable alarm parameters FAILED_ALM, MAINT_ALM and ADVISE_ALM. By way of example only, the eight standard HART device status conditions may be mapped as indicated by Table I below.
Thus, as depicted in Table I above, the alarm processing software 50 may map or categorize the eight standard HART device status conditions into FAILED, MAINTENANCE and ADVISORY categories, thereby enabling these standard HART status conditions to be reported or displayed to the system operator or user along with Fieldbus device alerts or alarm information in a more consistent and logical manner than was possible with prior systems.
As is well known, in contrast to Fieldbus devices, HART devices must be polled to obtain current device status conditions. Accordingly, the alarm processing software 50, the controllers 12 and/or the I/O device 20A may be configured to periodically poll the HART devices 28-31 for status information. Because every response message sent by a HART device includes the current states of the eight standard status conditions, the alarm processing software 50 may efficiently obtain this status information by extracting the status information from responses to commands that are typically sent by the controllers 12 via the I/O device 20A to the HART devices 28-31. In other words, the alarm processing software 50 may introduce little or no additional communication overhead by obtaining status information from responses to commands that would otherwise be periodically sent to the HART devices 28-31 by the controllers 12 to carry out required process control or monitoring activities. For example, in the case where the controllers 12 are DeltaV type controllers, HART commands #0 and #3 are periodically sent to the HART devices 28-31. Thus, the alarm processing software 50 may extract the standard HART status condition information associated with the devices 28-31 from the messages sent in response to these commands. Of course, if desired, any other command could be used by the controllers 12 and the alarm processing software 50 to cause the HART devices 28-31 to send responsive messages containing the standard HART status information.
As is well known, non-standard HART status (i.e., device specific status) conditions may be obtained by sending a HART command #48 to the HART devices 28-31. As is also well known, the HART communication protocol specifies that device specific status information may be available when either the “Device Malfunction” or the “More Status Available” conditions are true (i.e., the bits are set to a logical 1). Thus, when the alarm processing software 50 detects a true condition for either the “Device Malfunction” or the “More Status Available” status conditions for one of the HART devices 28-31, the alarm processing software 50 sends a HART command #48 to that device. In response to the command #48, the polled device provides more detailed information relating to the nature of the device specific condition or status. The alarm processing software 50 may then categorize any device specific status conditions, which are provided in response to a command #48, in the following manner: (1) if the “Device Malfunction” bit has been set, the alarm processing software 50 maps the device specific status condition to the “FAILED” alert or alarm category and (2) if the “More Status Available” bit has been set, the alarm processing software 50 maps the device specific status condition to the “ADVISORY” alert or alarm category.
Referring now to
The alarm display and interface system includes an alarm processing unit 64 that receives alarms and other event information from the communication layer 62 in the form of messages, decodes those messages containing alarm or other event information and may store the alarm and other event information in a database 66. The front end of the alarm processing unit 64, which interfaces with the communication layer 62 and the database 66, may be an alarm receiver. The alarm processing software 50 also includes an alarm filter 68 that the alarm processing unit 64 uses to determine which alarms are to be displayed on a user interface 69 (such as a CRT, LCD, LED, plasma display, printer, etc.) associated with the workstation 14. The filter 68 may have its settings stored in the database 66 and these filter settings may be preconfigured and/or may be changed by a user based on the user's preferences. It should be recognized that the filter 68 and its settings are distinct from the device level mask parameters FAILED_MASK, MAINT_MASK and ADVISE_MASK, which may be used in connection with Fieldbus devices as described herein. That is, a system user or operator may filter specific alarms generated by specific conditions within specific devices using the device mask parameters. Alternatively or additionally, as described herein, the system user or operator may filter types or categories of alarms, alarms associated with particular plants, areas, units, loops, etc. within the process control system using the filter 68. For example, in the case where the alarm processing software 50 is processing alert or alarm information sent by one or more of the HART devices 28-31, the alarm filter 68 may be used to selectively display alert or alarm information in any desired manner. Of course, the HART devices 28-31 do not have internal alarm or alert filtering mechanisms such as, for example, the device level mask parameters described above in connection with the Fieldbus devices 32-39.
Generally, the filter settings of the alarm filter 68 may control the category and priority of alarms and, if desired, may establish the order of the alarms to be displayed using a number of different criteria. The workstation and operator scope controls affect what a particular operator can see (e.g., which alarms can be displayed at a particular workstation) based on the operator's identity and the workstation to which the operator is logged on. In this case, an operations license may be assigned to each workstation and, without an operations license, the alarm information and all alarm list/summary displays may be empty. In other words, no active or suppressed alarms of any category (i.e., process, hardware or device) will be shown by the alarm processing unit 64. Still further, only alarms from a plant area in the current operator's scope (the operator is usually given at least one security key in the plant area) are eligible to appear in the alarm displays on that workstation. Also, only alarms from a plant area and unit which has not been turned off using the plant area or unit filtering display(s) (to be discussed below) are eligible to appear in the alarm display. In this manner, the alarm filter 68 prevents the display of alarms outside of the workstation and operator scope and alarms from plant areas or units that have been turned off by the operator.
After testing alarms for conformance to the workstation and operator scope controls, the filter 68 filters out and determines the display order of alarms based on operator settings, which may include, for example, the category of alarm, the priority of the alarm, the type of alarm, the acknowledged status of the alarm, the suppressed status of the alarm, the time of the alarm, the active status of the alarm, etc. The received alarms, which are sent to the alarm processing software 50 using alarm messages (e.g., Fieldbus alarm messages) may include a parameter for each of these values and the filter 68 may filter alarms for display by comparing the appropriate parameters of the alarms to the filter settings. For example, the operator can indicate which categories of alarms and priority levels of alarm should be displayed on the screen. If desired, the operator can adjust a predetermined priority level for an alarm by offsetting the priority level from the preconfigured priority level for the alarm set by the manufacturer. In the DeltaV™ system, a priority level between about three and fifteen is typically selected for each alarm and the operator can offset this priority level by any number of levels to make a higher priority a lower priority or a lower priority a higher priority when viewed by the filter 68. While the operator may set the order of display of the alarms that are passed by the filter 68, the order may also be determined by preconfigured settings to provide a consistent display of different types of alarms.
In any event, the operator can customize the manner in which alarms are displayed based on the categories or types of alarms that the user is most interested in, which may all be one category or type of alarm such as process alarms, device alarms, hardware alarms or any combination of two or more categories of alarms. Further, the user may configure the display of alarms so that alarms or alerts of different severities may or may not be displayed. For example, the user may want to view only alarms or alerts contained within FAILED_ALM and MAINT_ALM parameters and may not want to view alarms or alerts contained within ADVISE-ALM parameters. More generally, the system operator or user may configure the display of alarms to view alerts or alarms associated with a device failure, a device needing maintenance, and/or an advisable action in connection with a device. The user may also have control over how the alarms are presented and the information provided with the alarms. In this manner, the alarm processing software 50 enables a single person to perform the operations of an operator, a technician or maintenance person, and an engineer by viewing and addressing on the same screen the alarms that would normally be addressed by different personnel at different locations in a plant. Alternatively, at different times in the same system a maintenance person can use the same system to view only maintenance alarms while an engineer can view other types of alarms affecting the devices. In this manner, the alarm processing software 50 can be used by different types of people at the same time in different workstations to view different aspects of the alarms associated with the process control system 10. Furthermore, when using the alarm processing software 50, it is relatively easy for an individual to turn over alarm functions that they are viewing and acknowledging to another individual who may have the same software. Alternatively or additionally, an individual may set their filter to accept alarms that are normally viewed by another person. In this manner, one person may go to lunch and turn the alarm viewing function over to other persons at different workstations by resetting a few filter settings. When returning from lunch, that person may regain control of those functions. Also, when the amount of alarm information becomes too large for one person to handle, that person may hand off or shed the load for certain categories of alarms such as process alarms, device alarms or hardware alarms so that these alarms can be handled by other people at other terminals.
After the alarm processing unit 64 uses the filter 68 to decide which alarms (i.e., non-masked conditions) should be displayed to the user via the display 69 and the order in which the alarms should be displayed, the alarm processing unit 64 provides this information to a user display interface 70, which uses any standard or desired operating system to display alarm information on the alarm display 69 in any desired manner. Of course, the user display interface 70 obtains other information it needs, such as information about the layout of or the configuration of the process control system 10, the values of parameters or signals within that system, etc. from the database 66 or from other communication signals received from the process control system 10 via the communication layer 62. Also, the user display interface 70 receives commands from the user requesting, for example, more information related to particular alarms, changes to alarm or filter settings, new alarm displays, etc. and provides this information to the alarm processing unit 64, which then takes the requested action, searches the database 66 for the alarm information, etc. to provide a new alarm view to the user via the display 69.
Generally speaking, there are different categories of alarms that can be generated and displayed on the display 69 including, for example, process alarms, device alarms and hardware alarms. Process alarms, which are known and which are typically generated by function blocks or modules within a process control routine running on a controller or a field device, have, in the past, been sent to and displayed on an operator interface. Process alarms generally indicate a problem with the functional operation of the process control software, i.e., a problem with the process control routine itself such as out-of-bounds measurement, abnormal variances between process parameters and set points, etc. Process alarms are typically configured by the user as components of process control modules and may appear in the configuration information provided on the operator interface as being associated with a module name. Some types of process alarms include bad input/output, out-of-bounds measurements, exceeded thresholds, etc. Because process alarms are well known in the art, they will not be described in more detail herein.
Device alarms such as the alarms associated with device failure, device maintenance and/or an advisable action in connection with a device, are alarms associated with the operation of the field devices within the process and may be detected by software (e.g., the software 53 in
As discussed above, there can be many different types of device alarms including, for example, failure alarms indicating that a failed or failing condition exists within a device, maintenance alarms indicating that maintenance of some type should take place, communication alarms indicating that a device is not communicating properly or at all, advisory alarms, etc. A failure (e.g., a “failed”) alarm indicates that a device has detected one or more conditions indicating that it cannot perform a critical function and, thus, requires maintenance immediately. Whenever the failed alarm condition is true, the integrity of the device is considered bad, which rolls up to the controller and causes the integrity of the controller node to which the device is connected to be bad. On the other hand, a maintenance alarm indicates that a device is able to perform critical functions but has one or more detected conditions that may lead to a failure if left unaddressed and, thus, the device should receive maintenance attention soon. A communication (e.g., a “not communicating”) alarm becomes active when a device stops communicating. Whenever the not communicating alarm condition is true, the integrity of the device is considered bad, which causes the integrity of the controller node to which the device is connected to be bad. An advisory alarm indicates that a device has detected conditions that do not fall into the other alarm categories. Usually, an advisory alarm is an alarm provided by individual devices and is uniquely associated with the type of device, such as a flow meter tracking the variability of the flow signal. In this case, the device may recognize that a variability in some signal associated with the device is too high or too low, which means that something unusual has happened and requires investigation. Depending on the device, advisory alarms may require more or less urgent attention than maintenance alarms and, thus, users may set the priority of the advisory alarm lower than that of the maintenance alarm. Of course, failed, maintenance and advisory alarms may not be supported by every device and a single, catch all alarm, such as an “abnormal” alarm for generic devices may be used instead of the failed, maintenance, and advisory alarms resulting in two total alarms, i.e., not communicating and abnormal. Of course, other types of device alarms could be created or used instead of or in addition to the ones discussed above.
In one embodiment, integrated alarm information may be provided to a user on a display in the form of an alarm banner at, for example, an edge of a display screen. Referring now to
Also, the other alarm indications in the alarm banner 73, such as the alarm indication 78, may be yellow, purple, or any other color to indicate other levels of seriousness or priority associated with the alarm. When another alarm is selected, such as the alarm 78, 80, 81 or 82, alarm information pertaining to that alarm may be displayed in the alarm information field 76. When viewing an alarm in the alarm banner 73, the user can acknowledge the alarms and alert maintenance or engineer personnel to take the appropriate actions to correct the condition that led to the alarm or, alternatively, could take other steps such as resetting certain set points to alleviate the alarm condition.
As indicated above, by selecting one of the alarms in the alarm banner 73 such as the alarm 74, a primary control display for that alarm is presented in the screen 71. In particular, as shown in
The system user or operator may select an acknowledge button 104 to acknowledge a highlighted alarm or alert within the window 100 or, alternatively, may select one of the cancel boxes 106 to cancel one or more active alarms or alerts. Further, if desired, the user or system operator may select a “Details” button 108 to invoke other pop up windows, as discussed in greater detail below, that provide additional information related to those alarms that are currently active within the window 100.
While the alarm display and interface software 50 has been described as being used in conjunction with Fieldbus, HART and standard 4-20 mA devices, it can be implemented using any other external process control communication protocol and may be used with any other types of controller software. Although the alarm display and interface software 50 described herein is preferably implemented as software, it may be implemented in hardware, firmware, etc., and may be implemented by any other processor associated with the process control system 10. Thus, the routine 50 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 routine 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 of a computer or processor, etc. Likewise, this 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 over 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).
Of course, while the independently reportable alarms described herein have been described as having three levels of severity or types of alarm (i.e., device failure, device maintenance and an advisable action), it should be recognized that two levels or more than three levels of severity may be used instead.
In addition to enabling the integrated display of device alert or alarm information, the above-described alarm organization and prioritization system and technique also enables more effective integration of device alert or alarms with the business systems that are typically used within a process control plant or business enterprise.
The asset management system 206 may communicate categorized alert or alarm information to the event management system 202. Additionally, the asset management system 206 may send descriptive information (e.g., textual information) to the event management system 202 for each of the alerts or alarms that are communicated to the event management system 202. This descriptive information may be received directly from a field device and stored within a database 208 or, alternatively, may be generated by a user or operator for each of the devices being monitored and stored in the database 208 for later retrieval and transmission to the event management system 202.
The event management system 202 generally functions as an expert system interface between the asset management system 206 and the business systems 204. More specifically, the event management system 202 may include one or more configuration routines 210 that, when executed, may be used to configure alert or alarm priorities and rules that are used by the event management system 202 to control the manner in which the alarm or alert information is sent to or otherwise affects the operation of the business systems 204. During configuration, a user or operator may be provided with a graphical interface that facilitates selection of the devices to be monitored (i.e., from which devices alert or alarm information will be received and processed) by the event management system 202. The configuration routines 210 may, for example, maintain a list or table of all the device tags, which uniquely identify each device within a process control system, and may update this list or table based on a user's selection or de-selection of particular devices. Well known windows-based graphics, point-and-click operations, etc. may be used to provide the user or operator with an intuitive graphical interface for selecting and de-selecting devices to be monitored or tracked.
The configuration routines 210 may also enable the user or operator to select or define the particular parameters (i.e., particular device alerts or alarms) to be monitored for each selected device. The parameters, alerts or alarms that may be monitored may be provided by the devices themselves using, for example, the device descriptions. Of course, the parameters available for monitoring for each selected device may instead be provided from a database such as, for example, the database 208 within the asset management system 206. In any case, each parameter selected is also assigned a priority which may, for example, be a numeric value that ranges from 1-10, where a one may be the lowest priority and a ten may be the highest priority value. Of course, any other numeric range or any other symbols may be used to represent varying priority levels, if desired.
The priority assigned to each parameter selected for monitoring is preferably, but not necessarily, reflective of the overall severity of an alert or alarm associated with that parameter. Thus, the type of alert generated by a device (i.e., which parameter in particular does the alert concern) and the relative importance of the operation of the device to the overall control system that the monitored device is used within may affect the assignment of priority values. The FAILED, MAINTENANCE and ADVISORY categories discussed herein may be used to automatically generate priority assignments. For example, if the event management system 202 uses numeric values of 1-10 to represent increasing levels of parameter priority, the event management system 202 may assign a numeric value of ten to alerts or alarms that are categorized as FAILED, may assign a numeric value of five to alerts or alarms that are categorized as MAINTENANCE and may assign a numeric value of one to alerts or alarms that are categorized as ADVISORY. Of course, a system user or operator may be permitted to override these automatic prioritizations and could assign a different priority to one of more of the selected parameters. By way of example, a maintenance engineer may consider a particular device to be especially crucial to the operation of a process control system or plant and may assign a high priority (e.g., a ten) to all alerts or alarms associated with that device, even if some or all of the alerts or alarms associated with the selected parameters for that device have been categorized as MAINTENANCE or ADVISORY in nature. On the other hand, in a case where a device within the process control system or plant is merely being used to monitor a non-critical process parameter, a user or operator may set a relatively low priority (e.g., a one) for alerts or alarms received in connection with that device, even if some or all of the alerts or alarms associated with the selected parameters for that device are categorized as FAILED. Thus, different devices within a process control system may have different priorities for the same alert or alarm because the operation of some of the devices may be more critical than others. As with the device selection process described above, the parameter selection and priority determination process may be carried out using a windows-based graphical user interface. Additionally, if desired, pop up help windows may be automatically provided or provided at the request of the user or operator to assist in the determination of an appropriate priority level for each of the selected parameters.
Still further, as shown in
As shown in
The event management system 202 described above may be implemented as software or a combination of hardware and software that is executed within a workstation, server or any other computer that is in communication with the process control systems and the business systems associated with a process control plant. For example, in the case of the process control system 10 shown in
In operation, the asset management system 206 sends alert or alarm information associated with particular parameters of particular devices that have been selected during execution of the configuration routines 210. The rules-engine 212 processes the received alert or alarm information and determines which, if any, of the business systems 204 will receive notifications. These notifications may include the alert, a priority associated with the alert and a description of the alert, which may be provided by or derived from a device description. Such descriptions may include, for example, textual information relating to repair and/or replacement of a device to remedy a detected problem. Additionally, these notifications are preferably designed to elicit some action by the receiving ones of the business systems 204. In some cases, a business system may be designed to request notifications and, in those cases, the event management system 202 will only send notifications if such requests are made. However, in other cases, a business system may simply receive notifications from the event management system 202 without having to poll the event management system 202.
After sending a notification, the event management system 202 may send subsequent notifications to one or more of the business systems 204 in response to changes in the status of alerts or alarms sent by the asset management system 206. More specifically, the state machines 214 receive information from the asset management system 206 so that the current status of the alerts or alarms that the event management system 202 has been configured to track may be continuously monitored. In this manner, the event management system 202 may, for example, initially notify one of the business systems 204 that a device needs maintenance and may subsequently notify that one of the business systems that the device has failed in response to receipt of an alert or alarm from the asset management system 206 indicating that such a failure has been detected. Preferably, but not necessarily, the state machines 214 may be used to manage the communication of notifications between the event management system 202 and the business systems 204. Importantly, the state machines 214 may be configured to only update or send notifications to the business systems 204 in response to changes in status, as opposed to sending multiple or redundant notifications in response to receiving multiple identical alerts or alarms from the asset management system 206, which may occur in situations where the event management system 202 is polling the asset management system 206 for alert or alarm information.
In general, the business systems 204 may include enterprise asset management systems, abnormal situation management systems, or any other system that may be used in connection with the operation of a process control plant. One particularly useful type of enterprise asset management system is a computerized maintenance system (CMMS), which may be used to coordinate the activities of process control plant maintenance personnel. In the case where the event management system 202 sends notifications to a CMMS, the notifications may provide alert or alarm information, textual information that includes suggestions or instructions for responding to the alert or alarm that initiated the notification, commands or other instructions that cause the CMMS to respond in a desired manner, etc. To facilitate the work performed by maintenance personnel, the CMMS may display, print or otherwise convey work order information, preventative maintenance information or any other maintenance information to the maintenance personnel so that the highest priority work orders may be performed first.
The business systems 204 may also be adapted to send confirmation information to the event management system 202. Generally speaking, these confirmations include information indicative of the actions that have been taken place in connection with a user's or operator's use of or interaction with the business systems 204. These confirmations may be used by the event management system 202 to clear events and/or update the state machines 214 within the event management system 202. The event management system 202 may also send confirmation information to the asset management system 206 for storage within the database 208. For example, in the case of a CMMS, the CMMS may send confirmations to the database 208 via the event management system 202 in response to the generation of work orders, in response to a preventative maintenance request, in response to the assignment of personnel to a particular problem or work order, when the work associated with a work order or preventative maintenance request has been completed, when a work order or preventative maintenance request is closed, etc. In this manner, the confirmation information stored in the database 208 may be used to provide a complete record and documentation of the work performed on the devices monitored by the asset management system 206. Of course, the confirmations sent by other types of business systems (i.e., that are not CMMSs) are consistent with the nature of the business system.
Thus, in contrast to known computerized maintenance management systems, the event management system 202 described herein may, for example, be used to automate the scheduling of maintenance activities within a process control plant in a manner that is predictive of actual device performance and in a manner that is based on actual device status or conditions, as opposed to merely performing repairs or replacements in a purely reactive manner and/or performing preventative maintenance activities based solely on a predetermined schedule. In particular, the event management system 202 described herein, when used with a CMMS, enables maintenance personnel to perform preventative maintenance on devices based on actual device conditions or status, thereby minimizing or eliminating unexpected device failures and/or unscheduled plant stoppages. For example, one or more field devices may be used to monitor impulse lines for plugging and may send alerts or alarms indicating an advisable action or that maintenance of the lines is needed to avert a failure condition. In the case of a smart valve, linear actuator or other similar device, the device may send an alert or alarm based on the total number of strokes and rated life of the device that indicates the valve, actuator or other device should be serviced soon. In the case of rotating equipment such as, for example, a motor, one or more smart field devices may be used monitor vibration of the motor shaft or other portions of the motor and may send alerts or alarms indicating that the characteristics of the vibration indicate that bearings and/or other components of the motor are worn and should be replaced before a failure occurs.
As with the alarm processing software described above, the event management system 202 described herein may be implemented using any desired combination of hardware and software. Such hardware may include programmable controllers, microprocessors, application specific integrated circuits or any other digital circuitry, and analog circuitry. Software implementations may use any combination of high-level and lower level programming languages and such software may be stored on any computer readable memory, including solid state, magnetic and optical media. Additionally, the event management system 202, the business system 204 and the asset management system 208 may communicate with each other via any desired communication network, including, for example, the Internet.
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.
This application is a continuation-in-part of U.S. patent application Ser. No. 09/896,967 entitled “Enhanced Hart Device Alerts in a Process Control System,” filed on Jun. 29, 2001, now U.S. Pat. No. 6,975,219, which is a continuation-in-part of U.S. patent application Ser. No. 09/861,790, entitled “Enhanced Fieldbus Device Alerts in a Process Control System,” filed on May 21, 2001, now U.S. Pat. No. 7,562,135, which claims the benefit of the filing date of U.S. Provisional Patent Application No. 60/273,164, entitled “Asset Utilization Expert in a Process Control Plant,” filed on Mar. 1, 2001.
Number | Name | Date | Kind |
---|---|---|---|
3096434 | King | Jul 1963 | A |
3404264 | Kugler | Oct 1968 | A |
3701280 | Stroman | Oct 1972 | A |
3705516 | Reis | Dec 1972 | A |
3981836 | Pangle, Jr. et al. | Sep 1976 | A |
RE29383 | Gallatin et al. | Sep 1977 | E |
4058275 | Banks et al. | Nov 1977 | A |
4099413 | Ohte et al. | Jul 1978 | A |
4322976 | Sisson et al. | Apr 1982 | A |
4337516 | Murphy et al. | Jun 1982 | A |
4408285 | Sisson et al. | Oct 1983 | A |
4425798 | Nagai et al. | Jan 1984 | A |
4435770 | Shiohata et al. | Mar 1984 | A |
4493042 | Shima et al. | Jan 1985 | A |
4517468 | Kemper et al. | May 1985 | A |
4527271 | Hallee et al. | Jul 1985 | A |
4530234 | Cullick et al. | Jul 1985 | A |
4607325 | Horn | Aug 1986 | A |
4635214 | Kasai et al. | Jan 1987 | A |
4642782 | Kemper et al. | Feb 1987 | A |
4644478 | Stephens et al. | Feb 1987 | A |
4644749 | Somes | Feb 1987 | A |
4649515 | Thompson et al. | Mar 1987 | A |
4657179 | Aggers et al. | Apr 1987 | A |
4683542 | Taniguti | Jul 1987 | A |
4707796 | Calabro et al. | Nov 1987 | A |
4734873 | Malloy et al. | Mar 1988 | A |
4758964 | Bittner et al. | Jul 1988 | A |
4763243 | Barlow et al. | Aug 1988 | A |
4764862 | Barlow et al. | Aug 1988 | A |
4777585 | Kokawa et al. | Oct 1988 | A |
4819233 | Delucia et al. | Apr 1989 | A |
4831564 | Suga | May 1989 | A |
4843557 | Ina et al. | Jun 1989 | A |
4873655 | Kondraska | Oct 1989 | A |
4885694 | Pray et al. | Dec 1989 | A |
4885707 | Nichol et al. | Dec 1989 | A |
4907167 | Skeirik | Mar 1990 | A |
4910691 | Skeirik | Mar 1990 | A |
4922412 | Lane et al. | May 1990 | A |
4924418 | Backman et al. | May 1990 | A |
4934196 | Romano | Jun 1990 | A |
4942514 | Miyagaki et al. | Jul 1990 | A |
4944035 | Aagardl et al. | Jul 1990 | A |
4956793 | Bonne et al. | Sep 1990 | A |
4964125 | Kim | Oct 1990 | A |
4965742 | Skeirik | Oct 1990 | A |
4980844 | Demjanenko et al. | Dec 1990 | A |
4992965 | Holter et al. | Feb 1991 | A |
5005142 | Lipchak et al. | Apr 1991 | A |
5006992 | Skeirik | Apr 1991 | A |
5008810 | Kessel et al. | Apr 1991 | A |
5015934 | Holley et al. | May 1991 | A |
5018215 | Nasr et al. | May 1991 | A |
5043862 | Takahashi et al. | Aug 1991 | A |
5043863 | Bristol et al. | Aug 1991 | A |
5050095 | Samad | Sep 1991 | A |
5053815 | Wendell | Oct 1991 | A |
5070458 | Gilmore et al. | Dec 1991 | A |
5081598 | Bellows et al. | Jan 1992 | A |
5089978 | Lipner et al. | Feb 1992 | A |
5089984 | Struger et al. | Feb 1992 | A |
5094107 | Schoch | Mar 1992 | A |
5098197 | Shepard et al. | Mar 1992 | A |
5099436 | McCown et al. | Mar 1992 | A |
5103409 | Shimizu et al. | Apr 1992 | A |
5111531 | Grayson et al. | May 1992 | A |
5121467 | Skeirik | Jun 1992 | A |
5122976 | Bellows et al. | Jun 1992 | A |
5130936 | Sheppard et al. | Jul 1992 | A |
5134574 | Beaverstock et al. | Jul 1992 | A |
5140530 | Guha et al. | Aug 1992 | A |
5142612 | Skeirik | Aug 1992 | A |
5148378 | Shibayama et al. | Sep 1992 | A |
5161013 | Rylander et al. | Nov 1992 | A |
5167009 | Skeirik | Nov 1992 | A |
5175678 | Frerichs et al. | Dec 1992 | A |
5187674 | Bonne | Feb 1993 | A |
5193143 | Kaemmerer et al. | Mar 1993 | A |
5197114 | Skeirik | Mar 1993 | A |
5197328 | Fitzgerald | Mar 1993 | A |
5200028 | Tatsumi | Apr 1993 | A |
5200958 | Hamilton et al. | Apr 1993 | A |
5210704 | Husseiny | May 1993 | A |
5212765 | Skeirik | May 1993 | A |
5214582 | Gray | May 1993 | A |
5224203 | Skeirik | Jun 1993 | A |
5228780 | Shepard et al. | Jul 1993 | A |
5235527 | Ogawa et al. | Aug 1993 | A |
5251151 | Demjanenko et al. | Oct 1993 | A |
5265031 | Malczewski | Nov 1993 | A |
5265222 | Nishiya et al. | Nov 1993 | A |
5274572 | O'Neill et al. | Dec 1993 | A |
5282131 | Rudd et al. | Jan 1994 | A |
5282261 | Skeirik | Jan 1994 | A |
5291190 | Scarola et al. | Mar 1994 | A |
5293585 | Morita | Mar 1994 | A |
5301101 | MacArthur et al. | Apr 1994 | A |
5303181 | Stockton | Apr 1994 | A |
5305230 | Matsumoto et al. | Apr 1994 | A |
5311421 | Nomura et al. | May 1994 | A |
5311447 | Bonne | May 1994 | A |
5311562 | Palusamy et al. | May 1994 | A |
5315521 | Hanson et al. | May 1994 | A |
5317520 | Castle | May 1994 | A |
5325522 | Vaughn | Jun 1994 | A |
5327357 | Feinstein et al. | Jul 1994 | A |
5329443 | Bonaquist et al. | Jul 1994 | A |
5333240 | Matsumoto et al. | Jul 1994 | A |
5333298 | Bland et al. | Jul 1994 | A |
5347449 | Meyer et al. | Sep 1994 | A |
5349541 | Alexandro, Jr. et al. | Sep 1994 | A |
5351184 | Lu et al. | Sep 1994 | A |
5353207 | Keeler et al. | Oct 1994 | A |
5353315 | Scarola et al. | Oct 1994 | A |
5361612 | Voiculescu et al. | Nov 1994 | A |
5369599 | Sadjadi et al. | Nov 1994 | A |
5373452 | Guha | Dec 1994 | A |
5384698 | Jelinek | Jan 1995 | A |
5384699 | Levy et al. | Jan 1995 | A |
5386373 | Keeler et al. | Jan 1995 | A |
5390287 | Obata | Feb 1995 | A |
5390326 | Shah | Feb 1995 | A |
5394341 | Kepner | Feb 1995 | A |
5394543 | Hill et al. | Feb 1995 | A |
5396415 | Konar et al. | Mar 1995 | A |
5398303 | Tanaka | Mar 1995 | A |
5400246 | Wilson et al. | Mar 1995 | A |
5404064 | Mermelstein et al. | Apr 1995 | A |
5408406 | Mathur et al. | Apr 1995 | A |
5408586 | Skeirik | Apr 1995 | A |
5414645 | Hirano | May 1995 | A |
5419197 | Ogi et al. | May 1995 | A |
5430642 | Nakajima et al. | Jul 1995 | A |
5440478 | Fisher et al. | Aug 1995 | A |
5442544 | Jelinek | Aug 1995 | A |
5461570 | Wang et al. | Oct 1995 | A |
5467355 | Umeda et al. | Nov 1995 | A |
5469735 | Watanabe | Nov 1995 | A |
5483387 | Bauhahn et al. | Jan 1996 | A |
5485753 | Burns et al. | Jan 1996 | A |
5486920 | Killpatrick et al. | Jan 1996 | A |
5486996 | Samad et al. | Jan 1996 | A |
5488697 | Kaemmerer et al. | Jan 1996 | A |
5489831 | Harris | Feb 1996 | A |
5499188 | Kline, Jr. et al. | Mar 1996 | A |
5500941 | Gil | Mar 1996 | A |
5511004 | Dubost et al. | Apr 1996 | A |
5511442 | Tame | Apr 1996 | A |
5521814 | Teran et al. | May 1996 | A |
5528510 | Kraft | Jun 1996 | A |
5533413 | Kobayashi et al. | Jul 1996 | A |
5537310 | Tanake et al. | Jul 1996 | A |
5541833 | Bristol et al. | Jul 1996 | A |
5546301 | Agrawal et al. | Aug 1996 | A |
5548528 | Keeler et al. | Aug 1996 | A |
5559690 | Keeler et al. | Sep 1996 | A |
5561599 | Lu | Oct 1996 | A |
5566065 | Hansen et al. | Oct 1996 | A |
5570282 | Hansen et al. | Oct 1996 | A |
5570300 | Henry et al. | Oct 1996 | A |
5572420 | Lu | Nov 1996 | A |
5574638 | Lu | Nov 1996 | A |
5586066 | White et al. | Dec 1996 | A |
5596704 | Geddes et al. | Jan 1997 | A |
5598521 | Kilgore et al. | Jan 1997 | A |
5600148 | Cole et al. | Feb 1997 | A |
5602757 | Haseley et al. | Feb 1997 | A |
5602761 | Spoerre et al. | Feb 1997 | A |
5604914 | Kabe | Feb 1997 | A |
5610339 | Haseley et al. | Mar 1997 | A |
5623598 | Voigt et al. | Apr 1997 | A |
5625574 | Griffiths et al. | Apr 1997 | A |
5628994 | Kaper et al. | May 1997 | A |
5631825 | van Wheele et al. | May 1997 | A |
5640491 | Bhat et al. | Jun 1997 | A |
5640493 | Skeirik | Jun 1997 | A |
5646350 | Robinson et al. | Jul 1997 | A |
5666297 | Britt et al. | Sep 1997 | A |
5671335 | Davis | Sep 1997 | A |
5671351 | Wild et al. | Sep 1997 | A |
5675504 | Serodes et al. | Oct 1997 | A |
5680409 | Qin et al. | Oct 1997 | A |
5682309 | Bartusiak et al. | Oct 1997 | A |
5687090 | Chen et al. | Nov 1997 | A |
5691895 | Kurtzberg et al. | Nov 1997 | A |
5692158 | Degeneff et al. | Nov 1997 | A |
5698788 | Mol et al. | Dec 1997 | A |
5704011 | Hansen et al. | Dec 1997 | A |
5715158 | Chen | Feb 1998 | A |
5729661 | Keeler et al. | Mar 1998 | A |
5740324 | Mathur et al. | Apr 1998 | A |
5742513 | Bouhenguel et al. | Apr 1998 | A |
5754451 | Williams | May 1998 | A |
5757371 | Oran et al. | May 1998 | A |
5761518 | Boehling et al. | Jun 1998 | A |
5764891 | Warrior | Jun 1998 | A |
5768119 | Havekost et al. | Jun 1998 | A |
5777872 | He | Jul 1998 | A |
5781432 | Keeler et al. | Jul 1998 | A |
5781878 | Mizuguchi et al. | Jul 1998 | A |
5790898 | Kishima et al. | Aug 1998 | A |
5796602 | Wellan et al. | Aug 1998 | A |
5796606 | Spring | Aug 1998 | A |
5796609 | Tao et al. | Aug 1998 | A |
5798939 | Ochoa et al. | Aug 1998 | A |
5805442 | Crater et al. | Sep 1998 | A |
5809490 | Guiver et al. | Sep 1998 | A |
5819050 | Boehling et al. | Oct 1998 | A |
5819232 | Shipman | Oct 1998 | A |
5825645 | Konar et al. | Oct 1998 | A |
5826249 | Skeirik | Oct 1998 | A |
5838561 | Owen | Nov 1998 | A |
5842189 | Keeler et al. | Nov 1998 | A |
5847952 | Samad | Dec 1998 | A |
5848365 | Coverdill | Dec 1998 | A |
5855791 | Hays | Jan 1999 | A |
5859773 | Keeler et al. | Jan 1999 | A |
5859885 | Rusnica et al. | Jan 1999 | A |
5859964 | Wang et al. | Jan 1999 | A |
5875420 | Piety et al. | Feb 1999 | A |
5877954 | Klimasauskas et al. | Mar 1999 | A |
5880716 | Kunugi | Mar 1999 | A |
5892679 | He | Apr 1999 | A |
5892939 | Call et al. | Apr 1999 | A |
5898869 | Anderson | Apr 1999 | A |
5901058 | Steinman et al. | May 1999 | A |
5905989 | Biggs | May 1999 | A |
5907701 | Hanson | May 1999 | A |
5909370 | Lynch | Jun 1999 | A |
5909541 | Sampson et al. | Jun 1999 | A |
5909586 | Anderson | Jun 1999 | A |
5917840 | Cheney et al. | Jun 1999 | A |
5918233 | La Chance et al. | Jun 1999 | A |
5922963 | Piety et al. | Jul 1999 | A |
5924086 | Mathur et al. | Jul 1999 | A |
5940290 | Dixon | Aug 1999 | A |
5948101 | David et al. | Sep 1999 | A |
5949417 | Calder | Sep 1999 | A |
5951654 | Avsan et al. | Sep 1999 | A |
5960214 | Sharpe, Jr. et al. | Sep 1999 | A |
5960441 | Bland et al. | Sep 1999 | A |
5975737 | Crater et al. | Nov 1999 | A |
5984502 | Calder | Nov 1999 | A |
5988847 | McLaughlin et al. | Nov 1999 | A |
5995916 | Nixon | Nov 1999 | A |
5997167 | Crater et al. | Dec 1999 | A |
6006171 | Vines et al. | Dec 1999 | A |
6008985 | Lake et al. | Dec 1999 | A |
6014612 | Larson et al. | Jan 2000 | A |
6017143 | Eryurek et al. | Jan 2000 | A |
6026352 | Burns et al. | Feb 2000 | A |
6033257 | Lake et al. | Mar 2000 | A |
6035339 | Agraharam et al. | Mar 2000 | A |
6038486 | Saitoh | Mar 2000 | A |
6041263 | Boston et al. | Mar 2000 | A |
6047221 | Piche et al. | Apr 2000 | A |
6055483 | Lu | Apr 2000 | A |
6061603 | Papadopoulos et al. | May 2000 | A |
6067505 | Bonoyer et al. | May 2000 | A |
6076124 | Korowitz et al. | Jun 2000 | A |
6078843 | Shavit | Jun 2000 | A |
6093211 | Hamielec et al. | Jul 2000 | A |
6106785 | Havlena et al. | Aug 2000 | A |
6108616 | Borchers et al. | Aug 2000 | A |
6110214 | Klimasaukas | Aug 2000 | A |
6122555 | Lu | Sep 2000 | A |
6128279 | O'Neil et al. | Oct 2000 | A |
6134574 | Oberman et al. | Oct 2000 | A |
6144952 | Keeler et al. | Nov 2000 | A |
6169980 | Keeler et al. | Jan 2001 | B1 |
6185470 | Pado et al. | Feb 2001 | B1 |
6197480 | Iguchi et al. | Mar 2001 | B1 |
6246972 | Klimasauskas | Jun 2001 | B1 |
6259959 | Martin | Jul 2001 | B1 |
6266726 | Nixon et al. | Jul 2001 | B1 |
6298377 | Hartikainen et al. | Oct 2001 | B1 |
6298454 | Schleiss et al. | Oct 2001 | B1 |
6317638 | Screder et al. | Nov 2001 | B1 |
6317701 | Pyötsiä et al. | Nov 2001 | B1 |
6332110 | Wolfe | Dec 2001 | B1 |
6389331 | Jensen et al. | May 2002 | B1 |
6397114 | Eryurek et al. | May 2002 | B1 |
6400681 | Bertin et al. | Jun 2002 | B1 |
6418465 | Hirosawa et al. | Jul 2002 | B1 |
6421571 | Spriggs et al. | Jul 2002 | B1 |
6437692 | Petite et al. | Aug 2002 | B1 |
6445963 | Blevins et al. | Sep 2002 | B1 |
6507797 | Kliman et al. | Jan 2003 | B1 |
6529780 | Soergel et al. | Mar 2003 | B1 |
6535769 | Konar | Mar 2003 | B1 |
6549130 | Joao | Apr 2003 | B1 |
6567718 | Campbell et al. | May 2003 | B1 |
6571273 | Shirai et al. | May 2003 | B1 |
6591260 | Schwarzhoff et al. | Jul 2003 | B1 |
6609040 | Brunnemann | Aug 2003 | B1 |
6628994 | Turicchi | Sep 2003 | B1 |
6633782 | Schleiss et al. | Oct 2003 | B1 |
6651012 | Bechhoefer | Nov 2003 | B1 |
6654697 | Eryurek et al. | Nov 2003 | B1 |
6690274 | Bristol | Feb 2004 | B1 |
6704689 | Hogan et al. | Mar 2004 | B1 |
6717513 | Shprecher et al. | Apr 2004 | B1 |
6721609 | Wojsznis et al. | Apr 2004 | B1 |
6732191 | Baker et al. | May 2004 | B1 |
6738388 | Stevenson et al. | May 2004 | B1 |
6758168 | Hoskinen et al. | Jul 2004 | B2 |
6760782 | Swales | Jul 2004 | B1 |
6774786 | Havekost et al. | Aug 2004 | B1 |
20020022894 | Eryurek et al. | Feb 2002 | A1 |
20020029130 | Eryurek et al. | Mar 2002 | A1 |
20020067370 | Forney et al. | Jun 2002 | A1 |
20020077711 | Nixon et al. | Jun 2002 | A1 |
20020147511 | Eryurek et al. | Oct 2002 | A1 |
20020161940 | Eryurek et al. | Oct 2002 | A1 |
20020163427 | Eryurek et al. | Nov 2002 | A1 |
20030002969 | Risser | Jan 2003 | A1 |
20030009572 | Thurner | Jan 2003 | A1 |
20030014500 | Schleiss et al. | Jan 2003 | A1 |
20030028268 | Eryurek et al. | Feb 2003 | A1 |
20030195934 | Peterson et al. | Oct 2003 | A1 |
20040075689 | Schleiss et al. | Apr 2004 | A1 |
20040181364 | Reeves et al. | Sep 2004 | A1 |
20040249583 | Eryurek et al. | Dec 2004 | A1 |
20050007249 | Eryurek et al. | Jan 2005 | A1 |
20050240289 | Hoyte et al. | Oct 2005 | A1 |
Number | Date | Country |
---|---|---|
1007757 | Apr 1990 | CN |
1097804 | Jan 1995 | CN |
1267373 | Sep 2000 | CN |
35 40204 | Sep 1986 | DE |
40 08 560 | Sep 1990 | DE |
44 33 593 | Jun 1995 | DE |
195 02 499 | Aug 1996 | DE |
0 122 622 | Oct 1984 | EP |
0 377 736 | Jul 1990 | EP |
0 413 814 | Feb 1991 | EP |
0 487 419 | May 1992 | EP |
0 594 227 | Apr 1994 | EP |
0 612 039 | Aug 1994 | EP |
0 644 470 | Mar 1995 | EP |
0 723 4988 | May 1995 | EP |
0 362 386 | Jun 1995 | EP |
0 626 697 | Jul 1997 | EP |
0 827 096 | Mar 1998 | EP |
0 624 847 | Aug 1999 | EP |
0 959 398 | Nov 1999 | EP |
0 964 325 | Dec 1999 | EP |
0 965 897 | Dec 1999 | EP |
0 961 184 | Dec 2003 | EP |
2 294 129 | Apr 1996 | GB |
2 294 793 | May 1996 | GB |
2 347 234 | Aug 2000 | GB |
2 380 833 | Apr 2003 | GB |
0 624 2192 | Feb 1994 | JP |
WO 9838585 | Sep 1998 | WO |
WO 9913418 | Mar 1999 | WO |
WO 0050851 | Aug 2000 | WO |
WO 0223405 | Mar 2002 | WO |
WO 02095633 | Nov 2002 | WO |
WO 03075206 | Sep 2003 | WO |
Number | Date | Country | |
---|---|---|---|
20020163427 A1 | Nov 2002 | US |
Number | Date | Country | |
---|---|---|---|
60273164 | Mar 2001 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 09896967 | Jun 2001 | US |
Child | 10104586 | US | |
Parent | 09861790 | May 2001 | US |
Child | 09896967 | US |