You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 138 Next »

Introduction to Alarms module

The Alarms module is a powerful tool designed to monitor and manage alarm events within your solutions, providing alerts for critical events, and storing data for future analysis.

On this page:


Purpose and Key Concepts

The Alarms module is designed to provide real-time monitoring and notification of events or conditions that require immediate attention. This is done by evaluating tags values in real-time to generate alarms when the monitored value reaches a defined limit or condition. The module evaluates the conditions of AlarmItems and compares their current value with the set limit to determine whether an alarm should be triggered or not. The module can evaluate conditions such as exceeding a limit, falling below a limit, or entering/exiting a range.

The configuration of the Alarms module is performed on the sections: AlarmGroup, AlarmArea, AlarmItem, and AuditTrail.

AlarmGroup

An AlarmGroup is a collection of AlarmItems that share common properties and characteristics. Each AlarmGroup can have its own configuration properties, such as AckRequired, AutoAckTime, and Sound, that apply to all of its AlarmItems. The configuration of AlarmGroup is on the Solution Explorer, at Alarms → AlarmGroup.

AlarmArea

An AlarmArea is a hierarchical grouping of AlarmGroup that allows for a more organized and structured approach to managing alarms. An AlarmArea can have child AlarmArea, allowing for a hierarchical structure of AlarmGroup and AlarmItems. The configuration of AlarmArea is on the Solution Explorer, at Alarms → Area.

AlarmItem

An AlarmItem is a tag or expression that is monitored by the Alarms module. It contains information such as the tag name, the alarm condition (what triggers the alarm), and the associated AlarmGroup. Each AlarmItem can have its own configuration properties, such as Limit, Deadband, and Message, that define the alarm behavior and characteristics. The configuration of AlarmItems is on the Solution Explorer, at Alarms → Items.

AuditTrail

The AuditTrail is a feature of the Alarms module that logs all changes made to the AlarmGroup and AlarmItems, including creation, modification, and deletion events. It is a way to track and record the history of changes made to the alarm configuration, providing a clear audit trail of who made what changes and when. The configuration of the AuditTrail is on the Solution Explorer, at Alarms → Global Settings → AuditTrail.


Alarms configuration

The alarm configuration environment is divided into five categories, located in the left-hand side menu tree.

Items 

An Item is essentially an alarm. It needs to be bonded to a numerical tag to monitor the variation range.

When opening the Alarm environment, the Items tab will load - by default only some of the columns will appear, with the basic Item configuration. By right-clicking on the header table you can see and check the other available columns.

TagName

The tag used on alarm can be internal to the software or from an ExternalTag.

The tags created on environment Unified Namespace\Tags are known as internal tags, and can be used in the Alarms Modules by filling the field TagName - as you write, the platform will suggested the tag name from the available tags.

Condition

The list of possible conditions is quite extensive, but for a basic understanding, we've selected the the most common ones in the following table:

Alarm Condition Basic Options

Field

Description

Hi

Tag >= limit

Lo

Tag <= limit

Equal

Tag = limit

Changed

Tag value changed.

NotEqual

Tag different from limit

Limit

There are available limits to configure, Limit, Limit1 and Limit2. This value refers to the condition chosen in the previous item. initially we recommend using only the Limit property, Limit1 and Limit2 are for advanced users.

Message

It's possible to choose a message to appear to the user when an alarm is triggered. This message can be customized in the Message column, also It will also be sent to a Script Class by an argument in a NotificationMethod and can be sent via email.

Groups 

There are three available groups by default, but the user can create as many as necessary. You'll find detailed information on how to create new groups at the end of this page.

Each AlarmItem must be necessarily associated with a group, as they define several general characteristics of the alarm, such as:

  1. Whether user acknowledgment is required.
  2. Whether it will have sound.
  3. Minimum time for the condition to trigger the alarm.
  4. Type of notification.

These are some of the basic characteristics of a Group, and the names of the respective columns and descriptions are provided in the following table.

