Versions Compared

Key

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

Alarm Groups define shared characteristics and behaviors for collections of related alarm items in your FrameworX solution. Alarm Groups enable:

  • Collective configuration of alarm behaviors
  • Shared acknowledgment requirements
  • Common notification methods
  • Unified visual and audio alerts
  • Centralized logging preferences
  • Consistent timeout settings

The platform provides pre-defined groups (Critical, Warning, AuditTrail) for common use cases, plus support for custom groups.

In this page:

Table of Contents
maxLevel2
minLevel2
indent10px
excludeSteps
stylenone

Configuration Properties

PropertyDescriptionDefault
NameGroup identifierRequired
AckRequiredRequires operator acknowledgmentFalse
ActiveTimeDeadbandTime period to ignore active alarms0
AckTimeoutTimeout period for acknowledgment0
AutoAckTimeAuto-acknowledge after this time0
SoundAudio file for alarm notificationNone
ShowDisplay alarms from this groupTrue
LogEventsLog events to historianFalse
ColorsVisual identification colorsDefault
NotificationMethodScript method for notificationsNone
CategoryCategory designationNone
DescriptionGroup purpose and detailsNone

Pre-Defined Groups

GroupPurposeDefault Settings
CriticalHigh-priority alarms requiring immediate actionAckRequired=True, LogEvents=True, High Priority
WarningMedium/low-priority informational alarmsAckRequired=False, LogEvents=True, Medium Priority
AuditTrailHidden alarms for audit logging onlyShow=False, LogEvents=True, No Display

Creating Alarm Groups

  1. Navigate to Alarms → Groups
  2. Click Plus icon
  3. Enter Name and Description
  4. Click OK
  5. Edit properties by double-clicking
  6. Press Enter to save changes

<ac:structured-macro ac:name="warning"> ac:rich-text-body Before deleting: Ensure no AlarmItems are linked to the group. Check via Alarms → Items and use Track Changes → Cross Reference. </ac:rich-text-body> </ac:structured-macro>


Acknowledgment Settings

PropertyBehavior
AckRequiredAlarm stays active until acknowledged, even if condition clears
AckTimeoutMaximum time allowed for acknowledgment
AutoAckTimeAutomatically acknowledge after specified time

Example flow:

Alarm Triggered → Wait for Ack → AutoAckTime expires → Auto-acknowledged
         Manual Ack → Acknowledged

Notification Configuration

Sound Alerts

  • Configure via Sound property
  • Plays continuously until acknowledged
  • Different sounds for different severities
  • See [Alarm Groups Sounds] for audio file setup

Visual Indicators

  • Colors property defines alarm states
  • Applied in alarm displays
  • Consistent across all items in group

Custom Notifications

NotificationMethod calls Script Class methods:

csharp

// In Script Class
public void SendCriticalAlert(AlarmEventArgs args)
{
    // Send email
    EmailService.Send(args.Message, args.Priority);
    
    // Send SMS
    SMSService.Alert(args.TagName, args.Value);
    
    // Log to external system
    ExternalLogger.LogAlarm(args);
}

Configure: NotificationMethod = "Script.Class.ServerMain.SendCriticalAlert"


Deadband and Timing

ActiveTimeDeadband

Prevents alarm flooding during startup or known conditions:

  • Ignores alarms for specified seconds
  • Useful during system initialization
  • Prevents nuisance alarms

Time-Based Acknowledgment

AckTimeout = 300  // Must acknowledge within 5 minutes
AutoAckTime = 600 // Auto-acknowledge after 10 minutes if not handled

Runtime Access

Access group properties at runtime:

csharp

// Check if acknowledgment required
bool needsAck = @Alarm.Group.Critical.AckRequired;

// Get active alarm count for group
int criticalCount = @Alarm.Group.Critical.ActiveCount;

// Enable/disable group
@Alarm.Group.Warning.Enabled = false;

Best Practices

  1. Group by severity - Critical, Warning, Information
  2. Consistent sounds - Same severity = same sound
  3. Clear naming - Group name indicates purpose
  4. Document settings - Use Description field
  5. Test notifications - Verify all alert methods work
  6. Set appropriate timeouts - Balance responsiveness vs alarm fatigue
  7. Use categories - Organize groups logically

Common Configurations

Critical Process Alarms

Name: ProcessCritical
AckRequired: True
Sound: Critical.wav
LogEvents: True
AutoAckTime: 0 (never)
Colors: Red
NotificationMethod: Script.Class.Notifications.SendCritical

Informational Logging

Name: InfoLog
AckRequired: False
Show: False
LogEvents: True
Category: Audit

Maintenance Alarms

Name: Maintenance
AckRequired: True
AutoAckTime: 3600 (1 hour)
LogEvents: True
NotificationMethod: Script.Class.Maintenance.ScheduleWork

Troubleshooting

Alarms not showing:

  • Check Show property is True
  • Verify display filter includes group
  • Confirm AlarmItems assigned to group

No sound playing:

  • Verify sound file path correct
  • Check audio system enabled
  • Confirm AckRequired if sound should repeat

Notifications not sent:

  • Verify NotificationMethod syntax
  • Check Script Class method exists
  • Review method error logs

Auto-acknowledge not working:

  • Confirm AutoAckTime > 0
  • Check AckRequired is True
  • Verify no manual ack occurred

In this section...

Page Tree
root@parent
spaces93DRAF