带通滤波器实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 课题介绍

所谓数字滤波器,是指输入输出均为数字信号,通过数值运算处理改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的数字器件或程序。数字滤波器处理精度高、稳定、体积小、重量轻、灵活、不存在阻抗匹配问题。椭圆滤波器具有较好的性能,本课结合MATLAB函数设计模拟椭圆滤波器。

2 设计原理

2.1 常用滤波器比较

典型的模拟滤波器有巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyshev)滤波器和椭圆(Ellipse)滤波器等。其中,巴特沃斯滤波器又叫最平坦响应滤波器,顾名思义,它的响应最为平坦,通带内没有波纹,其频率响应在通带和阻带中都是单调的,且在靠近零频处最平坦,而在趋向阻带时衰减单调增大,缺点是从通带到阻带的过渡带宽,对于带外干扰信号的衰减作用弱。切比雪夫滤波器又分为切比雪夫I型滤波器和切比雪夫II型滤波器。切比雪夫I型滤波器在整个通带内纹波最小,在阻带内随频率单调递增;切比雪夫II型滤波器在通带内随频率光滑且单调递增,零频处最为平坦,在整个阻带内的纹波最小,它们的过渡带较巴特沃斯滤波器陡峭。

巴特沃斯滤波器和切比雪夫滤波器的传输函数都是一个常数除以一个多项式,为全极点网络,所有的零点在无穷处,仅在无限大阻带处衰减为无限大,而椭圆函数滤波器在有限频率上既有零点又有极点。极零点在通带内产生等纹波,即它在整个通带和阻带上都具有最小的等纹波,这一点区别于在通带和阻带都平坦的巴特沃斯滤波器,以及通带平坦、阻带等波纹或是阻带平坦、通带等波纹的切比雪夫滤波器。同时,阻带内的有限传输零点减少了过渡区,可获得极为陡峭的衰减曲线。

在参数相同的情况下,各滤波器的比较如下图所示。

图3.1 相同参数各滤波器频率响应比较

由图可见,对于给定的阶数和波纹要求,切比雪夫滤波器的选择性优于巴特沃斯滤波器,而椭圆函数滤波器优于切比雪夫滤波器,它的过渡带更窄,带外抑制更加陡峭。

椭圆滤波器的设计是基于椭圆有理函数,根据设计指标由椭圆逼近的归一化过程确定所需椭圆滤波器的阶数及系统函数。

Matlab 是一套集数值计算、符号运算及图形处理等强大功能于一体的科学计算语言。作为强大的科学计算平台,它几乎能够满足所有的计算需求。Matlab 的信号处理工具箱提供了设计椭圆滤波器的函数:ellipord 函数和ellip 函数。通过编程可以很容易由滤波器的技术指标得到所需滤波器的阶数,实现各种类型的椭圆滤波器,大大简化了椭圆滤波器的设计

幅值响应在通带和阻带内都是等波纹的,对于给定的阶数和给定的波纹要求,椭圆滤波器能获得较其它滤波器为窄的过渡带宽,就这点而言,椭圆滤波器是最优的,其振幅平方函数为

2221

()1/a N p H j R εΩ=+ΩΩ(

(3-1) 其中RN (x )是雅可比(Jacobi) 椭圆函数,ε为与通带衰减有关的参数。

有上述分析可知椭圆滤波器有如下特点:

1.椭圆带通滤波器是一种零、极点型滤波器,它在有限频率范围内存在传输零点和极点。

2.椭圆带通滤波器的通带和阻带都具有等波纹特性,因此通带、阻带逼近特性良好。

3.对于同样的性能要求,它比前两种滤波器所需用的阶数都低,而且它的过渡带比较窄。

2.3设计椭圆模拟带通滤波器的步骤

1.确定模拟滤波器的性能指标:p W ,s W ,Rs,Rp 。

2.由性能指标计算出滤波器阶次N 。

3.通过归一化及去归一化求出的模拟滤波器Ha(s)。

2.4模拟滤波器的MATLAB 实现 1. Matlab 的信号处理软件提供了设计椭圆滤波器的函数:ellipord 函数和ellip 函数。

1).Ellipord 函数的功能是求滤波器的最小阶数,其调用格式为:

[n,Wn] = ellipord(Wp,Ws,Rp,Rs,’s ’) (4-1) 其中各参量分别为:n-椭圆滤波器最小阶数;Wp-椭圆滤波器通带频率;Ws-椭圆滤波器阻带频率;Rp-通带波纹(dB );Rs-阻带最小衰减(dB);

本次设计中,用下面程序可确定滤波器阶次:

clear

Rp=1;

Rs=50;

Wp=[2000 3000]*2*pi;

Ws=[1700 3300]*2*pi;

[N,Wn]=ellipord(Wp,Ws,Rp,Rs,’s ’);

运行可得: N =

6

Wn =

1.0e+004 *

1.2566 1.8850

2)Ellip 函数的功能是用来设计椭圆滤波器,其调用格式:

[b,a] = ellip(n,Rp,Rs,Wp,’s ’) (4-2)

[b,a] = ellip(n,Rp,Rs,Wp,’ftype ’) (4-3)

其中:‘ftype ’ = ‘high ’ 为高通滤波器, ‘ftype ’ = ‘low ’为低通滤波器,‘ftype ’ = ‘stop ’为带阻滤波器,s 表示模拟滤波器的设计。

返回长度为n+1的滤波器系数行向量b 和a,进而求得传递函数H(z):

11()

(1)(2)(1)()1(2)(1)n z n B z b b z b n z H A z a z a n z ----+++==+++

3 设计内容

3,1带通滤波器实现的程序

wp=2*pi*[2000 3000]; %性能指标

ws=2*pi*[1700 3300];

Rp=1;

Rs=50;

[N,Wn]=ellipord(wp,ws,Rp,Rs,’s ’); %估计滤波器的最小阶数N

[b a]=ellip(N,Rp,Rs,Wn,’s ’); %利用ellip 函数设计滤波器

w=linspace(1,5000 ,1000)*2*pi

H=freqs(b,a,w);

plot(w/(2*pi),20*log10(abs(H)); %画出幅频特性图

xlabel(’Frequency(Hz)’);

ylabel(’Magnitude(dB )’);

title([‘ellipord Analog bandpass filter order N=’,num2str(N)]);

grid on;

运行程序的输出为:

运行可得: N =6

Wn =

1.0e+004 *

1.2566 1.8850

相关文档
最新文档