Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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:

Table of Contents
maxLevel3


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

Groups

Areas

Global Settings

Alarms Monitor

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.

The Alarms Items properties provide detailed configuration settings for individual alarms. This includes the unique identifier, condition specifications, value thresholds, associations to groups or hierarchies, and auxiliary data. Metadata such as creation and modification dates are also included to track changes over time. Messages and comments can be embedded to deliver relevant information during an alarm event.

Alarm Items Properties

ID

Unique identifier for the alarm item.

VersionID

Version identifier associated with the alarm item.

TagName

Name of the tag being monitored for alarm events.

Condition

Condition that triggers the alarm.

Limit

Predefined threshold for the alarm.

Limit1

Secondary threshold value.

Limit2

Tertiary threshold value.

Disable

Option to enable/disable the alarm.

Deadband

Range in which changes are ignored.

Setpoint

Desired target value.

SetpointDeadband

Range around setpoint where changes are ignored.

Group

Group to which the alarm item belongs.

Area

Area designation for alarm management.

Priority

Priority level of the alarm.

AuxValue

Auxiliary value associated with the alarm.

AuxValue2

Secondary auxiliary value.

AuxValue3

Tertiary auxiliary value.

TemplateID

Template identifier linked with the alarm.

LockState

Current lock status of the alarm item.

LockOwner

User or system that locked the item.

DateModified

Date the alarm item was last modified.

DateCreated

Date the alarm item was created.

XRefInfo

Cross-reference information for the alarm.

Comment

Comments or notes related to the alarm item.

Message

Alarm message displayed upon triggering. It enables that a message to appear to the user when an alarm is triggered.



Groups

As each alarm item must belong to a group, the settings pertaining to the set of alarm items are made here and applied to all items belonging to the same group.

There are three available groups by default, but the user can create as many as necessary.

A Group defines several general characteristics of the alarm, such as:

  • Whether user acknowledgment is required.

  • Whether it will have sound.

  • Minimum time for the condition to trigger the alarm.

  • Type of notification.

The Alarms Groups properties allow users to define and manage collective behaviors of alarm items bundled into specific groups. Each group can have unique characteristics, such as whether acknowledgments are required, how they're visually or audibly represented, and the notification methods employed. The properties also facilitate categorization and provide metadata to track group modifications.

Alarms Groups Properties

Name

Name of the alarm group.

AckRequired

Acknowledgment necessity status. If an alarm goes off, it remains active until acknowledged by the user, even if operating conditions return to normal.

ActiveTimeDeadband

Duration within which active alarms are ignored.

AckTimeout

Timeout period for acknowledgment.

AutoAckTime

Automatic acknowledgment time setting.

Sound

Sound alert linked to the group. When running a Rich Client, if the application has an alarm window and an alarm goes off, this client will play the configured sound until the alarm is acknowledged.

Show

Display status of alarms from this group.

LogEvents

Logging status for group events.

Colors

Color codes associated with alarms in the group.

NotificationMethod

Method used for sending notifications.

For 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

Category

Category designation for the group.

LockState

Current lock status of the group.

LockOwner

User or system that locked the group.

DateModified

Date the group was last modified.

DateCreated

Date the group was created.

XRefInfo

Cross-reference information for the group.

Description

Detailed description of the alarm group.



Areas

Areas provide a means of managing alarm items collectively. Unlike the previously discussed groups, the concept here is to perform actions such as acknowledging all alarms within an area simultaneously, disabling alarms within the same area, and other runtime actions.

The list of actions that can be taken for an area can be found within the area's properties, which include:

Alarms Areas basic actions

Reload the Tree

Refresh the hierarchical view.

New Asset Folder

Add a new organizational folder.

Rename the element

Modify the name of a selected hierarchical element.

Delete element

Remove a selected hierarchical element.


The Alarms Areas properties focus on the organizational aspects of alarms, providing tools to manage the hierarchical arrangement of alarms and their visual representation. These properties enable users to refresh the structure view, add new folders to the hierarchy, rename existing elements, or remove them altogether, ensuring a streamlined approach to alarm organization.


Global Settings

The Global Settings properties encompass broad configurations for alarm management. This includes database settings for logging alarm events, determining behaviors upon system startup, and specific alarm handling parameters. Additionally, these properties offer robust audit trail capabilities, ensuring comprehensive tracking of various system events, user activities, and operational adjustments.

In this section, we can perform various generic configurations for the Alarm module, such as selecting the database type and its lifespan, enabling or disabling advanced options, and making certain customizations to the AuditTrail.

Previously called as AlarmHistorian, 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 gear icon.

The Alarm Logging Database manages where and how alarms are logged. Users can choose the database type (the default is SQL Lite) define connection parameters, and configure the life span of stored alarm logs.

Alarm Logging Database

Database

Database type used, default is SQL Lite. Adjust settings by clicking the gear icon.

Connection

Connection string for database connection.

Life Time

Duration data remains in the database (in days).


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.

Alarm Handling

Initial disable time on Startup

Initial period alarms are disabled upon startup.

Ignore Alarms During TimeDeadband

Option to ignore Alarms during TimeDeadband

Enable Limits by Shift

Toggle to set limits based on work shifts.

Log User Full Name

Option to log the complete name of the user.


The Audit Trail setting allows users to enable or disable system auditing. When active, users can select which actions, such as user logons, system warnings, or tag changes, are recorded, ensuring transparency and traceability. See Audit Trail for more information.

Audit Trail

Enable Audit Trail

Activates system auditing, tracking user actions like logins, tag changes, and report saving.

User Logon/Logoff

Track user sign-in and sign-out actions.

Open/Close Displays

Monitor the opening and closing of display windows.

Operator Actions

Track actions performed by operators.

Remote Connections

Log remote system connections.

Modify Datasets

Monitor modifications to datasets.

Load Datasets

Track dataset loading actions.

Save Reports

Log report saving actions.

Custom Messages

Track custom message events.

System Warnings

Monitor system warning messages.

Tag Changes

Log changes made to tags.



Alarms Monitor

The Alarms Monitor member properties are showed when the solution is in runtime.

Displays real-time alarm status. It showcases total, unacknowledged, and active alarms, along with their priority and the most recent alarm notification.

Alarms Monitor Properties

ID

Unique identifier for the monitored alarm.

NameSpace

Namespace associated with the monitored alarm.

Name

Name of the monitored alarm.

TotalCount

Overall count of the alarms in the monitor.

UnAckCount

Count of unacknowledged alarms in the monitor.

ActiveUnAckCount

Count of active but unacknowledged alarms in the monitor.

Priorityltem

Priority level of the monitored alarm.

LastAlarmItemNotified

Most recent alarm item that triggered a notification.




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.

    Info

    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.

Warning

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

Table of Contents
maxLevel4
minLevel3
include#

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:

Page Tree
root@self
spacesV10