实验3无限冲激响应滤波器算法实验_第1页
实验3无限冲激响应滤波器算法实验_第2页
实验3无限冲激响应滤波器算法实验_第3页
实验3无限冲激响应滤波器算法实验_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、实验 3 : 无限冲激响应滤波器 (IIR)算法实验一、实验目的1. 熟悉 IIR 数字滤波器特性;2. 掌握 IIR 数字滤波器的设计过程;3. 掌握 IIR 数字滤波器性能测试方法。二、实验设备兼容机操作系统Composer Studio v5三、实验内容1. 掌握 IIR 数字滤波器的基础理论;2. 基于 MATLAB的 IIR 数字滤波器参数确定方法;3. 采用 C 语言编程实现低通 IIR 滤波器;4. 掌握基于 CCS的波形观察方法;观察滤波前后的波形变化。四实验原理分析要求:使用低通巴特沃斯滤波器,设计通带截止频率f p 为 1kHz、增益为 -3dB ,阻带截止频率 f st

2、为 12kHz、衰减为 30dB,采样频率 f s 为 25kHz。设计:通带截止频率为: fp = 1000Hz, f st = 12000Hz(一)、滤波器参数计算模拟预畸变通带截止频率为:wp =2f stan(2 f p/(2f s) =弧度 /秒模拟预畸变阻带截止频率为:w= 2ftan(2 f /(2f) =弧度 /秒stssts由式()N = ,则:一阶巴特沃斯滤波器就足以满足要求。一阶模拟巴特沃斯滤波器的传输函数为:H(s)=w p/(s+w p )=(s+由双线性变换定义 s=2f s(z-1)/(z+1)得到数字滤波器的传输函数为:因此,差分方程为:yn=n-1+n+n-1

3、。(二)、基于 MATLAB的滤波器参数求解(1) IIR 数字滤波器阶次的选择的MATLAB函数N,w c = buttord(w N,w c = cheb1ord(w N,w c = cheb2ord(w N,w c = ellipord(wp,w st ,Rp,As);p,w st ,Rp,As);p,w st ,Rp,As);p,w st ,Rp,As);对低通滤波器,必须有w wstp对带通滤波器,必须有w s1 wp1 w p2 w s2对带阻滤波器,必须有w p1 ws1 w s2 Graph-Dual Time,进行如下设置:Dual Time参数设置* 选择菜单 Tools-

4、Graph-FFTMagnitude , 新建 2个观察窗口, 分别进行如下设置:5. 设 置 断 点 :在 有 注释 “break point ”的 语 句设置 软件 断 点 。 使用 菜 单的 View-Break points ,打开断点观察窗口, 在刚才设置的断点上右键 -Breadk pointproperties调出断点的属性设置界面,设置Action为 Refresh All windows。则程序每次运行到断点,所有的观察窗口值都会被刷新。其中,输入波形:一个低频正弦波与一个高频正弦波的叠加;输出波形:经过低通滤波后的低频正弦波。6运行并观察结果:F8键运行程序。 观察 “II

5、R ”窗口中时域图形;观察滤波效果。7退出 CCS六. 实验结果输入波形为一个低频率的正弦波与一个高频的余弦波叠加而成。如图:通过观察频域和时域图,得知:输入波形中的低频波形通过了滤波器,而高频部分则被衰减。六问题与思考基本任务 :1. 试微调 ( 改变程序中 f U 的取值,观察步长因子 在自适应算法中所起的作用。2.确定程序中的信号频率,试选用设计不同的信号、噪声组合,基于MATLAB设计不同的类型的滤波器,并基于 CCS实现,并观察实验的结果。3.分析实验程序,细化算法流程图。4.结合 CCS的使用,分析实验结果提高任务:5.尝试使用信号源生成组合信号,经过A/D 采样后,送 IIR 滤

6、波器实现。源代码:#include#defineIIRNUMBER 2/* 典范性的滤波器阶数 */#defineSIGNAL1F 1000/* 正弦信号频率,代码中没有使用*/#defineSIGNAL2F 4500/* 正弦信号频率,代码中没有使用*/#defineSAMPLEF 10000/* 采样频率,代码中没有使用*/#definePIfloatInputWave ();/* 输入给 IIR 滤波器的信号,每次输出一个点*/floatIIR ();/*IIR 滤波,每次输出一个点*/* 滤波器的设计采用了案例的结果,应该重新设计*/floatfBnIIRNUMBER= , ;/*II

7、R滤波器的分子多项式系数,有错*/floatfAnIIRNUMBER= , ;/*IIR 滤波器的分母多项式系数 */floatfXnIIRNUMBER= ;/*IIR 滤波器的迭代初始值 */floatfYnIIRNUMBER= ;/*IIR滤波器的输出值 */floatfInput,fOutput;/* 输入点和输出点 */floatfSignal1,fSignal2;/* 信号 1、 2的初始相位 */floatfStepSignal1,fStepSignal2;/* 信号 1、 2的相位步长 */floatf2PI;inti;floatfIn256,fOut256;intnIn,nOu

8、t;main ()nIn=0; nOut=0;f2PI=2*PI;fSignal1=;fSignal2=PI*;/fStepSignal1=2*PI/30;/fStepSignal2=2*PI*;fStepSignal1=2*PI/50;fStepSignal2=2*PI/;/*/*信号 1的相位步长:信号 2的相位步长:f1/fs = 1/50*/f1/fs = 1/*/while( 1 )fInput=InputWave();fInnIn=fInput;nIn+; nIn%=256;fOutput=IIR();fOutnOut=fOutput;nOut+;/*请在此句上设置软件断点*/if( nOut=256 )nOut=0;floatInputWave()for( i=IIRNUMBER-1;i0;i- )fXni=fXni-1;fYni=fYni-1;fXn0=sin (fSignal1)+cos (fSignal2)/;fYn0=;fSignal1+=fStepSignal1;if( fSignal1=f2PI )fSignal1-=f2PI;fSignal2+=fStepSignal2;if( fSignal2=f2PI )fSign

温馨提示

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

评论

0/150

提交评论