Column NameDescription
AcKRequiredIf an alarm goes off, it remains active until acknowledged by the user, even if operating conditions return to normal.
SoundWhen running a rich client, if there is an Alarm Window, this client will start playing a configured sound while the alarm remains unacknowledged.
ActiveTimeDeadBandIt is possible to configure a minimum time that the sensor remains out of range for triggering the alarm.
NotificationMethodFor custom applications, there is a way to call a Class method from the Script module to perform any automatic process like sending emails, SMS or anything that can be programmable.

Areas

By default, if any created area, but to better understand the concept, here is an abstract scenario were using this concept. 

If the solution will used into a physical structure that have different work areas like for example two sheds, called "Shed A" and "Shed B" and each shed have two and three sides respectively, it`s possible to configure the areas like on the following image:


Global Settings

In this display there is some options to customize the solution, these options will be addressed one by one.


Alarm Logging Database

Previously called as AlarmHstorian, these options allow to select the Database where the data will be logged, as well as lifetime to the data log.

To setup the Database, left click on the engine icon.


Alarm Handling

In a manufacturing environment, it is frequently imperative to establish alarm configurations that initiate monitoring only once the system is fully operational. This is particularly relevant for machines that require a certain amount of time to power up and attain operational parameters, as is the case with furnaces and motors. These machines might take minutes to achieve the desired speed or temperature within the process. In such a scenario, the operational deployment of the Alarm Module could potentially result in the inadvertent triggering of multiple alarms.

To align with this context, certain adjustments become essential to prevent such undesired occurrences.

IndexDescription

1

During the module initialization, it`s possible setup an interval time to wait the monitoring.
2
  • Ver com Roberto
3An AlarmItem can have up to three different thresholds, one for each shift of the day, to use it this option need to be checked.
4
  • Ver com Roberto


Enable Audit Trail 

See Audit Trail for more information.


Understanding the Alarms module

Such as other modules, the alarm module run in a separate process from TServer.exe, it means that the alarm operations occur at the same time that other events in the solution bringing reliability to process monitoring.

When an alarm is triggered, it can be acknowledged by any client logged in with a user with matching access level through the AlarmWindow, this also can be done through other ways like: Tag properties, Alarm Group or Alarm Item's runtime properties.

Features Highlights

The Alarms module offers the following key features:

  • The AlarmHistorian allows the Alarms module to save alarms and their state changes in a separate database (it is different from AuditTrail that only saves when editing the settings).

  • The Alarm Window object used to displaying active alarms and their state changes on displays
  • Real-time alarm processing to quickly identify and respond to critical events
  • Hierarchy organization and management of alarms for greater flexibility and control

  • Universal time and daylight saving considered for accurate timestamps

  • Dynamic language localization of alarm messages for easy understanding

  • High-precision timestamps up to 0.1ms for accurate and reliable data


Monitoring Tags and Evaluating Conditions

The Alarms functionality allows users evaluate if tag values satisfy certain conditions in real-time. With that the FrameworkX can send notifications to users or take actions based on specific conditions.

When monitoring tags, users can set up one or more conditions to evaluate. For example, a user might set up a condition to trigger an alarm if the value of a tag exceeds a certain threshold. Also, it's possible to bind any alarm trigger with a Script Task through the property "Alarm.Item.<AlarmID>.State", chaining an automatic process. 

Conditions can be based on a variety of factors, such as tag values, tag quality, or any object property.


Working with the Alarms module

Once you have set up your AlarmGroup, AlarmArea, and AlarmItem, you can use the Alarms module to monitor your process and respond to any abnormal conditions.

Integration with Other Modules

The Alarms module can be integrated with other modules to enhance its functionality. For example, the Display module can be used to display alarms on a graphical screen, and the Reporting module can be used to generate reports that include alarms and their details. Additionally, the Scripting module can be used to handle alarm notifications, as well as to create custom alarms and modify the runtime behavior of the Alarms module.

Visualizing Alarms on Displays

The Displays module can be used to create displays that visualize alarms in real-time. The alarms can be displayed in tables, custom graphics, objects and others with the ability to sort and filter based on various alarm properties. The displays can also include interactive components, such as acknowledging alarms and displaying alarm details, to allow operators to quickly respond to alarms.

Handling Notifications with Scripts

