我要发布
仪器网/ 仪器社区/ 滤波器/ 如何用matlab做非因果fir滤波器

如何用matlab做非因果fir滤波器

天使_多多    2016-07-08    滤波器    浏览 345 次

精彩问答
Wait那份忧伤 发布日期:2016-07-09
一般滤波的要求主要是通带边界频率、阻带边界频率、通带Z大波纹及阻带Z小衰减.
而由FIR滤波器的窗函数基本参数,可以知道,Z小阻带衰减只由窗形状决定,不受窗宽N的影响;而过渡带的宽度则既与窗形状有关,且随窗宽N的增加而减小.
这样的话,设计一个FIR滤波器,主要是由阻带Z小衰减来确定窗形状,再根据过渡带宽的要求来确定窗宽N.有一个窗函数基本参数表,可以对照着选.然后用MATLAB中fir1函数来设计,其语法格式为:b=fir1(N,wn,'ftype',window).需简单计算N,wn
例题:
设计一个低通数字滤波器,给定抽样频率为fs=5000Hz,通带截止频率wp=500Hz,阻带起始频率ws=800Hz,阻带衰减不小于-50dB.
由于阻带衰减为50dB,查表,可选海明窗,其阻带Z小衰减为53dB,过渡带宽度为6.6π/N.
MATLAB程序如下:
wp=500*2/5000;% 频率归一化
ws=800*2/5000;
wdel=ws-wp;% 过渡带宽
wn=0.5*(wp+ws);% 近似计算截止频率
N=ceil(6.6*pi/wdel);% 根据过渡带宽度求滤波器阶数
window=hamming(N+1);% 海明窗
b=fir1(N,wn,window);% FIR滤波器设计
freqz(b,1,512);% 查看滤波器幅频及相频特性
最新主题
相关版块
我要评论
X您尚未登录
账号登录
X您尚未登录
手机动态密码登录
X您尚未登录
扫码登录
官方微信

仪器网微信服务号

扫码获取最新信息


仪器网官方订阅号

扫码获取最新信息

在线客服

咨询客服

在线客服
工作日:  9:00-18:00
联系客服 企业专属客服
电话客服:  400-822-6768
工作日:  9:00-18:00
订阅商机

仪采招微信公众号

采购信息一键获取海量商机轻松掌控