滤波器设计与实现

更新时间:2024-01-16 04:55:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

课程设计说明书(论文)

《数字信号处理》课程设计报告

设计课题 滤波器设计与实现

专业班级 姓 名 学 号

报告日期 2012年11月

第 1 页 共 15页

课程设计说明书(论文)

《数字信号处理》

课程设计任务书

题 目 学生姓名 利用窗函数设计FIR带阻滤波器 学号 专业班级 一、设计内容: 产生包含三个正弦成分(120hz,80hz,20hz)的信号,设计基于窗函数的FIR滤波器去除80hz成分,保留120hz,20hz信号。通带允许的最大衰减为0.25dB,阻带应达到的最小衰减为30dB。 滤波器的采样频率为500Hz。 二、设计要求 1 设计报告一律按照规定的格式,使用A4纸,格式、封面统一给出模版。 2 报告内容 设 计 内 容 与 要 求 (1)设计题目及要求 (2)设计原理 (包括滤波器工作原理、涉及到的matlab函数的说明) (3)设计内容(设计思路,设计流程、仿真结果) (4)设计总结(收获和体会) (5)参考文献 (6)程序清单 起止时间 指导教师签名 2012年 12 月 3日 至 2011年 12月11 日 2011年 12月 2日 系(教研室)主任签名 年 月 日 学生签名

第 2 页 共 15页

年 月 日 课程设计说明书(论文)

1课题描述 ........................................................................................................................................1 2 窗函数设计法原理 .......................................................................................................................1

2.1线性相位 ............................................................................................................................4 2.2 基本窗函数 .......................................................................................................................4

2.2.1 矩形窗函数 ...........................................................................................................4 2.2.2 三角窗函数 ...........................................................................................................5 2.2.3汉宁窗函数 ............................................................................................................5 2.2.4 哈明窗函数 ...........................................................................................................6 2.2.5 布莱克曼窗函数 ...................................................................................................7 2.2.6 凯塞窗 ...................................................................................................................7

3 方案设计与分析 ...........................................................................................................................9

3.1方案设计程序 ....................................................................................................................9 3.2分析 .................................................................................................................................. 11 4 总结与体会 .................................................................................................................................12 5 参考文献 .....................................................................................................................................13

第 3 页 共 15页

课程设计说明书(论文)

1课题描述

现代图像、语声、数据通信对线性相位的要求是普遍的。正是此原因,使得具有线性相位的FIR数字滤波器得到大力发展和广泛应用。

在实际进行数字信号处理时,往往需要把信号的观察时间限制在一定的时间间隔内,只需要选择一段时间信号对其进行分析。这样,取用有限个数据,即将信号数据截断的过程,就等于将信号进行加窗函数操作。而这样操作以后,常常会发生频谱分量从其正常频谱扩展开来的现象,即所谓的“频谱泄漏”。当进行离散傅立叶变换时,时域中的截断是必需的,因此泄漏效应也是离散傅立叶变换所固有的,必须进行抑制。而要对频谱泄漏进行抑制,可以通过窗函数加权抑制DFT的等效滤波器的振幅特性的副瓣,或用窗函数加权使有限长度的输入信号周期延拓后在边界上尽量减少不连续程度的方法实现。而在后面的FIR滤波器的设计中,为获得有限长单位取样响应,需要用窗函数截断无限长单位取样响应序列。另外,在功率谱估计中也要遇到窗函数加权问题。由此可见,窗函数加权技术在数字信号处理中的重要地位。

2 窗函数设计法原理

数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。数字滤波器有多种分类,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应(iir)滤波器和有限长冲激响应(fir)滤波器。iir数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配。所以iir滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。fir数字滤波器的单位脉冲响应是有限长序列。它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等。

因此设计FIR滤波器的方法之一可以从时域出发,截取有限长的一段冲击响应作为H(z)的系数,冲击响应长度N就是系统函数H(z)的阶数。只要N足够长,截取的方法合理,总能满足频域的要求。一般这种时域设计、频域检验的方法要反复几个回合才能成功。要设

第 1 页 共 15页

课程设计说明书(论文)

jwjwH(e)H(e)是w的周期dd计一个线性相位的FIR数字滤波器,首先要求理想频率响应。

函数,周期为2?,可以展开成傅氏级数:

Hd(e)=

jwn????h?d (n)e?jwn (3-1)

其中hd(n)是与理想频响对应的理想单位抽样响应序列。但不能用来作为设计FIR DF用的h(n),因为hd(n)一般都是无限长、非因果的,物理上无法实现。为了设计出频响类似于理想频响的滤波器,可以考虑用h(n)来近似hd(n)。

