天天看點

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

實驗4 用雙線性變換法設計 IIR 濾波器

實驗目的

熟悉模拟  Batterworth濾波器設計和用雙線性變換法設計IIR數字濾波器的方法。

實驗原理

利用雙線性變換設計 IIR濾波器,首先要設計出滿足名額要求的模拟濾波器的傳遞函數

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 ,然後由

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 通過雙線性變換可得所要設計的 IIR濾波器的系統函數

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 。

如果給定的名額為數字濾波器的名額,則首先要轉換成模拟域名額。

  1. 低通數字濾波器設計

數字域與模拟域關系

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
  1. 高通數字濾波器設計

數字域與模拟域關系

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

實驗内容及要求

  1. 編寫用雙線性變換法設計 Batterworth 低通 IIR數字濾波器的程式,要求通帶内頻率低于  
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
     時,容許幅度誤差在
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
     之内,頻率在
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
     到
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
     之間的阻帶衰減大于 15dB。其中要求參數
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
      ,
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
      ,
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
     和
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
     可由鍵盤輸入。
  2. 以 
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
    為采樣間隔,在螢幕上列印出數字濾波器的頻率區間
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
     上的幅頻響應特性曲線( 
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
    )。
  3. 在螢幕上列印出 
    數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
    的分子,分母多項式系數。

實驗結果

實驗代碼如下:

close all 
clear all  
%可輸入
%wp=input('wp: ');   %0.2*pi
%ws=input('ws: ');   %0.3*pi
%Rp=input('Rp: ');   %1
%Rs=input('Rs: ');   %15
wp=0.2*pi;
ws=0.3*pi;
Rp=1;
Rs=15;
 
Fs=1;
wp1=2*Fs*tan(wp/2);  %歸一化
ws1=2*Fs*tan(ws/2);
[N,Wn]=buttord(wp1,ws1,Rp,Rs,'s');  %巴特沃斯濾波器
%wp1模拟濾波器通帶截止頻率  wp2阻帶截止頻率  Rp通帶最大衰減  Rs阻帶最大衰減
%N最小階數  Wn濾波器固有頻率
[Z,P,K]=buttap(N);   %低通原型模拟濾波器
%Z P K 零點矢量 極點矢量 增益
[Bap,Aap]=zp2tf(Z,P,K);
%Bap Aap 傳遞函數分子和分母的多項式系數
[b,a]=lp2lp(Bap,Aap,Wn);    %b a 所設計的模拟濾波器系統函數的分子 分母系數
[bz,az]=bilinear(b,a,Fs);   %bz az 所設計的數字濾波器系統函數的分子 分母系數
[H,W]=freqz(bz,az,64);  %freqz函數自動将64個點均勻設定在[0~pi]之間 計算出64個點的頻率響應存放于H向量中,64個頻率存放在W向量中
subplot(2,1,1);
plot(W/pi,abs(H));  %幅頻特性
grid;
xlabel('頻率');
ylabel('幅頻響應特性曲線');
subplot(2,1,2);
plot(W/pi,20*log10(abs(H)));%幅頻特性(dB)
grid;
xlabel('頻率');
ylabel('幅頻響應特性曲線(dB)');
bz
az
 
           

實驗結果如下:

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

bz =

    0.0007    0.0044    0.0111    0.0148    0.0111    0.0044    0.0007

az =

    1.0000   -3.1836    4.6222   -3.7795    1.8136   -0.4800    0.0544

實驗5 用視窗法設計 FIR 濾波器

實驗目的

了解一個實際濾波器設計過程,加深掌握用視窗法設計FIR 濾波器的原理和窗函數對濾波器性能的影響。

實驗原理

設低通濾波器的時延為

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 ,即:

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

這是一個以

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 為中心的偶對稱的無限長非因果序列。這樣一個無限長的序列怎樣用一個有限長序列去近似呢?最簡單的辦法就是直接截取它的一段來代替它。例如把 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

到  

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

的一段截取來作為

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 ,但是為要保證所得到的是線性相位濾波器。必須滿足

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

  的對稱性,是以時延 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

應該取

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 長度的一半,即 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

但是一般來說,視窗函數并不一定是矩形函數,可以在矩形以内還對 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

作一定的權重處理,是以,一般可以表示為

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

這裡

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 就是視窗函數。這種對理想機關取樣響應加窗的處理對頻率響應會産生以下三點影響:

(1)使理想特性不連續的邊沿加寬,形成一過渡帶,過渡帶的寬度取決于視窗頻譜的主瓣寬度。

(2)在過渡帶兩旁産生肩峰和餘振,它們取決于視窗頻譜的旁瓣;旁瓣越多,餘振也越多;旁瓣相對值越大,肩峰則越強。

(3)增加截取長度

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 ,隻能縮小視窗頻譜的主瓣寬度而不能改變旁瓣的相對值;旁瓣與主瓣的相對關系隻決定于視窗函靈敏的形狀。是以增加 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

