Loop Tuning Fundamentals
A control loop is a feedback mechanism that attempts to correct discrepancies between a measured process variable and the desired setpoint. The controller applies the necessary corrective actions via an actuator that can drive the process variable up or down. A proportionalintegralderivative (PID) controller tracks the error between the process variable and the setpoint, the integral of ...

A control loop is a feedback mechanism that attempts to correct discrepancies between a measured process variable and the desired setpoint. The controller applies the necessary corrective actions via an actuator that can drive the process variable up or down.
A proportionalintegralderivative (PID) controller tracks the error between the process variable and the setpoint, the integral of recent errors, and the rate by which the error has been changing. It computes its next corrective action from a weighted sum of those three terms (or modes), then outputs the results to the process and awaits the next measurement.
PID basics
A PID controller using the ideal or ISA standard form of the PID algorithm computes its output CO(t) according to the formula shown in Figure 1. PV(t) is the process variable measured at time t and the error e(t) is the difference between the process variable and the setpoint. The PID formula weights the proportional term by a factor of P , the integral term by a factor of P/T _{I} , and the derivative term by a factor of P . T _{D} where P is the controller gain, T _{I} is the integral time, and T _{D} is the derivative time.
CO(t) is the controller's current output 
This terminology bears some explaining. Gain refers to the amount by which the error signal will gain or lose strength as it passes through the controller en route to becoming part of the controller's output. A PID controller with a high gain will tend to generate aggressive corrective actions to eliminate errors.
The integral time refers to a hypothetical sequence of events where the error starts at zero then abruptly jumps to a fixed value. Such an error would cause an instantaneous response from the controller's proportional term and a response from the integral term that starts at zero and increases steadily. The time required for the integral term to catch up to the unchanging proportional term is the integral time T _{I} . A PID controller with a long integral time is more heavily weighted towards proportional action thanintegral action.
Similarly, the derivative time T _{D} is a measure of the relative influence of the derivative term in the PID formula. If the error were to start at zero and begin increasing at a fixed rate, the proportional term would start at zero while the derivative term assumed a fixed value. The proportional term would then increase steadily until it caught up to the derivative term at the end of the derivative time. A PID controller with a long derivative time is more heavily weighted towards derivative action than proportional action.
Historical note
The very first feedback controllers included just the proportional term. For mathematical reasons that only became apparent later, a P only controller tends to drive the error downward to a small but nonzero value and then quit. Operators observing this phenomenon would then manually increase the controller's output until the last vestiges of the error were eliminated. They called this operation resetting the controller.
An openloop step test reveals the prcess' time constant T, deadtime d, and gain k. 
When the integral term was introduced, operators observed that it tended to perform the reset operation automatically. That is, the controller would augment its proportional action just enough to eliminate the error entirely. Hence, integral action was originally called automatic reset and remains labeled that way on some PID controllers to this day. The derivative term was invented shortly thereafter and was described, accurately enough, as rate control.
Tricky business
Tuning is the art of selecting values for the tuning parameters P , T _{I} , and T _{D} so that the controller will be able to eliminate an error quickly without causing the process variable to fluctuate excessively. That's easier said than done.
Consider a car's cruise controller, for example. It can accelerate the car to a desired cruising speed, but not instantaneously. The car's inertia causes a delay between the time that the controller engages the accelerator and the time that the car's speed reaches the setpoint. How well a PID controller performs depends in large part on such lags.
Suppose an overloaded car with an undersized engine suddenly starts up a steep hill. The ensuing error between the car's actual and desired speeds would cause the controller's derivative and proportional actions to kick in immediately. The controller would begin to accelerate the car, but only as fast as the lag allows.
After a while, the integral action would also begin to contribute to the controller's output and eventually come to dominate it (since the error decreases so slowly when the lag time is long, and a sustained error is what drives the integral action). But exactly when that would happen and how dominant the integral action would become thereafter would depend on the severity of the lag and the relative sizes of the controller's integral and derivative times.
Forcing the closedloop system into sustained oscillations with a proportionalonly controller reveals the ultimate gain P _{u} and the ultimate period T _{u} .. 
This simple example demonstrates a fundamental principle of PID tuning. The best choice for each of the tuning parameters P , T _{I} , and T _{D} depends on the values of the other two as well as the behavior of the controlled process. Furthermore, modifying the tuning of any one term affects the performance of the others since the modified controller affects the process and the process, in turn, affects the controller.
ZieglerNichols tuning
So how can a control engineer designing a PID loop determine the values for P , T _{I} , and T _{D} that will work best for a particular application? John G. Ziegler and Nathaniel B. Nichols of Taylor Instruments (now part of ABB Instrumentation in Rochester, NY) addressed that question in 1942 when they published two looptuning techniques that remain popular to this day.
Their openloop technique is based on the results of a bump or step test for which the controller is taken offline and manually forced to increase its output abruptly. A strip chart of the process variable's subsequent trajectory is known as the reaction curve (see Figure 2).
A sloped line drawn tangent to the reaction curve at its steepest point shows how fast the process reacted to the step change in the controller's output. The inverse of this line's slope is the process time constant T which measures the severity of the lag.
The reaction curve also shows how long it took for the process to demonstrate its initial reaction to the step (the dead time d ) and how much the process variable increased relative to the size of the step (the process gain K ). By trialanderror, Ziegler and Nichols determined that the best settings for the tuning parameters P , T _{I} , and T _{D} could be computed from T , d , and K as follows:
Once these parameter settings have been loaded into the PID formula and the controller returned to automatic mode, the controller should be able to eliminate future errors without causing the process variable to fluctuate excessively.
Ziegler and Nichols also described a closed looptuning technique that is conducted with the controller in automatic mode, but with the integral and derivative actions shut off. The controller gain is increased until even the slightest error causes a sustained oscillation in the process variable (see Figure 3).
The smallest controller gain that can cause such an oscillation is called the ultimate gain P _{u} . The period of those oscillations is called the ultimate period T _{u} . The appropriate tuning parameters can be computed from these two values according to the following rules:
Caveats
Unfortunately, PID loop tuning isn't really that simple. Different PID controllers use different versions of the PID formula, and each must be tuned according to the appropriate set of rules. The rules also change when:
The derivative and/or the integral action are disabled.
The process itself is inherently oscillatory.
The process behaves as if it contains its own integral term (as is the case with level control).
The deadtime d is very small or significantly larger than the time constant T .
Furthermore, Ziegler and Nichols had a particular closedloop performance objective in mind when they settled on their particular tuning rules. They chose to allow some fluctuations in the process variable so long as each successive peak was no more than onefourth the size of its predecessor (socalled quarter wave decay). For applications that require even less fluctuation, additional tweaking of the tuning parameters is required.
This is where loop tuning becomes an art. It takes more than a little experience and sometimes a lot of luck to come up with just the right combination of P , T _{I} , and T _{D} .
Help is available
Fortunately, there are commercial software products available that know all the tuning rules, all the different PID formulas, and all the latest tuning procedures. Exactly how each works is beyond the scope of this article and in many cases, proprietary. For more information, contact:
BESTune from BESTune.Com ( www.bestune.isclever.com )
Control Arts PID Tuning Software from Control Arts, Inc.( www.controlartsinc.com )
Control Loop Assistant from Lambda Controls ( www.lambdacontrols.com )
Control Station from Control Station Technologies ( www.controlstation.com )
EnTech Tuner Module from the EnTech division of Emerson Process Management ( www.entechcontrol.com )
ExperTune* from ExperTune, Inc. ( www.expertune.com )
INTUNE* from ControlSoft, Inc. ( www.controlsoftinc.com )
pIDtune from EngineSoft ( www.pidtune.com )
Pitops from the Process Control business of Artcon Inc. www.picontrolsolutions.com )
Protuner from Techmation ( www.protuner.com )
TOPAS from ACT, GmbH ( www.actcontrol.com )
TunePlus from Innovention Industries, Inc. ( www.innovin.com )
TuneWizard from Plant Automation Services, Inc. ( www.tunewizard.com )
*These software packages are also available from several controller manufacturers as privatelabeled products