电信宽带充值多久到账不能装申请退款要多久到账

捷配欢迎您!
微信扫一扫关注我们
当前位置:&>>&&>>&&>>&基于MATLAB和DSP的IIR滤波器的设计与仿真
&&&& 摘 要:采用了TI 公司的TMS320C55XX 数字信号完成IIR 的设计,利用MATLAB 的滤波器设计工具箱(FDATool)来设计最小阶切比雪夫低通滤波器,并用代码调试器(CCS)进行软硬件的调试和仿真。结果表明,该滤波器可以有效的滤除干扰信号,且设计方法简单可靠,具有较强的稳定性。
  1 引言
  在测控系统中, 从得到的信号中往往包含噪声和许多与测量无关的信号, 并且原始的测量信号经传输、放大、变换、及其它处理中也会产生许多不同形式的噪声, 这些信号的处理与分析都是基于滤波器而进行的, 数字滤波器在各种数字信号处理中发挥着十分重要的作用,其设计一直是信号处理领域的重要研究课题。
  常用的数字滤波器有FIR(Finite Impulse Response,有限冲激响应)滤波器和IIR(Infinite Impulse Response,无限冲激响应)滤波器,IIR 数字滤波器因具有结构简单、占用空间少、运算速度快、较高的计算精度和能够用较低的阶数实现较好的选频特性等特点而得到广泛的应用。
  但是传统的数字滤波器设计非常复杂需要用繁琐的公式进行计算,参数改变后又要重新进行计算,尤其是高阶滤波器的设计工作量更大。(数字信号处理器)具有精度高、速度快、实时性强,是实现数字滤波器设计与仿真的重要途径。因此,基于MATLAB 和DSP 的滤波器设计可以大大简化设计过程和提高滤波器的滤波效果。
  2 IIR 数字滤波器的基本原理
  3 在MATLAB FDA 工具箱中设计滤波器
图1 FDATOOL 设计IIR 滤波器(幅相曲线)界面
全文PDF下载:&&来源:
技术资料出处:李冬发
该文章仅供学习参考使用,版权归作者所有。
因本网站内容较多,未能及时联系上的作者,请按本网站显示的方式与我们联系。
【】【】【】【】
上一篇:下一篇:
本文已有(0)篇评论
发表技术资料评论,请使用文明用语
字符数不能超过255
暂且没有评论!
12345678910
12345678910
12345678910
开关电源是利用现代电力电子技术,控制开关管开通和关断的时间比率,维持稳定输出电压的一种电源,开关电源一般由脉冲宽度调制(PWM)控制IC和MOSFET构成。电源是各种电子设备必不可缺的组成部分,其性能优劣直接关系到电子设备的技术指标及能否安全可靠地工作。由于开关电源内部关键元...[][][][][][][][][][]
IC热门型号
IC现货型号
推荐电子百科 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
DSP-IIR滤波器
下载积分:3000
内容提示:DSP-IIR滤波器
文档格式:DOCX|
浏览次数:11|
上传日期: 19:15:04|
文档星级:
全文阅读已结束,如果下载本文需要使用
 3000 积分
下载此文档
该用户还上传了这些文档
DSP-IIR滤波器
官方公共微信1096人阅读
IIR滤波器和FIR滤波器的区别与联系_jinjun_新浪博客 &.cn/s/blog_9rst.html
1.两种滤波器都是数字滤波器。根据冲激响应的不同,将数字滤波器分为有限冲激响应(FIR)滤波器和无限冲激响应(IIR)滤波器。对于FIR滤波器,冲激响应在有限时间内衰减为零,其输出仅取决于当前和过去的输入信号值。对于IIR滤波器,冲激响应理论上应会无限持续,其输出不仅取决于当前和过去的输入信号值,也取决于过去的信号输出值。
--------------------------------------------------------------------------------------------------
2.FIR:有限脉冲响应滤波器。有限说明其脉冲响应是有限的。与IIR相比,它具有线性相位、容易设计的优点。这也就说明,IIR滤波器具有相位不线性,不容易设计的缺点。而另一方面,IIR却拥有FIR所不具有的缺点,那就是设计同样参数的滤波器,FIR比IIR需要更多的参数。这也就说明,要增加DSP的计算量。DSP需要更多的计算时间,对DSP的实时性有影响。
以下都是低通滤波器的设计。
FIR的设计:
FIR滤波器的设计比较简单,就是要设计一个数字滤波器去逼近一个理想的低通滤波器。通常这个理想的低通滤波器在频域上是一个矩形窗。根据傅里叶变换我们可以知道,此函数在时域上是一个采样函数。通常此函数的表达式为:
sa(n)=sin(n∩)/n∏,但是这个采样序列是无限的,计算机是无法对它进行计算的。故我们需要对此采样函数进行截断处理。也就是加一个窗函数。就是传说中的加窗。也就是把这个时域采样序列去乘一个窗函数,就把这个无限的时域采样序列截成了有限个序列值。但是加窗后对此采样序列的频域也产生了影响:此时的频域便不在是一个理想的矩形窗,而是成了一个有过渡带,阻带有波动的低通滤波器。通常根据所加的窗函数的不同,对采样信号加窗后,在频域所得的低通滤波器的阻带衰减也不同。通常我们就是根据此阻带衰减去选择一个合适的窗函数。如矩形窗、汉宁窗、汉明窗、BLACKMAN窗、凯撒窗等。选择一个具体的窗函数之后,根据所设计滤波器的参数来计算所需的阶数、此窗函数的表达式。然后用这个窗函数去和采样序列相乘,就可以得到实际滤波器的脉冲响应。
IIR的设计(双线性变换法):
IIR的设计理念是这样的:根据所要设计滤波器的参数去确定一个模拟滤波器的传输函数,然后再根据这个传输函数,通过双线性变换、或脉冲响应不变法来进行数字滤波器的设计。它的设计比较复杂,复杂在于它的模拟滤波器传输函数H(s)的确定。这一点我们可以让软件来实现。然后,我们说一下它的具体实现步骤:首先你要先确定你需要一个什么样的滤波器,巴特沃斯型,切比雪夫型,还是其它什么型的滤波器。当你选定一个型号后,你就可以根据设计参数和这个滤波器的计算公式来确定其阶数、传输函数的表达式。通常这个过程中还存在预扭曲的问题(这只是双线性变换法所需要注意的问题,脉冲响应不变法不存在这种问题)。确定H(S)后,就可以通过双线性变换得到其数字域的差分方程。
--------------------------------------------------------------------------------------------------
3.对于IIR和FIR的比较,有些书上有论述。我引用陈怀琛的“数字信号处理教程--MATLAB释义与实现”:
&&&&从性能上来说,IIR滤波器传递函数包括零点和极点两组可调因素,对极点的惟一限制是在单位圆内。因此可用较低的阶数获得高的选择性,所用的存储单元少,计算量小,效率高。但是这个高效率是以相位的非线性为代价的。选择性越好,则相位非线性越严重。FIR滤波器传递函数的极点固定在原点,是不能动的,它只能靠改变零点位置来改变它的性能。所以要达到高的选择性,必须用较高的阶数;对于同样的滤波器设计指标,FIR滤波器所要求的阶数可能比IIR滤波器高5-10倍,结果,成本较高,信号延时也较大;如果按线性相位要求来说,则IIR滤波器就必须加全通网络进行相位校正,同样要大大增加滤波器的阶数和复杂性。而FIR滤波器却可以得到严格的线性相位。
&&&&从结构上看,IIR滤波器必须采用递归结构来配置极点,并保证极点位置在单位圆内。由于有限字长效应,运算过程中将对系数进行舍入处理,引起极点的偏移。这种情况有时会造成稳定性问题,甚至产生寄生振荡。相反,FIR滤波器只要采用非递归结构,不论在理论上还是在实际的有限精度运算中都不存在稳定性问题,因此造成的频率特性误差也较小。此外FIR滤波器可以采用快速傅里叶变换算法,在相同阶数的条件下,运算速度可以快得多。
&&&&另外,也应看到,IIR滤波器虽然设计简单,但主要是用于设计具有分段常数特性的滤波器,如低通、高通、带通及带阻等,往往脱离不了模拟滤波器的格局。而FIR滤波器则要灵活得多,尤其是他易于适应某些特殊应用,如构成数字微分器或希尔波特变换器等,因而有更大的适应性和广阔的应用领域。
&&&&从上面的简单比较可以看到IIR与FIR滤波器各有所长,所以在实际应用时应该从多方面考虑来加以选择。从使用要求上来看,在对相位要求不敏感的场合,如语言通信等,选用IIR较为合适,这样可以充分发挥其经济高效的特点;对于图像信号处理,数据传输等以波形携带信息的系统,则对线性相位要求较高。如果有条件,采用FIR滤波器较好。当然,在实际应用中可能还要考虑更多方面的因素。
2,不论IIR和FIR,阶数越高,信号延迟越大;同时在IIR滤波器中,阶数越高,系数的精度要求越高,否则很容易造成有限字长的误差使极点移到单位园外。因此在阶数选择上是综合考虑的.
IIR滤波器(切比雪夫滤波)各滤波器比较(IIR和FIR,数字和模拟)
第19,20,21章内容,主要讲IIR滤波器和滤波器的比较
--------------------------------
IIR滤波不使用卷积运算,而是用递归(recursive)运算,因此执行速度很快,但在性能上不一定比FIR滤波好。IIR的冲击响应由衰减性指数信号构成。
IIR输入输出的递推关系式为:
IIR递归系数和其频率响应之间的关系可以通过Z变换来转换,Z变换在此不涉及。
通过取不同的递归系数(下图中的a和b),就可以实现不同的滤波:
当然这是最简单的应用,递归系数的取法有一定的讲究和公式,这里略了。
FIR可以做到是线性相位的,即冲击响应是左右对称的,而IIR通常是非线性相位的。这是因为FIR在设计的时候就确定了其时域波形和频响,而IIR在设计中确定的是递归的系数,并不能决定其波形是什么样子的。
&&相关文章推荐
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:8110次
排名:千里之外
原创:60篇
(1)(9)(28)(24)(5)帮我设计一个IIR低通滤波器?
我的图书馆
帮我设计一个IIR低通滤波器?
要求滤去上述周期信号中的比较高的两个频率成分,从而使IIR滤波器的输出是一个频率为10赫兹的正旋信号。所以,提出以下低通滤波器的技术指标:ωc=
0.2л(rad),δ1=3dB; ωst=0.4л(rad) ,δ2=15dB;试用MATLAB语言编程,求出该滤波器的系数。 注:该周期信号是由三个正旋波叠加而成的,这三个正旋信号的振幅A1=A2=A3=1。频率f1=10,f2=17,f3=50,相位为θ1=45度,θ2=10度,θ3=88度,采样频率为150赫兹。产生200个数据
低通采样定理实验 1.1 实验目的 1.了解数字信号处理系统的一般构成; 2.掌握奈奎斯特抽样定理。 1.2 实验仪器 1.YBLD智能综合信号源测试仪 1台 2.双踪示波器 1台 3.MCOM-TG305数字信号处理与现代通信技术实验箱 1台 4.PC机(装有MATLAB、MCOM-TG305配套实验软件) 1台 1.3 实验原理 一
个典型的DSP系统除了数字信号处理部分外,还包括A/D和D/A两部分。这是因为自然界的信号,如声音、图像等大多是模拟信号,因此需要将其数字化后进
行数字信号处理,模拟信号的数字化即称为A/D转换。数字信号处理后的数据可能需还原为模拟信号,这就需要进行D/A转换。一个仅包括A/D和D/A两部
分的简化数字信号处理系统功能如图1所示。 A/D转换包括三个紧密相关的过程,即抽样、量化和编码。A/D转换中需解决的以下几个重要问题:抽样后输出信号中还有没有原始信号的信息?如果有能不能把它取出来?抽样频率应该如何选择? 奈
奎斯特抽样定理(即低通信号的均匀抽样定理)告诉我们,一个频带限制在0至fx以内的低通信号x(t),如果以fs≥2fx的抽样速率进行均匀抽样,则x
(t)可以由抽样后的信号xs(t)完全地确定,即xs(t)包含有x(t)的成分,可以通过适当的低通滤波器不失真地恢复出x(t)。最小抽样速率fs
=2fx称为奈奎斯特速率。 低通 译码 编码 量化 抽样 输入信号 样点输出 滤波输出 A/D(模数转换) D/A(数模转换) 图1 低通采样定理演示 为方便实现,实验中更换了一种表现形式,即抽样频率固定(10KHz),通过改变输入模拟信号的频率来展示低通抽样定理。我们可以通过研究抽样频率和模拟信号最高频率分量的频率之间的关系,来验证低通抽样定理。 1.4 实验内容 1.软件仿真实验:编写并调试MATLAB程序,分析有关参数,记录有关波形。 2.硬件实验:输入不同频率的正弦信号,观察采样时钟波形、输入信号波形、样点输出波形和滤波输出波形。 1.5 MATLAB参考程序和仿真内容 %*******************************************************************% %f―余弦信号的频率 % M―基2 FFT幂次数 N=2^M为采样点数,这样取值是为了便于作基2的FFT分析 %2. 采样频率Fs %*******************************************************************% function samples(f,Fs,M) N=2^M; % fft点数=取样总点数 Ts=1/Fs; % 取样时间间隔 T=N*Ts; % 取样总时间=取样总点数*取样时间间隔 n=0:N-1; t=n*Ts; Xn=cos(2*f*pi*t); subplot(2,1,1); stem(t,Xn); axis([0 T 1.1*min(Xn) 1.1*max(Xn)]); xlabel('t --&'); ylabel('Xn'); Xk=abs(fft(Xn,N)); subplot(2,1,2); stem(n,Xk); axis([0 N 1.1*min(Xk) 1.1*max(Xk)]); xlabel('frequency --&'); ylabel('!Xk!'); %*******************************************************************% 假如有一个1Hz的余弦信号y=cos(2*π*t),对其用4Hz的采样频率进行采样,共采样32点,只需执行samples(1,4,5),即可得到仿真结果。 软件仿真实验内容如下表所示: 仿真参数 f Fs Wo(计算) Xn(图形) Xk(图形) (1,4,5) 另外记录图形,并标图号 (1,8,5) (2,8,6) 自 选 1.6 硬件实验步骤 本实验箱采样频率fs固定为10KHz,低通滤波器的截止频率约为4.5KHz。 1、用低频信号源产生正弦信号,正弦信号源频率f自定,并将其接至2TP2(模拟输入)端,将示波器通道一探头接至2TP6(采样时钟)端观察采样时钟波形,示波器通道二探头接至2TP2观察并记录输入信号波形。 2、将示波器通道二探头接至2TP3观察并记录样点输出波形。 3、将示波器通道二探头接至2TP4观察并记录滤波输出波形。 4、根据采样定理,分f=fs /8、f=fs/4、f=fs/2等3种情况更改正弦信号频率,重复步骤2至步骤3。 5、用低频信号源产生方波信号,重复步骤1至步骤4。 1.7 思考题 1、 讨论在仿真实验中所计算的数字域频率Wo和Xk的图形中非零谱线位置之间的对应关系。 2、 讨论在仿真实验中自选参数的意义。 3、将在2TP2端加方波信号后的恢复波形,与相同频率的正弦信号的恢复波形相比,能够得出哪些结论? 2 FFT频谱分析实验 2.1 实验目的 1.通过实验加深对快速傅立叶变换(FFT)基本原理的理解。 2.了解FFT点数与频谱分辨率的关系,以及两种加长序列FFT与原序列FFT的关系。 2.2 实验仪器 1.YBLD智能综合信号源测试仪 1台 2.双踪示波器 1台 3.MCOM-TG305数字信号处理与现代通信技术实验箱 1台 4.PC机(装有MATLAB、MCOM-TG305配套实验软件) 1台 2.3 实验原理 离
散傅里叶变换(DFT)和卷积是信号处理中两个最基本也是最常用的运算,它们涉及到信号与系统的分析与综合这一广泛的信号处理领域。实际上卷积与DFT之
间有着互通的联系:卷积可化为DFT来实现,其它的许多算法,如相关、滤波和谱估计等都可化为DFT来实现,DFT也可化为卷积来实现。 对N点序列x(n),其DFT变换对定义为: 在DFT
运算中包含大量的重复运算。FFT算法利用了蝶形因子WN的周期性和对称性,从而加快了运算的速度。FFT算法将长序列的DFT分解为短序列的DFT。N
点的DFT先分解为2个N/2点的DFT,每个N/2点的DFT又分解为2个N/4点的DFT。按照此规律,最小变换的点数即所谓的“基数
(radix)。”因此,基数为2的FFT算法的最小变换(或称蝶形)是2点DFT。一般地,对N点FFT,对应于N个输入样值,有N个频域样值与之对
应。一般而言,FFT算法可以分为时间抽取(DIT)FFT和频率抽取(DIF)两大类。 在实际计算中,可以采用在原来序列后面补0的加长方法来提高FFT的分辨率;可以采用在原来序列后面重复的加长方法来增加FFT的幅度。 2.4 实验内容 1.软件仿真实验:分别观察并记录正弦序列、方波序列及改变FFT的点数后的频谱;分别观察并记录正弦序列、方波序列及2种加长序列等信号的频谱。 2.硬件实验:分别观察并记录正弦信号、方波信号及改变FFT的点数后的频谱。 2.5 MATLAB参考程序和仿真内容 %*******************************************************************% function[x]=ffts(mode,M) Nfft=2^M; x=zeros(1,Nfft); %定义一个长度为Nfft的一维全0数组 if mode= =1 for n=0:Nfft-1 x(n+1)=sin(2*pi*n/Nfft); end end %定义一个长度为Nfft的单周期正弦序列 if mode= =2 for n=0:Nfft-1 x(n+1)=sin(4*pi*n/Nfft); end end %定义一个长度为Nfft的双周期正弦序列 if mode= =3 for n=0:Nfft/2-1 x(n+1)=sin(4*pi*n/Nfft); end end %定义一个长度为Nfft/2的正弦序列,后面一半为0序列。 if mode= =4 for n=0:Nfft-1 x(n+1)=square(2*pi*n/Nfft); end end if mode= =5 for n=0:Nfft-1 x(n+1)=square(2*pi*n/Nfft); end end if mode= =6 for n=0:Nfft/2-1 x(n+1)=square(4*pi*n/Nfft); end end n=0:Nfft-1; subplot(2,1,1); stem(n,x); axis([0 Nfft-1 1.1*min(x) 1.1*max(x)]); xlabel('Points--&'); ylabel('x(n)'); X=abs(fft(x,Nfft)); subplot(2,1,2); stem(n,X); axis([0 Nfft-1 1.1*min(X) 1.1*max(X)]); xlabel('frequency--&'); ylabel('!X(k)!'); %*******************************************************************% 假设需观察方波信号的频谱,对一个周期的方波信号作32点的FFT,则只需在MATLAB的命令窗口下键入:[x]=ffts(21,5) ,程序进行模拟,并且输出FFT的结果。 关于软件仿真实验内容,建议在完成大量仿真例子的基础上,选择能够体现实验要求的4个以上的例子进行记录。例如要观察后面补0的加长方法来提高FFT的分辨率的现象,可以仿真ffts(4,5)和ffts(6,6)两个例子。 2.6 硬件实验步骤 1.将低频信号源输出加到实验箱模拟通道1输入端,将示波器探头接至模拟通道1输出端。 2.在保证实验箱正确加电且串口电缆连接正常的情况下,运行数字信号处理与DSP应用实验开发软件,在“数字信号处理实验”菜单下选择“FFT频谱分析”子菜单,出现显示FFT频谱分析功能提示信息的窗口。 3.用低频信号产生器产生一个1KHz的正弦信号。 4.选择FFT频谱分析与显示的点数为64点,开始进行FFT运算。此后,计算机将周期性地取回DSP运算后的FFT数据并绘图显示 5.改信号源频率,观察并记录频谱图的变化。 6.选择FFT的点数为128点,观察并记录频谱图的变化。 7.更改正弦信号的频率,重复步骤4 ~步骤6。 8.用低频信号产生器产生一个1KHz的方波信号,重复步骤4 ~步骤7。注意:应根据实验箱采样频率fs为10KHz和方波信号的频带宽度选择方波信号的频率。 本硬件实验要进行两种信号,每个信号两种频率,每个信号两种点数等共8次具体实验内容,性质能够体现实验要求的4个以上的例子进行记录。 2.7 思考题 1.对同一个信号,不同点数FFT观察到的频谱图有何区别? 2.序列加长后FFT与原序列FFT的关系是什么,试推导其中一种关系。 3.用傅立叶级数理论,试说明正弦信号频谱和方波信号频谱之间的关系。 3 IIR滤波器设计实验 3.1 实验目的 1.通过实验加深对IIR滤波器基本原理的理解。 2.学习编写IIR滤波器的MATLAB仿真程序。 3.2 实验仪器 1.YBLD智能综合信号源测试仪 1台 2.双踪示波器 1台 3.MCOM-TG305数字信号处理与现代通信技术实验箱 1台 4.PC机(装有MATLAB、MCOM-TG305配套实验软件) 1台 3.3 实验原理 IIR滤波器有以下几个特点: 1.IIR数字滤波器的系统函数可以写成封闭函数的形式。 2.IIR数字滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。 3.
IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计
算工具的要求不高。在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公
式。 4.IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。 在MATLAB下设计IIR滤波器可使用Butterworth函数设计出巴特沃斯滤波器,使用Cheby1函数设计出契比雪夫I型滤波器,使用Cheby2设计出契比雪夫II型滤波器,使用ellipord函数设计出椭圆滤波器。下面主要介绍前两个函数的使用。 与FIR滤波器的设计不同,IIR滤波器设计时的阶数不是由设计者指定,而是根据设计者输入的各个滤波器参数(截止频率、通带滤纹、阻带衰减等),由软件设计出满足这些参数的最低滤波器阶数。在MATLAB下设计不同类型IIR滤波器均有与之对应的函数用于阶数的选择。 一、巴特沃斯IIR滤波器的设计 在MATLAB下,设计巴特沃斯IIR滤波器可使用butter函数。 Butter函数可设计低通、高通、带通和带阻的数字和模拟IIR滤波器,其特性为使通带内的幅度响应最大限度地平坦,但同时损失截止频率处的下降斜度。在期望通带平滑的情况下,可使用butter函数。 butter函数的用法为: [b,a]=butter(n,Wn,/ftype/) 其中n代表滤波器阶数,Wn代表滤波器的截止频率,这两个参数可使用buttord函数来确定。buttord函数可在给定滤波器性能的情况下,求出巴特沃斯滤波器的最小阶数n,同时给出对应的截止频率Wn。buttord函数的用法为: [n,Wn]= buttord(Wp,Ws,Rp,Rs) 其中Wp和Ws分别是通带和阻带的拐角频率(截止频率),其取值范围为0至1之间。当其值为1时代表采样频率的一半。Rp和Rs分别是通带和阻带区的波纹系数。 不同类型(高通、低通、带通和带阻)滤波器对应的Wp和Ws值遵循以下规则: 1.高通滤波器:Wp和Ws为一元矢量且Wp&Ws; 2.低通滤波器:Wp和Ws为一元矢量且Wp&Ws; 3.带通滤波器:Wp和Ws为二元矢量且Wp&Ws,如Wp=[0.2,0.7],Ws=[0.1,0.8]; 4.带阻滤波器:Wp和Ws为二元矢量且Wp&Ws,如Wp=[0.1,0.8],Ws=[0.2,0.7]。 二、契比雪夫I型IIR滤波器的设计 在期望通带下降斜率大的场合,应使用椭圆滤波器或契比雪夫滤波器。在MATLAB下可使用cheby1函数设计出契比雪夫I型IIR滤波器。 cheby1函数可设计低通、高通、带通和带阻契比雪夫I型滤IIR波器,其通带内为等波纹,阻带内为单调。契比雪夫I型的下降斜度比II型大,但其代价是通带内波纹较大。 cheby1函数的用法为: [b,a]=cheby1(n,Rp,Wn,/ftype/) 在使用cheby1函数设计IIR滤波器之前,可使用cheblord函数求出滤波器阶数n和截止频率Wn。cheblord函数可在给定滤波器性能的情况下,选择契比雪夫I型滤波器的最小阶和截止频率Wn。 cheblord函数的用法为: [n,Wn]=cheblord(Wp,Ws,Rp,Rs) 其中Wp和Ws分别是通带和阻带的拐角频率(截止频率),其取值范围为0至1之间。当其值为1时代表采样频率的一半。Rp和Rs分别是通带和阻带区的波纹系数。 3.4 实验内容 1.软件仿真实验:编写并调试MATLAB程序,选择不同形式,不同类型的4种滤波器进行仿真,记录幅频和相频特性,对比巴特沃斯滤波器和契比雪夫滤波器。 2.硬件实验:设计IIR滤波器,在计算机上观察冲激响应、幅频特性和相频特性,然后下载到实验箱。用示波器观察输入输出波形,测试滤波器的幅频响应特性。 3.5 MATLAB参考程序和仿真内容 %*******************************************************************% %mode: 1--巴特沃斯低通;2--巴特沃斯高通;3--巴特沃斯带通;4--巴特沃斯带阻 % 5--契比雪夫低通;6--契比雪夫高通;7--契比雪夫带通;8--契比雪夫带阻 %fp1,fp2: 通带截止频率,当高通或低通时只有fp1有效 %fs1, fs2: 阻带截止频率,当高通或低通时只有fs1有效 %rp: 通带波纹系数 %as: 阻带衰减系数 %sample: 采样率 %h: 返回设计好的滤波器系数 %*******************************************************************% function[b,a]=iirfilt(mode,fp1,fp2,fs1,fs2,rp,as,sample) wp1=2*fp1/wp2=2*fp2/ ws1=2*fs1/ws2=2*fs2/ %得到巴特沃斯滤波器的最小阶数N和3bd频率wn if mode&3[N,wn]=buttord(wp1,ws1,rp,as); elseif mode&5[N,wn]=buttord([wp1 wp2],[ws1 ws2],rp,as); %得到契比雪夫滤波器的最小阶数N和3bd频率wn elseif mode&7[N,wn]=cheb1ord(wp1,ws1,rp,as); else[N,wn]=cheblord([wp1 wp2],[ws1 ws2],rp,as); end %得到滤波器系数的分子b和分母a if mode= =1[b,a]=butter(N,wn);end if mode= =2[b,a]=butter(N,wn,/high/);end if mode= =3[b,a]=butter(N,wn);end if mode= =4[b,a]=butter(N,wn,/stop/);end if mode= =5[b,a]=cheby1(N,rp,wn);end if mode= =6[b,a]=cheby1(N,rp,wn,/high/);end if mode= =7[b,a]=cheby1(N,rp,wn);end if mode= =8[b,a]=cheby1(N,rp,wn,/stop/);end set(gcf,/menubar/,menubar); freq_response=freqz(b,a); magnitude=20*log10(abs(freq_response)); m=0:511; f=m*sample/(2*511); subplot(3,1,1);plot(f,magnitude); %幅频特性 axis([0 sample/2 1.1*min(magnitude) 1.1*max(magnitude)]); ylabel('Magnitude');xlabel('Frequency--&'); phase=angle(freq_response); subplot(3,1,2);plot(f,phase); %相频特性 axis([0 sample/2 1.1*min(phase) 1.1*max(phase)]); ylabel('Phase');xlabel('Frequency--&'); h=impz(b,a,32); %32点的单位函数响应 t=1:32; subplot(3,1,3);stem(t,h); axis([0 32 1.2*min(h) 1.1*max(h)]); ylabel('h(n)');xlabel('n--&'); %*******************************************************************% 假设需设计一个巴特沃斯低通IIR滤波器,通带截止频率为2KHz,阻带截止频率为3KHz,通带波纹系数为1,阻带衰减系数为20,采样频率为10KHz,则只需在MATLAB的命令窗口下键入: [b,a]=iirfilt(1,00,,10000) 程序进行模拟,并且按照如下顺序输出数字滤波器系统函数 的系数 b= b0 b1 ……bn a= a0 a1 ……an 关于软件仿真实验内容,建议在完成大量仿真例子的基础上,选择能够体现实验要求的4个例子进行记录,系统函数只要记录系统的阶数。 3.6 硬件实验步骤 1.根据实验箱采样频率fs为10KHz的条件,用低频信号发生器产生一个频率合适的低频正弦信号,将其加到实验箱模拟通道1输入端,将示波器通道1探头接至模拟通道1输入端,通道2探头接至模拟通道2输出端。 2.在保证实验箱正确加电且串口电缆连接正常的情况下,运行数字信号处理与DSP应用实验开发软件,在“数字信号处理实验”菜单下选择“IIR滤波器”子菜单,出现提示信息。 3.输入滤波器类型、滤波器截止频率等参数后,分别点击“幅频特性”和“相频特性”按钮,在窗口右侧观察IIR滤波器的幅频特性和相频特性。此时提示信息将消失,如需查看提示信息,可点击“设计说明”按钮。 4.点击“下载实现”按钮,IIR滤波器开始工作,此时窗口右侧将显示IIR滤波器的幅频特性。 5.根据输入滤波器类型,更改低频信号源的频率,观察示波器上输入输出波形幅度的变化情况,测量IIR滤波器的幅频响应特性,看其是否与设计的幅频特性一致。 6.更改滤波器类型、滤波器截止频率等参数(共4种),重复步骤3至步骤5。所选择的例子参数最好和MATLAB仿真程序的例子一样。 7.用低频信号产生器产生一个500Hz的方波信号,分别设计3种滤波器,完成如下表要求的功能,并且记录参数和波形。 功 能 滤波器类型 参 数 输出波形 fp1 fp2 fs1 fs2 通过3次及以下次数的谐波 另外记录图形,并标图号 滤除5次及以下次数的谐波 通过3次到5次的谐波 3.7 思考题 1.在实验箱采样频率fs固定为10KHz的条件下,要观察方波信号频带宽度内的各个谐波分量,方波信号的频率最高不能超过多少,为什么? 2.硬件实验内容7中输出信号各个谐波分量,与原来方波信号同样谐波分量相比,有没有发生失真?主要发生了什么类型的失真?为什么? 4 窗函数法FIR滤波器设计实验 4.1 实验目的 1.通过实验加深对FIR滤波器基本原理的理解。 2.学习使用窗函数法设计FIR滤波器,了解窗函数的形式和长度对滤波器性能的影响。 4.2 实验仪器 1.YBLD智能综合信号源测试仪 1台 2.双踪示波器 1台 3.MCOM-TG305数字信号处理与现代通信技术实验箱 1台 4.PC机(装有MATLAB、MCOM-TG305配套实验软件) 1台 4.3 实验原理 数字滤波器的设计是数字信号处理中的一个重要内容。数字滤波器设计包括FIR(有限单位脉冲响应)滤波器与IIR(无限单位脉冲响应)滤波器两种。 与IIR滤波器相比,FIR滤波器在保证幅度特性满足技术要求的同时,很容易做到严格的线性相位特性。设FIR滤波器单位脉冲响应h(n)长度为N,其系统函数H(z)为: H(z)是z-1的N-1次多项式,它在z平面上有N-1个零点,原点z=0是N-1阶重极点,因此H(z)是永远稳定的。稳定和线性相位特性是FIR滤波器突出的优点。 FIR滤波器的设计任务是选择有限长度的h(n)。使传输函数H( )满足技术要求。FIR滤波器的设计方法有多种,如窗函数法、频率采样法及其它各种优化设计方法,本实验介绍窗函数法的FIR滤波器设计。 窗函数法是使用矩形窗、三角窗、巴特利特窗、汉明窗、汉宁窗和布莱克曼窗等设计出标准响应的高通、低通、带通和带阻FIR滤波器。 一、firl函数的使用 在MATLAB下设计标准响应FIR滤波器可使用firl函数。firl函数以经典方法实现加窗线性相位FIR滤波器设计,它可以设计出标准的低通、带通、高通和带阻滤波器。firl函数的用法为: b=firl(n,Wn,/ftype/,Window) 各个参数的含义如下: b―滤波器系数。对于一个n阶的FIR滤波器,其n+1个滤波器系数可表示为:b(z)=b(1)+b(2)z-1+…+b(n+1)z-n。 n―滤波器阶数。 Wn―截止频率,0≤Wn≤1,Wn=1对应于采样频率的一半。当设计带通和带阻滤波器时,Wn=[W1 W2],W1≤ω≤W2。 ftype―当指定ftype时,可设计高通和带阻滤波器。Ftype=high时,设计高通FIR滤波器;ftype=stop时设计带阻FIR滤波器。低通和带通FIR滤波器无需输入ftype参数。 Window―窗函数。窗函数的长度应等于FIR滤波器系数个数,即阶数n+1。 二、窗函数的使用 在MATLAB下,这些窗函数分别为: 1.矩形窗:w=boxcar(n),产生一个n点的矩形窗函数。 2.三角窗:w=triang(n),产生一个n点的三角窗函数。 当n为奇数时,三角窗系数为w(k)= 当n为偶数时,三角窗系数为w(k)= 3.巴特利特窗:w=Bartlett(n),产生一个n点的巴特利特窗函数。 巴特利特窗系数为w(k)= 巴特利特窗与三角窗非常相似。巴特利特窗在取样点1和n上总以零结束,而三角窗在这些点上并不为零。实际上,当n为奇数时bartlett(n)的中心n-2个点等效于triang(n-2)。 4.汉明窗:w=hamming(n),产生一个n点的汉明窗函数。 汉明窗系数为w(k+1)=0.54-0.46cos( ) k=0,…,n-1 5.汉宁窗:w=hanning(n),产生一个n点的汉宁窗函数。 汉宁窗系数为w(k)=0.5[1-cos( )] k=1,…,n 6.布莱克曼窗:w=Blackman(n),产生一个n点的布莱克曼窗函数。 布莱克曼窗系数为w(k)=0.42-0.5cos(2π )+0.8cos(4π )] k=1,…,n 与等长度的汉明窗和汉宁窗相比,布莱克曼窗的主瓣稍宽,旁瓣稍低。 7.凯泽窗:w=Kaiser(n,beta),产生一个n点的凯泽窗数,其中beta为影响窗函数旁瓣的β参数,其最小的旁瓣抑制α与β的关系为: 0.1102(α-0.87) α&50 β= 0.5842(α-21)0.4+0.07886(α-21) 21≤α≤50 0 α&21 增加β可使主瓣变宽,旁瓣的幅度降低。 8.契比雪夫窗:w=chebwin(n,r)产生一个n点的契比雪夫窗函数。其傅里叶变换后的旁瓣波纹低于主瓣r个db数。 4.4 实验内容 1.软件仿真实验:编写并调试MATLAB程序,观察不同窗,不同类型滤波器不同点数等共4种FIR滤波器的h(n),并记录幅频特性和相频特性。 2.硬件实验:用窗函数法设计标准响应的FIR滤波器,在计算机上观察窗函数幅频特性、幅频特性和相频特性,然后下载到实验箱。用示波器观察输入输出波形,测试滤波器的幅频响应特性。 4.5 MATLAB参考程序和仿真内容 %*******************************************************************% %mode: 模式(1--高通;2--低通;3--带通;4--带阻) %n: 阶数,加窗的点数为阶数加1 %fp: 高通和低通时指示截止频率,带通和带阻时指示下限频率 %fs: 带通和带阻时指示上限频率 %window:加窗(1--矩形窗;2--三角窗;3--巴特利特窗;4--汉明窗; % 5--汉宁窗;6--布莱克曼窗;7--凯泽窗;8--契比雪夫窗) %r: 代表加chebyshev窗的r值和加kaiser窗时的beta值 %sample: 采样率 %h: 返回设计好的FIR滤波器系数 %*******************************************************************% %mode: 模式(1--高通;2--低通;3--带通;4--带阻) %n: 阶数,加窗的点数为阶数加1 %fp: 高通和低通时指示截止频率,带通和带阻时指示下限频率 %fs:
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&}

我要回帖

更多关于 淘宝申请退款多久到账 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信