Questions about the implementation of several functions in SCADA

Hello everyone,
I have a few questions about how to implement a few functions:

  1. I would like to trigger an alarm or script when the tag exceeds a value of e.g. 10 but only if this value persists for some time e.g. one minute.

  2. For certain tags in some protocols it happens that when the action is performed based on a rising edge. So when I set something to True I would like the tag to go back to False automatically, because the next time I enter true there is no action (it's just a strange device that requires it).

  3. I'm implementing a wind sensor reading, the value of which I historize once a minute to the DB. However, I would like the historicized value to be the largest of the range of that one minute read.

  4. If this wind sensor does not change its value for, say, 24 hours, which could mean that it is not working I would like an alarm to be triggered, which would give information about the need for verification. I assume that the device has no Quality signal for the tag

Does anyone have a way to do this?

Best regards,
Michał

Siema,

Configure an alarm on the tag if value > 10. Set the active delay to 60

Active Delay
timeOnDelaySeconds
The time, in seconds, before the alarm will be considered active after the alarm's condition becomes true. Also known as a "rising edge time deadband." Numeric OPC, Query, Expression, Derived, Reference, Memory

https://docs.inductiveautomation.com/display/DOC81/Tag+Alarm+Properties

Heading out to site now may get a look at some of your other q's later

1 Like
  1. There's no automatic way to do this. There's uncertainty about how long to wait before setting back to false, as there could be comms hiccups or process delays. The correct answer is for you to monitor the device for when it begins the triggered process, and set to false then.

  2. There's no automatic way to do this. You need to collect a minute's worth of data with some other method, and then process and save to the DB. Better to simply record at higher resolution and use a post-processing query to reduce each minute to its maximum.

  3. There's no automatic way to do this. You will need to track tag changes and store a timestamp (in another tag, perhaps). Compute a boolean for when that timestamp is more than 24 hours old, and alarm on that boolean.

3 Likes