实验四用窗函数法设计FIR数字滤波器文档格式.docx

上传人:b****5 文档编号:19138654 上传时间:2023-01-04 格式:DOCX 页数:12 大小:240.75KB
下载 相关 举报
实验四用窗函数法设计FIR数字滤波器文档格式.docx_第1页
第1页 / 共12页
实验四用窗函数法设计FIR数字滤波器文档格式.docx_第2页
第2页 / 共12页
实验四用窗函数法设计FIR数字滤波器文档格式.docx_第3页
第3页 / 共12页
实验四用窗函数法设计FIR数字滤波器文档格式.docx_第4页
第4页 / 共12页
实验四用窗函数法设计FIR数字滤波器文档格式.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

实验四用窗函数法设计FIR数字滤波器文档格式.docx

《实验四用窗函数法设计FIR数字滤波器文档格式.docx》由会员分享,可在线阅读,更多相关《实验四用窗函数法设计FIR数字滤波器文档格式.docx(12页珍藏版)》请在冰豆网上搜索。

实验四用窗函数法设计FIR数字滤波器文档格式.docx

(3)

,用四种窗函数设计线性相位低通滤波器,绘制相应的幅频特性曲线,观察3dB带宽和20dB带宽以及阻带最小衰减,比较四种窗函数对滤波器特性的影响。

三.实验主要仪器设备和材料

计算机,MATLAB6.5或以上版本

四.实验方法、步骤及结果测试

如果所希望的滤波器的理想的频率响应函数为

,则其对应的单位脉冲响应为

(4.1)

窗函数设计法的基本原理是用有限长单位脉冲响应序列

逼近

由于

往往是无限长序列,而且是非因果的,所以用窗函数

截断,并进行加权处理,得到:

(4.2)

就作为实际设计的FIR数字滤波器的单位脉冲响应序列,其频率响应函数

(4.3)

式中,N为所选窗函数

的长度。

我们知道,用窗函数法设计的滤波器性能取决于窗函数

的类型及窗口长度N的取值。

设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N。

各种类型的窗函数可达到的阻带最小衰减和过渡带宽度见表4.1。

表4.1各种窗函数的基本参数

窗函数

旁瓣峰值幅度/dB

过渡带宽

阻带最小衰减/dB

矩形窗

-13

4π/N

-12

三角形窗

-25

8π/N

汉宁窗

-31

-44

哈明窗

-41

-53

不莱克曼窗

-57

12π/N

-74

凯塞窗(α=7.865)

10π/N

-80

这样选定窗函数类型和长度N之后,求出单位脉冲响应

,并按照式(4.3)求出

是否满足要求,要进行演算。

一般在

尾部加零使长度满足2的整数次幂,以便用FFT计算

如果要观察细节,补零点数增多即可。

如果

不满足要求,则要重新选择窗函数类型和长度N,再次验算,直至满足要求。

如果要求线性相位特性,则

还必须满足

根据上式中的正、负号和长度N的奇偶性又将线性相位FIR滤波器分成四类。

要根据所设计的滤波特性正确选择其中一类,例如,要设计线性相位低通特性,可以选择

这一类,而不能选择

这一类。

主程序框图如图4.1所示。

其中幅度特性要求用dB表示。

画图时,用

打印幅度特性。

第k点对应的频率

为使曲线包络更接近

的幅度特性曲线,DFT变换区间要选大些。

例如窗口长度N=33时,可通过在

末尾补零的方法,使长度变为64,再进行64点DFT,则可以得到更精确的幅度衰减特性曲线。

 

下面给出MATLAB主程序:

%实验四,用窗函数法设计FIR数字滤波器

b=1;

closeall;

i=0;

while(b);

temp=menu('

选择窗函数长度N'

'

N=10'

N=15'

N=20'

N=25'

N=30'

N=33'

N=35'

N=40'

N=45'

N=50'

N=55'

N=60'

N=64'

);

