Filtering without phase shift in Simulink

30 views (last 30 days)
Hello,
Is it possible to filter a signal without a phase shift in Simulink itself ? Please see the below figure. The yellow signal is the unfitered signal and blue signal is the filtered one. To filter the signal I am using a 'Varying Lowpass filter' with order 3 and cut-off frequency as 30 Hz. Also, the moving average filter block is not an option because I need the filtered signal in an array form.
Thank you very much in advance.

Answers (1)

Sai Sri Pathuri
Sai Sri Pathuri on 9 Jul 2020
Signal blocks does offer linear phase filtering. There is no block as such for zero-phase filtering in Simulink. You may try the following workarounds.
  1. You may effectively implement a non-causal zero phase filter by injecting delay into the input signal.
  2. Use filtfilt function after filtering. (If you want to implement only in Simulink, you try using filtfilt function within a MATLAB function block)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!