Moving Window Average Alarms


I have some tags being populated from a device. I would like to create various moving window average based alarms - e.g. if the average value in the past n minutes is outside some setpoints, raise an alarm. I’m looking at implementing this for a wide variety of tags, for a wide variety of window sizes.

I can do this with gateway scripts, but I’m not sure if that’s the best way. Are there any other techniques I could use for this?


I would be using my objectScript expression function (from my Simulation Aids module) in an expression tag, using it’s state variable to hold recent history in a fifo for fast computation. The alarms would then be set on the expression tag as usual.

Thanks for the suggestion, I’ll try it out and post how I go!