How to design a filter to pass frequencies between 0 and 12Hz

4 vues (au cours des 30 derniers jours)
HF
HF le 29 Oct 2020
Hello, I trying to design a filter in order to allow only certain frequency to pass the filter. I have a set of data and I am only interested in frequencies between 0 and 12Hz.
My approach was following:
filtCoeff = designfilt('bandstopiir', 'FilterOrder', 20,...
'HalfPowerFrequency1',11, 'HalfPowerFrequency2',498,...
'SampleRate', Fs);
acc_x = filter(filtCoeff,acc_x_unfiltered);
acc_y = filter(filtCoeff,acc_y_unfiltered);
Is this correct? Can someone help me?
Thank you in advance!

Réponse acceptée

Star Strider
Star Strider le 30 Oct 2020
If you only want to pass 0 Hz to 12 Hz, and you have R2018a or later, use the lowpass function. If you want to reject those frequencies, use the related highpass function (linked to at the end of the lowpass documentation page).

Plus de réponses (1)

Sriram Tadavarty
Sriram Tadavarty le 30 Oct 2020
Hi Hishan,
You can confirm if your filter designed meets the requirements, by looking at the frequency response of the filter using FVTool or freqz or any equivalent.
For easy way of designing a filter with required specifications, i suggest to use Filter Designer. This is a GUI interface showing the frequency response there itself.
For more insighits of designing a practical filter, you can look over this.
Hope this helps.
Regards,
Sriram

Community Treasure Hunt

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

Start Hunting!

Translated by