数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx

上传人:b****3 文档编号:6790034 上传时间:2023-05-10 格式:DOCX 页数:11 大小:106.40KB
下载 相关 举报
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第1页
第1页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第2页
第2页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第3页
第3页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第4页
第4页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第5页
第5页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第6页
第6页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第7页
第7页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第8页
第8页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第9页
第9页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第10页
第10页 / 共11页
数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx

《数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx》由会员分享,可在线阅读,更多相关《数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx(11页珍藏版)》请在冰点文库上搜索。

数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001.docx

数字信号处理课程设计用巴特莱特窗函数法设计数字FIR低通滤波器001

 

 

课程设计

 

课程设计名称:

数字信号处理

专业班级:

电信0904班

学生姓名:

李永魁

学号:

200948300419

指导教师:

闫正航

课程设计时间:

2012年2月20日到3月15日

数字信号处理专业课程设计任务书

学生姓名

李永魁

专业班级

电信0904

学院名称

信息科学与工程学院

题目

用巴特莱特窗函数法设计数字FIR低通滤波器

课题性质

其他

课题来源

自拟

指导教师

闫正航

同组姓名

董凯华

主要内容

用巴特莱特窗函数法设计一个数字FIR低通滤波器,要求通带边界频率为400Hz,阻带边界频率为500Hz,通带最大衰减1dB,阻带最小衰减40dB,抽样频率为2000Hz,用MATLAB画出幅频特性,画出并分析滤波器传输函数的零极点;

信号

经过该滤波器,其中

300Hz,

600Hz,滤波器的输出

是什么?

用Matlab验证你的结论并给出

的图形。

任务要求

1.掌握用巴特莱特窗函数法设计数字FIR低通滤波器的原理和设计方法。

2.掌握用Kaiser方程估计FIR数字滤波器长度的方法。

3.求出所设计滤波器的Z变换。

4.用MATLAB画出幅频特性图并验证所设计的滤波器。

参考文献

1、程佩青著,《数字信号处理教程》,清华大学出版社,2001

2、SanjitK.Mitra著,孙洪,余翔宇译,《数字信号处理实验指导书(MATLAB版)》,电子工业出版社,2005年1月

3、郭仕剑等,《MATLAB7.x数字信号处理》,人民邮电出版社,2006年

4、胡广书,《数字信号处理理论算法与实现》,清华大学出版社,2003年

审查意见

指导教师签字:

教研室主任签字:

年月日

说明:

本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页

一需求分析

数字信号处理是把许多经典的理论体系作为自己的理论基础,同时又使自己成为一系列新兴学科的理论基础。

现如今随着电子设备工作频率范围的不断扩大,电磁干扰也越来越严重,接收机接收到的信号也越来越复杂。

为了得到所需要频率的信号,就需要对接收到的信号进行过滤,从而得到所需频率段的信号,这就是滤波器的工作原理。

对于传统的滤波器而言,如果滤波器的输入,输出都是离散时间信号,则该滤波器的冲激响应也必然是离散的,这样的滤波器定义为数字滤波器。

它通过对采样数据信号进行数学运算来达到频域滤波的目的.

滤波器在功能上可分为四类,即低通(LP)、高通(HP)、带通(BP)、带阻(BS)滤波器等,每种又有模拟滤波器(AF)和数字滤波器(DF)两种形式。

对数字滤波器,从实现方法上,具有有限长冲激响应的数字滤波器被称为FIR滤波器,具有无限长冲激响应的数字滤波器被称为IIR滤波器。

FIR数字滤波器的主要优点有:

一、具有严格的线性相位特性;二、不存在稳定性问题;三、可利用DFT来实现。

这些优点使FIR数字滤波器得到了广泛应用。

窗函数法是一种设计FIR数字滤波器的基本方法,但它不是最佳设计方法,在满足同样设计指标的情况下,用这种方法设计出的滤波器的阶数通常偏大。

在窗函数法的基础上,以所定义的逼近误差最小为准则来进行优化设计的算法,由于其中的逼近误差可根据不同的设计要求进行定义,故此算法适应性强,它既可用于设计选频型滤波器,又适用于非选频型滤波器的设计。

常用的窗函数有矩形窗函数、巴特莱特窗函数、三角窗函数、汉宁(Hann)窗函数、海明(Hamming)窗函数、布莱克曼(Blackman)窗函数、凯塞(Kaiser)窗函数等。

