PID Algorithms old vs new

The tuning parameters for ISA obsolete, ISA and Velocity C can all be interchanged without changing the tuning of the loop. See PID Algorithm Question

In my experience the Velocity C is the easiest to work with since the tuning parameters and the setpoint can be modified while the loop is in auto without a bump in the output. You can also change the output of the Velocity C while in auto and it will operate from that value, whereas the other algorithms you have to switch to manual, change the output, wait a PID scan interval, then switch back to auto for it to “stick”.

The only time to avoid using Velocity C is if you are using the Feed Forward feature, which does not work correctly on Velocity C. I would just work the feed forward into my own logic rather than deal with the issues of the other algorithms though.

Edit: If you use ISA with a D term and your output can become saturated (reach 0% or 100%), be aware that the output can become stuck there for a while screwing up your process. This happens when a slight change or noise on the input causes the TermD to push the output to saturation which causes the algorithm to recalculate the Integral. I found it can take a significant amount of error before the output will move from saturation. The Velocity C doesn’t have this issue. This was the original issue that sold me on the Velocity C algorithm and I haven’t looked back. See PID derivative at saturation

1 Like