until the comparison is true for that period of time.
Not_In ( "ON OFF" )
Not_In ( 'tagname' ) Not_In ( ref ) Not_In ( ON ) +1h Table 8–5. Comparisons of the Not_In Operator Operator Source point value Test value Trigger an alarm? Comparison Not_In ON “OFF ON” No digital source and string test value Not_In OF “OFF ON” No digital source and string test value Not_In ONE “OFF ON” Yes digital source and string test value Not_In “1” 12345678 No string source and digital test value Not_In 9 “12345678” Yes digital source and string test value Not_In 10 100 Error numeric source and digital test value Not_In 10 “100” Error numeric source and string test value Includes The operator Includes tests digital states, strings or points that evaluate into digital states or strings against a digital state or string. In the comparison, all digital states are converted into strings and a string to string comparison is performed. The Includes operator triggers an alarm if the source point value includes the test value. For a reference point, the tagname of the reference point is used as the argument. If keyword ref is used as the argument, the ReferenceTag attribute contains the tagname of the reference point. A time parameter in the form of a relative timestamp can delay the triggering of an alarm until the comparison is true for that period of time. Includes ( HI ) Includes ( 'tagname' ) Includes ( ref ) Includes ( "This is a string" ) +1h 8.2 - Alarm Point Configuration PI Server Applications User Guide Page 305 Table 8–6. Comparisons of the Includes Operator Operator Source point value Test value Trigger an alarm? Comparison Includes Hihi “HI” Yes digital source and string test value Includes High HI Yes digital source and digital test value Includes “VIN3234A” “VIN3234” Yes string source and string test value Includes “VIN3234A” “VIN3235” No string source and string test value Includes 1002 100 Error numeric source and digital test value Includes 1002 “100” Error numeric source and string test value Change The operator Change tests numeric values, digital states, strings or points that evaluate into numeric values, digital states or strings. All numeric comparisons are done as floating point operations and comparisons of all digital states are converted into strings and a string-tostring comparison is performed. The Change operator triggers an alarm if the source point value is different from the previous value. A time parameter in the form of a relative timestamp can delay the triggering of an alarm until the comparison is true for that period of time. Change ( ) Change ( ) +1h CondEQ The operator CondEQ tests alarm point conditions against alarm points. An alarm will trigger if an alarm of another alarm point is equal to the test value. For a reference point, the tagname of the reference point is used as the argument. If keyword ref is used as the argument, the ReferenceTag attribute contains the tagname of the reference point. A time parameter in the form of a relative timestamp can delay the triggering of an alarm until the comparison is true for that period of time. The argument is an alarm condition. In the following examples, an alarm is triggered if the condition of the source alarm point is low, the condition of the source alarm point is equal to the condition of the reference point (ref), and the condition of the source point is high for over one hour, respectively. CondEQ ( low ) CondEQ ( 'alarmtagname' ) CondEQ ( ref ) CondEQ ( high ) +1h Table 8–7 show examples of the CondEQ operator using the sample Alarm Digital State Set given in the Alarm State Sets section of this chapter. The digital state for a new alarm with Chapter 8 - PI Alarm Subsystem Page 306 the condition of low is low << and the digital state for an acknowledged alarm with the condition of low and an urgent priority is ** low. For more information about Alarm Digital States, see Section 8.3, Alarm State Sets. Table 8–7. Comparisons of the CondEQ Operator Operator Source point value Test value Trigger an alarm? Comparison CondEQ Low Low Yes digital source and digital test value CondEQ Low << Low Yes digital source and digital test value CondEQ ** low Low Yes digital source and digital test value CondEQ Low Lolo No digital source and digital test value CondNE The operator CondNE tests alarm point against an alarm point. An alarm will trigger if an alarm of another alarm point is not equal to the test value. For a reference point, the tagname of the reference point is used as the argument. If keyword ref is used as the argument, the ReferenceTag attribute contains the tagname of the reference point. A time parameter in the form of a relative timestamp can delay the triggering of an alarm until the comparison is true for that period of time. The argument is an alarm condition. In the following examples, an alarm is triggered if the condition of the source alarm point is not low, the condition of the source alarm point is not equal to the condition of the reference point (ref), and the condition of the source point is not high for over one hour, respectively. CondNE ( low ) CondNE ( 'alarmtagname' ) CondNE ( ref ) CondNE ( high ) + 1h IsUnack IsUnack tests an alarm point against another alarm point. This operator has no arguments and triggers an alarm if the source alarm point is unacknowledged. In the following examples, an alarm is triggered if the source alarm point is unacknowledged and goes unacknowledged for over one hour, respectively. IsUnack ( ) IsUnack ( ) +1h 8.2 - Alarm Point Configuration PI Server Applications User Guide Page 307 8.2.3 Action1, Action2, Action3, Action4 The set of four attributes Action 1, Action 2, Action 3 and Action 4 specify the digital state that is set when the corresponding test set in the Test1, Test2, Test3, Test4 attributes trigger an alarm. There are two forms of the attribute and their syntax is as follows. Syntax: Form 1) Condition Priority Form 2) StateName If an Alarm State Set is the Digital State Set for the alarm point, then the first form of the attribute is used. In this case Condition is the alarm condition to be set for the alarm point and Priority is the numeric priority level alarm. See Section 8.3, Alarm State Sets, for more information about conditions and priorities. Table 8–8 gives examples of the use of the first syntax and the resulting digital state that is set using the example Alarm Digital State Set shown in Table 8–15. Table 8–8. Examples Using First Syntax (Condition Priority) Action1 Digital State Description Hihi 1 __ hihi << New unacknowledged HIHI alarm with priority level 1 Hihi 2 _* hihi << New unacknowledged HIHI alarm with priority level 2 High 3 ** high << New unacknowledged HIGH alarm with priority level 3 Low 0 LOW LOW alarm with priority 0 always returns just the alarm condition In the above examples, the digital state that is set is for a new alarm with the attribute AutoAck set to NO. Furthermore, it is also possible to have a priority level of 0, which is shown as the last example in Table 8–8. In that case, only the alarm condition is returned regardless of the acknowledgement status. The second case is not limited to the Alarm Digital State Set and any digital state set may be utilized. The second case only requires that the attribute contain a digital state (StateName) that belongs to the digital state set of the alarm point. Table 8–9. Examples Using Second Syntax (StateName) Action 1 Digital State Description Hihi HIHI Condition only. Similar to using the first syntax with priority 0 ** high ** High Alarm Digital State auto Auto Digital Set used is Modes {Manual, Auto, Cascade, Program, Prog-Auto} Chapter 8 - PI Alarm Subsystem Page 308 The first two examples given in Table 8–9 use the Alarm Digital State Set from Table 8–15. The last example used a default digital state set, Modes, with the digital states {Manual, Auto, Cascade, Program, Prog-Auto}. When more than one alarm is triggered simultaneously, the combiner logic determines the digital state that is set by using the following rules: • Priorities have precedence. • When two conditions of the same priority are true, it is the first (in order of the tests) that is used to set the Alarm State. Table 8–10 gives examples of which “action” will be taken when more than one “action” attribute is triggered. In these examples, it is assumed that all four tests were done and the “actions” that were left blank are the result of alarms that were not triggered. Table 8–10. Combiner Logic Examples Action1 Action2 Action3 Action4 Result Hihi 1 High 1 Hihi 1 Hihi 2 High 1 Hihi 2 auto Manual auto In the first combiner logic example, all the priorities are the same; hence Action1 is set because it is the first test that is true. In the second example, even though Action4 and Action1 are both true, Action1 is used because it has a higher priority. The last example demonstrates the second syntax where priority is not used; hence Action1 is set because it is the first test that is true. Refer to Alarm State Sets on