衝擊響應不變法函式
[bz,az]=impinvar(b,a,Fs)
[bz,az]=impinvar(b,a)
例如:取取樣頻率f=1KHz,用雙線性變換法設計五階Butterworth低通數字濾波器,繪出模擬濾波器與數字濾波器的幅頻與相頻特性,MATLAB程式如下:
[z,p,k]=buttap(5) ;% 設計五階Butterworth低通模擬濾波器原型
[zd,pd,kd]=bilinear(z,p,k,1000);%雙線性變換得到低通數字濾波器
[b,a]=zp2tf(zd,pd,kd);%濾波器型別轉換
w=128;
freqs(b,a,w)
figure;
freqz(b,a,w)
例項:1、設帶通濾波器的濾波器中心頻率為W0=2KHz,頻寬為BW=100Hz, 取取樣頻率f=10kHZ,用脈衝相應不變法設計,設計五階帶通Butterworth數字濾波器,繪出數字濾波器的頻譜特性
[z,p,k]=buttap(5);
[b,a]=zp2tf(z,p,k);
w0=2000;
[bt,at]=lp2bp(b,a,w0,10000);
[bz,az]=impinvar(b,a,w);
freqz(bt,at,w)
2、直接設計五階butterworth帶通濾波器,繪出頻譜圖。(高階與低端截止頻率分別為0.2和0.9)
w=[0.2,0.9];
[b,a]=butter(5,w);
freqz(b,a)
3、設高通截止頻率為w0=10000Hz, 取取樣頻率f=20000,用雙線性變換法設計六階高通Butterworth數字濾波器,繪出數字濾波器的頻譜特性
[z,p,k]=besselap(6);
w0=10000;
[bt,at]=lp2hp(b,a,w0);
[bz,az]=bilinear(bt,at,20000);
freqz(bz,az,w)
4、取取樣頻率f=100Hz,用雙線性變換法設計五階Butterworth低通數字濾波器,繪出模擬濾波器與數字濾波器的幅頻與相頻特性
[zd,pd,kd]=bilinear(z,p,k,100);
[b,a]=zp2tf(zd,pd,kd);
freqs(b,a,w);
具體的得根據情況自己確定
衝擊響應不變法函式
[bz,az]=impinvar(b,a,Fs)
[bz,az]=impinvar(b,a)
例如:取取樣頻率f=1KHz,用雙線性變換法設計五階Butterworth低通數字濾波器,繪出模擬濾波器與數字濾波器的幅頻與相頻特性,MATLAB程式如下:
[z,p,k]=buttap(5) ;% 設計五階Butterworth低通模擬濾波器原型
[zd,pd,kd]=bilinear(z,p,k,1000);%雙線性變換得到低通數字濾波器
[b,a]=zp2tf(zd,pd,kd);%濾波器型別轉換
w=128;
freqs(b,a,w)
figure;
freqz(b,a,w)
例項:1、設帶通濾波器的濾波器中心頻率為W0=2KHz,頻寬為BW=100Hz, 取取樣頻率f=10kHZ,用脈衝相應不變法設計,設計五階帶通Butterworth數字濾波器,繪出數字濾波器的頻譜特性
[z,p,k]=buttap(5);
[b,a]=zp2tf(z,p,k);
w=128;
w0=2000;
[bt,at]=lp2bp(b,a,w0,10000);
[bz,az]=impinvar(b,a,w);
freqz(bt,at,w)
2、直接設計五階butterworth帶通濾波器,繪出頻譜圖。(高階與低端截止頻率分別為0.2和0.9)
figure;
w=[0.2,0.9];
[b,a]=butter(5,w);
freqz(b,a)
3、設高通截止頻率為w0=10000Hz, 取取樣頻率f=20000,用雙線性變換法設計六階高通Butterworth數字濾波器,繪出數字濾波器的頻譜特性
[z,p,k]=besselap(6);
[b,a]=zp2tf(z,p,k);
w=128;
w0=10000;
[bt,at]=lp2hp(b,a,w0);
[bz,az]=bilinear(bt,at,20000);
freqz(bz,az,w)
4、取取樣頻率f=100Hz,用雙線性變換法設計五階Butterworth低通數字濾波器,繪出模擬濾波器與數字濾波器的幅頻與相頻特性
[z,p,k]=buttap(5);
[zd,pd,kd]=bilinear(z,p,k,100);
[b,a]=zp2tf(zd,pd,kd);
w=128;
freqs(b,a,w);
figure;
freqz(b,a,w)
具體的得根據情況自己確定