Description:
Why is the alarm linked to an I/O tag not firing?
Solution:
E3 links are context-sensitive. That means that E3 will try to solve the link by first looking into the current object. If this link does not exist in this object, it will then look into its parent object, and it will continue doing so until it reaches the application’s root.
Let’s say the alarm’s name is the same as the tag’s (“Point1“), and that the alarm area’s name is the same as the driver’s (“Gauge1“). The sequence for creating the link “Gauge1.Point1.Value” is:
- Trying to solve the link in the Alarm’s context (“ConfigAlarms.Gauge1.Point1“) => NOT FOUND. Then:
- Parent object: trying to solve the link in the Area’s context (“ConfigAlarms.Gauge1“) => FOUND. The link is “ConfigAlarms.Gauge1.Point1.Value“
Thus, in this case, the Alarm’s value is being used as its own source, and that is why no alarm occurs. To solve this problem, you must rename the alarm area to some other name that does not get in conflict with the driver.