基于MATLAB的FIR数字滤波器的设计
无需注册登录,支付后按照提示操作即可获取该资料.
摘 要
传统的数字滤波器的设计过程复杂,计算工作量大,滤波特性调整困难,影响了它的应用。本文介绍了一种利用MATLAB信号处理工具箱(Signal Processing Toolbox)快速有效的设计由软件组成的常规数字滤波器的设计方法。给出了使用MATLAB语言进行程序设计和利用信号处理工具箱的FDATool工具进行界面设计的详细步骤。利用MATLAB设计滤波器,可以随时对比设计要求和滤波器特性调整参数,直观简便,极大的减轻了工作量,有利于滤波器设计的最优化。本文还介绍了如何利用MATLAB环境下的仿真软件Simulink对所设计的滤波器进行模拟仿真。介绍了IIR数字滤波器的传统设计思想与步骤,及其计算机辅助设计方法。以一数字带通滤波器为例,着重说明了基于MATLAB的三种实现手段:模拟低通原型、合适模拟带通及直接原型,为数字滤波器设计带来全新的实现手段,设计快捷方便,仿真波形直观。介绍了利用MATLAB信号处理工具箱进FIR滤波器设计的三种方法:程序设计法、FDATool设计法和SPTool设计法,给出了详细的设计步骤,并将设计的滤波器应用到一个混和正弦波信号,以验证滤波器的性能.
关键词:数字滤波器 MATLAB FIR IIR
Abstract
Traditional digital filter design process complex, the computationwork load is big, the filter characteristic adjustment difficulty, hasaffected its application. This article introduced one kind using theMATLAB signal processing toolbox (Signal Processing Toolbox) the fasteffective design the conventional numeral filter design method whichis composed by software. Produced has used the MATLAB language tocarry on the programming and carries on contact surface design usingthe signal processing toolbox FDATool tool the detailed step. Usingthe MATLAB design filter, may contrast the design request and thefilter characteristic adjustment parameter as necessary,direct-viewing is simple, enormous reduced the work load, isadvantageous optimization which designs to the filter.
Key word: Digital filter MATLAB FIR IIR
数字滤波器的系统级设计方法
利用Link for CCS IDE接口实现CCSIDE和Matlab之间的连接来设计FIR数字滤波器,利用此连接可以在Matlab控制下操作DSP的应用程序,利用Matlab中强大计算分析、可视化工具来分析和对比目标程序运行中的结果,大大缩短调试开发系统的周期。
具体设计步骤如下[6]:
(1)选择DSP型号:实验中用TMS320C5416DSP;
(2)创建CCS IDE连接对象;
(3)利用Matlab把文件加载到CCS IDE中;
(4)在Matlab环境下对CCS IDE连接对象进行操作;
(5)关闭CCS IDE连接对象。
从这个设计步骤中可以看出,在Matlab环境下操作DSP中变量或者寄存器是很方便的。这样就可以在Matlab环境下完成DSP程序的仿真调试。而不用像传统的开发要把DSP运行结果调回PC机验证,方便了开发设计,缩短了开发周期。
用这种方法所设计滤波器结果和上面基本相同,只是设计过程得到了很大简化,方便了开发设计。
应用Matlab对DSP进行系统级的设计极大地改进了传统的设计方法。Matlab系统级的设计环境,有助于在设计早期发现错误和应对系统复杂性不断增加的挑战,方便了复杂DSP应用系统的设计。所设计的数字滤波器和传统设计的滤波器比较,速度提高了很多,设计过程得到了很大的简化,方便了开发设计。
本文通过设计实例,介绍了利用MATLAB实现 FIR滤波器设计与滤波的三种方法,从仿真结果可以看出它们均可以达到技术指标要求,而且方法简单、快捷,大大减轻了工作量。滤波器的设计工作完成后,可以借助于MATLAB的export操作导出所设计滤波器的系统函数H(z)。由于MATLAB具有强大的接口功能,仿真后的结果可以很方便的移植到DSP、CPLD或FPGA等器件中。在实际应用中,只需按要求修改滤波器参数,并对程序作较少的改动,即可实现不同截止频率的FIR滤波器,实用性较强。其中介绍了利用MATLAB信号处理工具箱进FIR滤波器设计的三种方法:程序设计法、FDATool设计法和SPTool设计法,给出了详细的设计步骤,并将设计的滤波器应用到一个混和正弦波信号,以验证滤波器的性能。全文共5章。第2章作为数字信号处理的基础,介绍FDATool.程序设计法.Simulink仿真 及SPTool设计法等以及介绍了基于MATLAB的三种实现方法及频率特性。第3-4章介绍数字滤波器的结构、IIR与FIR滤波器的设计方法,这些都是数字信号处理的必修内容。第5章主要介绍了FIR数字滤波器改进型的设计方法。
数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。数字滤波器和模拟滤波器有着相同的滤波概念,根据其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有滤波精度高(与系统字长有关)、稳定性好(仅运行在0与l两个电平状态)、灵活性强等优点。数字滤波器按单位脉冲响应的性质可分为无限长单位脉冲响应滤波器IIR和有限长单位脉冲响应滤波器(FIR)两种。本文介绍(IIR)和(FIR)数字滤波器的设计与分析。
目 录
摘 要………………………………………………………………………………....1
Abstract………………………………………………………….…….…….…....…..2
第一章 引言………………………………………………….….………..…………..5
1.1数字滤波器的背景及意义 …………………………….……….....…….….…5
1.2内 容…………………………………………………..……..……..………...….6
第二章数字滤波器的MATLAB设计……………………………………...……….8
2.1 MATLAB的设计方法.............….....................................……….......................9
2.1.1 FDATool界面设计....…...........……...........................…….........................9
2.1.2程序设计法…………………………………………………...…...….......10
2.1.3 Simulink仿真…………………………………………………....……......11
2.1.4 SPTool设计法…………...………………………………………….........12
2.1.5结 论……………………………………………………….…….…..…...13
2.2基于MATLAB的程序设计方法的各种模拟滤波器实现……….……....……13
2.2.1基于模拟低通原型的MATLAB实现……………………..…...……..….14
2.2.2基于合适类型模拟滤波器的MATLAB实现…………………….……..15
2.2.3基于直接原型变换法的MATLAB实现………………….…..………....17
第三章 基于MATLAB的IIR数字滤波器的设计……………….….…..……...19
3.1 IIR滤波器有以下几个特点….…………………….............………..................19
3.2 IIR数字滤波器设计思路与步骤……………….................…..............….........19
3.3 IIR数字滤波器设计方法……………….........................…...….............….......20
3.3.1传统设计方法…………………………….…………….…..……...….….20
3.3.2计算机辅助设计方法……………………….…………..…..………..…..21
3.4常用模拟IIR滤波器的设计……………………….………..…………...….…21
3.4.1巴特沃斯IIR滤波器的设计……………………………………………..21
3.4.2契比雪夫I型IIR滤波器的设计…………………….…………….……..22
3.5用模拟滤波器理论来设计IIR数字滤波器…………..………..……….…......23
3.5.1脉冲响应不变法……………………………….........................................23
3.5.2双线性变换法……………………...........……..................................…....24
3.6仿真实现…………………...............................…………...................................27
第四章 基于MATLAB的FIR数字滤波器的设计...........................…........….….31
4.1 FIR数字滤波器设计的基本步骤..................................................……..........26
4.2 FIR滤波器的窗函数设计法..................................……..................................27
4.3程序设计法.........................................................……...............................…...28
4.4 FDATool设计法............................................……...................................…....29
4.5带通滤波器设计...........................................……............................................29
4.5.1带通滤波器设计实例一......................……..............................................29
(优秀毕业设计 www.2bysj.cn)
4.5.2带通滤波器设计实例二......................……..............................................30
4.6 Simulink仿真..................................................……......................…................31
4.7结束语............................................................…….…......................................32
第五章 一种改进型的FIR数字滤波器设计...........................……......................33
5.1滤波器设计的改进方法 ..................................................…….......................33
5.1.1 Matlab Link for CCS Development Tools简介.........…............................33
5.1.2数字滤波器的系统级设计方法.................................…….......................33
5.1.3 结论........................................................................……….....................34
参考文献...........................................................................................………..............35
致 谢..........................................................................................………...............36