menu1=[10,15,20,25,30,33,35,40,45,50,55,60,64];

N=menu1(temp);

选择逼近理想低通滤波器截止频率Wc'

Wc=pi/4'

Wc=pi/2'

Wc=3*pi/4'

Wc=pi'

Wc=0.5'

Wc=1.0'

Wc=1.5'

Wc=2.0'

Wc=2.5'

Wc=3.0'

menu2=[pi/4,pi/2,3*pi/4,pi,0.5,1,1.5,2,2.5,3];

w=menu2(temp);

n=[0:

(N-1)];

hd=ideal(w,N);

%得到理想低通滤波器

k=menu('

请选择窗口类型:

'

boxcar'

hamming'

hanning'

blackman'

ifk==1

B=boxcar(N);

string=['

Boxcar'

N='

num2str(N)];

elseifk==2

B=hamming(N);

Hamming'

elseifk==3

B=hanning(N);

Hanning'

elseifk==4

B=blackman(N);

Blackman'

end

h=hd.*(B)'

;

%得到FIR数字滤波器

[H,m]=freqz(h,[1],1024,'

whole'

%求其频率响应

mag=abs(H);

%得到幅值

db=20*log10((mag+eps)/max(mag));

pha=angle(H);

%得到相位

i=i+1;

figure(i)

subplot(2,2,1);

n=0:

N-1;

stem(n,h,'

.'

axis([0,N-1,-0.1,0.3]);

holdon;

x=zeros(N);

plot(n,x,'

-'

xlabel('

n'

ylabel('

h(n)'

title('

实际低通滤波器的h(n)'

text((0.3*N),0.27,string);

holdoff;

subplot(2,2,2);

plot(m/pi,db);

axis([0,1,-100,0]);

w/pi'

dB'

衰减特性(dB)'

grid;

subplot(2,2,3);

plot(m,pha);

7;

x=zeros(8);

相频特性'

频率(rad)'

相位(rad)'

axis([0,3.15,-4,4]);

subplot(2,2,4);

plot(m,mag);

频率特性'

频率W(rad)'

幅值'

axis([0,3.15,0,1.5]);

text(0.9,1.2,string);

b=menu('

DoYouwantToContinue?

Yes'

No'

ifb==2

b=0;

end

temp=menu('

CloseAllFigure?

iftemp==1

closeall

程序运行结果:

运行程序,根据实验内容要求和程序提示选择你要进行的实验参数。

三个实验参数选定后,程序运行输出用所选窗函数设计的实际FIR低通数字滤波器的单位脉冲响应h(n)、幅频衰减特性(20lg|H(ejw)|)、相频特性及幅频特性|H(ejw)|的波形,h(n)和|H(ejw)|图中标出了所选窗函数类型及其长度N值。

对四种窗函数(N=15和N=33)的程序运行结果如图4-2到图4-9所示,由图可以看出用各种窗函数设计的FIR滤波器的阻带最小衰减及过渡带均与教材中一致。

在通带内均为严格相位特性。

图4-2矩形窗(N=15)

图4-3矩形窗(N=33)

图4-4哈明窗(N=15)

图4-5哈明窗(N=33)

图4-6汉宁窗(N=15)

图4-7汉宁窗(N=33)

图4-8布莱克曼窗(N=15)

图4-9布莱克曼窗(N=33)

五.实验报告要求

(1)简述实验原理及目的。

(2)按照实验步骤以及要求,比较各种情况下的滤波性能,说明窗口长度N和窗函数类型对滤波特性的影响。

(3)总结用窗函数法设计FIR滤波器的主要特点。

(4)简要回答思考题。

思考题

如果给定通带截止频率和阻带截止频率以及阻带最小衰减,如何用窗函数法设计线性相位低通滤波器,写出设计步骤。

如果要求用窗函数法设计带通滤波器,而且给定上、下边带截止频率为

,试求理想带通的单位脉冲响应

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 建筑土木

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1