RATE
Detects when the absolute rate of change per second of the input process variable, over the
specified time interval, exceeds the maximum rate of change.

Parameter values for the RATE function block:
Parameter | Data Type | Description | ||
---|---|---|---|---|
PV | REAL | Input process variable. | ||
Ts | TIME | Specified sample time interval. | ||
R | REAL | Maximum rate of change. This value must be a positive REAL value. | ||
H | REAL | Absolute rate of change per second (hysteresis).
This value must be a positive REAL value less than R. | ||
Q | BOOL | FALSE on initialization. TRUE when PV, during the time frame specified in Ts, exceeds R. Returns to FALSE
when the rate of change has fallen below R by the hysteresis value (H). |
TIP:
When the elapsed period between application scan times
is greater than the sample interval, Ts uses the application program scan time. The maximum
period between samples is Ts plus the application scan time.
When an overflow or underflow condition occurs during execution, Q sets to FALSE and the
corresponding
ERRSTAT
Overflow or Underflow error counter increments.When R or H is negative, the inputs use the value zero and the
ERRSTAT
Param error
counter increments.When H is larger than R, Q never sets to FALSE after it sets to TRUE.
Function Block Diagram Example

Structured Text Example
RATE(Process1, T#30ms, MaxRate, Hysteresis); RateofChange := RATE.Q;
Provide Feedback