The Scripting module can be used to create custom scripts that handle alarm notifications. These scripts can define the behavior of the Notification Method property of the AlarmGroup, allowing for more customized notifications based on the type and severity of the alarm. The scripts can also define notification methods beyond the built-in options, such as sending emails or SMS messages. For Email information, go to the Alarm Email Notifications page

AlarmHistorian Database definition on Datasets

The AlarmHistorian database is where the Alarms module stores all alarm events and audit trail information. The AlarmHistorian database can be defined using datasets, which allows for easy configuration and modification of the database properties. The datasets can define the database connection settings, the schema of the database tables, and the properties of the alarm events and audit trail entries.

Advanced Features and Options

The Alarms module also includes several advanced features and options to further customize its functionality. These include the ability to create custom alarm states, the ability to filter alarms based on specific conditions, the ability to configure alarms to only be active during certain time periods, and the ability to define custom properties for alarm events and audit trail entries. These advanced features provide additional flexibility and control over the Alarms module's behavior.


Advanced Configuration

The Alarms module can be customized to meet specific requirements. This section will cover the various configuration options available in the Alarms module.

The following are some of the settings that can be customized:

  • Alarm Notification: This setting allows the user to specify how alarms are notified to users.

  • Sound: This setting allows the user to specify the sound that should be played when an alarm is raised.

    For information on sound configuration, go to the AlarmGroup Sounds page.

  • Display: This setting allows the user to specify the display options for the alarms.

  • Audit-Trail: This setting allows the user to specify whether or not to log alarms and events.

  • Database: This setting allows the user to specify the database where alarm information is stored.

  • Security: This setting allows the user to specify the security settings for the Alarms module.

In addition to the global settings, the Alarms module can be customized further by creating AlarmGroup, AlarmArea, and AlarmItem. These can be used to group and organize alarms based on specific criteria.

The next sections will cover how to create and manage AlarmGroup, AlarmArea, and AlarmItem.

Creating and Managing AlarmGroup

AlarmGroup are a way to group together alarms that share common characteristics, such as the same priority, area, or notification method. In FrameworX, AlarmGroup are created and managed using the "Group" tab.

To create a new Alarm Group, follow these steps:

  1. Open the Alarm in the Designer.

  2. Click on the "AlarmGroup" tab.

  3. Click the "New item..." button.

  4. Give the group a name, description, and choose the desired settings for that group, such as the priority level, notification method, etc.

  5. Click "Ok" to create the new group.

Once an Alarm Group has been created, it can be edited, disabled, or deleted. To edit an existing Alarm Group, follow these steps:

  1. Open the Alarm in the Designer.

  2. Click on the "AlarmGroup" tab.

  3. Select the group you want to edit from the list of groups.

  4. In the selected row, edit the desired properties.
  5. Make the desired changes to the group settings.

  6. Click "Save" to save the changes.

To disable an Alarm Group, follow these steps:

  1. Open the Alarm in the Designer.

  2. Click on the "AlarmGroup" tab.

  3. Select the group you want to disable from the list of groups.

  4. Click the "Disable" button.

  5. Confirm that you want to disable the group.

To delete an Alarm Group, follow these steps:

  1. Open the Alarm in the Designer.

  2. Click on the "AlarmGroup" tab.

  3. Select the group you want to delete from the list of groups.

  4. Click the "Delete Selected Item" button.

  5. Confirm that you want to delete the group.


Note that deleting an Alarm Group will also delete all of the alarms associated with that group.


Alarm Group Configuration Properties

Column/Field

Description

Name

Enter a name for the alarm group. The system allows you to know if the name is not valid.

AckRequired

If required, the alarm stays in the alarm list until someone acknowledges the alarm by double-clicking it in the application.

ActiveTimeDeadband

Enter a time deadband that will create a delay after an alarm occurs. The alarm will trigger again only after the deadband.

AckTimeout

Defines a timeout for acknowledging the alarm. If the alarm is not acknowledged after the specified time, the alarm becomes active again.

AutoAckTime

If the alarm is not acknowledged after the specified time, the system acknowledges the alarm.

Sound

Select the sound that will play when the alarm occurs.

Show

Select the list for the alarm to display in the alarm window in the application.

LogEvents

