A simple LowPass Filter

66 次查看(过去 30 天)
NDKA
NDKA 2012-5-4
编辑: ES_Thorny 2019-2-25
Hello everyone, I just want to create a simple Low Pass Filter in the mfile, with a Cut-off frequency of 3Hz and sampling frequency of 100Hz.
My input signal is just an array of [1000x1] i.e. 1000 rows and 1column. And I want to pass this data through a LPF of cutoff freq of 3Hz and fs = 100Hz, and see the output signal.
Can anyone please advice how can I do this? I'm pretty new to matlab and filters. I tried FDAtool and other methods, but they have several no. of filter types, and many more filter parameters. So, its getting difficult for me to understand.
All I want to do is to just allow the signals below 3Hz and reject them above 3Hz using my m-file.
Thank You
  2 个评论
Walter Roberson
Walter Roberson 2012-5-4
Please do not use your email address as a tag. A "tag" should be relevant to the subject category, such as "lowpass filter". Tags are used by people to find other messages that might be of relevance to them.
NDKA
NDKA 2012-5-4
Oh, I completely misunderstand about "tag". Sorry about that, I don't do that again. And thanks for your advice, otherwise I would have not know about this.

请先登录,再进行评论。

采纳的回答

Wayne King
Wayne King 2012-5-4
Do you have the Signal Processing Toolbox?
d = fdesign.lowpass('Fp,Fst,Ap,Ast',3,5,0.5,40,100);
Hd = design(d,'equiripple');
output = filter(Hd,input);
where input is your input signal and output gives the filtered output.
You can use
fvtool(Hd)
to see your filter response and
plot(psd(spectrum.periodogram,output,'Fs',100))
to see the spectrum of your signal aftering filtering.
I've specified 40 dB of attenuation in the above, that may or may not be enough or too much depending on your data.
  1 个评论
NDKA
NDKA 2012-5-4
Wayne,
Thank you very much for your help.I think your code will help me to understand Filter parameters using Matlab environment more easily.

请先登录,再进行评论。

更多回答(1 个)

Walter Roberson
Walter Roberson 2012-5-4
A "simple" low-pass filter will never have a sharp cut-off at a particular frequency, especially not if it has to be a "streaming" filter. If you do not have any time constraints then you can use the more complex filtering of fft, zeroing coefficients, fft back.
  1 个评论
ES_Thorny
ES_Thorny 2019-2-25
编辑:ES_Thorny 2019-2-25
The idea of filtering like that is the most natural. Why is it not commonly used? Just a curiosity ...

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Digital Filter Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by