数字信号课程设计之FIR滤波器设计.doc

上传人:wj 文档编号:5514570 上传时间:2023-05-08 格式:DOC 页数:12 大小:232.47KB
下载 相关 举报
数字信号课程设计之FIR滤波器设计.doc_第1页
第1页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第2页
第2页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第3页
第3页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第4页
第4页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第5页
第5页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第6页
第6页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第7页
第7页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第8页
第8页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第9页
第9页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第10页
第10页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第11页
第11页 / 共12页
数字信号课程设计之FIR滤波器设计.doc_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数字信号课程设计之FIR滤波器设计.doc

《数字信号课程设计之FIR滤波器设计.doc》由会员分享,可在线阅读,更多相关《数字信号课程设计之FIR滤波器设计.doc(12页珍藏版)》请在冰点文库上搜索。

数字信号课程设计之FIR滤波器设计.doc

中北大学信息与通信工程学院

SchoolofInformationandCommunicationEngineering

FIR数字滤波器设计

一、摘要

数字滤波器是一种具有频率选择性的离散线性系统,在信号数字处理中有着广泛的应用。

其中FIR滤波器是一种常用的滤波器,它在保证幅度特性满足技术要求的同时,很容易做到严格的线性相位特性,在语音分析、图像处理、雷达监测等对信号相位要求高的领域有着广泛的应用,能实现IIR滤波器不能实现的许多功能。

二、关键词:

FIR窗函数系统函数MATLAB

三、设计要求

设计理想特性FIR线性数字相位数字滤波器

(1)求单位冲激响应

(2)设,的长度N=21,编写求的Matlab程序,并上机输出矩形窗设计和海明窗设计的。

四、设计目的

1、学会MATLAB的使用,掌握MATLAB的程序设计方法;

2、掌握数字信号处理的基本概念、基本理论和基本方法;

3、掌握MATLAB设计FIR线性数字相位数字滤波器的方法;

4、学会用MATLAB对信号进行分析和处理。

五、设计意义

数字滤波器是数字信号处理的重要组成部分,可作为应用系统对信号的前置处理。

同时用DSP芯片实现数字滤波除了具有稳定性好、精确度高、不受外界影响等优点外,还具有灵活性好的特点,可对DSP芯片编程来实现数字滤波的参数修改,进而十分方便地修改滤波器的特性。

因此基于数字信号处理的数字滤波被广泛应用于语音、图像、软件无线电等领域,具有广阔的发展空间。

FIR滤波器具有严格的线性相位,可以具有任意的幅度特性,且是可物理实现的因果系统,因此被广泛地应用在现代通信技术当中,如解调器中的位同步与位定时提取、自适应均衡去码间串扰以及话音的自适应编码等。

可见对FIR滤波器的研究是具有非常重要的现实意义的。

六、设计原理

1、MATLAB概述

MATLAB是美国MathWorks公司开发的一种功能极其强大的高技术计算语言和内容极其丰富的软件库,集数值计算、矩阵运算和信号处理与显示于一身。

该软件最初是由美国教授CleveMoler创立的。

1980年前后,他在教线性代数课程时,发现用其他高级语言编程时极不方便,便构思开发了MATLAB,即矩阵实验室(MatrixLaboratory)。

该软件利用了当时代表数值线性代数领域最高水平的EISPACK和LINPACK两大软件包,并且利用Fortran语言编写了最初的一套交互式软件系统,MATLAB的最初版本便由此产生了。

最初的MATLAB由于语言单一,只能进行矩阵的运算,绘图也只能用原始的描点法,内部函数只有几十个,因此功能十分简单。

1984年该公司推出了第一个MATLAB的商业版,并用C语言作出了全部改写。

现在的MATLAB程序是MathWorks公司用C语言开发的,第一版由steveBangert主持开发编译解释程序,SteveKleiman完成图形功能的设计,JohnLittle和CleveMoler主持开发了各类数学分分析的子模块,撰写用户指南和大部分的M文件。

