PID-parameters by Ziegler Nichols


Thread Starter


I'm looking for a calculationsheet to determine the P, I and D parameters by the Ziegler Nichols method. I have to calculate the PID-parameters before the installation goes in operation. I'm programming a coolingwater installation with a temperature and a pressure control loop (PID). The controller is a Siemens S7 controller using the standard PID-controller function (FB41), it would be nice if somebody also had an example project with the FB41.

Santiago Sanz

First of all you have to calculate de transfer functions of the process (plant), so the ZN parameters can be calculated. Then there are two principal techniques to calculate the ZN parameters. In the frequency domain:
1. calculate the gain margin, phase margin, and both their frequencies. (GM,PM,wGm,wPm; Bode)
2. Calculate de final oscilation period (Pu=2*pi/wGm).
for a P control:
for a PI control:
ti =Pu/1.2;
for a PID control:

In the time domain (it's necesary to obtain a first order transfer function)
Obtain the values of K, tao and theta of the first order transfer functions.
for a P control:
for a PI control:
for a PID control:
for further information refer to:
frecuency domain:
time domain:

Francis Lovering

The main point of Ziegler Nichols is that it is empirical. Measure the reaction time and then derive the PID settings. Their paper, Optimum Settings For Automatic Controllers, does say "It is the purpose of this paper to examine the action of the three principal control effects found in present-day instruments, assign practical values to each effect, see what adjustment of each does to the final control, and give a method for arriving quickly at the optimum settings of each control effect. The paper will thus first endeavor to answer the question: "How can the proper controller
adjustments be quickly determined on any control application?" and presents an empirical method. It then says "After that a new method will be presented which makes possible a reasonably accurate answer, to the question: "How can the setting of a controller be determined before it is installed on an existing application?" But this paper does not go on to do so.
Forget "calculate the PID-parameters before the installation goes in operation" it would be a waste of your time, save the time for on site - and get some PID tuning software, which will do the hard bit of Ziegler Nichols for you.

There is an article in Control Magazine (April 1995) entitled 'Five Steps to Better PID Control'. It describes the Lambda tuning method which is a very good method if you need to manually tune the process. As with any loop tuning, you need to bump the process to gather the process dynamics then calculate the controller tuning constants.