本设计通过MATLAB软件对FIR型滤波器进行理论上的实现,利用巴特莱特窗函数设计数字FIR低通滤波器。

FIR系统不像IIR系统那样易取得较好的通带和阻带衰减特性,要取得较好的衰减特性,一般要求H(z)阶次要高,也即M要大。

FIR系统有自己突出的优点:

系统总是稳定的;易实现线性相位;允许设计多通带(或多阻带)滤波器,后两项都是IIR系统不易实现的。

FIR数字滤波器的设计方法有多种,如窗函数设计法、频率采样法和Chebyshev逼近法等。

随着Matlab软件尤其是Matlab的信号处理工作箱的不断完善,不仅数字滤波器的计算机辅助设计有了可能,而且还可以使设计达到最优化。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

二设计内容

用巴特莱特窗函数法设计一个数字FIR低通滤波器,要求通带边界频率为400Hz,阻带边界频率为500Hz,通带最大衰减1dB,阻带最小衰减40dB,抽样频率为2000Hz,用MATLAB画出幅频特性,画出并分析滤波器传输函数的零极点;信号

经过该滤波器,其中

300Hz,

600Hz,滤波器的输出

是什么?

用Matlab验证你的结论并给出

的图形。

三设计要求

1.掌握用巴特莱特窗函数法设计数字FIR低通滤波器的原理和设计方法。

2.掌握用Kaiser方程估计FIR数字滤波器长度的方法。

3.求出所设计滤波器的Z变换。

4.用MATLAB画出幅频特性图并验证所设计的滤波器。

四设计概要

1.设计FIR数字滤波器的基本方法:

FIR数字滤波器的系统函数无分母,为

,系统频率响应可写成:

,令

=

,H(w)为幅度函数,

称为相位函数。

这与模和辐角的表示方法不同,H(w)为可为正可为负的实数,这是为了表达上的方便。

如某系统频率响应

=sin4w

如果采用模和幅角的表示方法,sin4w的变号相当于在相位上加上

(因-1=

),从而造成相位曲线的不连贯和表达不方便,用

则连贯而方便。

窗函数法又称傅里叶级数法,其设计是在时域进行的。

 函数一般是无限长且非因果的,设计时需用一个合适的窗函数把它截成有限长的因果序列,使对应的频率响应(的傅里叶变换)尽可能好地逼近理想频率响应。

窗函数法的主要缺点是:

一、不容易设计预先给定截止频率的滤波器;二、满足同样设计指标的情况下所设计出的滤波器的阶数通常偏大。

一些固定窗函数的特性表

名称

主瓣宽度

过度带宽

最小阻带衰减

矩形

4

/(2M+1)

0.92

/M

20.9dB

巴特利特

4

/(2M+1)

2.1

/M

25dB

汉宁

8

/(2M+1)

3.11

/M

43.9dB

海明

8

/(2M+1)

3.32

/M

54.5dB

布莱克曼

12

/(2M+1)

5.56

/M

75.3dB

 2.FIR数字滤波器设计的基本步骤如下:

(1)确定技术指标

在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。

在很多实际应用中,数字滤波器常被用来实现选频操作。

因此,指标的形式一般在频域中给出幅度和相位响应。

幅度指标主要以2种方式给出。

第一种是绝对指标。

他提供对幅度响应函数的要求,一般应用于FIR滤波器的设计。

第二种指标是相对指标。

他以分贝值的形式给出要求。

本文中滤波器的设计就以线性相位FIR滤波器的设计为例。

(2)逼近

确定了技术指标后,就可以建立一个目标的数字滤波器模型(通常采用理想的数字滤波器模型)。

之后,利用数字滤波器的设计方法(窗函数法、频率采样法等),设计出一个实际滤波器模型来逼近给定的目标。

(3)性能分析和计算机仿真

上两步的结果是得到以差分或系统函数或冲激响应描述的滤波器。

根据这个描述就可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计算机仿真实现设计的滤波器,再分析滤波结果来判断。

3.程序流程图

开始

读入窗口长度

