RSLogix ALM Function Rate of Change Calculation

RamonDarios

Member
Join Date
Feb 2014
Location
UK
Posts
1
I have a question about the fine details of how the RSLogix ALM (Alarm) function block processes its Rate of Change calculation and in particular the ROCNegAlarm output.

There are two main configurable parameters that govern the rate of change calculation: 1. ROC period and 2. ROCNegLimit.

Quoting the reference manual (Publication 1756-RM006G-EN-P), ROCperiod is "the time period used to evaluate the rate-of-change alarms (in seconds)".

The ROC alarm calculates the rate-of-change as:
ROC = ( In(Now) - In(EndofpreviousROCPeriod) ) / ROCPeriod.

So, if In(Now) = 10 and In(EndofpreviousROCPeriod) = 11 and ROCPeriod = 100ms then ....

ROC = 10-11/(100/1000) = -10 units per second.

Simple.

But what if the function parameters are configured with a value of ROCPeriod that is LESS THAN the executing module's interval time? That is, what if the ROCPeriod is set to 50mS but is only executed once every 200mS?

The "ROCPeriod" will have expired on every execution of the module. But the module will not be able to determine the real value of In(EndofpreviousROCPeriod) because that was only 50mS ago, 150mS after the last execution of the function block. Will the value of In(Now) be equal to the value on the last scan (i.e. 200mS earlier)? If so, this will distort the ROC calculation for a signal that is changing continuously between the two scans. If this is how the function behaves, in the case of 50mS ROCPeriod and 200mS interval time it will quadruple the calculated rate of change.

If this is the case then it would appear to be best practice to always have the ROCPeriod 3 or more times the value of the execution interval time. Absolute minimum of 2 times.

Can anyone confirm if this is how the function block behaves? Or is there some "magic" behind the scenes that compensates for this scenario? Any links to official guidelines from Rockwell on such information?

Thanks in advance.
 

Similar Topics

Hello, I am trying to read a barcode scanner input using a cognex dataman 280 barcode reader, store it another string, the compare with another...
Replies
1
Views
49
Hi Everyone, I am not proficient in RSLogix 500 so I have a question regarding the evaluation of N7:0 data as an input. So as I understand in...
Replies
1
Views
93
Hi folks, in the alarm manager of Rslogix 5000, the tag-based alarm has been created. But when I tried to change the condition, it was found the...
Replies
2
Views
165
I have a little bit of experience with Allen-Bradley. I have a Micrologix 1500 (RSLogix 500) and a PanelView Plus 7 (FactoryTalk View Studio ME)...
Replies
3
Views
193
Back
Top Bottom