基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx

上传人:b****7 文档编号:22964799 上传时间:2023-02-06 格式:DOCX 页数:18 大小:713.75KB
下载 相关 举报
基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx_第1页
第1页 / 共18页
基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx_第2页
第2页 / 共18页
基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx_第3页
第3页 / 共18页
基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx_第4页
第4页 / 共18页
基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx

《基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx(18页珍藏版)》请在冰豆网上搜索。

基于maab的数字滤波器设计及滤波仿真Word文档下载推荐.docx

②巴特沃斯模拟滤波器的设计:

[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,'

[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中选择FlipBlock旋转180度,选择RotateBlock顺时针旋转90度。

或者直接按Ctrl+F键执行FlipBlock,按Ctrl+R键执行RotateBlock。

改变大小:

选中模块,对模块出现的4个黑色标记进行拖曳即可。

模块命名:

先用鼠标在需要更改的名称上单击一下,然后直接更改即可。

名称在功能模块上的位置也可以变换180度,可以用Format菜单中的FlipName来实现,也可以直接通过鼠标进行拖曳。

HideName可以隐藏模块名称。

颜色设定:

Format菜单中的ForegroundColor可以改变模块的前景颜色,BackgroundColor可以改变模块的背景颜色;

而模型窗口的颜色可以通过ScreenColor来改变。

参数设定:

用鼠标双击模块,就可以进入模块的参数设定窗口,从而对模块进行参数设定。

参数设定窗口包含了该模块的基本功能帮助,为获得更详尽的帮助,可以点击其上的help按钮。

通过对模块的参数设定,

就可以获得需要的功能模块。

属性设定:

选中模块,打开Edit菜单的BlockProperties可以对模块进行属性设定。

包括Description属性、Priority优先级属性、Tag属性、Openfunction属性、Attributesformatstring属性。

其中Openfunction属性是一个很有用的属性,通过它指定一个函数名,则当该模块被双击之后,Simulink就会调用该函数执行,这种函数在MATLAB中称为回调函数。

模块的输入输出信号:

模块处理的信号包括标量信号和向量信号;

标量信号是一种单一信号,而向量信号为一种复合信号,是多个信号的集合,它对应着系统中几条连线的合成。

缺省情况下,大多数模块的输出都为标量信号,对于输入信号,模块都具有一种“智能”的识别功能,能自动进行匹配。

某些模块通过对参数的设定,可以使模块输出向量信号。

(3)SPTool的使用方法:

SPTool图形化信号处理工具的使用SPTool工具提供四个基本的信号处理图形用户界面(GUI)程序,它们分别是

(1)信号浏览器:

用于浏览可视化的信号图像

(2)滤波器设计器:

可用于设计和编辑FIR和IIR数字滤波器,绝大多数

MATLAB信号处理工具箱提供的命令行函数都可以在这个可视化的滤波

器设计器中被调用,用户调用Pole/Zero编辑器设计出符合自己需要的滤

波器。

(3)滤波器浏览器:

这个工具主要用于分析滤波器的特性。

(4)频谱浏览器:

用于频谱分析,使用工具箱提供的频谱估计函数去分析某个

信号序列的功率谱密度。

实验步骤:

1、打开SPTool主界面

单击start----Toolboxes----signalprocessional----SPTool,或者直接在命令行输入SPTool,启动SPTool工具,出现主界面:

主界面有三栏列表,包括信号源列表、滤波器列表和频谱列表。

2、用户能够从MATLAB主工作空间中导入信号序列、滤波器或频谱。

如从工作空间中导入信号源数据:

单击File---import,出现设置参数,产生的信号源命名为signal1,点击OK,可看到在主界面的信号列表中增加一个signal1[vector]项。

3、滤波器的设计

(1)可以从工作空间中直接导入已设计好的滤波器系数(如大作业中用FDATool设计好的滤波器的系数):

(2)也可以直接在SPTool中进行设计产生。

如选择频谱列表中的filt1[design],单击Edit,或者在频谱列表中单击New,出现:

为比较两个信号的频谱,首先创建一个功率谱密度对象spect1,在SPTool主窗口中选择signal1[vector],然后单击频谱列表下面的Create按钮,这时会弹出频谱浏览器窗口。

即使用缺省的参数创建了信号signal1的频谱,单击Apply,这是频谱图像就会显示出来。

同样可创建另一个OUT2频谱图soect2。

然后在频谱列表中使用shift同时选中两个频谱,单击View就可显示在频谱浏览器中,这样就可以比较滤波前后的频谱变化。

2、实验内容

(1)设计三个频率混合的信号y,频率可设为100Hz、1000Hz、10000Hz;

(2)设计3个巴特沃斯模拟滤波器,分别为低通、高通、带通;

(3)用双线性变换法将设计好的巴特沃斯滤波器转换为数字滤波器;

(4)对混合信号y进行滤波;

(5)比较滤波前后信号各分量的变化;

(6)调试滤波器参数;

(8)Simulink仿真;

(9)SPTool仿真;

(10)总结报告。

3、实验步骤

(1)Matlab程序设计:

clc;

fs=4000;

t=0:

1/fs:

1;

x=sin(2*pi*20*t)+sin(2*pi*100*t)+sin(2*pi*200*t);

%低通滤波器设计:

wp=2*30/fs;

ws=2*60/fs;

Rp=1;

As=30;

subplot(331);

plot(t,x);

title('

原始信号'

);

[N,wc]=buttord(wp,ws,Rp,As);

[B,A]=butter(N,wc);

[H,W]=freqz(B,A);

y=filter(B,A,x);

subplot(334);

plot(W,abs(H));

低通滤波器'

subplot(337);

plot(t,y)

30Hz信号'

%高通滤波器设计:

wp=2*170/fs;

ws=2*120/fs;

Rp=20;

As=50;

subplot(332);

[B,A]=butter(N,wc,'

high'

subplot(335);

高通滤波器'

subplot(338);

plot(t,y);

200Hz信号'

%带通滤波器设计:

fp=[70130];

fs=[30170];

wp=2*fp/Fs;

ws=2*fs/Fs;

rp=0.5;

rs=50;

subplot(333);

[N,wc]=ellipord(wp,ws,rp,rs);

[B,A]=ellip(N,rp,rs,wc);

[H,w]=freqz(B,A);

subplot(336);

带通滤波器'

subplot(339);

100Hz信号'

(2)Sinmulink仿真:

参数设计:

自上而下分别是频率为20Hz、200Hz、100Hz,三个滤波器分别为低通滤波器,高通滤波器和带通滤波器。

左边对原信号机进行观测,右边对滤波后的信号进行观测

(3)SPTool和FADtool应用:

SPTool主界面

导入原始信号数据

原始信号:

设计低通滤波器:

设计高通滤波器:

设计带通滤波器:

五、实验结果与分析

1、实验现象、数据记录

*上图左边为经过低频滤波器滤波后的低频信号,右边为原低频信号

*上图左边为经过高频滤波器滤波后的低频信号,右边为原高频信号

*上图左边为经过带通滤波器滤波后的中频信号,右边为原中频信号

(3)SPTool和FADtool应用:

低通滤波后的信号:

高通滤波后的信号:

带通滤波后的信号:

指导教师签名:

年月日

2、对实验现象、数据及观察结果的分析与讨论:

经过程序设计的方法,Sinmulink仿真,SPTool和FADtool三种方法均能得到理想的结果;

但三种方法各不相同,相比而言后者较前者操作简单;

3、主要关键和创新点:

用程序设计的方法,Sinmulink仿真,SPTool和FADtool应用分别进行滤波器设计,进过比较,发现,它们效果相同,而Sinmulink仿真比程序设计的方法简单,SPTool和FADtool又比Sinmulink操作上直观、方便。

可见Matlab的功能强大,实现方法多;

作为应用人员,要了解每一种方法,并掌握最简单的方法。

Sinmulink的sin函数信号发生的频率

六、指导老师评语及得分:

签名:

年月日

七、中心意见:

中心主任:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1