Setpoint Rate Limiting in Control

Many control systems have traditionally provided some capability to limit the rate of change in a setpoint value used in control. When a setpoint change exceeds this rate of change limit, then the rate limited value is use in control. Thus, the full setpoint change is not immediately seen in control until the rate limited value catches up to the target setpoint. Setpoint rate limiting can be a very useful feature especially in batch control since it allows large step changes in setpoint to be made without causing an upset in the process operation. Thus, when the Fieldbus Foundation function block team reviewed the features that should be supports by the PID block, we decided to include setpoint rate limiting. Also, we included this feature in the Analog Output, AO, function block.

To make it easier to configure setpoint rate limiting, the limit value was defined to be in engineering units per second. One question that we had to address was whether the rate limit should apply to both increases and decreases in setpoint. In some control systems that support setpoint rate limiting, only one rate limit value is configured and this applies both to increases and decreases in setpoint. However, there are applications where setpoint rate limiting is only required in one direction. For example, the rate of increases in feed to a reactor may be limited by how fast the cooling system can respond but there may be no limits on how quickly the feed may be decreased. In some cases a physical limitation may place a limit on how quickly a setpoint change may be implemented. Thus, in the Foundation Fieldbus PID, the setpoint rate limits for a setpoint increase and decrease may be independently defined in the function block configuration. You may disable setpoint rate limiting in either direction by setting the associated rate limit value to zero(0).

One important consideration in the design of rate limiting was whether setpoint rate limiting should apply when the PID block is in Cascade mode i.e. when the setpoint is provided by another function block rather than the operator. For example, in a cascade control strategy, the PID associated with the secondary loop would normally operate in Cascade mode and its setpoint would be supplied by the PID in the primary loop. In cascade control strategies, the introduction of non-linearity behavior such as setpoint rate limiting in downstream blocks can complicate the commissioning of the upper level loop. Thus, the function block specification states that PID setpoint rate limiting should be disabled when the block is in Cascade mode. If an application requires that rate limiting be enforces on how quickly a valve may open or close, then this may be done using the setpoint rate limits provided in the Analog output , AO, block that is part of the loop. The setpoint rate limits of the AO block apply in both the Automatic (Auto) and Cascade (Cas) modes.

If the user defines setpoint rate limiting in the AO block , then when a change in setpoint becomes rate limited the AO block is required to reflect this high or low limit condition in the status provided with the BKCAL_OUT that is wired to the BKCAL_IN of the upstream PID. Also, the BKCAL_OUT value is required to be the rate limited setpoint value. Thus, the upstream PID of the cascade may take action to prevent the reset from winding up when the downstream block can not fully respond to the requested change in setpoint. For example, when the PID BKCAL_IN indicates a limit condition, then the manufacturer may design the PID to clamp the reset contribution in the direction of the limit condition. Alternatively, the manufacturer may design the PID to use external reset i.e. to use the BKCAL_IN value i.e. the limited setpoint valve in the calculation of the reset contribution.

In the Foundation Fieldbus specification, the PID and AO setpoint value after rate limiting is an internal “working setpoint” value. To make it easy to indicate to an operator when rate limiting is active, some manufactures have added the working setpoint value as a visible parameter of the PID and AO blocks. The application of setpoint rate limiting in the PID block and the AO block is illustrated in the following example.

PID and AO Setpoint Rate Limiting Examples

If you are interested in learning more about this capability, then a model and detailed description of setpoint limiting can be found in the Fieldbus Foundation function block specification – Parts 1 & 2.