matlab可以使用fir1函式設計低通、高通、低通、帶通等具有嚴格線性相位特性的濾波器。
fir1函式的幾種語法如下:
b=
fir1
(n,wn)
; b=
fir1
(n,wn,
'ftype');
b=fir1
(n,wn,
'ftype'
,window)
b=fir1(.
..,'noscale'
)
各個引數的含義:
設計濾波器,採用漢明窗,長度41(階數40),取樣頻率2000hz:
clear all; close all; clc;
% 濾波器長度
n=41
;%取樣頻率
fs=2000
;
%各種濾波器的特徵頻率
fc_lpf=
200;
fc_hpf=
200;
fp_bandpass=
[200
400]
;fc_stop=
[200
400];
%以取樣頻率的一般,對頻率歸一化
wn_lpf=fc_lpf
2/fs;
wn_hpf=fc_hpf
2/fs;
wn_bandpass=fp_bandpass
2/fs;
wn_stop=fc_stop
2/fs;
%採用fir1函式設計fir濾波器
b_lpf=
fir1
(n-1
,wn_lpf)
;b_hpf=
fir1
(n-1
,wn_hpf,
『high』);
b_bandpass=
fir1
(n-1
,wn_bandpass,
『bandpass』);
b_stop=
fir1
(n-1
,wn_stop,
『stop』);
%求幅頻響應
m_lpf=
20log
(abs
(fft
(b_lpf)))
/log(10
);m_hpf=
20log
(abs
(fft
(b_hpf)))
/log(10
);m_bandpass=
20log
(abs
(fft
(b_bandpass)))
/log(10
);m_stop=
20log
(abs
(fft
(b_stop)))
/log(10
);% 設定頻率響應的橫座標單位為hz
x_f=0:
(fs/
length
(m_lpf)
):fs/2;
% 單位脈衝響應
subplot(4
,2,1
);stem
(b_lpf)
;xlabel
(『n』);
ylabel
(『h(n)』);
legend
(『lpf』);
subplot(4
,2,3
);stem
(b_hpf)
;xlabel
(『n』);
ylabel
(『h(n)』);
legend
(『hpf』);
subplot(4
,2,5
);stem
(b_bandpass)
;xlabel
(『n』);
ylabel
(『h(n)』);
legend
(『bandpass』);
subplot(4
,2,7
);stem
(b_stop)
;xlabel
(『n』);
ylabel
(『h(n)』);
legend
(『stop』);
% 幅頻響應
subplot(4
,2,2
);plot
(x_f,
m_lpf(1
:length
(x_f)))
;xlabel
(『頻率(hz)』);
ylabel
(『幅度(db)』
,『fontsize』,8
);legend
(『lpf』
)subplot(4
,2,4
);plot
(x_f,
m_hpf(1
:length
(x_f)))
;xlabel
(『頻率(hz)』);
ylabel
(『幅度(db)』
,『fontsize』,8
);legend
(『hpf』
)subplot(4
,2,6
);plot
(x_f,
m_bandpass(1
:length
(x_f)))
;xlabel
(『頻率(hz)』);
ylabel
(『幅度(db)』
,『fontsize』,8
);legend
(『bandpass』
)subplot(4
,2,8
);plot
(x_f,
m_stop(1
:length
(x_f)))
;xlabel
(『頻率(hz)』);
ylabel
(『幅度(db)』
,『fontsize』,8
);legend
(『stop』);
**脈衝相應和幅頻響應圖:
前面已經設計了低通,帶通,高通的濾波器,根據引數設定得到了濾波器係數:
b_lpf、b_hpf、b_bandpass、b_stop
假設我們現在由原始資料xx,要對xx進行濾波,得到資料yy,在matlab應該怎麼操作呢
就一句:
yy=
filter
(b_lpf,
1,xx)
;
matlab可以使用fir1函式設計低通、高通、低通、帶通等具有嚴格線性相位特性的濾波器。
fir1函式的幾種語法如下:
b=
fir1
(n,wn)
; b=
fir1
(n,wn,
'ftype');
b=fir1
(n,wn,
'ftype'
,window)
b=fir1(.
..,'noscale'
)
各個引數的含義:
設計濾波器,採用漢明窗,長度41(階數40),取樣頻率2000hz:
clear all; close all; clc;
% 濾波器長度
n=41
;%取樣頻率
fs=2000
;
FIR濾波器設計
fir濾波器的優越性 相位對應為嚴格的線性,不存在延遲失真,僅僅有固定的時間延遲 因為不存在穩定性問題,設計相對簡單 僅僅包括實數演算法,不涉及複數演算法,不須要遞推運算,長度為m,階數為m 1,計算值約為m 2。關於fir濾波器的幅頻特性和相頻特性。在人們不關心相位時,能夠讓幅頻特性常為正,原來為...
FIR濾波器設計
該文件為了說明fir濾波器,iir濾波器的原理,數學含義,設計方法 一 原理 1 fir有限衝擊響應,iir無限衝擊響應。前者無反饋,只與當前和歷史輸入有關,後者有反饋,不僅與當前和歷史輸入有關,還與歷史輸出有關。fir輸出相位線性,設計簡單,但是階數更高 iir輸出相位不線性,設計困難,但相同效能...
FIR 帶通濾波器設計
本文將針對乙個含有 5hz 15hz 和 30hz 的混和正弦波訊號,設計乙個 fir 帶通濾波器,給出利用 matlab 實現的三種方法 程式設計法 fdatool 設計法和 sptool 設計法。參 數要求 取樣頻率 fs 100hz 通帶下限截止頻率 fc1 10 hz 通帶上限截止頻率 fc...