窗函数的基本思想:先选取一个理想滤波器(它的单位抽样响应是非因果、无限长的),再截取(或加窗)它的单位抽样响应得到线性相位因果FIR滤波器。这种方法的重点是选择一个合适的窗函数和理想滤波器。

设x(n)是一个长序列,w(n)是长度为N的窗函数,用w(n)截断x(n),得到N点序列xn(n),即

xn(n) = x(n) w(n) (3-2) 在频域上则有

XN?ej???1πX?ej???W?ej??????d? (3-3)

2π??π由此可见,窗函数w(n)不仅仅会影响原信号x(n)在时域上的波形,而且也会影响到频域内的形状。

MATLAB信号工具箱主要提供了以下几种窗函数,如表下所示:

表1 MATLAB窗函数 窗 窗 函 数 矩形窗 三角窗 布莱克曼窗 哈明窗 汉宁窗 凯塞窗 切比雪夫窗 Boxcar Barlett Blackman Hamming Hanning Kaiser Chebwin 加矩形窗后的频谱和理想频谱可得到以下结论:

第 2 页 共 15页

课程设计说明书(论文)

加窗使过渡带变宽,过渡带的带宽取决于窗谱的主瓣宽度。矩形窗情况下的过渡带宽是4?/N。N越大,过渡带越窄、越陡;

过渡带两旁产生肩峰,肩峰的两侧形成起伏振荡。肩峰幅度取决于窗谱主瓣和旁瓣面积之比。矩形窗情况下是8.95%,与N无关。工程上习惯用相对衰耗来描述滤波器,相对衰耗定义为

jwj0 A(w)?20lg[H(e)/H(e)]?20lg[H(w)/H(0)] (3-4)

这样两个肩峰点的相对衰耗分别是0.74dB和-21dB。其中(-0.0895)对应的点的值定义为阻带最小衰耗。

以上的分析可见,滤波器的各种重要指标都是由窗函数决定,因此改进滤波器的关键在于改进窗函数。

窗函数谱的两个最重要的指标是:主瓣宽度和旁瓣峰值衰耗。旁瓣峰值衰耗定义为:

旁瓣峰值衰耗=20lg(第一旁瓣峰值/主瓣峰值) (3-5)

为了改善滤波器的性能,需使窗函数谱满足:

主瓣尽可能窄,以使设计出来的滤波器有较陡的过渡带;

第一副瓣面积相对主瓣面积尽可能小,即能量尽可能集中在主瓣,外泄少,使设计出来的滤波器的肩峰和余振小。

但上面两个条件是相互矛盾的,实际应用中,折衷处理,兼顾各项指标。

第 3 页 共 15页

课程设计说明书(论文)

2.1线性相位

一个单一频率的正弦信号通过一个系统,假设它通过这个系统的时间需要t,则这个信号的输出相位落后原来信号wt的相位。从这边可以看出,一个正弦信号通过一个系统落后的相位等于它的w*t;反过来说,如果一个频率为w的正弦信号通过系统后,它的相位落后delta,则该信号被延迟了delta/w的时间。在实际系统中,一个输入信号可以分解为多个正弦信号的叠加,为了使得输出信号不会产生相位失真,必须要求它所包含的这些正弦信号通过系统的时间是一样的。因此每一个正弦信号的相位分别落后,w1*t,w2*t,w3*t。因此,落后的相位正比于频率w,如果超前,超前相位的大小也是正比于频率w。从系统的频率响应来看,就是要求它的相频特性是一条直线。在FIR滤波器的设计中,为了得到线性相位的性质,通常利用实偶对称序列的相频特性为常数0和实奇对称序列为相频特性为常数90度的特点。因此得到的是对称序列,不是因果序列,是不可实现系统,为了称为物理可实现系统,需要将它向右移动半个周期,这就造成了相移特性随时间的变化,同时也是线性变化。

单位脉冲响应h(n)(为实数)具有偶对称或奇对称性,则FIR数字滤波器具有严格的线性相位特性。

数字滤波器中,IIR数字滤波器方便简单,但它相位的非线性,要求采用全通网络进行相位校正,且稳定性难以保障。FIR滤波器具有很好的线性相位特性,使得它越来越受到广泛的重视。

2.2 基本窗函数

数字信号处理领域中所用到的基本窗函数主要有:矩形窗函数、三角窗函数和汉宁窗函数,哈明窗函数布莱克窗函数,凯塞窗函数等。下面就对这些窗函数展开介绍。 2.2.1 矩形窗函数

