基于Matlab的FIR滤波器的设计与仿真教材_第1页
基于Matlab的FIR滤波器的设计与仿真教材_第2页
基于Matlab的FIR滤波器的设计与仿真教材_第3页
基于Matlab的FIR滤波器的设计与仿真教材_第4页
基于Matlab的FIR滤波器的设计与仿真教材_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、西南科技大学 通信原理设计报告 课程名称: 通信原理课程设计 设计名称: 数字 FIR 滤波器设计与仿真分析 姓名:XXXXXX 学号 :XXXXXXXX 班级:XXXXXXXXXXX 指导教师: XXXXXX 起止日期:2014/6/26 2014/7/5 西南科技大学信息工程学院制 方向设计任务书 学生班级: XXXXXXX 学生姓名: XXXXXX 学号: XXXXXXXXX 设计名称: 数字 FIR 滤波器设计与仿真分析 起止日期: 2014/6/22-2014/7/5 指导教师: XXXXXXXX 设计要求: 理解数字 FIR 滤波的设计原则及方法, 设计一个通带截止频率 5M,阻带

2、起始频率 8M,采 样率 40M的数字低通滤波器,带外衰减不低于 -60dB。要求如下: ( 1)设计滤波器,得到相关参数; (2)基于寄存器乘加结构完成滤波器设计; (3)给出频响曲线。 方向设计学生日志 时间 设计内容 2014/6/22-2014/6/24 学习数字信号处理教程,特别是关于 FIR 数字滤波器的部分 2014/6/24-2014/6/26 学习 MATLAB应用软件,特别是其信号处理箱和 Simuink 2014/6/26-2014/7/1 分析 FIR 数字滤波器的传统设计方法 2014/7/2 分别在 MATLAB中编程设计和利用 FDATool来设计 FIR 滤波器

3、 2014/7/3 对设计的 FIR 进行仿真并分析 2014/7/4 完成专业设计报告的撰写 2014/7/5 答辩 数字 FIR 滤波器设计与仿真分析 一、摘要 传统的数字滤波器设计计算繁琐, 尤其是设计高阶滤波器时工作量大, 利用 Matlab 可以快 速有效地实现数字滤波器的设计与仿真。 本文介绍了有限长单位冲激响应 FIR 数字滤波器的传 统设计思想和步骤,同时也介绍了利用 MATLAB对 FIR 数字滤波器进行设计的方法、设计的操 作步骤以及对设计的滤波器的仿真。 二、设计目的和意义 1. 通过此次专业方向设计,了解有限长单位冲激响应 FIR 数字滤波器的传统设计方法; 2. 了解

4、 Matlab 信号处理箱并掌握 FDATool 专用滤波器设计分析工具; 3. 学习如何使用 Matlab ,学会用 Matlab 解决实际问题。 三、设计原理 数字滤波器,是具有一定传输选择特性的数字信号处理装置, 其输入和输出均为数字信号, 实质上是一个由有限精度算法实现的线性时不变离散系统。 可以把它理解为是一个计算程序或 算法,它把代表输入信号的数字时间序列转化为代表输出信号的数字时间序列, 并在转化过程 中,使信号按照预定的形式变化。 数字滤波器有多种分类,从数字滤波器功能上分可分为低通、高通、带阻、带通滤波器, 根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲

5、激响应滤波器 (IIR )和有限长冲激响应滤波器( FIR)。 1.有限长冲激响应滤波器 FIR 滤波器及其传统设计方法 FIR滤波器的单位冲击响应是有限长的, h(n) 在 范围内有值,其系统函数为 ,它是 的(N-1)阶多项式, H(z)在有限 z平面()有N-1 个零点;在 z平面原点 z=0处有 N-1阶极点。 2.FIR 滤波器的 Matlab 设计 Matlab 是 MATHWOR公K司推出的一套面向科学和数值计算的可视化语言,它集数值分析、 矩阵运算、 信号处理和图形显示于一体, 是一个高度集成系统具有友好的用户界面和良好的帮 助功能。 Matlab 自带的信号处理工具箱( Si

6、gnal Processing Toolbox )具有强大的信号处 理和分析功能,利用 Matlab 软件优越的数字分析及仿真功能,对理解数字滤波器及数字滤波 具有一定参考价值。 图 1 Matlab 2007b 主界面 Matlab 的信号处理工具箱中,提供了一整套模拟、数字滤波器的设计命令和运算函数, 方便准确, 简单易行,使得设计人员除了可按上述传统设计步骤快速地进行较复杂高阶选频滤 波器的计算、 分析外,还可通过原型变换法直接进行各种典型数字滤波器设计, 即应用 Matlab 设计工具从模拟原型直接变换成满足原定频域指标要求的数字滤波器。 Matlab 有两种途径来设计 FIR 数字滤