,隻能相對應減小過渡帶寬。而不能改變肩峰值。肩峰值的大小直接決定通帶内的平穩和阻帶的衰減,對濾波器性能有很大關系。例如矩形窗的情況下,肩峰達

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 ,緻使阻帶最小衰減隻有 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 分貝,這在工程上往往是不夠的。怎樣才能改善阻帶的衰減特性呢?隻能從改善視窗函數的形狀上找出路,是以希望的視窗頻譜中應該減少旁瓣,使能量集中在主瓣,這樣可以減少肩峰和餘振,提高阻帶的衰減。而且要求主瓣寬度盡量窄,以獲得較陡的過渡帶,然而這兩個要求總不能兼得,往往需要用增加主瓣寬度帶換取決瓣的抑制,于是提出了海明窗、凱寬窗、切比雪夫窗等視窗函數。

實驗内容及要求

用改進餘弦窗設計一個FIR 線性相應相位低通數字濾波器,已知 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

,  

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

。編寫調試程式,要求在幕幕上顯示出機關脈沖響應 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

的數值,畫出其幅度響應 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

的曲線。

實驗結果

close all 
clear all  
wc=0.5*pi;
N=21;
r=(N-1)/2;
n=0:N-1;
hdn=sin(wc*(n-r))/pi./(n-r);
if rem(N,2)~=0;
hdn(r+1)=wc/pi;
end
 
wn=hamming(N);
h=hdn.*wn';
H=fft(h,512);
w=2*[0:511]/512;
 
subplot(3,1,1);
stem(n,h,'.');
title('h(n)');
xlabel('n');
ylabel('幅度');
 
subplot(3,1,2);
plot(w,abs(H));
title('H(exp(jw))'); 
xlabel('w/pi');
ylabel('幅度'); 
 
subplot(3,1,3);
plot(w,20*log10(abs(H)));
title('H(exp(jw))'); 
xlabel('w/pi');
ylabel('幅度(db)'); 
           
數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

實驗6  IIR 和 FIR 濾波器過濾信号的實作及比較

實驗目的

1、 掌握數字濾波器的計算機仿真方法。

2、 通過觀察對實際心電圖信号的濾波作用,獲得數字濾波的感性知識。

實驗原理

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 是因果FIR 濾波器的機關脈沖響應,其長度為N,當輸入為 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

時,輸出序列

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 為:

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 為低通濾波器 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

,截止頻率 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

,采用海明窗設計出 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

若 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 是 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

濾波器,在通常内頻率低于 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

時,最大衰減小于 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

;在阻帶内  

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

頻率區間上,最小衰減大于

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 。用雙線性變換法設計得到 Batterworth濾波器系統函數 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

為:

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

式中

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

濾波器

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 由三個二階濾波器

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 ,

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 和

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 級聯組成,如下圖所示:

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

可得

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 時,

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器
數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

實驗内容及要求

1、 編寫FIR濾波器仿真程式,計算其對心電圖信号采樣序列

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 的響應序列

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 。

2、 編寫 IIR濾波器仿真程式,計算其對心電圖信号采樣序列 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

的響應序列 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

3、 在通用計算機上運作仿真濾波器程式,在螢幕上列印出 

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

 和

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

  ,并進行比較。

實驗結果

close all 
clear all  
x=[4 -2 0 -4 -6 -4 -2 -4 -6 -6 -4 -4 -6 -6 -2 6 12 8 0 -16 -38 -60 -84 -90-66  -32 -4 -2 -4 8 12 12 10 6 6 6 4 0 0 0 0 0 -2 -4 0 0 0 -2 -2 0 0 -2 -2 -2 -2 0];
A=0.2318;
B1=0.4164;
C1=-0.6006;
B2=0.3093;
C2=0.1888;
B3=0.2692;
C3=-0.0349;
a1=[1 B1 C1];
b1=[A 2*A A];
a2=[1 B2 C2];
b2=[A 2*A A];
a3=[1 B3 C3];
b3=[A 2*A A];
y1=filter(b1,a1,x);
y2=filter(b2,a2,y1);
y3=filter(b3,a3,y2);
y=y3;
subplot(3,1,1)
plot(x);
title('x(n)');
 
subplot(3,1,2)
plot(y);
title('IIR  y2(n)');
 
subplot(3,1,3)
N=21;
Window = hamming(N);
wc=0.2*pi;
hn=fir1(N-1,wc/pi,Window);
yn=conv(x,hn);
plot(yn);
title('FIR  y1(n)');
           
數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

FIR 延遲

數字信号處理:設計濾波器及比較 雙線性變換法設計 IIR 濾波器 視窗法設計 FIR 濾波器

實驗總結

  1. 數字濾波器作用:利用離散時間系統的特性對輸入信号波形(或頻譜)進行加工處理,把輸入序列x(n)變換成一定的輸出序列y(n)進而達到改變信号頻譜的目的。
  2. 運算量 FIR 大原因:得到嚴格的線性相位,階數高,運算次數高,延時比較大。
  3.   FIR 存儲速度更快: FIR 可以采用非遞歸結構;可以利用快速傅裡葉算法。

通過本次試驗,我明白了 FIR 和IIR的濾波原理,并了解了它們的差別。

繼續閱讀