接着又添加了丰富的图形图像处理、多媒体功能、符号运算和与其它流行软件的接口功能,使MATLAB的功能越来越强大。

MTALAB系统主要由以下五个部分组成:

(1)MATALB语言体系。

MATLAB是高层次的矩阵/数组语言,具有条件控制、函数调用、数据结构、输入输出、面向对象等程序语言特性。

利用它既可以进行小规模端程,完成算法设计和算法实验的基本任务,也可以进行大规模编程,开发复杂的应用程序。

(2)MATLAB工作环境。

这是对MATLAB提供给用户使用的管理功能的总称。

包括管理工作空间中的变量据输入输出的方式和方法,以及开发、调试、管理M文件的各种工具。

(3)图形句相系统。

这是MATLAB图形系统的基础,包括完成2D和3D数据图示、图像处理、动画生成、图形显示等功能的高层MATLAB命令,也包括用户对图形图像等对象进行特性控制的低层MATLAB命令,以及开发GUI应用程序的各种工具。

(4)MATLAB数学函数库。

这是对MATLAB使用的各种数学算法的总称。

包括各种初等函数的算法,也包括矩阵运算、矩阵分析等高层次数学算法。

(5)MATLAB应用程序接口(API)。

这是MATLAB为用户提供的一个函数库,使得用户能够在MATLAB环境中使用C程序或FORTRAN程序,包括从MATLAB中调用于程序(动态链接),读写MAT文件的功能。

2、数字滤波器概述

数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。

因此,数字滤波器本身既可以是用数字硬件装配成的一台完成给定运算的专用的数字计算机,也可以将所需要的运算编成程序,让通用计算机来执行。

数字滤波器,输入输出均为数字信号,通过一定的运算关系,改变输入信号中所含频率成分的相对比例,或则滤除某些频率成分的器件。

对于数字滤波器而言,若系统函数为H(z),其脉冲响应为h(n),输入时间序列为x(n),则它们在时域内的关系式如下:

y(n)=h(n)﹡x(n)

在Z域内,输入和输出存在如下关系:

Y(z)=H(z)X(z)

式中,X(z)、Y(z)分别为x(n)和y(n)的Z变换。

在频域内,输入和输出则存在如下关系:

Y(j)=H(j)X(j)

式中,H(j)是数字滤波器的频率特性;X(j)Y(j)分别为x(n)和y(n)的频谱,而为数字角频率。

3、FIR数字滤波器的基本结构及设计流程

(1)FIR数字滤波器的基本结构

在讨论任何一种滤波器时,都要着重分析其系统函数,FIR滤波器的系统函数为:

从该系统函数可看出,FIR滤波器有以下特点:

①系统的单位冲激响应h(n)在有限个n值处不为零;

②系统函数H(z)在|z|>0处收敛,极点全部在z=0处(稳定系统);

③结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。

(2)FIR数字滤波器的设计流程图为:

4、窗函数设计法(矩形窗、海明窗)

窗函数设计法也称为傅立叶级数法。

其设计是在时域进行的,先用傅氏反变换求出理想数字滤波器的单位抽样响应hd(n),然后时域移位并加时间窗w(n)对其截断,从而求得FIR滤波器的单位抽样响应h(n);

在设计过程中,将无限长序列变为有限长是通过时域加矩形窗乘积实现数据的截断的。

时域乘积对应了频域卷积,从而对频响特征发生的改变。

常见的窗函数有:

矩形窗、三角形(Bartlertt)窗、汉宁(Hanning)窗。

海明(Hamming)窗、布拉克曼(Blackman)窗、凯泽(kaiser)窗等。

(1)矩形窗(RectangleWindow)

其频谱函数为:

其幅度函数为:

(2)海明窗(HammingWindow)

海明(Hamming)窗,又称改进的升余弦窗

其频谱函数为:

其幅度函数为:

七、设计内容

1、设计理想特性FIR线性数字相位数字滤波器

其频率响应为

所以,它所对应的单位抽样响应为

显然,是一个无限长、非因果的序列。

