下载此文档

基于matlab的数字滤波器设计及滤波仿真.doc


文档分类:论文 | 页数:约17页 举报非法文档有奖
1/17
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/17 下载此文档
文档列表 文档介绍
实验项目名称_基于matlab的数字滤波器设计及滤波仿真_
三个正弦信号用三种方法进行滤波分离
、、
一、实验摘要
随着通信行业和电子计算机技术的发展,数字信号处理技术受到了越来越广泛关注,其理论及算法随着计算机技术和微电子技术的发展得到了飞速地发展,数字滤波器是数字信号处理中最重要的组成部分之一,本文详细介绍了利用MATLAB信号处理工具箱(Signal Processing Toolbox)快速有效的设计由软件组成的常规数字滤波器的设计方法。
利用 Maltab 模拟一个基本输入信号(如三个正弦频率信号的叠加),自行设定滤波器
的技术指标,用程序设计法设计各种滤波器(低通,高通,带通) ,使用 Simulink进行滤波仿真最后得到分离的三个正弦频率信号,并与理论上得滤波效果进行对比和讨论。
二、实验目的
深入理解IIR和FIR数字滤波器的概念、基本原理和方法,学会用MATLAB语言和FADtool设计数字滤波器,掌握各种数字滤波器的设计方法和特点,熟悉MATLAB及其数字信号处理工具箱的使用方法,通过设计和仿真来加深学生对滤波的理解并提高设计能力,学习创新性实验报告的撰写方法。
三、实验场地及仪器、设备和材料:
实验室:J11-318
实验设备:PC机一台,Matlab软件
四、实验内容
(1)、实验原理:
①正弦信号:

②巴特沃斯模拟滤波器的设计:[N,Wc]=buttord(Wp,Ws,ap,as,'s')
[N,wc]=buttord(wp,ws,αp,αs)
用于计算巴特沃斯数字滤波器的阶数N和3dB截止频率wc。
调用参数wp,ws分别为数字滤波器的通带、阻带截止频率的归一化值,要求:0≤wp≤1,0≤ws≤1。1表示数字频率pi。
αp,αs分别为通带最大衰减和组带最小衰减(dB)。
当ws≤wp时,为高通滤波器;
当wp和ws为二元矢量时,为带通或带阻滤波器,这时wc也是二元向量。
N,wc作为butter函数的调用参数。坛
[N,Ωc]=buttord(Ωp,Ωs,αp,αs,‘s’)
用于计算巴特沃斯模拟滤波器的阶数N和3dB截止频率Ωc。
Ωp,Ωs,Ωc均为实际模拟角频率
[BS,AS]=butter(N,Wc,'s')
[B,A] = BUTTER(N,Wn),设计一个阶数为n,频率为Wn的低通滤波器;
[B,A] = BUTTER(N,Wn,ftype)可以设计高通,带阻滤波器,其中ftype参数的形式可以指定何种滤波器, ftype为‘high’时,设计一个阶数为n,频率为Wn的高通滤波器;ftype为‘stop’时,得到滤波器阶数为2*n,频率范围为Wn = [W1,W2]的带阻滤波器;
③双线性变换设计IIR滤波器:
[BZ,AZ]=bilinear(BS,AS,1/T)
④信号滤波
Y =filter(B,A,X)
输入X为滤波前序列,Y为滤波结果序列,B/A 提供滤波器系数,B为分子, A为分母整个滤波过程是通过下面差分方程实现的:
a(1)*y(n) = b(1)*x(n) + b(2)*x(n-1) + ... + b(nb+1)*x(n-nb) - a(2)*y(n-1) - ... - a(na+1)*y(n-na)
[Y,Zf] = FILTER(B,A,X,Zi),输入X为滤波前序列,Y为滤波结果序列,B/A 提供滤波器系数,B为分子, A为分母,并输入Zi指定X的初始状态,Zf为最终状态矢量
(2)Simulink的使用方法:
模块库中的模块可以直接用鼠标进行拖曳(选中模块,按住鼠标左键不放)而放到模型窗口中进行处理。
在模型窗口中,选中模块,则其4个角会出现黑色标记。此时可以对模块进行以下的基本操作。
移动:选中模块,按住鼠标左键将其拖曳到所需的位置即可。若要脱离线而移动,可按住shift键,再进行拖曳。
复制:选中模块,然后按住鼠标右键进行拖曳即可复制同样的一个功能模块。
删除:选中模块,按Delete键即可。若要删除多个模块,可以同时按住Shift键,再用鼠标选中多个模块,按Delete键即可。也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除。
转向:为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向。在菜单Format中选择Flip Block旋转180度,选择Rotate Block顺时针旋转90度。或者直接按Ctrl+F键执行Flip Block,按Ctrl+R键执行Rotate Block。
改变大小:选中模块,对模块出现的4个黑色标记进行拖曳即可。

基于matlab的数字滤波器设计及滤波仿真 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数17
  • 收藏数0 收藏
  • 顶次数0
  • 上传人小猪猪
  • 文件大小0 KB
  • 时间2012-03-08