7、波器,分别为 FDATool界面设计和直接程序设计。 1) FDATool界面设计 FDATool 是 Matlab 信号处理工具箱里专用的滤波器设计分析工具,其界面为滤波器的设 计提供了一个交互式的设计环境, 用户进行参数设置后, 可以设计几乎所有的基本常规滤波器, 包括 IIR 和 FIR 的各种设计方法,操作简单,方便灵活。 FDATool界面总共分两大部分,一部分是 Design Filter ,在界面的下半部,用来设置滤 波器的设计参数;另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。 Design Filter 部分主要分为: A、Response Type( 滤波

8、器类型 )选项,包括 Lowpass(低通)、Highpass( 高通)、 Bandpass(带通)、Bandstop(带阻)和特殊的 FIR 滤波器。 B、Design Method( 设计方法 ) 选项,包括 IIR 滤波器的 Butterwotth( 巴特沃思 ) 法、 Chebyshev Type I( 切比雪夫 I 型) 法、Chebyshev Type II( 切比雪夫 II 型) 法、Elliptic( 椭 圆滤波器 ) 法和 FIR 滤波器的 Equiripple 法、 Least-Squares( 最小乘方 )法、 Window(窗函数 ) 法; 图 2 FDATool 界面

9、 C、Filter Order( 滤波器阶数 )选项,定义滤波器的阶数,包括 Specify Order( 指定阶 数)和 Minimum Order(最小阶数) 。在 Specify Order 中填入所要设计的滤波器的阶数 (N 阶滤 波器, Specify Order=N-1) 。如果选择 Minimum Order,则 MATLAB根据所选择的滤波器类型 自动使用最小阶数; D、Frequency Specifications选项,可以详细定义频带的各参数,包括采样频率和频 带的截止频率。它的具体选项由 Filter Type 选项和 Design Method选项决定。例如 Band

10、pass(带 通)滤波器需要定义 Fstop1( 下阻带截止频率 ) 、Fpass1(通带下限截止频率 ) 、Fpass2(通带上 限截止频率 ) 、Fstop2( 上阻带截止频率 ),而 Lowpass(低通)滤波器只需要定义 Fstop1 、Fpass1。 采用窗函数设计滤波器时, 由于过渡带是由窗函数的类型和阶数所决定, 所以只需定义通带截 止频率,而不必定义阻带参数。 E、Magnitude Specifications选项,可以定义幅值衰减的情况。例如设计带通滤波器 时,可以定义 Wstop1(频率 Fstop1 处的幅值衰减 ) 、Wpass(通带范围内的幅值衰减 ) 、Wstop

11、2(频 率 Fstop2 处的幅值衰减 ) 。当采用窗函数设计时,通带截止频率处的幅值衰减固定为6db,所 以不必定义。 3.Simulink 仿真 Simulink 是 Matlab 最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集 成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复 杂的系统。 Simulink 具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活 等优点,并基于以上优点 Simulink 已被广泛应用于控制理论和数字信号处理的复杂仿真和设 计。同时有大量的第三方软件和硬件可应用于或被要求应用于 Simulink 。 图

12、 3 Simulink Library Browser界面 Simulink Library Browser (模型库浏览器),里面有大量的功能模块,比如示波器、加 法器、离散正弦信号源等。而这些功能模块,都可以编辑其参数。 仿真界面,新建立一个 model ,就可以进入仿真界面。可以把 Simulink Library Browser 里面的功能模块拖动到 model 中,也可以在 FDATool滤波器设计界面把设计好的滤波器导入到 model 中,然后对仿真框图进行编辑,仿真。 FIR 滤波器仿真步骤:打开 Simulink Library Browser ;新建一个 model;在 Si

