IIR bandpass filter with very low corner frequencies

조회 수: 8 (최근 30일)
Emanuele . 2020년 8월 6일
답변: Frantz Bouchereau . 2020년 8월 24일
Hi All! I'm trying to get in the MATLAB Signal Processing Toolbox a bandpass IIR filter having the following specifications: pass-band [0.1-0.5] Hz and stop-band attenuation 30 dB. I'm using the following command:
[fdata,DigFilt] = bandpass(data, [0.1,0.5], fs, 'ImpulseResponse', 'iir', 'StopbandAttenuation', 30);
The sampling frequency fs is 860 Hz. The command
says that
IIR Digital Filter (real)
Number of Sections : 5
Stable : Yes
Linear Phase : No
Design Method Information
Design Algorithm : Elliptic
Design Options
Match Exactly : both
Design Specifications
Sample Rate : 860 Hz
Response : Bandpass
Specification : Fst1,Fp1,Fp2,Fst2,Ast1,Ap,Ast2
Passband Ripple : 0.1 dB
First Stopband Edge : 84.3 mHz
Second Stopband Atten. : 30 dB
Second Stopband Edge : 67.9315 Hz
Second Passband Edge : 500 mHz
First Passband Edge : 100 mHz
First Stopband Atten. : 30 dB
The very strange parameter is Second Stopband Edge = 67.9315 Hz that seems to me too high considering the high corner frequency of 0.5 Hz. In fact, when i plot the frequency response with
i get the following
where i see that at 67.9315 Hz the attenuation is far below 30 dB. A zoom of the pass-band is the following
With this image, the first stop-band edge seems to be 57 mHz (and not 84.3 mHz as indicated by the command info) and the second stop-band edge seems to be 577 mHz. Why is there such disagreement between the images and the output of the command info ? Is it caused by the very low corner frequencies? Thanks to all.

채택된 답변

Frantz Bouchereau
Frantz Bouchereau 2020년 8월 24일
Emanuele, the passband frequencies are extremely small for the 860 Hz sample rate. I recomend you donwssmple the signal to a much smaller sample rate and then design the filter with the required passband frequencies.

추가 답변 (0개)


Help CenterFile Exchange에서 Filter Design에 대해 자세히 알아보기




Community Treasure Hunt

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

Start Hunting!

Translated by