77范文网 - 专业文章范例文档资料分享平台

数字滤波器matlab仿真技术

来源:网络收集 时间:2018-11-06 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

因而保留了一些典型模拟滤波器优良的幅度特性。但设计中只考虑了幅度特性,没考虑相位特性,所设计的滤波器相位特性一般是非线性的,为了得到线性相位特性,对IIR滤波器必须另外增加相位校正网络,使滤波器设计变得复杂,成本较高。FIR滤波器在保证幅度特性满足技术要求的同时,很容易做到有严格的线性相位特性。设FIR滤波器单位脉冲响应h(n)长度为N,其系统函数为

N?1H(z)?n?0?h(n)z?n

H(Z)是z?1的(N-1)次多项式,在Z平面上有(N-1)个零点,原点z=0是(N-1)阶重极点。因此,H(z)永远稳定。稳定和线性相位特性是FIR滤波器突出的优点。

4.1 窗函数法设计FIR滤波器

4.1.1 截断效应和窗函数

理想低通滤波器的传输函数H(ej?)为

?e,???cj?H(e)=?

0,??????c-j?a相应的单位取样响应h(n)为

h(n)=12??-??cce-j?aej?nd??sin(?c(n??))?(n?a)

可以看出,理想低通滤波器的单位取样响应是无限长,且为非因果序列。为了构造一个长度为N的线性相位滤波器,只有将h(n)截取一段,并保证截取的一段对(N-1)/2对称。这就是截断函数的一个例子。

我们知道H(ej?)是一个以2?为周期的函数,可以展为傅氏级数。即

H(ej??)=设计FIR滤波器就是根据要求找到有限个傅氏级数系数,来代替并近似无限项傅氏级数,这样一来,在频率不连续点附近会产生误差,即截断效应。

截断效应,指的是采取截断函数时,截取的有限长信号不能完全反映原信号的频率特性。具体地说 ,会增加新的频率成分 ,并且使谱值大小发生变化 ,这种现象称为频率泄漏。从能量角度来讲 ,频率泄漏现象相当于原信号各种频率成分处的能量渗透到其他频率成分上 ,所以又称为功率泄漏。泄漏是由于无限长信号的突然截断造成的。因此 ,自然想到 ,如果能改变这种突然截断方式 ,泄漏会得到改善。选择适当的

- 9 -

n=-??h(n)ej?n

窗函数 ,对所取样本函数进行不等权处理 ,便是一种有效的措施。需要注意的是,在使用窗函数法时,选取傅氏级数的基数愈多,引起的误差就愈小,但同时项数增多也使成本、体积增加。

4.1.2 窗函数法设计FIR滤波器

Matlab中,函数fir1和fir2就是基于窗函数方法的。

firl函数实现了加窗线性相位FIR数字滤波器设计的经典方法。主要用于常用的标准通带滤波器设计,包括:低通、带通、高通和带阻数字滤波器。

b=fir1(n, Wn)可得到n阶低通FIR滤波器,滤波器系数包括在b中,这可表示为b(1)?b(2)z?1?...?b(n?1)z?n。这是一个截止频率为Wn的加汉明窗的线性相位FIR滤波器。如果Wn是一个包含两个元素的向量,Wn=[W1 W2],firl返回一个n阶的带通滤波器,其通带为W1

b=fir1(n, Wn, ‘high’)设计一个高通滤波器。

b=fir1(n, Wn, ‘stop’)设计一个带阻滤波器。如果Wn是一个多元素的向量,W=[W1 W2 W3 ... Wn],函数将返回一个n阶的多通带的滤波器。b=firl (n,Wn, ‘DC-1’),使第一频带为通带;b=fir1(n,Wn,‘DC-0’)使第一频带为阻带。

对于在Fs/2附近为通带的滤波器如高通或带阻滤波器,n必须是偶数。 缺省情况下,firl()使用Hamming窗。可以在参数window中指定其它窗,包括矩形窗、Harming窗、Bartlett窗、 Blackman窗、Kaise窗等。

