注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

我的博客

 
 
 

日志

 
 

数字信号处理实验报告——FIR  

2007-12-05 23:41:17|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1.实验目的

2.实验环境(软件、硬件及条件)

   Matlab6.5及其以上版本

3.实验方法

 

 

 

4.实验分析

 

 

 

 

5.实验结论

 思考题解答:

  1.(1)根据技术要求确定待求滤波器的单位取样响应hd(n),选用理想滤波器作为逼近函数, hd(n)=sin(wc(n-a))/(pi(n-a))

其中a=(N-1)/2

(2)根据对过渡带及阻带衰减的要求,选择窗函数的形式,并估计窗口长度N,(尽量选择主瓣窄的窗函数)

(3)计算滤波器的单位取样响应h(n)h(n)=hd(n)*w(n)

(4)验证技术指标是否满足要求。

  2.用窗函数法设计带通滤波器和设计低通滤波器不同的地方就是hd(n)不同,设计带通滤波器时,

Hd(ejw)=e-jwa,w1=<w<=w2,

Hd(ejw)=0,其他

傅立叶反变换后为

hd(n)=(ejw1(n-a)- ejw2(n-a)/(2*pi*j*(n-a)),

最后所得

h(n)= hd(n)*w(n),其中w(n)为窗函数

再经傅立叶变换就得到所求的带通滤波器。

结论:

采用窗函数法,设计简单,方便,也实用,但要求用计算机,且边界频率不易控制。窗函数设计法是从时域出发的一种设计方法,但一般技术指标是在频域给出的,所以一般不用窗函数法设计。

附件

1.

实验第一步代码及结果

function fir()

for i=0:2

N=input('ÇëÊäÈëNµÄ³¤¶È,15 or 33:');

if N==0

   break;

end

w=0:0.02*pi:pi;

wc=pi/4;

a=(N-1)/2;

n=0:1:N-1;

hd=sin(wc*(n-a+eps))./(pi*(n-a+eps));

hs=window2(n,N);

h=hd.*hs;

H=dtft(h,w);

Ha=dtft(h,0);

H=H/Ha;

figure;

subplot(2,1,1);

plot(w/pi,20*log(abs(H)+eps));

grid on;

subplot(2,1,2);

plot(w/pi,angle(H));

grid on;

end

 

function X=dtft(x,w)

X=x*exp(-j*[1:length(x)]'*w);

 

function x=window1(n,N)  %¾ØÐδ°

x=[(n-0)>=0]-[n-0-N>=0];

 

function x=window2(n,N)   %ÉýÓàÏÒ´°

t=window1(n,N);

x=0.5*(1-cos(2*pi*n/(N-1))).*t;

 

function x=window3(n,N)   %¸Ä½øÐÍÉýÓàÏÒ´°

t=window1(n,N);

x=(0.54-0.46*cos(2*pi*n/(N-1))).*t;

 

function x=window4(n,N)   %¶þ½×ÉýÓàÏÒ´°

t=window1(n,N);

x=(0.42-0.5*cos(2*pi*n/(N-1))+0.08*cos(4*pi*n/(N-1))).*t;

 

 

2.

实验第二步代码及结果

function fir1() 

N=33;

wc=pi/4;

n=0:1:N-1;

a=(N-1)/2;

w=0:0.02:pi;

hd=sin(wc*(n-a+eps))./(pi*(n-a+eps));

%´°ÌåÐòÁÐ

hs1=window1(n,N);

hs2=window2(n,N);

hs3=window3(n,N);

hs4=window4(n,N);

%Â˲¨Æ÷ÐòÁÐ

h1=hd.*hs1;

h2=hd.*hs2;

h3=hd.*hs3;

h4=hd.*hs4;

%Â˲¨Æ÷ƵÂʺ¯Êý

H1=dtft(h1,w);

H2=dtft(h2,w);

H3=dtft(h3,w);

H4=dtft(h4,w);

%¹éÒ»»¯

H1=H1/H1(1);

H2=H2/H2(1);

H3=H3/H3(1);

H4=H4/H4(1);

%»­Í¼

figure;

subplot(2,2,1);

plot(w,20*log(abs(H1)+eps));

title('¾ØÐδ°');

grid on;

subplot(2,2,2);

plot(w,20*log(abs(H2)+eps));

title('ÉýÓàÏÒ´°');

grid on;

subplot(2,2,3);

plot(w,20*log(abs(H3)+eps));

title('¸Ä½øÐÍÉýÓàÏÒ´°');

grid on;

subplot(2,2,4);

plot(w,20*log(abs(H4)+eps));

title('¶þ½×ÉýÓàÏÒ¾ØÐδ°');

grid on;

 

 

  评论这张
 
阅读(493)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017