PID Algorithms and Derivative filter.

K

Thread Starter

K.PIRABA

Hi
PID controller is the most popular controller in the industries. Performance (speed and accuracy) of the controller is determined by the controller parameters. There are many tuning methods available, but most of them are applicable to certain class of the system. Although some tuning work well in simulation but not in Real time application because of the measurement noise and non-linear behaviour occur in Real-time. In real time tuning the derivative action is very difficult. so very often modified version is used for derivative. Kds/(1+Ts) is given in the K. J. Astrom etal (The PID control ) text book. But this particular filter doesn’t improve my real time measurement noise signal.
Can any one tell me another way to design a derivative filter?

Thank you so much for your help in adavance.
 
P

Pasi Airikka

Hello K,

It is sad but true that many PID controller tuning methods are available only when certain conditions exist. Therefore, a good tuning method should be as applicable as possible (covering many different process model types) and include a desing parameter for the user to make a trade-off between robustness and control performance (in sense of load disturbance rejection). Set point following and measurement noise rejection can be taken into account by other means.

If there is a need for using derivative control, it should be implemented as you put it. By setting the time constant T for a derivative filter (first order low-pass) you should be able to strongly determine the signal/noise ratio of your measurement signal that is taken to derivative controller. Maybe you should recheck your range of values for T? By increasing T you decrease the bandwidth of your filter and thus, you eliminate lower and lower frequencies of your measurement signal. This should help you.

However, this affects only derivative control. If you want to provide a smoother measurement signal in general, you can filter the noise out of it before taking it to the PID controller:

Tf * yf(t) + yf(t) = y(t)

or in Laplace-domain: yf(s) = 1/(Tf*s + 1) * y(s)

where y(t) is the raw measurement signal, yf(t) is the low-pass filtered signal and Tf is the filtering parameter (filter time constant). When applying this, you provide a similar filtered measurement signal yf(t) for P, I and D control. However, when applying a separate filtering, you should take this additional dynamics into account when designing PID control, that is, when to tune the controller.

With regards,
-P. Airikka
 
Top