MATLAB-GUI设计FIR滤波器(窗函数)

上传人:日度 文档编号:136530782 上传时间:2020-06-28 格式:DOC 页数:18 大小:314.50KB
返回 下载 相关 举报
MATLAB-GUI设计FIR滤波器(窗函数)_第1页
第1页 / 共18页
MATLAB-GUI设计FIR滤波器(窗函数)_第2页
第2页 / 共18页
MATLAB-GUI设计FIR滤波器(窗函数)_第3页
第3页 / 共18页
MATLAB-GUI设计FIR滤波器(窗函数)_第4页
第4页 / 共18页
MATLAB-GUI设计FIR滤波器(窗函数)_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《MATLAB-GUI设计FIR滤波器(窗函数)》由会员分享,可在线阅读,更多相关《MATLAB-GUI设计FIR滤波器(窗函数)(18页珍藏版)》请在金锄头文库上搜索。

1、1 数字滤波器的概述31.1 FIR数字滤波器设计原理31.2 FIR数字滤波器的特性31.3 窗函数的介绍52 FIR数字滤波器设计及实现62.1 低通滤波器的设计62.2 高通滤波器的设计72.3 带通滤波器的设计92.4 带阻滤波器的设计103基于MATLAB GUI的FIR滤波器的仿真123.1 FIR数字滤波器设计所实现的任务123.2 FIR数字滤波器界面设计123.3 FIR数字滤波器函数的编写133.3.1 菜单FilterType的回调函数133.3.2 显示类型DispType的函数143.3.3 阶数N和最小阶数N按钮的函数143.3.4 文本编辑框的回调函数153.3.

2、5 滤波器波形按钮的回调函数153.3.6 文本框Rp和Rs的函 数163.3.7 产生信号按钮的回调函数163.3.8 滤波后的信号按钮的回调函数163.3.9 按钮Quit的回调函数163.4总程序的编写174 实验结果与显示175 结束语176 感谢177 参考文献17附录18基于MATLAB的FIR数字滤波器的设计与仿真李宏华湛江师范学院信息科学与技术学院,湛江 524048摘 要:本文从FIR数字滤波器的设计原理和特性入手,实现了用MATLAB设计FIR数字滤波器的功能,重点阐述了通过MATLAB GUI实现了FIR数字滤波器的仿真。详细介绍了MATLAB GUI界面的构建与回调函数

3、的程序编写与调试。关键词:MATLAB;GUI;FIR滤波器The Design and Simulation of FIR Digital Filter base on ATLABLI HonghuaInformation Science & Technology School, Zhanjiang Normal University, zhanjiang, 524048 ChinaAbstract:This paper starts with the design principles and characteristics of the FIR digital filter, Achie

4、ve the task of using MATLAB software to design the FIR digital filter, in particular introduction to complete the simulation of the FIR digital filter base on MATLAB GUI software. Comprehensive introduce to the building of GUI interface and the program compiled with debugging of the callback functio

5、n.Key word:MATLAB; GUI; FIR Filter1 数字滤波器的概述1.1 FIR数字滤波器设计原理1中介绍了数字滤波器冲激响应的时域特征,可将数字滤波器分为2种,即无限长冲激响应滤波器( IIR)和有限长冲激响应滤波器(FIR) 。FIR具有突出的优点:系统总是稳定的、易于实现线性相位、允许设计多通带(或多阻带)滤波器。但与IIR相比,在满足同样的阻带衰减的情况下需要较高的阶数。FIR的冲激响应h(k)是有限长的M 阶FIR系统函数可表示为滤波器的输出: 它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,2中给出的设计方法主要有窗函数法、频率采样法和等波

6、纹最佳逼近法等。在这里我们利用窗函数法设计FIR滤波器。给定所要求的滤波器的频率响应Hd ( ejw) , 要求设计一个FIR 滤波器的频率响应H( ejw) 来逼近Hd( ejw) .设计是在时域进行的, 首先由傅立叶变换导出无限长的序列hd( n) , 然后用窗函数截断hd ( n) ,即: h( n) = hd( n) w( n)。1.2 FIR数字滤波器的特性FIR滤波器有以下特点: (1) 系统的单位冲激响应h(n)在有限个n值处不为零; (2) 系统函数H(z)在|z|0处收敛,极点全部在z = 0处(因果系统);(3) 结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(

7、例如频率抽样结构)也包含有反馈的递归部分。因为FIR数字滤波器的单位冲激响应是有限长的,所以它永远都是稳定的。3说明了达到具有线性相位这一要求,仅需要对FIR数字滤波器的冲激响应施加一定的约束。令,就可由得到FIR数字滤波器的频率响应: (1-2-1)式中是的幅频特性,是的相频特性 (1-2-2)4中讨论了由于h(n)的长度N取奇数或偶数时对H(w)的特性有影响, FIR滤波器的幅频特性可以分为以下4种情况:(1)第种类型:为偶对称,且N为奇数根据式:可以得到滤波器的幅频函数为: (1-2-3)其中,。幅度函数对呈偶对称。(2)第种类型:为偶对称,且N为偶数根据式:可得滤波器的幅频函数为: (

8、1-2-4)其中:。幅度函数对于或呈偶对称。如果数字滤波器在处不为零,如本文设计的高通滤波器和带阻滤波器则不能用这一类型。 (3)第种类型:为奇对称,且N为奇数根据式:可得滤波器的幅频函数为: (1-2-5)其中。数字滤波器在=0,2处不为零如低通滤波器、高通滤波器、带阻滤波器,则不适合用这类滤波器来设计。(4)第种类型:为奇对称,且N为偶数根据式:可得滤波器的幅频函数可表示为: (1-2-6)其中:。幅度函数对于呈偶对称。如果数字滤波器在处不为零如低通滤波器、带阻滤波器,则不适合用这类数字滤波器来设计。1.3 窗函数的介绍设计滤波器尽量要求窗函数满足以下两项要求: (1)窗谱主瓣尽可能地窄,