计算hd(n)(

调用窗函数子程序找w(n)

计算h(n)=hd(n)w(n)

调用子程序计算H(k)=DFT[h(n)]

调用绘图子程序绘制H(k)幅度相位曲线

结束

4.运行环境

PC机MATLAB

5.开发工具和编程语言

MATLAB语言

五源程序

%实验设计程序如下:

clc;

fp=500;fs=400;Fs=2000;

Rp=1;

Rs=40;

wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;

i=1-10^(-Rp/20);

j=10^(-Rs/20);

%N=kaiord(0.1087,0.0100,500,400,2000)

n=-20*log(sqrt(i*j))-13;

N=n/14.6/(wp-ws)*2*pi

floor(N);

N=76;

wn=(wp+ws)/2/pi;

b=fir1(N,wn,bartlett(N+1));

figure

(1)

[h,w]=freqz(b,1,512,2000);

g=20*log10(abs(h));

plot(w,g);gridon;

axis([01000-503]);

xlabel('频率,Hz');ylabel('增益,dB')

title('bartlettlowpassFilter');

figure

(2)

zplane(b,1);

xlabel('b');ylabel('a');

title('传输零极点');

f1=300;f2=600;

n=0:

600;

t=n/10000;

x1=sin(2*pi*f1*t);

x2=sin(2*pi*f2*t);

x=x1+x2;

figure(3)

subplot(2,1,1);

plot(x1);gridon;

axis([0,50*pi,-3,3]);

xlabel('t');ylabel('x1');

title('x1的波形');

subplot(2,1,2);

plot(x2);gridon;

axis([0,50*pi,-3,3]);

xlabel('t');ylabel('x2');

title('x2的波形');

figure(4)

subplot(2,1,1);

plot(x);gridon;

axis([0,50*pi,-3,3]);

xlabel('t');ylabel('x');

title('输入x的波形');

y=filter(b,1,x);

subplot(2,1,2)

plot(y);gridon;

axis([0,50*pi,-5,5]);

xlabel('t');ylabel('y');

title('滤波器输出y的波形');

六运行结果

七程序调试与分析

由于对matlab不太熟悉,所以编写程序有一定难度,但通过请教老师和同学,最终还是编出的所想要的程序。

但在程序调试的过程中也出现了许多的错误,特别是kaiser函数的定义与运用,不过经过耐心的学习,最终还是调试出了比较理想的结果。

程序的运行结果如上图所示,通过图形我们可以清楚的看出滤波器的特性和功能。

另外通过滤波器的零极点,我们还可以知道滤波器的传输特性。

本次实验结果较好地反映出了用巴特莱特窗函数法设计数字FIR低通滤波器的特性,也基本上达到了课程设计的要求和初衷。

八心得体会

通过本次对FIR数字滤波器的设计,加深了对数字滤波器的了解,同时对其的设计方法及各种性能指标都有一定的了解。

复习了MATLAB编程语言的基本概念、语法、语义和数据类型的使用特点,加深了对课堂所学理论知识的理解,掌握了运用结构化程序设计的基本思想和方法,更重要的是培养了自己的自学能力。

对于数字信号处理实际应用方面有了初步的认识,但是在编程方面任然不熟练,需要倚仗大量的资料和老师同学的帮助,以后应加强练习。

在实验中遇到很多调试中的问题,大多是因为对MATLAB软件不熟悉,很多学过的东西都忘记了,需要差很多书籍。

深刻的感知到MATLAB的强大,很多领域都可以用之作为仿真工具。

这样的好工具应该好好利用起来,多掌握一些相关的知识,在以后的学习工作中兴许用得到。

很感谢能有这么一次锻炼的机会,让我看到自己这么多的不足,发现很多有价值的东西,培养了我如何去学习和掌握新知识的能力,这对以后的学习和工作都有很大的帮助。

 

九参考文献

1、程佩青著,《数字信号处理教程》,清华大学出版社,2001

2、SanjitK.Mitra著,孙洪,余翔宇译,《数字信号处理实验指导书(MATLAB版)》,电子工业出版社,2005年1月

3、郭仕剑等,《MATLAB7.x数字信号处理》,人民邮电出版社,2006年

4、胡广书,《数字信号处理理论算法与实现》,清华大学出版社,2003年

5、张平主编,《MATLAB基础与应用》.北京:

北京航空出版社,2007

6、刘泉,阙大顺主编.《数字信号处理原理与应用》.西安电子工业出版社,2005

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

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2