1、FIR高通滤波器的设计课程设计任务书学生姓名: 专业班级: 电信0902班 指导教师: 工作单位: 信息工程学院 题 目:FIR高通滤波器的设计初始条件: 具备数字信号处理的理论知识;具备Matlab编程能力;熟悉高通滤波器的设计原理;提供编程所需要的计算机一台要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、设计阻带截止频率为200Hz的FIR数字高通滤波器2、独立编写程序实现3、完成符合学校要求的设计说明书时间安排:一周,其中3天程序设计,2天程序调试指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日目 录摘 要 I1 MATLAB基础知识
2、的介绍 11.1 MATLAB的介绍 11.2 基本功能 12 FIR滤波器简介 23 高通滤波器及其应用 33.1 高通滤波器的定义 33.2 高通滤波器的应用 33.3 高通滤波的时域分析 33.4 高通滤波器频域分析 44 窗函数的相关知识 54.1 窗函数的基本概念 54.2 窗函数的设计原理 64.3 窗函数的设计步骤 65 FIR数字滤波器程序设计与仿真 75.1 窗函数程序设计 75.2 仿真结果图 96 心得体会 11参考文献 12摘 要数字滤波器是一个离散时间系统(按预定的算法,将输入离散时间信号转换为所要求的输出离散时间信号的特定功能装置)。应用数字滤波器处理模拟信号时,首
3、先须对输入模拟信号进行限带、抽样和模数转换。数字滤波器有低通、高通、带通、带阻和全通等类型。它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的。应用最广的是线性、时不变数字滤波器,以及FIR滤波器。数字滤波器具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。数字滤波器在语言信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用。 关键字:FIR、高通、滤波器1 MATLAB基础知识的介绍1.1 MATLAB的介绍MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数
4、据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。1.2 基本功能MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式。MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计
5、算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自
6、己以后调用。2 FIR滤波器简介FIR滤波器:有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位抽样响应是有限长的,因而滤波器是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用。有限长单位冲激响应(FIR)滤波器有以下特点: (1) 系统的单位冲激响应h (n)在有限个n值处不为零; (2) 系统函数H(z)在|z|0处收敛,极点全部在z = 0处(因果系统); (3) 结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。目前,FIR滤波器的
7、硬件实现有以下几种方式: (1)数字集成电路FIR滤波器一种是使用单片通用数字滤波器集成电路,这种电路使用简单,但是由于字长和阶数的规格较少,不易完全满足实际需要。虽然可采用多片扩展来满足要求,但会增加体积和功耗,因而在实际应用中受到限制。 (2)DSP芯片FIR滤波器另一种是使用DSP芯片。DSP芯片有专用的数字信号处理函数可调用,实现FIR滤波器相对简单,但是由于程序顺序执行,速度受到限制。而且,就是同一公司的不同系统的DSP芯片,其编程指令也会有所不同,开发周期较长。 (3)可编程FIR滤波器还有一种是使用可编程逻辑器件,FPGACPLD。FPGA有着规整的内部逻辑块整列和丰富的连线资源
8、,特别适合用于细粒度和高并行度结构的FIR滤波器的实现,相对于串行运算主导的通用DSP芯片来说,并行性和可扩展性都更好。 3 高通滤波器及其应用3.1 高通滤波器的定义高通滤波器是容许高频信号通过、但减弱(或减少)频率低于截止频率信号通过的滤波器。对于不同滤波器而言,每个频率的信号的减弱程度不同。它有时被称为低频剪切滤波器;在音频应用中也使用低音消除滤波器或者噪声滤波器。高通滤波器与低通滤波器特性恰恰相反。3.2 高通滤波器的应用这样的滤波器能够把高频率的声音引导至专用高音喇叭(tweeter),并阻止可能干擾或者损害喇叭的低音信号。使用线圈而不是电容的低通滤波器也可以同时把低频信号引导至低音
9、喇叭(woofer)。参见音频桥(en:audio crossover)。高通和低通滤波器也用于数字图像处理中在频域中进行变换。3.3 高通滤波的时域分析在时域,信号经过系统的响应y (n)体现为激励x(n)跟系统单位抽样响应h(n)的卷积和y(n)=(n)h(n)=N1m=0h(m)x(n-m)223 。对于长度为N 的FIR系统, h(n)可以看成一个长度为N 点的固定窗口,而x(n)则看成一个队列以齐步走的方式穿过h(n)窗口,每走一步,位于窗口中的x(n)部分的点跟h(n)的对应点的值相乘(即加权)再求和,所得结果构成此时系统的响应值y(n), x(n)队列每走一步就得到一个响应值y(
10、n),即y(n)是h(n)对位于其窗口中的x(n)的加权求和。高通滤波要求h(n)窗口具有波形锐化作用,即利用h(n)窗口加权和使得变化快的(即高频)正弦分量保留(理想高通)或衰减幅度小(实际高通) ,而变化缓慢(即低频)的正弦分量正负抵消(理想高通)或衰减幅度大(实际高通) 。设 其中N 必须取奇数,2.1.1其中: fs = 11kHz, n为整数,即x ( n)由100Hz的x1(n)和1kHz的x2(n)两种频率的信号组成。高通滤波的目的就是要尽可能地去掉x(n)中的低频分量x1(n) ,同时尽可能地保留x(n)中的高频分量x2(n)。x(n)跟h(n)卷积结果如图1所示,从图1可看出
11、,响应y(n)中几乎只剩下右移了(N-1)/2=5个样值点的1kHz的信号x2(n) 。3.4 高通滤波器频域分析在频域,信号经过系统的响应y(n)的频谱Y(ej)体现为激励x(n)的频谱X (ej)跟系统单位抽样响应h(n)的频谱H(ej)(即系统的频谱)的乘积Y(ej)=|H(ej)|X(ej)|ejH+x,即响应的频谱Y(ej)的幅值由系统频谱H(ej)的幅值对激励频谱X(ej)的幅值相乘(加权)得到,响应的频谱Y(ej)的幅角由系统的频谱H(ej)的幅角跟激励频谱X(ej)的幅角相加(移相)得到122 。高通滤波要求系统幅度函数|H(jf)|对需要保留的高频信号频谱加权权重较大(理想时
12、为1) ,对需要滤除的低频信号频谱加权权重较小(理想时为0) 。4 窗函数的相关知识4.1 窗函数的基本概念在实际进行数字信号处理时,往往需要把信号的观察时间限制在一定的时间间隔内,只需要选择一段时间信号对其进行分析。这样,取用有限个数据,即将信号数据截断的过程,就等于将信号进行加窗函数操作。而这样操作以后,常常会发生频谱分量从其正常频谱扩展开来的现象,即所谓的“频谱泄漏”。当进行离散傅立叶变换时,时域中的截断是必需的,因此泄漏效应也是离散傅立叶变换所固有的,必须进行抑制。而要对频谱泄漏进行抑制,可以通过窗函数加权抑制DFT的等效滤波器的振幅特性的副瓣,或用窗函数加权使有限长度的输入信号周期延
13、拓后在边界上尽量减少不连续程度的方法实现。而在后面的FIR滤波器的设计中,为获得有限长单位取样响应,需要用窗函数截断无限长单位取样响应序列。另外,在功率谱估计中也要遇到窗函数加权问题。窗函数的基本概念。设x(n)是一个长序列,w(n)是长度为N的窗函数,用w(n)截断x(n),得到N点序列xn(n),即xn(n) = x(n) w(n)在频域上则有 由此可见,窗函数w(n)不仅仅会影响原信号x(n)在时域上的波形,而且也会影响到频域内的形状。4.2 窗函数的设计原理窗函数设计法的基本原理是用有限长单位脉冲响应序列逼近。由于往往是无限长序列,而且是非因果的,所以用窗函数将截断,并进行加权处理,得
14、到: 就作为实际设计的FIR数字滤波器的单位脉冲响应序列,其频率响应函数为 式中,N为所选窗函数的长度。用窗函数法设计的滤波器性能取决于窗函数的类型及窗口长度N的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N 。4.3 窗函数的设计步骤窗函数法设计线性相位FIR滤波器可以按如下步骤:1. 确定数字滤波器的性质要求,确定各临界频率和滤波器单位脉冲响应长度N。2. 根据性能要求和N值,合理地选择单位脉冲响应h(n)有奇偶对称性,从而确定理想频率响应h (e)的幅频特性和相位特性。3. 用傅里叶反变换公式,求得理想单位脉冲响应H (n)。4. 选择适当的窗函
15、数W(n),求得所设计的FIR滤波器单位脉冲响应。5. 用傅里叶变换求得其频率响应H(e),分析他的频率特性,若不满足要求,可适当改变窗函数形式或长度N,重复上述过程,直至得到满意结果。5 FIR数字滤波器程序设计与仿真5.1 窗函数程序设计f1=100;f2=700;%待滤波正弦信号频率fs=2000;%采样频率m=(0.3*f1)/(fs/2);%定义过度带宽M=round(8/m);%定义窗函数的长度N=M-1;%定义滤波器的阶数window=hanning(M);b=fir1(N,0.2,high,window);%使用fir1函数设计滤波器%输入的参数分别是滤波器的阶数和截止频率figure(1)h,f=freqz(b,1,512);%滤波器的幅频特性图%H,W=freqz(B,A,N)当N是一个整数时函数返回N点的频率向量和幅频响应向量plot(f*fs/(2*pi),20*log10(abs(h)%参数分别是频率与幅值xlabel(频率/赫兹);ylabel(增益/分贝);title(滤波
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1