Alarms - FirstInGroup alarm group object clarification|OPC UA Standard|Forum|OPC Foundation

Avatar
Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
Alarms - FirstInGroup alarm group object clarification
Avatar
Joe Riemersma
Member
Members
Forum Posts: 3
Member Since:
09/14/2021
sp_UserOfflineSmall Offline
1
03/11/2025 - 04:54
sp_Permalink sp_Print

I am looking for some further clarification regarding the FirstInGroup object on an AlarmConditionType.

More specifically, what alarms should the FirstInGroup object contain, how should it be populated and how should the list of alarms in the group be maintained:

The only information I can find in the specification is in https://reference.opcfoundatio…..5/docs/5.8 : “The FirstInGroup Object is an instance of an AlarmGroupType that groups a number of related Alarms.  The FirstInGroupFlag is set on the Alarm instance that was the first Alarm to trigger in a FirstInGroup.”. 

I can interpret this a few ways:

  • The FirstInGroup is an alarm group object that is essentially a view that collects all the alarms that currently have their FirstInGroupFlag’s set to TRUE
  • For an alarm A, A’s FirstInGroup contains all the alarms that belong to the group which A is in. 
    • In this case how should it be handled when A is in multiple groups, and A is the first alarm to be triggered in these groups.
  • none of the aboveWink

Thanks In advance. 

Avatar
Paul Hunkar
Cleveland, Ohio, USA
Moderator
Members

Moderators-Specifications

Moderators-Companion

Moderators-Implementation

Moderators-Certification

Moderators-COM
Forum Posts: 116
Member Since:
02/24/2014
sp_UserOfflineSmall Offline
2
03/14/2025 - 18:26
sp_Permalink sp_Print

AlarmGroups can be used in more then one manner.  By definition an Alarm group is just a group of alarms.  How the Alarm group is used depends on where it is used.

In the case of a FirstInGroup,  – as you stated has a definition “The FirstInGroup Object is an instance of an AlarmGroupType that groups a number of related Alarms.  The FirstInGroupFlag is set on the Alarm instance that was the first Alarm to trigger in a FirstInGroup”

I think none of your statements are completely correct. 

I think it is best to explain this with an example – In a turbine, there are hundreds of vibration sensors spread out all over the turbine.  Each of the sensors have an alarm associated with it, indicating that this sensor detected vibration. When a Turbine experience a problem, typically all of the sensor will generate an alarm, but not at the same instance in time.  All of these alarms are in the same FirstInGroup.  Of the hundreds of alarms only one will ever have the FirstInGroupFlag is set to true, the alarm that was the first to occur.  If the alarms have not occured then none will have the FirstInGroupFlag set.

An alarm can only be in one FirstInGroup and the FirstInGroup points to the AlarmGroup that this Alarm is a member of. You can have multiple FirstInGroups each with a unique group of alarms.

Another common usage of AlarmGroups is for suppression of Alarms.  The same Alarm can be associated with multiple Alarm Suppression groups and can be in multiple Alarm Suppression groups.  When an Alarm becomes active, any alarm suppression group that it references are processed and all alarms in those groups are suppressed.  AlarmSuppressionGroup can be reference by other object, not just alarms – i.e. when a data value changes it could trigger suppression of a group of alarms.  A change in a state machine would be another item that could trigger an AlarmSuppressionGroup.  

Hopefully this covers your question and helps with the concepts of AlarmGroups

Paul Hunkar - DSInteroperability

Forum Timezone: America/Phoenix
Most Users Ever Online: 510
Currently Online:
Guest(s) 33
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1464
Posts: 4951