• Not Answered

How is deviation calculated?

Greetings All,

Could someone school me on how tank deviation is calculated? We have an analog input module set up (by someone else) for each of our large product tanks. In the ALM module, there is an internal reference TKLEVELSP. This value cannot be set, but is derived from something. When the tanks are idle, no product moving, the SP is equal to ALM_IN PV. But when product is moving in or out of the tank, the values are not the same.

We have one tank that the deviation alarm is not triggered. I can’t find any differences between the modules on that tank and other tanks other than a slight variation in a rate-of-change setting. When I tested it the other day, in the tank that didn’t alarm, the product was being pumped out very slowly. At the same time, a different tank was being emptied quickly, and it did alarm.

Another parameter of note is DV_LO_LIM, which is set to -5304, which if that is gallons, is about 7” in one of our tanks. If it’s a “before” moving product vs. “after” moving product situation, how does the “before” value get set? Attached is a screengrab, hopefully it is readable. I did read what I could find in BOL.

Thank you all so much, Cynthia

1 Reply

  • You can look in books only for the ALM function block and how an active deviation is calculated.

    It's very difficult to accomplish your request with just a small view of the module in question.

    I would suggest looking in the MISC_LOGIC action block (IN_D is 0 so the logic isn't running when you got this screen shot) or in the ASP_SUPPRES... calc block to see if there is logic within either of these that is affecting the DV_LO_LIM instead of just being configured/tuned to the value you are seeing.

    You may also right click on the module and select references to help find if someone is writing to the value but Unit Aliases to this module won't be found if you have phase logic that might be writing and updating it. These are difficult to find if you have this situation.