Hi all,

Can anyone please explain the “derivative” algorithm of the PID Auto-tuner in MATLAB? How does it work? What is the function of the filter coeeficient, N?? What will be the effect if I obtain a negative value for the derivative parameter?

Generally, the function of derivative in PID controller is to minimize the magnitude of overshoot caused by the integral control component. Is this same principle apply to the derivative algorithm in that PID auto-tuner??

Please advice. Very sorry for keep posting different title of posts, as I have run into several problems which are quite unrelated. So, I just separate them in different posts.

Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.

Yes, the purpose of the derivative component in the PID block is to increase stability by providing some phase lead.

Because in real life all signals are noisy, taking exact derivative of a noisy signal is not a good idea (look at the transfer function of a pure derivative and you will see that it amplifies high-frequency noise). To deal with that you add a lowpass filter that filters out high frequency noise. The filter is a very simple first order filter. If you look at the formula in the block dialog, the derivative term looks like

D*N/ (1 + N/s)

If you do a bit of math, this is the same as D*s * N/(s+N)

So, as you see, N is basically bandwidth of the first-order