matlab 6 5 設計數字濾波器

2021-05-26 10:38:24 字數 1789 閱讀 6098

1、用脈衝響應不變法設計乙個butterworth低通數字濾波器,通帶截止頻率為0.4π   ,通帶波紋rp小於3db,阻帶邊界頻率為0.6π,阻帶衰減大於15db,取樣頻率fs=10000hz。假設乙個訊號 

其中f1=1000hz,f2=4000hz。試將原訊號與通過該濾波器的輸出訊號進行比較。 (用經典法設計)

wp=0.4*pi;ws=0.6*pi;rp=3;rs=15;

t=0.0001;nn=128;   %取樣間隔

wp=wp/t;ws=ws/t;   %得到模擬濾波器的頻率—採用脈衝響應不變法的頻率轉換形式

[n,wn]=buttord(wp,ws,rp,rs,'s');   %計算模擬濾波器的最小階數

[z,p,k]=buttap(n);   %設計低通原型數字濾波器

[bap,aap]=zp2tf(z,p,k);   %零點極點增益形式轉換為傳遞函式形式

[b,a]=lp2lp(bap,aap,wn);  %低通濾波器頻率轉換

%[b,a]=butter(n,wn,』s』);

[bz,az]=impinvar(b,a,1/t);  %脈衝響應不變法設計數字濾波器傳遞函式

figure(1)

[h,f]=freqz(bz,az,nn,1/t);  %輸出幅頻響應和相頻響應

subplot(2,1,1),plot(f,20*log10(abs(h)));

xlabel('頻率/hz');ylabel('振幅/db');grid on;

subplot(2,1,2),plot(f,180/pi*unwrap(angle(h)))

xlabel('頻率/hz');ylabel('相位/^o');grid on;

figure(2)

f1=5;f2=30;   %輸入訊號含有的頻率

n=100;   %資料點數

n=0:n-1;t=n*t;   %時間序列

x=sin(2*pi*f1*t)+0.5*cos(2*pi*f2*t);  %輸入訊號

subplot(2,1,1),plot(t,x),title('輸入訊號')

y=filtfilt(bz,az,x);   %對訊號進行濾波

y1=filter(bz,az,x);

subplot(2,1,2),plot(t,y,t,y1,':'),

legend( ' filtfilt ', 'filter')

2、設計乙個butterworth高通數字濾波器,通帶邊界頻率為300hz,阻帶邊界頻率為200hz,通帶波紋小於1db,阻帶衰減大於20db,取樣頻率為1000hz。試繪出其頻率特性圖並編制一測試該濾波器滿足效能的例子。(用完全設計法)

fs=1000;%取樣頻率

wp=300*2/fs;

ws=200*2/fs;

rp=1;

rs=20;nn=128;

[n,wn]=buttord(wp,ws,rp,rs);

[b,a]=butter(n,wn,'high') %n為濾波器的階數

figure(1)

[h,f]=freqz(b,a,nn,fs);   %求得濾波器的頻率特性

subplot(2,1,1),plot(f,20*log10(abs(h)));

xlabel('頻率/hz');

ylabel('振幅/db');

grid on;

subplot(2,1,2),plot(f,180/pi*unwrap(angle(h)))

xlabel('頻率/hz');

ylabel('相位/^o');

MATLAB直接設計數字濾波器

n,wn buttord wp,ws,rp,rs 不加 s 就可以直接求出數字濾波器的係數 b,a butter n,wn,s 求巴特沃斯濾波器係數 現設計一帶通濾波器,要求通帶頻率為1.5 10hz,阻頻率為1和12hz,ap 3,as 15,設計巴特沃斯濾波器 clear all clc clo...

matlab數字濾波器

matlab提供了專門用於求離散系統頻響特性的函式freqz 呼叫freqz 的格式有以下兩種 1 h,w freqz b,a,n 2 h,w freqz b,a,n,whole 1 中b和a分別為離散系統的系統函式分子 分母多項式的係數向量,返回量h則包含了離散系統頻響在 0 pi範圍內n個頻率等...

數字濾波器

數字濾波器,可以分為兩大類 一類為經典濾波器,輸入訊號中的有用成分和希望濾除的成分頻率不同.一類為現代濾波器,其輸入訊號中有用訊號和希望濾除的訊號頻帶交疊.經典濾波器,從頻域上可以分為低通 高通 帶通 帶阻濾波器 從時域特性上來看,數字濾波器可以分為fir 有限衝激響應數字濾波器 和iir 無限衝激...