但由于FIR滤波器的单位抽样响应是有限长的,所以需要寻求一个有限长序列来逼近。

得到有限长序列的一种简便方法是运用相关窗函数对进行截断处理(加窗处理)。

因此,本题设计滤波器的单位冲激响应为

2、利用相关窗函数进行加窗,题设,的长度N=21。

(1)利用矩形窗进行加窗处理

窗函数

加窗处理后,该数字滤波器的单位冲击响应为

(2)利用海明窗进行加窗处理

窗函数

加窗处理后,该数字滤波器的单位冲击响应为

3、利用MATLAB软件编写计算求解的相关程序。

(1)矩形窗设计法(相应程序)

b2=fir1(20,0.25);%系数

h2=freqz(b2,1,20)

n=0:

20;

subplot(221);

stem(n,b2,'.');grid;

f=0:

0.5/20:

0.5-0.5/20

频谱显示程序为

clear;

clc;

N=21;%阶数,可以用过渡带来计算

wc=0.25;%wc是过渡带中心,要除以pi

hn=fir1(N,wc,boxcar(N+1));

freqz(hn,1)

(2)海明窗设计法(相应程序)

b1=fir1(20,0.25,rectwin(21));

h1=freqz(b1,1,20);

n=0:

20;

subplot(221);

stem(n,b1,'.');holdon;grid;

f=0:

0.5/20:

0.5-0.5/20;

频谱显示程序为

clear;

clc;

N=21;

wc=0.25*pi;%若为圆周角频率

window=hamming(N+1);

b=fir1(N,wc/pi,'low',window);%注意里面用归一化频率

freqz(b);

八、结果分析

(1)矩形窗设计法

矩形窗设计的的单位冲激响应

矩形窗设计的耗损函数和相频特性曲线

(2)海明窗设计法

海明窗设计的的单位冲激响应

海明窗设计的耗损函数和相频特性曲线

九、设计心得

在实践中掌握知识

———记课程设计心得体会

近日,我们开始了本学期的最后一次课程设计。

在紧张的考试周过后,课程设计便成了督促我们继续努力学习的最好源动力。

面对课程设计中的一个有一个问题,我们从未退缩,最终,通过我们的不懈努力,我们成功完成了这次课程设计。

作为一个电子信息类专业的学生,数字信号处理是我们的重要专业课程,是我们将来从事通信事业的基本保障。

通过对该课程的学习,我们对数字通信理论有了更进一步的理解;通过对该数字滤波器的设计,我们也了解了数字滤波器的基本结构和基本特性,而且还掌握了基本的撰写论文的形式和思路。

通过对作为该报告的重要部分—MATLAB的运用,从而大大提高了我们对集计算,编程与绘图于一体的该应用软件的运用能力。

MATLAB包含的几十个工具箱,覆盖了通信,自动控制,信号处理,图象处理,财经,化工,生命科学等科学技术领域,汲取了当今世界这些领域的最新研究成果,已经成为从事科学研究和工程设计不可缺少的工具软件。

该报告将数字信号处理的有关教学内容和MATLAB语言紧密,有机地结合起来,使我们在学习基础理论知识的同时学会了应用MATLAB,在学习应用MATLAB的同时,加深了对基本知识的理解,增强了我们的计算机应用能力,提高了学习效果。

总之,无论是从教学知识掌握出发,还是从对MATLAB的应用出发,通过对数字滤波器的设计,我们受益非浅。

十、参考文献

1、丁玉美,高西全.数字信号处理.西安:

西安电子科技大学出版社,2008.

2、程佩青,数字信号处理教程.北京:

清华大学出版社,2003.

3、罗军辉,罗勇江等.MATLAB7.0在数字信号处理中的应用.北京:

机械工业出版社,2005.

4、门爱东,杨波等.数字信号处理.北京:

人民邮电出版社,2003.

5、余成波,杨菁等.数字信号处理及MATLAB实现.北京:

清华大学出版社,2005.

6、网上资料

12

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

当前位置:首页 > 初中教育 > 语文

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

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