矩形窗(Rectangular Window)函数的时域形式可以表示为:

1,0?n?N?1 w(n)?RN(n)?? (3-2-1) ??0,其他第 4 页 共 15页

课程设计说明书(论文)

它的频域特性为

?N?1??j????2? W?ej???eR??N?sin???2? (3-2-2) ???sin???2?Boxcar函数:生成矩形窗

调用方式w = boxcar (N):输入参数N是窗函数的长度;输出参数w是由窗函数的值组成的n阶向量。从功能上讲,该函数又等价于w = ones(n,1)。 2.2.2 三角窗函数

j?三角窗是最简单的频谱函数W(e)为非负的一种窗函数。三角窗函数的时域形式可以

表示为:

当n为奇数时

n?1?2(k?1),1?k? w(k)??n?1 2 (3-2-3)?2(k?1)n?1?2?,?k?nn?12?当n为偶数时

n?2(k?1),1?k? w?k???n?1 2 (3-2-4)?2(n?k)n?,?k?n2?n?1Bartlett函数:生成巴特利特窗 调用方式w = bartlett(n): (1) 输入参数n是窗函数的长度;

(2) 输出参数w是由窗函数的值组成的n阶向量。 (3) 三角窗也是两个矩形窗的卷积。

三角窗函数的首尾两个数值通常是不为零的。当n是偶数时,三角窗的傅立叶变换总是非负数。

第 5 页 共 15页

课程设计说明书(论文)

2.2.3汉宁窗函数

汉宁窗函数的时域形式可以表示为:

k?? k?1,2,?,N (3-2-5)? w(k)?0.5? ??1?co?s2πn?1??????? 它的频域特性为:

????j????2π2π???? W?????0.5WR????0.25?WR?????WR??????e?N?1?N?1???????N?1??2? (3-2-6)

其中,WR(?)为矩形窗函数的幅度频率特性函数。

汉宁窗函数的最大旁瓣值比主瓣值低31dB,但是主瓣宽度比矩形窗函数的主瓣宽度增加了1倍,为8π/N。

hanning函数:生成汉宁窗 调用方式

(1) w = hanning(n):输入参数n是窗函数的长度;输出参数w是由窗函数的值组成的n阶向量。

注意:此函数不返回是零点的窗函数的首尾两个元素。 (2) w = hanning(n,'symmetric'):与上面相类似。

(3) w = hanning(n,'periodic'):此函数返回包括为零点的窗函数的首尾两个元素。

2.2.4 哈明窗函数

海明窗函数的时域形式可以表示为

k? k?1,2,?,N (3-2-7) w(k)?0.54?0.46co??s2π??N?1? 它的频域特性为

2π?2π?? (3-2-8) ?? W(?)?0.54WR(?)?0.23?W???W??????RR?N?1N?1???????其中,WR(?)为矩形窗函数的幅度频率特性函数。

海明窗函数的最大旁瓣值比主瓣值低41dB,但它和汉宁窗函数的主瓣宽度是一样大

第 6 页 共 15页

课程设计说明书(论文)

的。

Hamming函数:生成海明窗 调用方式

(1) w = hamming(n):输入参数n是窗函数的长度;输出参数w是由窗函数的值组成的n阶向量。

(2) w = hamming(n,sflag):参数sflag用来控制窗函数首尾的两个元素值;其取值为symmetric或periodic;默认值为symmetric。 2.2.5 布莱克曼窗函数

布莱克曼窗函数的时域形式可以表示为

k?1??k?1? k?1,2,?,N (3-2-9) w(k)?0.42?0.5cos??2π??0.08co?s4π??N?1??N?1?它的频域特性为

?W(?)?0.42WR????0.25WR???????2??2?????4π?4π?? (3-2-10) ???WR??????0.04?WR??????WR?????N?1?N?1??N?1N?1???????其中,WR(?)为矩形窗函数的幅度频率特性函数。

布莱克曼窗函数的最大旁瓣值比主瓣值低57dB,但是主瓣宽度是矩形窗函数的主瓣宽度的3倍,为12π/N。

Blackman函数:生成海明窗 调用方式

(1) w = blackman (n):输入参数n是窗函数的长度;输出参数w是由窗函数的值组成的n阶向量。

(2) w = blackman (n,sflag):参数sflag用来控制窗函数首尾的两个元素值;其取值为symmetric或periodic;默认值为symmetric。 2.2.6 凯塞窗

