in control systems we never see using a derivative controller,whats the reason of it ? and when we need a derivative controller which we calculate in theory ,whats the solution to fix the problem ?
From the theoretical point of view, the D part of the PID controller is not realizable because we cannot calculate the D part (that is, the derivative of the error) for the given present and past error (note that "realization" is defined under the condition that the derivative is not available and only the present and past error are available). But, from practical point of view, the D part of the PID controller can be realized by backward numerical derivative with the sampling time of the PID controller. Of course, using the numerical derivative with the nonzero sampling time is an approximation of the D part.
Even though the D part of the PID controller is approximately realizable, the ideal PID controller should not used if the sampling time is small because the output of the PID controller severely fluctuates, resulting in shortening the life of actuators such as valves because the sensitivity of the numerical derivative to noises is inversely proportional to the magnitude of the sampling time. So, commercial PID controllers usually suppress the effects of noises by adding a low-pass filter to the D part.
In tracking problem for system of relative degree more than one, it's essential to use the derivative of error, else we can not control the system. like linear controllers (PD, PID), or Nonlinear controller like (twisting, sub-Optimal ...), There exist many robust differentiator in sliding mode theory.
Otherwise, the derivative of the controller can be used as main controller, that is called Extension of relative degree in order to obtain robust continuous controller.
So Mohamed - "So, commercial PID controllers usually suppress the effects of noises by adding a low-pass filter to the D part". By adding a low pass filter this way, do we really cancel-out the derivative (D) effect by applying the Inegration (I)? After all the low pass filter is nothing but integration only.
I would like to remind what is the utility of each term in P, PI, PD, PID.
for system of degree one, like controlling the speed of DC motor by the voltage, you can use P controller (hight gain), by the error will not be zero. here we add an integral action to get PI. PD can not be used as the derivative of speed contains the control(voltage). PS: there exist a non linear equivalent to PI, called supertwisting.
for system of degree 2, like control of the position of rotor by the voltage. Here it is impossible to use P controller (we get an oscillating system), and for sure we can not use PI (we get unstable system). The derivative action is essential. so we use PD or PID. The integral action is always used to eliminate static error.
Now how to get the derivative? the use of two consecutive value will imply the increase of noice effect, here we add a filter. but there is advanced differentiators introduced in the last 25 years. They permit the exact derivative. you can refer to the differentiation of Levant for example.
It seems the question is why derivative control alone is not used. If the error is constnat ( not zero) then the output of derivative controller is zero. So it won't work satisfacorily.
This is basically a problem of realizability. Both the controlled plant and controller have to be realizable ( relative degree greater than or equal to zero- not more zeros than poles- , and preferably greater than zero. Assume that only the output and non the state is available for control- this is a "worst- case situation" for the problem at hand , and assume also that:
y (outpu)=G(transfer function)*u ( control)
The transfer function has relative degree
p=n(number of poles)-m( number of zeros)
derivatives of y -, tah tis -D(superj)j (y) can be got from j=0 , the output itself uptil order D(super "p")y- but not gretater since then s**(p+1)G(s) is not realizable. So there is a maximum of order of output derivatives which can be used by the controller while keeping realizability.
If there are a number of output deribvatives availbale in the loop ( i.e. , not only the output is availbale) then those ones can be used by the controller but ,if only the output is available, then output derivatives have to be generated by deriving the output but there is bound ( the relative degrre) to do that to keep realizability of the "new transfer functions" sG(s) up to (s**p)G(s). The accuracy for good filtering of low-frequency noise is to take derivatives uptil order p-1 or p-2 ( this is another point to be taken into account if noise is expected).
As Krishnarayalu Movva indicates, I am assuming you do have a P term in there as well, so you are asking why do we mainly see P or PI controllers, and why are PD and PID controllers less common?
If you have an intrinsically stable plant and you are not interested in really 'pushing the envelope' to get a very rapid transient response, then a P or PI controller will suffice.
Introduction of the D term allows you to be a bit cleverer and that is when PID controller design becomes challenging and interesting! When used appropriately, it allows you to stabilize unstable plants, increase stability margins, and get a very nice transient response (i.e. rapid rise, low overshoot and fast settling)
The main reason for not using the D term is that it amplifies high frequency noise. This is particularly noticeable at steady-state, where the controller will never 'relax', it will be 'hyperactive' and always doing something (jittery and jumping at shadows).
But that all depends on how the differentiator is realized/implemented. (I am talking about a discrete-time controller in what follows.) A simple 2-point differentiator is not a good idea. As has already been pointed out (by Mohamed Mousa) it is usually coupled with a low-pass filter. But when you step back and look at the low-pass filter and the differentiator together, they really are one in the same - a differentiator that attenuates high frequency noise. Indeed, I would argue that they should be designed together/concurrently, as a single unit, for best results. And what you are really trying to do with this unit is to selectively apply a phase lead, where it is needed most, without too much high-frequency gain. See the attached papers for some ideas on how this might be done.
Article Recursive Digital Filters With Tunable Lag and Lead Characte...
Article An Adaptive Digital Filter for Noise Attenuation in Sampled ...
If the system you control is “almost” good, then you may just simply close the loop and fit a main (P - Proportional) gain that results in satisfactory performance.
But then, you observe that you may end with steady-state error, unless your gain is very large. Large gain may excite oscillations, though, or create other kinds of new problems.
Therefore, you may decide to add the I – Integral gain which supplies the desired high gain, yet only at low frequencies (infinite DC gain). Your system is then supposed to move when there are tracking errors and stop when errors are zero.
However, if your system is under-damped, it does not stop at zero error and keeps oscillating around it. This is why one needs D – Derivative gain, which provides the damping derivative term (if this is a position control loop, then D is velocity signal).
However, this is only in principle. In practice, it is one thing to have a component (tachometer for velocity) which supplies the velocity feedback and it is another thing to differentiate the almost-always noisy tracking error, because the D-term comes with high gain at high frequencies. Sometimes people may only differentiate the position output, because it has already “naturally” been low-passed by the controllers and by the motor time-constant, and supply D as a feedback signal.
In any case, there is always a trade-off between what you would need in principle and the marginal effects in your specific case.
Filtering is the key. If one do not have all state variables measured, it is best to filer the output to recover the entire state vector. This allows you to get a good estimate of the derivative of your output as well.
The answer of Zigang is interesting and often used in practice. The filetering technique allows the availability of as many successive derivatives as needed. In my former answer, there is a maximum number of derivatives ( pole-zero excess) allowed without violating realizability. However, the use of identical stable filters of any order for the input and the output introduces stable -pole zero cancellations, in number equating the filter order, in the new system so that the transfer function becomes unaltered ( identical to the initial one) but there is a number of stable cancellations so that we can take always at least as many successive order derivatives of the filtered output for control purposes without violating realizability.
Simple answer - in the real world most control personnel struggle to tune 2 parameters, namely the P and I. Including the D adds another dimension to the tuning exercise. If used properly, D-action offers good potential to minimize the performance index.
If used, D-action should be configured to act on the feedback in order to minimize the physical wear on loop mechanical elements such as the control valve actuator due to high frequency noise. Also, from a practical viewpoint, D-action should only be used in processes where the derivative is realizable, such as temperature and pressure control and certain types of flow applications where the process lag is relatively long.
Derivative controller mode will track your system drastically to the set point. Some processes need much more time to get complete (Bio Technology - Cell culture test ie sampling time is very high nearly 2hrs) . In such case, if we use D mode, controller performance surely deteriorate. This mode is recommended for the system which is having very less sampling time is 0.1 second like.
For example, in Electrical machines applications we can use D-mode. where as the sampling time is very less.
Derivative controller is only suitable for the systems with is having very less sampling time or time constant. For those systems which is having large time constant derivative controller is not suitable. Because D-mode will drag the system to the set point at faster rate. In general process control applications PD controllers are not widely used. But where as, for electrical machines (very less time constant) PD controller is more suitable.
Trying to be more precise, D, the derivative term, is needed to add damping to the system. If the system is sufficiently damped, like many slow (i.e., large time-constant) processes, then D is not used because its use amplifies large frequency noise. However, if the system contains oscillatory under-damped terms, damping has to be used and people will try to use filters for high frequency noise.