Unraveling Controller Algorithms
Someone recently asked me which controller algorithm the Emerson Provox PID controller uses. She pointed me to the PID equations given in the Provox manual (Figure 1).
The author of this documentation has obviously given little thought to the information sought by the end user:
- What algorithm does the controller use (interactive, noninteractive, parallel)?
- Is the integral setting in units of time (min/sec) or gain (repeats/min, repeats/sec)?
- Do the proportional and derivative terms act on error or PV?
The answers to these questions are critical for tuning the controller and understanding its response to setpoint changes. But the information given in the manual does not give one of these pieces of information in a straightforward manner. (It may seem obvious from Figure 1 that the integral setting is in units of time, but this is wrong.)
To help decipher controller algorithms as documented by many manufacturers, I thought it may be useful to summarize the building blocks of a PID controller and their Laplace representations (Figure 2).
TI = Integral time
TD = Derivative time
TF = Filter time constant
a = Derivative filter ratio. Also called derivative gain limiter, or rate action limiter. Usually set between 0.1 and 0.125.
Now back to the Provox PID algorithm…
Rearranging the equation at the top of Figure 1 to reflect the blocks given in Figure 2, and substituting IVP (implied valve position) with CO (controller output) we obtain the equation in Figure 3.
The equation in Figure 3 indicates that the Provox uses the interactive PID control algorithm because the derivative term is multiplied by the proportional and integral terms, not added to them. The rearranged equation in Figure 3 also tells me that the Provox uses a lead-lag block, which provides derivative action with the numerator (lead) and derivative filtering with the denominator (lag). This answers the first question.
The equation and text in Figure 1 would have led me to believe that the controller uses integral time, but… WATCH OUT, the part of Emerson’s manual I pasted in Figure 1 turned out to be wrong in this aspect! Many pages later, the Provox manual says that the integral tuning constant (called RESET), is actually a gain expressed in repeats per minute. In their own peculiar way the second question has been answered.
Finally, doing some extensive rearrangement of the math at the bottom of Figure 1, I concluded that the derivative term acts on PV and not Error. Admittedly, the latter is difficult to do with the interactive controller algorithm. Luckily the manual actually tells the reader “the set point term of the PID algorithm has been isolated so that rate action occurs only on changes to the PV”. If you know what you are looking for – this line says it. Tediously, the last question was answered.
To summarize, the Emerson Provox PID controller uses:
- The interactive control algorithm
- Integral gain in repeats/minute
- Derivative on PV and proportional on error
As a consultant working on many controller types, I have been compiling a database of controller algorithms and tuning units over that past 20+ years. I learned that you often have to rearrange the manufacturer’s equations into a familiar format to see what algorithm they are using (Emerson is not the only culprit here and not the worst I have seen). And you should question the accuracy of the information given in controller equations – try to find text to back it up.
Stay tuned,
Jacques Smuts – author of Process Control for Practitioners.