9、以获取较陡的过渡带。 (2)尽量减少窗谱的最大旁瓣的相对幅度。也就是能量尽量集中于主瓣,这样使尖峰和波纹减小,就可增大阻带的衰减。 但是这两项要求是不能同时满足的。当选用主瓣宽度较窄时,虽然得到陡峭的过渡带,但通带和阻带的波动明显增加;当选用最小的旁瓣幅度时,虽能得到平坦的幅度响应和较小的阻带波纹,但过渡带加宽,即主瓣会加宽。因此,实际所选用的窗函数往往是它们的折中。设计FIR滤波器常用的窗函数有:矩形窗、三角窗、汉宁窗、海明窗、布拉克曼窗、凯塞窗等。以下是几种窗函数的性能比较:窗函数旁瓣峰值衰减(dB)等效凯塞尔窗()主瓣过渡带宽()精确过渡带宽()最小阻带衰减(Db)矩形窗-13041.8

10、-21三角窗-251.3386.1-25汉宁窗-313.8686.2-44海明窗-414.8686.6-53布莱克曼窗-577.041211-74凯赛尔窗-577.8651010-80想详细了解以上几个窗函数请查阅参考文献4或者用命令wvtool(windows(N)查看。2 FIR数字滤波器设计及实现2.1 低通滤波器的设计低通滤波器允许信号中的低频或直流分量通过,抑制高频分量或干扰和噪声。程序如下:%fp1=10;fs1=15;fs=100;boxcar window%fp1=10; %低通通带模拟截止频率fs1=15; %低通阻带模拟截止频率fs=100; %采集频率wp1=2*pi*f

11、p1/fs; %模拟转变为数字域的截止频率ws1=2*pi*fs1/fs;delta_w=ws1-wp1; %过渡带宽N=ceil(1.8*pi/delta_w)+1;%最小阶数Nwindow=boxcar(N);%N=ceil(6.1*pi/delta_w)+1;%最小阶数N%window=bartlett(N);%注意要改一下过渡带宽的系数%N=ceil(6.2*pi/delta_w)+1;%最小阶数N%window=hanning(N);%N=ceil(6.6*pi/delta_w)+1;%最小阶数N%window=hamming(N);%N=ceil(11*pi/delta_w)+1;

12、%最小阶数N%window=blackman(N);%N=ceil(10*pi/delta_w)+1;%最小阶数N%window=kaiser(N+1);Wn=(fp1+fs1)/fs; %理想LPF的截止频率b,a=fir1(N-1,Wn,window);H,w=freqz(b,1,512);db=20*log10(abs(H); %db imaginet=(0:200)/fs;Signal=sin(2*pi*t*5)+sin(2*pi*t*15)+sin(2*pi*t*30); %输入信号FilterSignal=filter(b,1,Signal);subplot(2,2,1);plot

13、(w*fs/(2*pi),db);xlabel(频率);ylabel(db);title(滤波器的相对振幅);grid on;subplot(2,2,2);plot(w*fs/(2*pi),angle(H);xlabel(频率);ylabel(angle(H);title(滤波器相位响应);grid on;subplot(2,2,3);plot(t,Signal);xlabel(t);ylabel(Signal);title(滤波前的信号波形);grid on;subplot(2,2,4);plot(t,FilterSignal);xlabel(t);ylabel(FilterSignal);title(滤波后的信号波形);grid on;2.2 高通滤波器的设计高通滤波器允许信号中的高频分量通过,抑制低频或直流分量。程序如下:%fs1=10,fp1=15;fs=100(wp1=0.3pi;ws1=0.2pi)%fs1=10; %高通阻带模拟截止频率fp1=15; %高通通带模拟截止频率fs=100;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 中学学案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号