




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业设计(论文) 题 目 基于 matlab 数字滤波器的优化设 计 系 (院)物理与电子科学系 专 业电子信息科学与技术 班 级2007 级 2 班 学生姓名李梦 学 号2007080510 指导教师李卫兵 职 称副教授 二九年六月十八日 独 创 声 明 本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指 导下,独立进行研究工作所取得的成果,成果不存在知识产权争议。 尽我所知,除文中已经注明引用的内容外,本设计(论文)不含任何 其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重 要贡献的个人和集体均已在文中以明确方式标明。 本声明的法律后果由本人承担。 作者签名: 二一
2、年 月 日 毕业设计(论文)使用授权声明 本人完全了解滨州学院关于收集、保存、使用毕业设计(论文) 的规定。 本人愿意按照学校要求提交学位论文的印刷本和电子版,同意学 校保存学位论文的印刷本和电子版,或采用影印、数字化或其它复制 手段保存设计(论文);同意学校在不以营利为目的的前提下,建立 目录检索与阅览服务系统,公布设计(论文)的部分或全部内容,允 许他人依法合理使用。 (保密论文在解密后遵守此规定) 作者签名: 二一 年 月 日 基于 matlab 的数字滤波器的设计 摘要 数字滤波器具有稳定性高、精度高、灵活性大等突出优点。随着 数字技术的发展,用数字技术实现滤波器功能越来越受到人们的重
3、视, 并得到了广泛的应用。数字滤波器功能可通过软件和硬件两种方案实 现,matlab 是当前流行的数值分析软件,提供了丰富的信号处理功 能。 本文分析了 iir 和 fir 滤波器的原理,介绍了其设计思路和方法, 基于 matlab 提出了数字滤波器的程序设计法,设计了 3 阶 iir 滤波 器和 3 阶 fir 滤波器,通过 matlab 可视化程序给出了幅频和相频特 性曲线,与 simulink 仿真结果对照,该设计实现了既定的目标;对声 音信号分别进行 fir 和 iir 数字滤波器的仿真。基于 matlab 设计的 滤波器,可以随时对比设计要求和滤波器特性,参数调整方便,仿真 波形直观
4、,缩短了设计时间,有利于滤波器设计的最优化,具有较高 的实际应用价值。 关键词:数字滤波器; matlab; fir; iir design of digital filter based on matlab abstract digital filter has the advantages of high stability, high precision, and so highlight flexibility. with the development of digital technology, using digital technology to achieve more an
5、d more filter functions absorbs attention and is widely used. digital filter function can be realized by the two programs, software and hardware. matlab is a popular numerical analysis software, providing a wealth of signal processing functions. this paper analyzes the iir and fir filter principle,
6、and introduces its design ideas and methods, a matlab-based digital filter design procedures, designing the 5-order iir filter and 96-order fir filter. through the matlab visualization procedures given the frequency and phase- frequencys characteristic curve, comparing the simulink simulation result
7、s of control, and the design is to achieve the established objectives. a variety of filtering image processing effects significantly. through the matlab- based filter design, design requirements and the filter characteristics can be compared, facilitate the adjustment parameters, the simulation wave
8、form intuitive, shorten the design time and is conducive to optimal filter design. it has the practical application of high value. key words: digital filter;matlab;fir;iir 目目录录 引言引言.1 第一章第一章数字滤波器的基本原理及应用数字滤波器的基本原理及应用.2 1.1数字滤波器的原理及表示方法.2 1.1.1数字滤波器的实现方法.2 1.1.2数字滤波器的设计步骤.2 1.2 matlab 的数字滤波器应用简介.3 1.
9、2.1数字滤波器的程序设计法.4 1.2.2数字滤波器的 simulink仿真.4 1.2.3结 论 .5 第二章第二章 基于基于 matlab 的的 iir 数字滤波器的设计及应用数字滤波器的设计及应用.10 2.1ir 数字滤波器的基本原理及其常用设计方 法.15 2.2 典型的 iir 数字滤波器的设计方 法16 2.3 从原型低通滤波器到其他数字各型滤波器的频带变换法.17 2.4 matalb 设计 iir 数字滤波器实际应 用.20 第三章第三章基于基于 matlab 的的 fir 数字滤波器的设计及应用数字滤波器的设计及应用.24 3.1fir 数字滤波器的基本原理及其常用设计方
10、法.18 3.2fir 滤波器的窗函数设计法.19 3.3频率取样法设计线性相位 fir 滤波器.21 3.4 应用 matlab 设计 fir 数字滤波器.25 结论结论.28 参考文献参考文献.29 谢辞谢辞.30 附录附录.31 附录一fadtool简介.31 附录二iir 低通数字滤波器设计完整程序.32 附录三 应用 matlab 处理音频信 号.40 引言 数字滤波器是数字信号处理的重要内容,在对信号的过滤、监测与参数的 估计等信号处理中,数字滤波器是使用最为广泛的装置。数字滤波器与模拟滤波器 比较,具有精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配以及实现模拟 滤波器无法实现
11、的特殊滤波功能等优点。数字滤波器是一个离散系统,从实现的网 络结构或者从单位脉冲响应分类,可以分成无限冲击响应(iir)滤波器和有限脉 冲响应(fir)滤波器。 在现代通信系统中,滤波是最常用的一种信号处理技术,是抑制干扰的一种有 效途径,一般用来衰减信号频谱中需要消除的部分,增强有用的部分。通常情况下, 用来消除或减弱随机噪声,以提高信号的信噪比。通俗地说,一个原始信号通过某 一装置后变为一个新信号的过程称为滤波。原始信号称为输入,新信号称为输出, 该装置便称为滤波器而数字滤波就是把输入序列通过一定的运算变换成输出序列。 数字滤波的核心思想是突出有效波,抑制干扰波。根据有效波和干扰波的频谱特
12、性 和视速度方面的差异,分别用频率滤波和二维视速度滤波来区分它们。频率滤波又 称一维频率滤波,视速度滤波又称为二维视速度滤波。数字滤波可以在时间域内进 行,也可以在频率域内进行。频率域滤波是把原始信号分解成各种不同频率的信号, 让它们通过滤波器后,观测各种不同频率的信号在振幅和相位上的变化,这种变化 关系称为频率特性;时间域滤波是把一个单位脉冲通过滤波器,将其输出称为脉冲 响应(或时间特性或滤波因子),脉冲响应是一个振幅随时间变化的函数,其傅立叶 变换就是频率响应。 数字滤波有 2 种实现方式:软件方式和硬件方式。在实际生产中,一般用硬件 滤波电路或软件滤波算法来提高测试数据的准确性。硬件滤波
13、应用较广,技术也比 较成熟,大多嵌入于仪表或装置中,但硬件滤波需增加设备,提高成本,而且电子 设备的增加有可能带来新的干扰源;软件滤波不需要增加硬件设备,可靠性高,功 能多样,使用灵活,较硬件滤波优越,但需占用一定的运行时间,如果信号采集速 率跟不上,会影响系统的实时性。 硬件滤波和软件滤波各有长处,在实际中常常 是先采用硬件电路滤波,然后软件算法滤波的双重滤波手段,以去除干扰,得到较 纯净的真实信号。 在数字信号处理中,滤波占有极其重要的地位。与模拟滤波相比,数字滤波具 有很多突出的优点,如:它可以满足滤波器对幅度和相位特性的严格要求,可以避 免模拟滤波无法克服的电压漂移、温度漂移和噪声等问
14、题1。 第一章数字滤波器的基本原理及设计方法 1.1数字滤波器的基本原理及其实现方法数字滤波器的基本原理及其实现方法 数字滤波器(digital filter,简介 df)是数字信号处理的重要基础,数字滤波器 实际上是一种运算过程。它是指完成品率选择或频率分辨任务的线性是不变系统的 通用名。因此,离散时间 lti 系统也成为数字滤波器。其功能是将一组输入的数字 序列通过一定的运算后转变为另一组输出的数字序列,因此它本身就是一台数字是 的处理设备。与模拟滤波器类似,数字滤波器按频率特性划分也有低通、高通、带 通、带阻、全通等类型。由于频率响应的周期性,频率变量以数字频率来表示 (w=/,为模拟角
15、频率,t 为抽样时间间隔, 为抽样频率,所以数字fsfs 滤波器设计必须给出抽样频率)。 数字滤波器一般可以用两种方法实现:一种是涉及专用的数字硬件、专用的数 字信号处理器或采用通用的数字信号处理器来实现;另一种是直接用计算机,将所 需要的运算编程程序来执行,这也就是用软件来实现数字滤波器。 数字滤波器是离散系统,所处理的信号是离散信号。一般是与离散系统或网络 可以用差分方程、单位脉冲响应以及系统函数进行。如果系统输入、输出服从 n 阶差分方程 + (5.1) m k k bny 0 )()(knx)( 1 knya n k k 则其系统函数,及滤波器的传输函数为 (5.2) 由式 5.1 可
16、知,实现一个数字滤波器需要如下三种基 本的运算单元。 )( )( 1 )( 1 0 zx zy za zb zh n k k k m k k k 加法器:此元件有两个输入和一个输出,三个或多个信号相加由相连的的两个 输入加法器实现。 乘法器(增益):这是一个单入单出元件,由于乘 1 时易于理解,因此,这里 明确处处示意图。 延迟单元(移位或记忆):此元件通过它的信号延迟一个样本,是由移位寄存器 实现的。 1.1.2数字滤波器的设计步骤数字滤波器的设计步骤 数字滤波器根据其冲激响应函数的时域特性可分为两种,即无限长冲激响应 (iir)滤波器和有限长冲激响应(fir)滤波器。由数字信号处理的一般理
17、论可知, iir 滤波器的特征是具有无限持续时间的冲激响应,而 fir 滤波器使冲激响应只能 持续一定的时间。数字滤波器的设计方法有多种,如双线性变换法、窗函数设计法、 脉冲响应不变法和 chebyshev 逼近法等等。 数字滤波器的一般设计过程为: (1)按实际需要,确定滤波器的性能要求; 在设计一个滤波器之前,必须首先根据工程实际的需要确定滤波器的技术指标。 在很多实际应用中,数字滤波器常常被用来实现选频操作。因此,指标的形式一般 在频域中给出幅度和相位响应。幅度指标主要以两种方式给出。第一种是绝对指标, 它提供对幅度响应函数的要求,一般应用于 fir 滤波器的设计。第二种指标是相对 指标
18、,它以分贝值的形式给出要求。在工程实际中,这种指标最受欢迎。对于相位 响应指标形式,通常希望系统在通频带中有线性相位。运用线性相位响应指标进行 滤波器设计具有如下优点3:只包含实数算法,不涉及复数运算;不存在延迟 失真,只有固定数量的延迟;长度为 n 的滤波器(阶数为 n-1),计算量为 n/2 数量级。 (2)用一个因果、稳定的离散线性时不变系统去逼近这一性能指标; 确定了技术指标后,就可以建立一个目标的数字滤波器模型,通常采用理想的 数字滤波器模型。之后,利用数字滤波器的设计方法,设计出一个实际滤波器模型 来逼近给定的目标。 (3)用有限精度的运算实现所设计的系统; (4)通过模拟验证所涉
19、及的系统是否符合给定性能要求。 上三步的结果是得到以差分或系统函数或冲激响应描述的滤波器,根据描述就 可以分析其频率特性和相位特性,以验证设计结果是否满足指标要求;或者利用计 算机仿真实现设计的滤波器,再分析滤波结果。 1.2 matlab 的数字滤波器应用简介的数字滤波器应用简介 matlab 是一种矩阵运算为基础的交互式程序语言,注重正对科学计算、工 程计算和绘图的要求。与其他机器语言相比,其特点是简洁和智能化,适应科技专 业的思维方式和书写习惯,使得编程和调试效率大大提高。matlab 软件由主包 和各类工具箱构成。其中主包是以 c/c+等语言编写成的函数库。该函数库提供矩 阵(或数组)
20、的各种算法以及建立在此基础上的各种应用函数和一些相关的用户友 好操作界面。从实用角度看,这些工具箱可以分为功能性工具箱和科学性工具箱两 大类。 matlab 提供了丰富的函数。fir1 函数实现了加窗线性相位 fir 滤波器设计 的经典方法,fir1 主要用于常用的标准带通滤波器设计,包括低通、带通、高通、 和带阻滤波器。除此之外,matlab 还提供了多带 fir 滤波器的设计函数 fir2、hilbert 变换器及其它具有奇对称系数的滤波器设计函数 furls 和 remez 等。 1.2.1数字滤波器的程序设计法数字滤波器的程序设计法 matlab 程序设计法是利用 matlab 语言调
21、用其内部提供的大量函数产生 常用的信号波形,并进行信号的变换、滤波、功率谱估计、滤波器设计、系统分析 与小波分析等众多功能。利用 matlab 函数对数字滤波器进行编程,然后进行程 序得到数字滤波器的模拟图像。 1.2.2数字滤波器的数字滤波器的 simulink 仿真仿真 simulink 是 matlab 中实现动态系统建模和仿真的集成环境,其主要功能是 对动态系统进行仿真和分析,预先模拟实际系统的特性和响应,根据设计及使用的 要求,对系统进行修改和优化,以提高系统的性能,实现高效开发的目标。 simulink 提供了图形化的用户界面,只需点击鼠标就可以轻易完成模型的创建、调 试和仿真工作
22、,大大降低了仿真难度。模型创建完毕,可以启动系统的仿真功能分 析系统的动态特性。 模型的创建与定义、模型的分析及修正是使用 simulink 的三大步骤,下图显 示了典型 simulink 工作框图5。 模型建构和定义 义 +模型的分析显示 修正 图图 1.11.1 典型 simulink 工作框 用 simulink 仿真数字滤波器的模拟框图,经过运行会得到仿真波形。 在 simulink 仿真环境下的 fdatool(filter design ws=3000*2*pi; %滤波器截止频率 ap=3;as=15; %通带波纹和阻带衰减 fs=10000; nn=128; %调用函数 fre
23、qz 所用频率点数 n,wn=buttord(wp,ws,ap,as,s); %模拟滤波器最小阶数和截止频率 fprintf(n=%.4fn,n); %输出模拟滤波器最小阶数 z,p,k=buttap(n); %模拟低通原型 bw bap,aap=zp2tf(z,p,k); %零极点增益形式转换为传递函数形式 b,a=lp2lp(bap,aap,wn); %频率转换 bz,az=impinvar(b,a,fs); %用脉冲响应不变法得到数字滤波器的传递函数 figure(1); h,f=freqz(bz,az,nn,fs); %绘制数字滤波器幅频和相频特性 subplot(2,1,1),plo
24、t(f,20*log10(abs(h); xlabel(频率/hz);ylabel(振幅/db);grid; subplot(2,1,2),plot(f,180/pi*unwrap(angle(h) xlabel(频率/hz);ylabel(相位/o);grid; 在 matlab 环境下运行该程序即可得到滤波器幅频相频响应曲线,如图 2.3 所示。 图图 2.32.3 滤波器的幅频特性和相频特性滤波器的幅频特性和相频特性 由幅频特性曲线可知,在小于 2000hz 处滤波器衰减小于 3db,而在大于 3000hz 处衰减大于 15db,满足滤波器的设计指标。 图图 2.42.4 滤波器滤波效果
25、图滤波器滤波效果图 从程序输出的滤波器滤波效果图(图 2.4)可以看出,用函数 filtfilt 对输入信 号 x(t)进行滤波后,输出的 1000hz 的信号(实线)与输入信号中 1000hz 信号的相 位一致,即滤波后并没有改变信号波形的形状,而用 filter 函数对输入信号 x(t)进行 滤波后(虚线),得到的输出与原信号相比,有了一些延迟,改变了信号波形形状。 3.simulink 仿真仿真 通过调用 simulink 中的功能模块构成数字滤波器的仿真框图,在仿真过程中, 可以双击各功能模块,随时改变参数,获得不同状态下的仿真结果9。通过 simulink 环境下 digital f
26、ilter design(数字滤波器设计)模块导入 fdatool 所设计 的滤波器。 fdatool 界面参数设置如表 2.1。 表表 2.12.1 图图 2.52.5 fdatool 界面界面 设置完以后点击 design filter 既可得到所设计的 fir 滤波器。此时可以看到如 图 2.5 的 fdatool 界面图。通过菜单选项 analysis 可以在特性区看到所设计滤波 器的幅频响应、相频响应、零极点配置和滤波器系数等各种特性。设计完成后保存 选项选择项 filter typelowpass (低通滤波器) design methodiir butterworth(iir 滤
27、波器巴特沃斯滤波法) fpass,fstop,ap,asfpass=2000hz, fstop=3000hz ,apass=3db, astop=15db filter orderminimum oder 为文件。在设计过程中,可以对比滤波器幅频相频特性和设计要求,随时调整参数 和滤波器类型,以便得到最佳效果。其他类型的 iir 滤波器也都可以使用 fdatool 来设计。 simulink 仿真图和滤波效果图如图 2.6 和图 2.7 所示。由信号滤波效果图可以 看到,滤波器对含有 1000hz 和 4000hz 频率的输入信号进行了滤波,滤除了 4000hz 的信号,只留下 1000hz
28、的信号,从程序的输出也能看出来。 图图 2.62.6 simulink 仿真图仿真图 由图 2.4 和图 2.7 可以看出,程序设计与 simulink 仿真得到的幅频相频特性 和滤波效果是相同的,符合设计要求。 图图 2.72.7 滤波效果图滤波效果图 第三章基于 matlab 的 fir 数字滤波器的设计及其应用 3.1fir 数字滤波器数字滤波器的基本原理及常用设计方法的基本原理及常用设计方法 一、基本原理 fir 数字滤波器的设计与 iir 滤波器不同。它是选择有限长度的,是传输函数)(nh 满足技术要求。)( jw eh 设fir滤波器单位脉冲响应h(n)长度为n,其系统函数为 1
29、0 ( )( ) n n n h zh n z h(z)是的(n-1)次多项式,在 z 平面上有(n-1)个零点,原点 z=0 是(n-1) 1 z 阶重极点。因此,h(z)永远稳定。稳定和线性相位特性是 fir 滤波器突出的优点。 comment 微微微微1: 应该用哪一种思 想解释比较合适? fir 滤波器的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常 数的问题,设计方法主要有窗函数法、频率采样法和切比雪夫等波纹最佳逼近法等。 3.2fir 滤波器的窗函数设计法滤波器的窗函数设计法 窗函数设计法的基本思想是用有限长单位冲击响应滤波器(firdf)逼近所希望的滤波特性。 假设希望
30、逼近的滤波器的频率响应为,其单位冲激响应为(。为方便设计我们)( jw d eh)(nhd 通常选择为具有片断常数特性的理想滤波器。因此是无限长非因果序列,不能)( jw d eh)(nhd 直接作为 firdf 的单位冲击响应。窗函数设计法就是要截取为有限长度的因果序列,并)(nhd 用合适的窗函数进行加权作为 firdf 的单位冲击响应。截取的长度和加权的类型都直接)(nh 影响逼近的精度(滤波器指标) 。下面介绍其设计过程及其几种常见的窗函数。 工程中常用的窗函数有六种,即矩形窗、三角形窗、汉宁(hanning)窗、哈明(hamming) 窗、布莱克曼(blackman)窗和凯泽(kai
31、ser)窗。不同的窗函数其过渡带和阻带衰减各有不同。 comment 微微微微2: 这里还有一种具 体的步骤以供参考 那个跟好一些呢? 利用频率抽样法设计的步骤如下: 1根据阻带衰减选择过渡带采样 s 点的个数为 m。 2通过过渡带带宽,根据b 估算滤波器长度bmn/21)( n; 3构造一个希望逼近的频率响应函数 2 1 )()( n jw dg jw d ewheh 设计标准片段常数特性的 fir 滤波器时,一 般构造为相应的理想频率特性,)(whdg 且满足对称特性要求。 4按照如下公告时进行采样: k n n j k n w jw d ekaehkh 1 2 )(| )( )( k=-
32、0,1,2,n-1 k=0,1,2,.,n-1) 2 ()(k n hka dg 并加入过渡带采样。 5对进行 n 点 idft 得到第一类)(kh 线性相位 fir 滤波器的单位脉冲响应为 1 0 )( 1 )()( n k kn n wkh n khidftnh n=0,1,2,n-1 6检查结果。 用窗函数法设计 fir 滤波器的步骤如下11: (1) 选择窗函数类型及长度,写出窗函数的表达式。)(nw 根据阻带衰减选择其窗函数类型,再根据过渡带宽度确定所选窗函数的长度)(nw n。 应当注意的是:用窗函数设计的 firdf 通带波纹近似等于阻带波纹,一般阻带最 小衰减达 40db 以上
33、,则通带最大衰减就小于 0.1db,所以用窗函数设计 firdf 时 只考虑阻带最小衰减就可以了。 (2)构造所希望逼近的滤波器响应函数。 2 1 )( n jw dg jw d ewheh)( 据设计需要一般选择线性相位理想滤波器(理想低通、理想高通、理想带通、 理想带阻)。理想滤波器的截止频率近似为最终设计的 firdf 的过渡带中心频 c w 率,幅度函数衰减一半(约为-6db),所以一般取=(+)/2,和分别为通 c w p w s w 带边界频率合租带边界频率。 (3)计算 - )( 2 1 )(dweehnh jwnjw dd (4)加窗得到设计结果 :。)()()(nwnhnh
34、d 使用窗函数法设计时要满足以下两个条件: (1)窗谱主瓣尽可能地窄,以获得较陡的过渡带; (2)尽量减少窗谱的最大旁瓣的相对幅度,也就是使能量尽量集中于主瓣, 减小峰肩和纹波,进而增加阻带的衰减。 3.3频率取样法设计线性相位 fir 滤波器 频率采样法是从频域出发,将给定的理想频率响应进行取样,再通过离散傅里叶反 变换从频域样点直接求得的系统的单位脉冲响应。整个设计过程如下: idft dtft )( jw d ehnkwk/2 .)(kh)(nh)( jw eh 利用频率采样法设计 fir 滤波器的关键是根据线性约束条件,正确确定 的值。具体步骤如下:)(kh 1对设计指标进行归一化处理
35、。 2确定滤波器的类型和阶数。 3根据约束条件确定的值。)(kh 4将进行 idft 变换,求单位脉冲响应。)(kh)(nh 5用 freqz 函数验算技术指标是否满足要求。 采用频率采样法设计前述实例 1 设计一线性相位 fir 数字低通滤波器,要求 通带临界频率 fp=2000hz,通带允许波动 rp=1db,阻带临界频率 fs=4000hz,阻带 衰减 rs=50db,截止频率 fc=(fp+fs)/2=3000hz,采样频率 fs=22050hz。m 程序如下: clear;close all;clc; fc=3000;fs=22050;w1c=fc/(fs/2); %指标归一化 n=
36、37; %选用阶数 n 为奇的第一类滤波器 %根据约束条件确定 h(k)的值 w=0:n-1*2*pi/n; m=fix(w1c/(2/n)+1); abs_h=ones(1,m),zeros(1,n-2*m+1),ones(1,m-1); angles_h=-w*(n-1)/2; h=abs_h.*exp(j*angles_h); hn=real(ifft(h), %求单位脉冲响应 freqz(hn,1,512,fs);grid on;% 绘制结果并加网络 运行结果如下: hn = columns 1 through 9 -0.0242 -0.0046 0.0191 0.0280 0.014
37、2 -0.0125 - 0.0310 -0.0252 0.0031 columns 10 through 18 0.0333 0.0399 0.0122 -0.0348 -0.0656 -0.0454 0.0357 0.1529 0.2562 columns 19 through 27 0.2973 0.2562 0.1529 0.0357 -0.0454 -0.0656 - 0.0348 0.0122 0.0399 columns 28 through 36 0.0333 0.0031 -0.0252 -0.0310 -0.0125 0.0142 0.0280 0.0191 -0.0046
38、column 37 -0.0242 数字滤波器的频率取样法,在 matlab 语言中所使用的调用函数是 fsamp2,调用 方式为: h=fsamp2(hd) 采用频率取样法设计线性相位低通滤波器,其模拟结果见图 3.2。与图 3.1 相 比,频率取样法的阻带衰减损耗比较小,可以通过增加过渡带样点的方法增大阻带 衰耗。 图图 3.23.2 线性相位低通滤波器增益响应线性相位低通滤波器增益响应 频率取样法设计过程简单,但阻带衰减明显,若适当选取过渡带样点值,会取 得较窗函数法略好的衰耗特性。窗函数设计法在阶数较低时,阻带特性不满足设计 要求,只有当滤波器阶数较高时,使用哈明窗和凯塞窗基本可以达到
39、阻带衰减要求。 fir 滤波器以其稳定和容易实现严格的线性相位,使信号处理后不产生畸变,而在 实际中获得广泛应用。 需要得到图形 3.simulink 仿真仿真 构造原始信号,通过 simulink)* 3 . 83*2sin()200sin(2)100sin(5)(ttttx 环境下 digital filter design(数字滤波器设计)模块导入 1 中 fdatool 所设计的滤 波器文件。 其 fdatool 界面参数设置如下表: 选项选择项 filter typebandpass(带通滤波器) design methodfir window(fir 滤波器窗函数法) 设置完以后点
40、击 design filter 既可得到所设计的 fir 滤波器,此时可以看到如 图 3.5 的 fdatool 界面图。 通过菜单选项 analysis 可以在特性区看到所设计滤波器的幅频响应、相频响应、 零极点配置和滤波器系数等各种特性。设计完成后将结果保存。在设计过程中,可 以对比滤波器幅频相频特性和设计要求,随时调整参数和滤波器类型,以便得到最 佳效果。其他类型的 fir 滤波器也都可以使用 fdatool 来设计。 图图 3.53.5 fdatool 界面图界面图 simulink 仿真图和滤波效果图如图 3.6 和图 3.7 所示。 window specificationsham
41、ming(汉明窗) filter orderspecify order=95 fc1 和 fc2fc1=70hz, fc2=84hz 图图 3.63.6 simulink 仿真图仿真图 图图 3.73.7 滤波效果图滤波效果图 由图 3.4 和图 3.7 可以看出,程序设计与 simulink 仿真得到的幅频相频特性 和滤波效果是相同的,符合设计要求。 结论 通过上述分析可以知道,数字滤波器的设计必须满足一定的性能指标。滤波器 的阶数越高,滤波效果越好,但是占用的运算时间也越多,因此在满足指标要求的 情况下应尽量减少滤波器的阶数。iir 和 fir 滤波器各有所长,在实际应用中,选 择滤波器型
42、号时,要从多方面加以考虑。 利用 matlab 的强大运算功能,以及 matlab 工具箱可以快速有效地设计 数字滤波器,并完成对数字信号滤波的仿真应用,方便快捷,极大的减轻了工作量, 还可以进一步进行优化设计。在设计过程中可以对比滤波器的特性,随时更改参数, 以达到滤波器设计的最优化。在实际应用中,也只需按要求修改滤波器参数,并对 程序作较少的改动,即可实现不同截止频率的数字滤波器,实用性较强。利用 matlab 设计数字滤波器在信号处理、医用设备以及电力系统二次处理软件和微 机保护等众多领域,有着广泛的应用前景。 参考文献 1 姚齐国.基于 matlab 的数字滤波器的设计j.江西理工大学
43、学报.2006,(27)1:50-51. 2 薛年喜.matlab 在数字信号处理中的应用m.北京:清华大学出版社.2008,1. 3 郑佳春.数字滤波器的 matlab 设计与 dsp 上的实现j.技术纵横.2003,7:28-31. 4 王嘉梅.基于 matlab 的数字信号处理与实践开发m.西安:西安电子科技大学出版社. 2007,12. 5 李海涛,邓樱.matlab 程序设计教程m.北京:高等教育出版社.2002,8. 6 丁玉美,高西全.数字信号处理(第二版)m.西安:西安电子科技大学出版社.2000. 7 万永革.数字信号处理的 matlab 实现m.北京:科学出版社.2007,
44、4. 8 陈后金.数字信号处理m.北京:高等教育出版社.2004,7. 9 仲麟.matlab 仿真技术与应用教程m.北京:国防工业出版社,2004. 10 刘树棠.数字信号处理(利用 matlab)m.西安:西安交通大学出版社,2002,6. 11 m.e.van valkenburg.analog filter designm.holt,rinehart and vinston,new york,1982. 12 t.w.parks and c.s.burrus.digital filter designm.john wileypws publishing company:1997. 谢辞
45、 本论文的完成,得益于我的各位大学老师传授的知识,使本人有了完成论文所 要求的知识积累,更得益于指导教师李卫兵老师从选题的确定、论文资料的收集、 论文框架的确定、开题报告准备及论文初稿与定稿中对字句的斟酌倾注的大量心血, 在此对李卫兵老师表示感谢! 在这里,还要特别感谢大学四年学习期间给我诸多教诲和帮助的物理与电子科 学系的各位老师,谢谢你们给我提供这么好的环境,你们给予我的指导和教诲我将 永远记在心里! 感谢在大学四年学习期间给我传授诸多专业知识的各位老师给予我的指导和帮 助!感谢在实验室里同我一起写论文的同学,感谢张晓菲、杜雯、朱美杰、于广超、 谯帅等各位同学在这期间给予我的关心和帮助!
46、感谢和我一起生活四年的室友,是你们让我们的寝室充满快乐与温馨, “君子 和而不同”,我们正是如此!愿我们以后的人生都可以充实、多彩与快乐! 回首本人的求学生涯,父母的支持是本人最大的动力。父母不仅在经济上承受 了巨大的负担,在心里上更有思子之情的煎熬与望子成龙的期待。忆往昔,每次回 到家时父母的欣喜之情,每次离家时父母的依依不舍之眼神,电话和信件中的殷殷 期待和思念之语,皆使本人刻苦铭心,目前除了学习成绩尚可外无以为报,希望以 后的学习、工作和生活能使父母宽慰。 附录 附录一附录一fadtool 简介简介 fdatool 界面总共分两大部分,一部分是 design filter,在界面的下半部
47、,用 来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤 波器的各种特性。design filter 部分主要分为: filter type(滤波器类型)选项,包括 lowpass(低通)、highpass(高通)、 bandpass(带通)、bandstop(带阻)和特殊的 fir 滤波器。 design method(设计方法)选项,包括 iir 滤波器的 butterworth(巴特沃思) 法、chebyshev type i(切比雪夫 i 型)法、 chebyshev type ii(切比雪夫 ii 型) 法、elliptic(椭圆滤波器)法和 fir 滤波器的
48、equiripple 法、least-squares(最小 乘方)法、window(窗函数)法。 filter order(滤波器阶数)选项,定义滤波器的阶数,包括 specify order(指 定阶数)和 minimum order(最小阶数)。在 specify order 中填入所要设计的滤波 器的阶数(n 阶滤波器,specify ordern-1),如果选择 minimum order 则 matlab 根据所选择的滤波器类型自动使用最小阶数。 frenquency specifications 选项,可以详细定义频带的各参数,包括采样频率 fs 和频带的截止频率。它的具体选项由
49、filter type 选项和 design method 选项决定, 例如 bandpass(带通)滤波器需要定义 fstop1(下阻带截止频率)、fpass1(通带 下限截止频率)、fpass2(通带上限截止频率)、fstop2(上阻带截止频率),而 lowpass(低通)滤波器只需要定义 fstop1、fpass1。采用窗函数设计滤波器时, 由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止频率,而 不必定义阻带参数。 magnitude specifications 选项,可以定义幅值衰减的情况。例如设计带通滤波 器时,可以定义 wstop1(频率 fstop1 处的幅值
50、衰减)、wpass(通带范围内的幅 值衰减)、wstop2(频率 fstop2 处的幅值衰减)。当采用窗函数设计时,通带截 止频率处的幅值衰减固定为 6db,所以不必定义。 window specifications 选项,当选取采用窗函数设计时,该选项可定义,它包 含了各种窗函数。 附录二附录二iir 低通数字滤波器设计完整程序低通数字滤波器设计完整程序 iir 低通滤波器设计的程序设计的详细程序如下: %samp1 wp=2000*2*pi; ws=3000*2*pi; %滤波器截止频率 ap=3;as=15; %通带波纹和阻带衰减 fs=10000; nn=128; %调用函数 freq
51、z 所用频率点数 n,wn=buttord(wp,ws,ap,as,s); %模拟滤波器最小阶数和截止频率 fprintf(n=%.4fn,n); %输出模拟滤波器最小阶数 z,p,k=buttap(n); %模拟低通原型 bw bap,aap=zp2tf(z,p,k); %零极点增益形式转换为传递函数形式 b,a=lp2lp(bap,aap,wn); %频率转换 bz,az=impinvar(b,a,fs); %用脉冲响应不变法得到数字滤波器的传递函数 figure(1); h,f=freqz(bz,az,nn,fs); %绘制数字滤波器幅频和相频特性 subplot(2,1,1),plot
52、(f,20*log10(abs(h); xlabel(频率/hz);ylabel(振幅/db);grid; subplot(2,1,2),plot(f,180/pi*unwrap(angle(h) xlabel(频率/hz);ylabel(相位/o);grid; figure(2); f1=1000;f2=4000; %输入信号 x(t)的频率 n=100; %数据长度 dt=1/fs;n=0:n-1;t=n*dt; %采样间隔和时间序列 x=sin(2*pi*f1*t)+0.5*cos(2*pi*f2*t); %输入信号 subplot(2,1,1),plot(t,x),title(输入信号
53、); grid; %绘制输入原始信号 x(t) y=filtfilt(bz,az,x); %用函数 filtfilt 对 x(t)进行滤波 y1=filter(bz,az,x); %用 filter 函数对 x(t)滤波 subplot(2,1,2),plot(t,y,t,y1,:),title(输出信号); xlabel(时间/s); legend(filtfilt,filter); grid; %加图例 运行结果:n=5.0000 附录三附录三 用用 matlab 处理音频信号处理音频信号 语音讯号是基于时间轴上的一维数码信号,在这搭主如果对语音讯号进行频域 上的分析。在信号分析中,频域往
54、往包含了更多的信息。对于频域来讲,大概有 8 种波形可让咱们分析:矩形方波,锯齿波,梯形波,临界阻尼指数脉冲波形,三角 学波,余旋波,余旋平方波,高斯波。对于各类波形,咱们均可以用一种方法来分 析,就是傅立叶变换:将时域的波形转化到频域来分析。 从频域的角度对信号进行分析,并通过分析频谱来设计出合适的滤波器。当 然,这些个过程的实现都是在 matlab 软件上进行的,matlab 软件在数码信号措置 惩罚上发挥了相当大的优势。 二、设计方案: 利用 matlab 中的 wavread 命令来读入(采集)语音讯号,将它赋值给某一向 量。再将该向量看作一个普通的信号,对其进行 fft 变换实现频谱
55、分析,再依据现 真实情况况对它进行滤波。对于波形图与频谱图(包括滤波前后的对比图)均可以 用 matlab 画出。咱们还可以通过 sound 命令来对语音讯号进行回放,以便在听觉 上来感受声音的变化。 三、主体部分: (一)、语音的录入与打开: y,fs,bits=wavread(blip,n1 n2);用于读取语音,采样值放在向量 y 中,fs 暗示采样频率(hz),bits 暗示采样位数。n1 n2暗示读取从 n1 点到 n2 点 的值(若只有一个 n 的点则暗示读取前 n 点的采样值)。 sound(x,fs,bits); 用于对声音的回放。向量 y 则就代表了一个信号(也即一 个庞大的
56、“函数表达式”)也就是说可以像措置惩罚一个信号表达式一样措置惩罚 这个声音讯号。 fft 的 matlab 实现 在 matlab 的信号措置惩罚工具箱中函数 fft 和 ifft 用于快速傅立叶变换和逆 变换。下面先容这些个函数。 函数 fft 用于序列快速傅立叶变换。 函数的一种挪用格式为 y=fft(x) 其中,x 是序列,y 是序列的 fft,x 可以为一向量或矩阵,若 x 为一向量,y 是 x 的 fft。且和 x 不异长度。若 x 为一矩阵,则 y 是对矩阵的每列向量进行 fft 如果 x 长度是 2 的幂次方,函数 fft 执行高速基2fft 算法;不然 fft 执行一 种混合基
57、的失散傅立叶变换算法,计较速度较慢。 函数 fft 的另一种挪用格式为 y=fft(x,n) 式中,x 是序列,y 是序列的 fft,n 为正整数。 函数执行 n 点的 fft。若 x 为向量且长度小于 n,则函数将 x 补零至长度 n。 若向量 x 的长度大于 n,则函数截短 x 使之长度为 n。若 x 为矩阵,按不异方法对 x 进行措置惩罚。 经函数 fft 求得的序列 y 一般是复序列,通常要求其幅值和相位。matlab 提 供求复数的幅值和相位函数:abs,angle,这些个函数一般和 fft 同时使用。 函数 abs(x)用于计较复向量 x 的幅值,函数 angle(x)用于计较复向
58、量的相角, 介于和 之间,以弧度暗示。 函数 unwrap(p)用于睁开弧度相位角 p ,当相位角绝对变化超过时,函数把它 扩展至。 用 matlab 工具箱函数 fft 进行频谱分析时需注意: (1)函数 fft 返回值 y 的数据布局对称性 若已经知序列 x=4,3,2,6,7,8,9,0,求 x(k)=dftx(n)。 利用函数 fft 计较,用 matlab 编程如下: n=8; n=0:n-1; xn=4 3 2 6 7 8 9 0; xk=fft(xn) 成果为: xk = 39.0000 -10.7782 + 6.2929i 0 - 5.0000i 4.7782 - 7.7071
59、i 5.0000 4.7782 + 7.7071i 0 + 5.0000i -10.7782 - 6.2929i 由步伐运行所得成果可见,x(k)和 x(n)的维数不异,共有 8 个元素。x(k)的 第一行元素对应频率值为 0,第五行元素对应频率值为 nyquist 频率,即标准频率 为 1.因此第一行至第五行对应的标准频率为 01。而第五行至第八行对应的是负 频率,其 x(k)值是以 nyquist 频率为轴对称。(注:通常暗示为 nyquist 频率外 扩展,标以正值。) 一般而言,对于 n 点的 x(n)序列的 fft 是 n 点的复数序列,其点 n=n/2+1 对 应 nyquist
60、频率,作频谱分析时仅取序列 x(k)的前一半,即前 n/2 点即可。x(k) 的后一半序列和前一半序列时对称的。 (2) 频率计较 若 n 点序列 x(n)(n=0,1,n-1)是在采样频率 下获得的。它的 fft 也是 n 点 序列,即 x(k)(k=0,1,2,n-1),则第 k 点所对应现实频率值为 f=k*f /n. (3) 作 fft 分析时,幅值大小与 fft 选择点数有关,但不影响分析成果。 2、设计内部实质意义: (1)下面的一段步伐是语音讯号在 matlab 中的最简单表现,它实现了语音的 读入打开,以及绘出了语音讯号的波形频谱图。 x,fs,bits=wavread(din
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 窗帘面料的智能遮光与室内光线管理特性研究与发展趋势考核试卷
- 种植园信息化管理考核试卷
- 糖料作物种植气候智慧农业考核试卷
- 机车车辆车载雨水收集系统配件考核试卷
- 自行车安全驾驶模拟培训考核试卷
- 粮食仓储智能化改造考核试卷
- 电能表的电网健康管理考核试卷
- 航空器电子战设备校准与修理考核试卷
- 羽绒制品企业项目管理与进度控制考核试卷
- 公务员新冠试题及答案
- 青岛超银中学2022-2023学年七年级下学期阶段性调研地理试题【带答案】
- 2024年安徽省初中(八年级)学业水平考试初二会考生物+地理试卷真题
- 火针疗法在皮肤科:国际视角
- 4000m3d制药废水计算书
- 越剧古装衣介绍
- 宅基地确权委托书
- 人事行政工作成功典范总结
- 英国皇室文化课件
- 咯血个案护理
- 第6课+呵护花季+激扬青春【中职专用】《心理健康与职业生涯规划》(高教版2023基础模块)
- 博士生入学复试面试报告个人简历介绍(完美版)模板两篇
评论
0/150
提交评论