Select when you want the alarm to be logged to the alarm historian:

  • None - Alarms are not logged.

  • Active - Log when alarm is active.

  • ActiveAck - Log when the alarm is active and acknowledged.

  • ActiveNorm - Log when the alarm returns to normal.

  • All - Log all of the above conditions.|

Colors

Select the colors you want to use for each state:

  • Active - Configured alarm is in the alarm state.

  • Normalized - Configured alarm was in the alarm state, but is no longer in the alarm state and still needs to be acknowledged.

  • Acknowledged - Configured alarm has been acknowledged, but it is still in the alarm state.|

NotificationMethodCalls a Script → Class method that triggers a code when the alarm happens. 
CategorySelect or not the Indicator option
LockStateBultin
LockOwner----------------
DateModifiedDate the group is was Modified.
DateCreatedDate the group is was created.

Description

Enter a description of the alarm group.

Using Pre-Defined Groups

The Alarms module provides pre-defined AlarmGroup that you can use to quickly configure alarms for common applications. These pre-defined groups have pre-configured properties that make it easier to create and configure alarms for specific purposes.

To use a pre-defined Alarm Group, you simply need to select it from the list of available groups and configure any additional properties as needed. The available pre-defined groups may vary depending on the version of the Alarms module that you are using and the features that have been installed.

Some common AlarmGroup that may be available, include:

  1. High Priority Alarms
    This group is used to track critical alarms that require immediate attention. The alarms in this group will typically have a high priority and may be configured to generate notifications or take other actions automatically.

  2. Medium Priority Alarms
    This group is used to track alarms that are important, but not as critical as high priority alarms. The alarms in this group may have a lower priority than those in the high priority group, and may not require immediate attention.

  3. Low Priority Alarms
    This group is used to track alarms that are less critical than medium priority alarms. The alarms in this group may have a lower priority than those in the medium priority group and may not require immediate attention.

  4. Equipment Alarms
    This group is used to track alarms related to specific pieces of equipment or systems. The alarms in this group may be configured to generate notifications or take other actions specific to the equipment being monitored.

  5. Production Alarms
    This group is used to track alarms related to production processes or activities. The alarms in this group may be configured to generate notifications or take other actions related to the production process being monitored.

Using pre-defined AlarmGroup can save time and effort in configuring the Alarms module, as the properties of the alarms in the group are already pre-configured. However, you can still customize these pre-defined groups or create new ones as needed to fit your specific requirements.

Defining and Organizing AlarmArea Hierarchy

The AlarmArea Hierarchy allows you to organize your alarms based on location, equipment, or process hierarchy. This enables you to easily identify and prioritize alarms and alerts based on their importance.

To define and organize alarms areas hierarchy, follow these steps:

  1. In the Alarm Configuration window, select the AlarmArea tab.

  2. Click the 'New Level...' button to create a new Alarm Area.

  3. Enter a unique name and description for the Alarm Area.

  4. Optionally, set the priority for the Alarm Area. The priority determines the order in which the AlarmArea appear in the Alarm Group tree.

  5. Repeat steps 2-4 to add additional AlarmArea.

  6. To create a hierarchy, drag and drop AlarmArea onto each other to create parent-child relationships.

  7. To edit an Alarm Area, select it in the Alarm Group tree and click the Edit button.

  8. To delete an Alarm Area, select it in the Alarm Group tree and click the Delete button.

Organizing your alarms into an AlarmArea Hierarchy can greatly simplify alarm management, allowing you to quickly identify the source of an alarm and take appropriate action. It also allows you to easily customize alarm priorities and notifications based on your specific needs.

Adding and Editing AlarmItem

The AlarmItem is the core object of the Alarms module, which represents a condition that triggers an alarm event when a certain criterion is met. Here we will discuss how to add new AlarmItem or modify the existing ones.

To add a new alarm item, follow these steps:

  1. Open the AlarmItem configuration page by selecting Alarms > AlarmItem in the Solution Browser.

  2. Click the 'New Level...' button at the bottom of the AlarmItem list.

  3. In 'Alarms > Items', enter the required fields, which include Tag Name, Condition, and Alarm Group.

  4. You can also configure optional fields such as Limit, Deadband, Setpoint, Setpoint Deadband, Group, Area, Priority, Message, and Priority Order.

  5. Click OK to save the new Alarm Item.