上面所讨论的几种窗函数,在获得旁瓣抑制的同时却增加了主瓣的宽度。而凯塞窗定义了一组可调的窗函数,它是由零阶贝塞尔函数构成的,其主瓣能量和旁瓣能量的比例是近乎最大的。而且,这种窗函数可以在主瓣宽度和旁瓣高度之间自由选择它们的比重,使用户的设计变得非常灵活。

第 7 页 共 15页

课程设计说明书(论文)

凯塞窗函数的时域形式可表示为

2?2k???I0??1??1???N?1????? 0?k?N?1 (3-2-11) w(k)??I0(?)其中,I0(?)是第1类变形零阶贝塞尔函数,?是窗函数的形状参数,由下式确定:

(??8.7),??50?0.1102? ???0.5482(??21)0.4?0.07886 (??21),21???50 (3-2-12)?0,??21?其中,?为凯塞窗函数的主瓣值和旁瓣值之间的差值(dB)。改变β的取值,可以对主瓣宽度和旁瓣衰减进行自由选择。β的值越大,窗函数频谱的旁瓣值就越小,而其主瓣宽度就越宽。

Kaiser函数:生成凯塞窗

调用方式w = kaiser(n,beta):输入参数n是窗函数的长度;输入参数beta用于控制旁瓣的高度;输出参数w是由窗函数的值组成的n阶向量。n一定时,beta越大,其频谱的旁瓣就越小,但主瓣宽度相应的增加;当beta一定时,n发生变化,其旁瓣高度不会发生变化。

第 8 页 共 15页

课程设计说明书(论文)

3 方案设计与分析

用窗函数法设计一个FIR带阻滤波器。指示如下: 下通带截至频率 wlp=0.2*pi; 上通带截止频率 wls=0.44*pi; 阻带下限频率 wus=0.24*pi; 阻带上限频率 wup=0.4*pi; 通带最大衰减 ap=0.25dB; 阻带最小衰减 as=30dB;

3.1方案设计程序

6中窗函数的基本参数如下

窗函数类型 旁瓣峰值 过渡带宽度 近似值 4?/N 8?/N 8?/N 8?/N 12?/N 精确值 1.8?/N 6.1?/N 6.2?/N 6.6?/N 11?/N 10?/N 阻带最小衰减 ?n/dB 矩形窗 三角窗 汉宁窗 哈明窗 布莱克曼窗 凯塞窗

-13 -25 -31 -41 -57 -57 ?s/dB -12 -25 -44 -53 -74 -80 因为阻带最小衰减as=30dB,所以选择汉宁窗设计,程序步骤如下:

第 9 页 共 15页

课程设计说明书(论文)

第 10 页 共 15页

课程设计说明书(论文)

3.2分析

4 设计带阻滤波器时首先要计算出过渡带,然后查表得到不同窗函数所需

要的阶数,不同的窗函数所设计的滤波器的形状各有差异,尤其在主瓣宽度、旁瓣的形状以及主瓣与旁瓣的高度差上有比较明显得差别,实际应用中应根据实际情况,折衷处理,兼顾各项指标。

为了这次课程设计,自己自学了数字信号处理领域中窗函数的有关知识。实际中遇到的离散时间信号总是有限长的,因此不可避免地要遇到数据截断问题。而在信号处理中,对离散序列的数据截断是通过序列与窗函数相乘来实现的。而且,有关滤波器的设计、功率谱估计等基本概念也要用到窗函数。本次课程设计对经常用到的下面6窗函数:矩形窗函数、三角窗函数、汉宁窗函数、哈明窗函函数、布莱克曼窗函数、凯塞窗函窗,先是做了基本概念上的阐释,然后对其MATLAB实现函数做出了说明,最后又结合具体的实例,对这些窗函数的频域特性等进行了介绍。

通过这次学习,我不但掌握了FIR数字滤波器窗函数的基本知识及其实际应用的技巧了,还提高了自己的编程和写报告的能力,收获颇多。

第 11 页 共 15页

课程设计说明书(论文)

6 参考文献

[1]《数字信号处理》(第三版),丁玉美,高西全.西安电子科技大学出版社,2000. [2]《MATLAB及在电子信息课程中的应用》,陈怀堔,吴大正,高西全.电子工业出版社,2006.

[3]《MATLAB 7.0从入门到精通》,求是科技.人民邮电出版社,2006. [4]《数字信号处理(第三版)》学习指导,高西全,丁玉美.西安科技大学出版社,2001.

第 12 页 共 15页

本文来源:https://www.bwwdw.com/article/3ydo.html

微信扫码分享

《滤波器设计与实现.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文
范文搜索
下载文档
Top