13、mulink Library Browser 中找到 DSP离散正弦信号源、加法器以及示波器并拖到 model 中;再在 FDATool 界面把设计好的 FIR滤波器导入到 model中;在 model中编辑仿真框图; 在 DSP离散信号模块 中设定相关参数;最后进行仿真。 通过设定相关参数, 观察仿真中的示波器的波形等, 就可以分析出设计的 IIR 滤波器是否 达到要求。 图 4 Simulink 的 model 仿真界面 4. 窗函数法设计 FIR 数字滤波器 设我们所要设计的 FIR 滤波器的传输函数是 , 是与其对应的单位脉冲响应, 因此 Hd ejhd n e j n n (4-1)

14、 hd n 21 2 (4-2) 如果我们能够在 已知的情况下, 求出,经过 Z 变换可得到滤波器的系统函数。 通 常情况下理想数字滤波器的单位脉冲相应 hd(n) 是无限长的,且是非因果序列。获得有限脉冲 响应滤波器的一种可能方法是对 截取一段 来近似代替 ,可是这样会改变原来 的滤波器指标,出现吉布斯效应误差。 窗函数法就是用被称为窗函数的有限加权序列 w(n)来修正式(1) 的傅里叶基数以求得要求 的有限脉冲响应序列 h(n) ,即 h(n) hd(n)w(n)(4-3) w(n) 是有限长序列,当 nN-1 时, w(n)=O。 这种方法的重点在于选择某种合适的窗函数。要求窗函数主瓣宽

15、度尽可能窄, 以获得最小的过渡带:旁瓣相对值尽可能小,以使得通带波纹小,并且阻带衰减 大。 面介绍几种常用的窗函数: 1矩形窗 (Rectangle Window) WR nRN n 其频率函数为: WR ejsin N 2 e j N21 sin (4-4) 4-5) 其频率函数为: wBr n 2n N1 2n 1 ,0 n N 1 1 , N 1 n N 1 (4-6) 2 WBr ejN2 sin N 4 j N21 sin 2 (4-7) 3汉宁 (Hanning) 窗,又称升余弦窗 2n 1 2n wHn n2 1 cos N 1 (4-8) 利用傅里叶变换得到频率函数 j W e

16、j0.5WR 0.25 WR j N21 WHne 2 N1 WR N2 1 e j N21 (4-9) 当N 时, N 1 N ,所以窗函数的幅度函数为 WHn0.5WR0.25 WR j N21 WHne 2 N1 N 1 e j 2 (4-10) 4汉明 (Hamming)窗,又称改进的升综 WHm n0.54 0.46cos N2n 1 RN n (4-11) 其幅度函数为: 2三角形窗 (Bartlett Window) WHm0.54WR0.23 WR2WR2 N 1 N 1 (4-12) WB(I n) 0.42 0.5cos 2n BI N 1 0.08cos 4n N1 RN

17、 n (4-13) 5布莱克曼 (Blankman) 窗,又称二阶升余弦窗 其幅度函数为: WB(I ) 0.42WR0.25 WR W 4 W R N1 0.04 N1 WR R N 1 WRN 1 (4-14) 6凯泽 (Kaiser) 窗 I0 wk n N 12 ,0 n N 1 I0 其中: B是一个可自由选择的参数, Io(x) 是第一类修正零阶贝塞尔函数 7 , (4-15) 窗函数 旁瓣峰值幅度 /db 过度宽带 阻带最小衰减 /db 矩形窗 -13 4/N -21 三角形窗 -26 8/N -25 汉宁窗 -31 8/N -44 汉明窗 -40 8/N -53 布莱克曼窗 -

18、57 12/N -74 凯泽窗 -57 10/N -80 上述窗函数的基本参数如下表 表 1 窗函数基本参数表 窗函数法设计滤波器的步骤: 1) 根据技术要求确定待求滤波器的单位取样响应 2) 根据对过渡带和阻带衰减的要求,选择窗函数昀形式,并估计窗口长度N。 3) 计算滤波器的单位取样响应 : h n hd n n (4-16) 式中, 是前面所选择好的窗函数 检验技术指标是否满足要求。根据下式计算: N1 H ejh n e j n n 0(4-17 ) 如果 不满足要求,根据具体情况重复步骤 (2)(3)(4) 步,直到满足要求为止。 四、详细设计步骤 1. 自编 Matlab 程序进行