To modify an existing Alarm Item, follow these steps:

  1. Open the 'Alarms > Items' configuration page by selecting Alarms > AlarmItem in the Solution Browser.

  2. Select the Alarm Item you want to modify from the list.

  3. Modify the fields as required.

  4. Click OK to save the changes.

It is important to note that any changes made to the AlarmItem will take effect immediately, and the new or modified AlarmItem will be evaluated against the tag values in real-time.

Alarm Items Configuration Properties

Column/Field

Description

TagName

Enter a tag name or click "..." to select a tag.

Condition

Select the condition you want to use for this alarm event (see the table below).

Limit

Enter a value for the alarm limit to be used for the condition you selected.

Disable

Check the disable option to disable the item.

Deadband

Sets the deadband value. E.g.: for a Hi alarm item with limit as 100 and deadband as 10, the limit value is now 110; for a Lo alarm item, setting the deadband as 10 means the limit value is 90. 

Setpoint

Set a value or a tag that you want to compare other values to to determine if there is a deviation. 

SetpointDeadband

Set the deadband for the setpoint when compared with the deviation. 

Group

Select the alarm group that should control what happens when this alarm occurs.

AreaOnce created on Alarms → Areas, the areas will be displayed here and will be able to be chosen.

Priority

Enter a priority value that controls where the alarm displays in the list. The higher the number, the higher the priority. You can use the same priority for more than one alarm event. Enter 0 (zero) for alarms to be at the end of the list.

AuxValue

Enter a Tag property.

TemplateID

--------------------

Comment

Comments about the alarm item.

Message

Enter the text that displays in the alarm list.

Alarm Condition Options

Field

Description

Hi

Tag >= limit

HiHi

Tag >= limit (when acknowledged, a Hi alarm is automatically acknowledged for the same Tag)

Lo

Tag <= limit

LoLo

Tag <= limit (when acknowledged, a Lo alarm is automatically acknowledged for the same Tag)

RateOfChange

Tag rate of change >= limit

DeviationMinor

Absolute value (tag - Setpoint) > limit

DeviationMajor

Absolute value (tag - Setpoint) > limit

Equal

Tag = limit

GreaterThan

Tag > limit

GreaterEqual

Tag >= limit

LessThan

Tag < limit

LessEqual

Tag <= limit

Changed

Tag value changed

ChangedUp

Tag value increased

ChangedDown

Tag value decreased

NotEqual

Tag different from limit


Troubleshooting and Best Practices

Common Issues and Solutions

The Alarms module may encounter some issues in its operation. Here are some common issues and their solutions:

#Alarm not firing

Check the tag name, condition, and alarm item configuration. Ensure the tag is valid and the condition is met.

#Alarm not acknowledged

Check the alarm acknowledgement configuration. Ensure that the alarm acknowledges property is set and the acknowledgement timeout is not expired.

#Database connection error

Check the database connection string and ensure that the database is reachable.

#Alarm flooding

Check the alarm configuration and ensure that the deadband settings are properly configured.

#Notification not received

Check the notification configuration and ensure that the notification method is properly set.

Best Practices and Recommendations

To ensure the smooth operation of the Alarms module, follow these best practices:

  • Use clear and descriptive names for AlarmGroup, areas, and items.
  • Configure alarms with proper priority and severity levels.
  • Use deadbands and delays to prevent alarm flooding.
  • Regularly check and maintain the alarm configuration.
  • Configure notifications and acknowledge alarms in a timely manner.

Alarms Runtime Attributes

The T.Modules.Alarm has the properties of the alarm server. The Alarm.Group object has the list of all defined groups and their properties.The Alarm.Item object has all AlarmItem and their properties.The tag properties are connected with the Alarms module.

Example

 Tag.Tagname.Hi.Limit

 Configuration and runtime status of the HI Limit condition for the tag. The naming of all tag properties follow this same method.

See the T.Modules.Alarm Namespace for the complete programming reference!


In this section:


  • No labels