PID algorithms
PID algorithms
(OP)
With digital control technology, several different variants of PID algorithms have proliferated. Is there any reference (book, article or website) where these algorithms have been compiled?
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS Contact USThanks. We have received your request and will respond promptly. Come Join Us!Are you an
Engineering professional? Join EngTips Forums!
*EngTips's functionality depends on members receiving email. By joining you are opting in to receive email. Posting Guidelines 

Join your peers on the Internet's largest technical engineering professional community.
It's easy to join and it's free.
Here's Why Members Love EngTips Forums:
Register now while it's still free!
Already a member? Close this window and log in.
RE: PID algorithms
>With digital control technology, several different variants of PID
>algorithms have proliferated. Is there any reference (book, article or website) where >these algorithms have been compiled?
You might check my web site, http://www.jashaw.com/pid
I have a tutorial on the PID algorithm written from the perspective of an industrial controller. I also have more details in an eBook you can buy and download.
Another web site is: http://www.expertune.com/artCE87.html
A search engine such as Google will return other very good sites using the terms PID +control or PID +algorithm
I hope these can help.
John Shaw
RE: PID algorithms
I had already done internet search. I did find, though, some interesting information using the suggested combination of key words.
More detailed list is available on the site http://bestune.50megs.com/PLC.htm.
I wanted to know if much more exhaustive compilation of algorithms used by different vendors is available anywhere.
The algorithms are classified as Ideal, parallel and Series types. It is found that series type is given as
transfer function Kc*(1 + D*s)*(1 + 1/(I*s) ) in Laplace domain, and as
Kc*(1 + D*de/dt)*( 1 + (1/I)*Integral(e.dt) ) in time domain.
However, these two equations are not the same.
Could you throw some light in this regard.
Thanks.
RE: PID algorithms
In the time domain, the parallel form is the simplest:
output = Kp x ( e + Ki x Integral( e dt) + Kd x de/dt)
where Kp is proportional gain, Ki is reset rate in repeats per minute, and Kd is derivative in minutes.
The series form takes the derivative of the signal before the integral action. Often derivative is on measurement only, to prevent a step change in the set point from pegging the output.
The time domain equations are, therefore:
(eq. 1) e = (p + Kd x dp/dt)  s Direct action or
e = s  (p + Kd x dp/dt) Reverse action
(eq. 2) output = Kp x (e + Ki x Integral (e dt))
where p is process measurement and s is set point
The difference between the serial and parallel forms is not too significant. Typically, using the parallel form the gain should be about 25% higher and the reset rate and derivative should be about 25% lower than what is used with the serial form.
The equations provided by most texts and manufacturer's literature are not usually exact. For example, most controllers use some form of derivative filtering. However, for purposes of tuning the above equations are good enough.
What is not close enough is the equation sometimes seen where the gain is not multiplied by all terms. Out = Kp x e + Ki x Integral (e de/dt) _ Kd x de/dt
If this equation were used and if the gain were different from 1, the tuning would not be the same as using the other two equations and could differ by a significant amount (high or low gain applications). The standard methods of tuning the controller would not work.
I hope all this helps.
John Shaw
www.jashaw.com
RE: PID algorithms
There seems to be lot of confusion even with terminology. Quoting from your reply:
"I do not know what is meant by the "Ideal" form. In the time domain, the parallel form is the simplest:
output = Kp x ( e + Ki x Integral( e dt) + Kd x de/dt)"
This form which is introduced in most text books is often termed "Ideal". For example, even the web site suggested by you http://www.expertune.com/artCE87.html refers to this form as "Ideal".
Your explanation about series form "The series form takes the derivative of the signal before the integral action", helps in ubderstanding why this form is called "Series". Moreover if derivative is on error, then the equations given by you agree with the the Laplace domain transfer function of series form:
Gp=Kc*(1 + D*s)*(1 + 1/(I*s) )
Thanks.
RE: PID algorithms
> For example, even the web site suggested by you
> http://www.expertune.com/artCE87.html refers to this form as "Ideal".
Looking at the page on expertune, I would have to take issue with the terminology. The form they call "Ideal" is the typical form shown in most textbooks and, for most purposes, is a simple straightforward, and easy to understand representation of the PID algorithm. It is also the parrallel form. (sometimes called noninteracting form).
What they call the parrallel form is the similar and is indeed parrallel. However, the gain is not multiplied by the integral and deravitive terms. This means that if the gain is not one the units used are incorrect and standard tuning methods developed over the years will not produce desired results.
According to most books used in industry, the difference between parallel and serial relate to the integral and deravitive terms, not the gain.
These equations, like almost all that are published, are approximations because they do not cover derivative filtering, saturation properities, and other details that don't make much difference in most loops
Regards,
John Shaw
john@jashaw.com
www.jashaw.com
RE: PID algorithms
In order to clarify the terminology we need to explain five terms : ideal, parallel, series, interacting and noninteracting. As explained by you parallel and series relate to the position of derivative and integral in PID equation.
Other common difference is whether the gain multiplies all the terms or not. I guess, the term interacting is used when the gain multiplies all the terms and noninteracting is used when the gain multiplies only the error.
Probably (in lighter vain), Ideal is used for textbook equation because most of the socalled 'practical' people think that what is given in textbooks is 'Ideal'! May be in earlier days of pneumatic controllers, the Ideal was indeed impractical!
If the above definition of interacting and noninteracting is true then 'Ideal' form is ParallelInteracting form.
Thus, the most common algorithms could be classified by combination of four terms parallel, series, interacting & noninteracting. However many other algorithms with gain on measurement, derivative on measurement etc require additional terminology for description.
Thanks again!