(Control) Derivative filter and discrete model

  • #1
Leo Liu
353
156
Hi I am back :).

I have been doing some Simulink modeling for a project. I modeled it with a discrete system due to the controller rate. I have noticed that for all the discrete system I have tried, adding a derivative filter not only improves the performance (smaller settling time), but it is sometimes also necessary.

The following example involving a discrete PID and a 2nd order discrete transfer function illustrates the behaviour:
1700043797637.png

Autotune with no derivative filter N:
1700043894118.png

Autotune with derivative filter N:
1700044075414.png


I was wondering why such a behaviour would occur. Also, should I model the transfer function as discrete or continuous system for a physical system like F=ma? Any input will be appreciated.
 

What is a derivative filter in control systems?

A derivative filter in control systems is a component that computes the derivative of a signal, emphasizing the rate of change in the signal. This is particularly useful in control applications where it's beneficial to react to changes rather than just the error values. Derivative filters help improve the stability and responsiveness of a control system by adding a component proportional to the rate of change of the error signal.

How does a derivative filter work in discrete systems?

In discrete systems, a derivative filter estimates the derivative of a signal by taking the difference between consecutive signal samples. Given the discrete nature of the data, the derivative at a sample time \( t \) can be approximated as \( \Delta y / \Delta t \), where \( \Delta y \) is the difference between the current and the previous sample, and \( \Delta t \) is the sampling period. This approximation is then used to influence the control action in a system.

What are the challenges associated with using a derivative filter in control systems?

One of the main challenges with using a derivative filter in control systems is its sensitivity to noise. Since derivative action amplifies high-frequency signals, any noise present in the system can be significantly magnified, potentially leading to instability or erratic control behavior. Another challenge is the proper tuning of the filter parameters, which requires a good understanding of the system dynamics and the nature of the noise.

How can you implement a derivative filter in a discrete-time control model?

To implement a derivative filter in a discrete-time control model, you can use a simple backward finite difference method, which involves the current and previous signal values. The derivative \( D(t) \) at time \( t \) can be approximated as \( D(t) = (x(t) - x(t-1)) / T \), where \( T \) is the sampling interval. For better noise performance, more sophisticated methods like filters that combine multiple past samples or use filtering techniques to smooth out the signal can be employed.

What is the role of a derivative filter in improving the performance of a discrete control system?

The role of a derivative filter in a discrete control system is primarily to enhance the system's responsiveness to changes in the error signal. By factoring in the rate of change of the error, the system can preemptively adjust control actions, potentially reducing overshoot and improving settling time. Additionally, the derivative component can help dampen oscillations and improve the stability of the system, especially in systems where the error dynamics are fast-changing.

Similar threads

Replies
9
Views
2K
Replies
5
Views
1K
Replies
5
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
0
Views
796
  • General Engineering
Replies
12
Views
6K
  • Electrical Engineering
Replies
4
Views
835
  • Computing and Technology
Replies
3
Views
815
  • Electrical Engineering
Replies
12
Views
2K
Replies
5
Views
2K
Back
Top