缺省情况下,滤波器被归一化,以使经加窗后的第一个通带的中心幅值刚好是1。使用参数’noscale’可以阻止这样做。

如图3是分别用切比雪夫窗和汉明窗设计的带通滤波器的频率响应,带通滤波器的通带频率(归一化后的频率)为0.25到0.60,阶数为38。

设定截止频率和阶数: Wn=[0.25,0.60]; n=38;

使有默认汉明窗的带通滤波器: b1=fir1(n, Wn);

使用切比雪夫窗函数的带通滤波器,先输入切比雪夫窗函数: window=chebwin(n+1,40); b2=fir1(n, Wn, window);

- 10 -

图4用汉明窗和切比雪夫窗设计的FIR滤波器

从图4可以看出,汉明窗函数具有较低的旁瓣幅度,尤其是第一旁瓣幅度;而切比雪夫窗函数具有比较窄的主瓣,相比之下,过渡带也较窄。从分析结果来看,汉明窗函数适用于对阻带衰减有要求的场合,而切比雪夫窗适用于要求较窄的过渡带的场合。

函数fir2()也设计加窗的FIR滤波器,但它针对任意形状的分段线性频率响应,这一点在fir1中是受到限制的。

B=fir2(n, F, M)设计一个n阶的FIR数字滤波器,其频率响应由F和M指定,滤波器的系数返回在向量B中,向量F和M指定滤波器的采样点的频率及其幅值,F的频率必须在0到1之间,1对应于采样频率的一半。它们必须按递增的顺序从0至1结束。缺省情况下,函数fir2()默认使用的是Hamming窗,可在后面参数中指定其它的窗函数。

以下是用fir2()设计的一个多带FIR滤波器,它的频率响应要求如下: 归一化频率范围 f=0.0 - 0.1 f=0.1 – 0.3 f=0.3 – 0.6 f=0.6 – 0.8 f=0.8 – 1.0 幅值 m =0 m =1 m =0 m =1 m =0

- 11 -

程序为:

f=[0,0.1,0.1,0.3,0.3,0.6,0.6,0.8,0.8,1]; m=[0,0,1,1,0,0,1,1,0,0]; b= fir2(40, f, m);

用fir2()设计的滤波器的特性和理想特性的比较如图4

图5.用FIR2设计的滤波器

4.2 FIR滤波器设计实例

设原始信号为x=sin(2*pi*70*t)+2*sin(2*pi*120*t),抽样频率为Fs=1000Hz,,由于某种原因,信号被白噪声污染,实际获得的信号为xn=x+randn(size(t)),要求设计一个FIR滤波器恢复出原始信号。

由于白噪声分布在整个频带,所以需要在不衰减原信号的前提下,对整个频带进行滤波,使用最小二乘法设计一个多带滤波器。滤波器设计要求在[65/500 75/500](即[0.13 0.15])段和[115/500 125/500](即[0.23 0.25])段频带内的幅度是1,在[0 60/500](即[0 0.12] )段、[80/500 110/500](即[0.16 0.22])段、[130/500 1](即[0.26 1])段频带内的幅度是0。

取2秒长度的序列:Fs=1000;t=0:1/Fs:2;

- 12 -

先生成相应的信号:x=sin(2*pi*70*t)+2*sin(2*pi* 120*t); 加入噪声:xn=x+randn(size(t)); 滤波器的阶数:n=90;

f=[0 0.12 0.13 0.15 0.16 0.22 0.23 0.25 0.26 1] m=[0 0 1 1 0 0 1 1 0 0] b=fir1s(n,f,m);

滤波器filter的幅频特性如图6所示:

用滤波器对xn进行滤波:xo=filter(b, l ,xn); 图7是滤波信号和原信号的比较:

图6 滤波器的幅频特性

- 13 -

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库数字滤波器matlab仿真技术在线全文阅读。

数字滤波器matlab仿真技术.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/257492.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: