top of page

PID Autotune Not Working?!

You are not alone! Many automation professionals have completely given up automatically tuning PID controllers. We have been let down too many times. But, if it doesn't work, then why does autotune still exist?

The Idea is Sound

The theory behind most autotune algorithms is pretty solid. They generally follow a time-tested procedure:

  1. Bump the control variable. The control variable is the is the input to the process (output signal from the controller), e.g. valve position, pump speed, heater power.

  2. Record the response of the process variable, e.g. pressure, level, temperature, or other measured value to be controlled.

  3. Use this data to create a dynamic model of the process.

  4. Calculate appropriate tuning values.

These steps are capable of finding good tuning values. In fact, the (highly effective) pidbot software from JLB Controls uses a similar procedure. So what is the difference? If the procedure is not fundamentally flawed, why does autotune fail so often?

Autotune Killers

  • Disturbances Your control variable is just one of many factors that can impact your process variable. If one of those disturbances acts up during your autotune procedure, it can contaminate the data and cause autotuning to fail miserably.

  • Context The nature of your process may change with the seasons... or minute by minute. If autotune is run during off-normal conditions, it will tune for those conditions, instead of optimizing for normal operation.

  • Plant-Model Mismatch The dynamics of real processes never perfectly match the models used for controller tuning. This is not a problem for the majority of process industry PID applications, where a few simple models are adequate for tuning purposes. However, there are instances where the models aren't good enough. Naturally oscillating processes, unstable processes, or highly nonlinear processes may not be adequately modeled by your autotuner, resulting in poor tuning.

  • Equipment Problems Equipment doesn't always behave as it should. Sticky valves are a great example of that. If your autotuner thinks your valve moved further than it has, it could yield unstable tuning values. Simple problems like this, noticeable with the human eye, are not usually caught by autotune algorithms.

  • Noisy Data Measurement noise is a fact of life. It can also obscure the dynamics of your process in autotune data, leading to poor tuning.

Take Back Control

The downfall of most autotuners is design philosophy. Information is concealed from the user, with the aim of being fully automatic. This solution may be best for consumers, or users who aren't interested/capable of understanding their plant. For most industrial users, it isn't good enough.

Allowing users to view the modeling data is a big step in the right direction. It keeps users informed, and helps catch some autotune problems. User controlled, software assisted, modeling and tuning, is a giant leap, allowing users to correct issues that arise. Even better, allow the user to simulate different scenarios to gain even more insight into their control strategy.

JLB Controls wrapped up all those features in an intuitive module for your Ignition® SCADA, called pidbot. Like most successful bots, pidbot is built to aid and empower its user, not to take full control. Tuning is quick, simple, and automatic tuning suggestions are provided. But, unlike autotune, you are in the driver's seat, keeping things on track, and benefiting from valuable process insight, rather than being shielded from it.

Process insight is more valuable than good tuning. Without insight, even the best tuning values get scrapped at the first sign of trouble.

The following dialog is based on true stories

** Frustrated Plant Manager enters...**

"Our material temperature control is sluggish again, we need to speed it up."

** An automation professional responds (depending on how they tune)...**

Scenario #1: Autotuner

"OK, I'll run the autotune again."

Scenario #2: pidbot™ User

"The process acts differently when we're at full capacity. If I tune more aggressively now, it may be unstable later. We should update our PLC program to use different tuning values depending on load.

Scenario #3: Manual Tuner

(Has probably spent enough time tuning to respond with similar insight as the pidbot user, but would likely add...) "I'll need to take control of that loop to tune for an hour, so the product will be out of spec for a while."

The pidbot™ Difference

As automation professionals, we are usually the Troubleshooter-in-Chief. This is doubly true if we have been tuning, or making software changes... which is frequent for most of us. We need to do more than make our plant run well. We need to know how it runs, and why we made the decisions we made. We need to be able to justify our decisions to our teams, and be ready when things go wrong.

Tuning is no different. We need two things from our tuning procedure:

  • To select good tuning values (autotune sometimes does this), and

  • To help us understand the underlying system, and why the tuning values were selected (autotune doesn't do this).

Download pidbot today, and take control of your PID tuning. JLB Controls is ready and available to answer your automatic loop tuning questions. Let us help you achieve results you can use.


bottom of page