19、设计 本专业方向设计, 要求分别自编 Matlab 程序和利用 FDATool工具箱设计一个 10 阶的低通 FIR 数字滤波器,通带截止频率 5M,阻带起始频率 8M,采样频率 40M的数字低通滤波器,带外 衰减不低于 -60dB,并画出其幅频、相频和冲激响应。 1) 在 MATLAB环境下运行该程序即可得到设计的 FIR 滤波器的时域幅频、相频和冲激响应 将模拟频率转换成数字频率 Wp=0.25*pi; % 将模拟频率转化为数字频率 Ws=0.4*pi; Wdel=Ws-Wp; % N=ceil(11*pi/Wdel); % Wn=(0.4+0.25)*pi/2; % 边带宽度 向上取整,

20、计算阶数 归一化 wn window=blackman(N+1);%设置为布莱克曼窗,带外衰减要求为 60db b=fir1(N,Wn/pi,window); %N 为理想滤波器阶数 freqz(b,1) % 频响特性 2. 利用 FDATool 进行设计 1) 打开 FDATool面板 在 Matlab 主界面:点击左下角“ Start ”选项 点击弹出界面的“ Toolboxes ”选项 点击弹出界面“ DSP System”选项点击弹出界面“ Filter Designs2=sin( ); s=s1+s3+s2; a. 修改仿真配置参数 Configuration Parameter 点

21、击菜单中的 Simulation 并打开 Configuration Parameter ,在弹出界面中更改仿真时 间Simulation time 为0.0到0.1 ,并将slover 选项改为 discrete ( XXXX); b. 器件 SineWave 双击SineWave,在弹出界面中,修改参数 sine type 为time based ,修改frequency 为 *pi , sample time 改为; c. 器件 SineWave 12 双击SineWave1,在弹出界面中,修改参数 sine type 为time based ,修改frequency 为 *pi , s

22、ample time 改为; 2) 仿真 改变参数继续仿真 所有环节都布置完成后,点击 model中工具 start simulation 的图标进行仿真。根据仿真, 查看 scope示波器中的波形,分析仿真结果,并再次改变输入信号,改变 SineWave、SineWave1 的参数,再次进行仿真,分析直到了解了设计的 FIR滤波器的滤波效果为止。 五、设计结果及分析 1. FDATool 界面设计结果 在 FDATool 界面,按照要求对 IIR 滤波器设计完成后, 点击菜单选项 Analysis 下 Impulse Response 选项,得到 FIR 滤波器的冲激响应(图 9),点击菜单

23、选项 Analysis 下 Magnitude Response选项,可以得到幅频(图 10),点击菜单选项 Analysis 下 Phase Response 选项, 可以得到相频(图 11) Impulse Response 图7 FIR 数字滤波器( FDATool设计)的冲激响应 n g a M Magnitude Response (dB) 图8 FIR 数字滤波器( FDATool设计)的幅频 13 )snaidar(esah -12 0 Phase Response 2 4 6 8 10 12 Frequency (MHz) 14 16 18 4 -8 图 9 FIR 数字滤波器

24、( FDATool设计)的相频 2. 自编 Matlab 程序设计结果 50 )(edB0 edu itu -50 aM -100 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 Normalized Frequency (rad/sample) -150 )serged(esah -3000 0 -1000 -2000 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 Normalized Frequency ( rad/sample) 图 10 FIR 数字滤波器(自编程序设计)的相频和幅频 3. 仿真结果 14 图 11 仿真前的信号 s

25、1 和 s2 波形 图 12 仿真后滤波的信号波形以及混叠后的波形 由上图可以看出信号 S 经过滤波后,信号的频率大致为Hz,即滤波后的信号与 S1 大致相同。 六、总结与体会 总体而言,FIR 数字滤波器传统设计方法虽然有众多优点, 但其计算非常繁琐。利用 MATLAB 设计滤波器, 使原来非常繁琐复杂的程序设计变成了简单的函数调用, 为滤波器的设计和实现 开辟了广阔的天地,尤其是 Matlab 工具箱使各个领域的研究人员可以直观方便地进行科学研 究与工程应用。其中的信号处理工具箱、 图像处理工具箱、小波工具箱等更是为数字滤波研究 的蓬勃发展提供了可能。 MATLAB信 号处理工具箱为滤波器设计及分析提供了非常优秀的辅助 15 设计工具, 在设计数字滤波器时 , 善于应用 MATLAB进行辅助设计 , 能够大大提高设计效率。 利用 MATLAB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论