Alarms Module (How-to Guide) walks you through configuring the Alarms module to monitor process conditions and notify operators of abnormal situations.

Prerequisites:

  • Tags created in Unified Namespace
  • Understanding of process limits

In this page:



Alarms → Tutorial | Concept | How-to Guide | Reference





In this section...




Configuration Workflow

ActionDesigner  UI PathPurpose
Configure shared alarm behaviorsAlarms → GroupsConfigure shared alarm behaviors
Create AlarmItemsAlarms → ItemsConfigure tag conditions to monitor
Set System-wide configurationAlarms → Global SettingsSetup Log Database, startup options, Audit Trail
Organize by location/functionAlarms → AreasCreate hierarchical organization
Verify Alarms executionAlarms → MonitorVerify triggering and visualization 




Configure AlarmGroups

AlarmGroups define shared behaviors for related alarms (acknowledgment, sounds, colors, logging).

Using Pre-defined Groups

The platform provides three default groups:

GroupPriorityAck RequiredLoggingUse Case
CriticalHighYesYesUrgent conditions requiring immediate action
WarningMediumNoYesPotential issues needing attention
AuditTrailLowNoYesSystem events for compliance tracking

Creating Custom Groups

  1. Navigate to Alarms → Groups
  2. Click Plus icon
  3. Configure properties:
    • Name: Group identifier
    • AckRequired: Force acknowledgment
    • Sound: Alert sound file
    • LogEvents: Enable historian logging
    • Colors: Visual identification
  4. Click OK

Group Properties

PropertyDescriptionExample
AckRequiredAlarm stays active until acknowledgedTrue for Critical
AckTimeoutAuto-acknowledge time3600 seconds
SoundAudio alert fileCritical.wav
ShowDisplay in alarm viewersTrue
LogEventsRecord to historianTrue
NotificationMethodScript for email/SMSSendEmail

Step 2: Create AlarmItems

AlarmItems monitor specific tag conditions.

Basic Configuration

  1. Go to Alarms → Items
  2. Enter in the table first row:
    • TagName: Tag to monitor
    • Condition: Trigger type
    • Limit: Threshold value
    • Group: Select AlarmGroup
    • Message: Alarm description
  3. Press Enter to save

Example Configurations

TagConditionLimitGroupDescription
Tank.LevelHiHi95CriticalTank overflow
Tank.LevelHi85WarningTank high level
Pump.CurrentGreaterThan50WarningMotor overload
Reactor.TempRateOfChange5CriticalRapid temperature rise

Condition Types

ConditionTriggers WhenUse Case
HiTag ≥ LimitHigh level warning
HiHiTag ≥ Limit (auto-acks Hi)Critical high level
LoTag ≤ LimitLow level warning
LoLoTag ≤ Limit (auto-acks Lo)Critical low level
RateOfChangeChange rate ≥ LimitRapid changes
DeviationMinor|Tag - Setpoint| > LimitProcess deviation
EqualTag = LimitSpecific state
ChangedAny value changeEvent logging

Advanced Properties

  • Deadband: Hysteresis to prevent chattering
  • Setpoint: Reference for deviation alarms
  • Priority: Display sorting (0-999)
  • Area: Hierarchical grouping

Configure Global Settings

Navigate to Alarms → Global Settings

Database Configuration

  • Database: SQLite (default) or external
  • Connection: Database connection string
  • LifeTime: Days to retain (0 = forever)

Alarm Handling

  • Initial Disable Time: Startup suppression
  • Ignore During Deadband: Prevent flooding
  • LogUserFullName: Record operator names

Enable Audit Trail

Check events to track:

  • User Logon/Logoff
  • Tag Changes
  • Operator Actions
  • Custom Messages

Add Alarm Displays

Using AlarmViewer Control

  1. Go to Displays → Draw
  2. From toolbox, navigate to Modules
  3. Drag AlarmViewer to display
  4. Double-click to open configuration dialog:
    • List: OnlineAlarms or AlarmHistory
    • Group Filter: Select specific groups
    • Area Filter: Select specific areas
    • Show Acknowledged: Display options
  5. Click OK to apply

Pre-built Alarm Page

  1. In Displays → Pages
  2. Select New PageAlarmPage template
  3. Page includes configured AlarmViewer with controls

Test Alarms

Testing Procedure

  1. Start Runtime: Press F5
  2. Trigger Alarm: Modify tag value to exceed limit
  3. Verify Display: Check alarm appears in viewer
  4. Test Acknowledgment: Select alarm and acknowledge
  5. Monitor Status: Check Alarms → Monitor

Runtime Access

Access alarm properties in scripts:

csharp

@Alarm.Group.Critical.UnAckCount     // Unacknowledged count
@Alarm.TotalCount                    // Total active alarms
@Alarm.Item.TagName.Active          // Specific alarm state

Create Alarm Areas

Organize alarms hierarchically:

  1. Navigate to Alarms → Areas
  2. Create structure:
    • Plant
      • Production
      • Utilities
      • Storage
  3. Assign areas to AlarmItems

Common Issues

Alarm Not Triggering

  • Verify tag name correct
  • Check condition logic
  • Ensure not disabled
  • Confirm tag updates

Alarm Flooding

  • Increase deadband
  • Add time delays
  • Group related alarms

No Sound

  • Check file exists
  • Verify audio enabled
  • Test file format

Acknowledgment Issues

  • Verify AckRequired enabled
  • Check user permissions
  • Confirm runtime connected

Best Practices

  • Use appropriate groups - Match severity to response
  • Set deadbands - Prevent analog chattering
  • Configure priorities - Focus operator attention
  • Write clear messages - Include equipment and condition
  • Test conditions - Verify activation and clearing
  • Document philosophy - Define response procedures
  • Regular maintenance - Review and tune limits

Next Steps

  • [Alarm Notifications] - Email and SMS setup
  • [Alarm Areas] - Hierarchical organization
  • [Audit Trail] - Compliance configuration



In this section...