In trying to answer another forum post, I have found what I think is a problem with the AlarmAcknowledged flag.
Classically, an alarm has 4 states:
In alarm, unacknowledged
In alarm, acknowledged
Out of alarm, unacknowledged
Out of alarm, acknowledged
Other SCADA packages provide flags for alarm active and alarm unacknowledged. Ignition supplies flags for AlarmActive and AlarmAcknowledged. When the system is first started these flags have the following values:
AlarmActive = 0 AlarmAcknowledged = 0If a tag goes into alarm these change to
AlarmActive = 1 AlarmAcknowledged = 0If the alarm is then acknowledged the flags are
AlarmActive = 1 AlarmAcknowledged = 1When the point goes out of alarm the flags change to
AlarmActive = 0 AlarmAcknowledged = 1If however the point goes into alarm and back out without being acknowledged, the flags are
AlarmActive = 0 AlarmAcknowledged = 0If the tag is now acknowledged, the flags values stay at
AlarmActive = 0 AlarmAcknowledged = 0This is clearly inconsistent.
By using an acknowledged flag instead of an unacknowledged flag, this flag will need to remain set whenever a tag has been in alarm and unacknowledged, including when the system is first launched, otherwise inconsistent results are obtained. My vote would be for an Unacknowledged flag set when a tag goes into alarm and cleared whenever the tag is acknowledged.