线性相位FIR数字滤波器设计.docx
- 文档编号:12388204
- 上传时间:2023-04-18
- 格式:DOCX
- 页数:12
- 大小:99.99KB
线性相位FIR数字滤波器设计.docx
《线性相位FIR数字滤波器设计.docx》由会员分享,可在线阅读,更多相关《线性相位FIR数字滤波器设计.docx(12页珍藏版)》请在冰豆网上搜索。
线性相位FIR数字滤波器设计
一、设计目的
1.掌握窗函数法设计FIR滤波器的原理和方法,观察用几种常用窗函数设计的FIR数字滤波器技术指标;
2.掌握FIR滤波器的线性相位特性;
3.了解各种窗函数对滤波特性的影响。
二、设计原理
如果所希望的滤波器的理想频率响应函数为Hd(ejω),则其对应的单位脉冲响应为
,用窗函数wN(n)将hd(n)截断,并进行加权处理,得到实际滤波器的单位脉冲响应h(n)=hd(n)wN(n),其频率响应函数为
。
如果要求线性相位特性,则h(n)还必须满足
。
可根据具体情况选择h(n)的长度及对称性。
可以调用MATLAB工具箱函数fir1实现本实验所要求的线性相位FIR-DF的设计,调用一维快速傅立叶变换函数fft来计算滤波器的频率响应函数。
fir1是用窗函数法设计线性相位FIRDF的工具箱函数,调用格式如下:
hn=fir1(N,wc,‘ftype’,window)
fir1实现线性相位FIR滤波器的标准窗函数法设计。
hn=fir1(N,wc)可得到6dB截止频率为wc的N阶(单位脉冲响应h(n)长度为N+1)FIR低通滤波器,默认(缺省参数windows)选用hammiing窗。
其单位脉冲响应h(n)满足线性相位条件:
h(n)=h(N-1-n)
其中wc为对π归一化的数字频率,0≤wc≤1。
当wc=[wc1,wc2]时,得到的是带通滤波器。
hn=fir1(N,wc,’ftype’)可设计高通和带阻滤波器。
当ftype=high时,设计高通FIR滤波器;
当ftype=stop时,设计带阻FIR滤波器。
应当注意,在设计高通和带阻滤波器时,阶数N只能取偶数(h(n)长度N+1为奇数)。
不过,当用户将N设置为奇数时,fir1会自动对N加1。
hn=fir1(N,wc,window)可以指定窗函数向量window。
如果缺省window参数,则fir1默认为hamming窗。
可用的其他窗函数有Boxcar,Hanning,Bartlett,Blackman,Kaiser和Chebwin窗。
例如:
hn=fir1(N,wc,bartlett(N+1))使用Bartlett窗设计;
hn=fir1(N,wc,chebwin(N+1,R))使用Chebyshev窗设计。
hn=fir1(N,wc,’ftype’,window)通过选择wc、ftype和window参数(含义同上),可以设计各种加窗滤波器。
三、详细设计步骤
1、用窗函数法设计一个线性相位FIR低通数字滤波器
FIR低通数字滤波器指标为:
因为衰减为50dB,所以选择海明窗。
过渡带宽为Ws-Wp=0.2π,由公式N>6.6π÷0.2π=33,所以
N=34。
所以程序如下:
N=34;
Wc=pi/5;%通带截止频率
wc=Wc/pi;%频率归一化
h=fir1(N,wc);
[H,m]=freqz(h,[1],1024,'whole');%频率响应
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
pha=angle(H);
subplot(2,2,1)
n=0:
N;
stem(n,h,'.')
axis([0N-0.10.3])
holdon
n=0:
N;
x=zeros(N+1);
plot(n,x,'-')
holdoff
xlabel('n')
ylabel('h(n)')
title('实际低通滤波器的h(n)')
subplot(2,2,2)
plot(m/pi,db)
axis([01-1000])
xlabel('w/pi')
ylabel('dB')
title('副频衰减特性')
gridon
subplot(2,2,3)
plot(m,pha)
holdon
n=0:
7;
x=zeros(8);
plot(n,x,'-')
holdoff
axis([03.15-44])
xlabel('频率(rad)')
ylabel('相位(rad)')
title('相频特性')
subplot(2,2,4)
plot(m,mag)
axis([06.1501.5])
xlabel('频率W(rad)')
ylabel('幅值')
title('幅频特性')
2、用窗函数法设计一个线性相位FIR高通数字滤波器。
要求:
FIR高通数字滤波器指标为:
因为衰减为40dB,所以选择汉宁窗。
过渡带宽为Wp-Ws=0.2π,由公式N>6.2π÷0.2π=31,所以
N=32。
程序如下:
N=32;
Wc=pi/2;
wc=Wc/pi;%频率归一化
h=fir1(N,wc,'high',Hanning(N+1));
[H,m]=freqz(h,[1],1024,'whole');%频率响应
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
pha=angle(H);
subplot(2,2,1)
n=0:
N;
stem(n,h,'.')
axis([0N-0.10.3])
holdon
n=0:
N-1;
x=zeros(N);
plot(n,x,'-')
holdoff
xlabel('n')
ylabel('h(n)')
title('实际低通滤波器的h(n)')
subplot(2,2,2)
plot(m/pi,db)
axis([01-1000])
xlabel('w/pi')
ylabel('dB')
title('副频衰减特性')
gridon
subplot(2,2,3)
plot(m,pha)
holdon
n=0:
7;
x=zeros(8);
plot(n,x,'-')
holdoff
axis([03.15-44])
xlabel('频率(rad)')
ylabel('相位(rad)')
title('相频特性')
subplot(2,2,4)
plot(m,mag)
axis([06.1501.5])
xlabel('频率W(rad)')
ylabel('幅值')
title('幅频特性')
四、体会
通过这次课程设计,通过不断的查资料,思考等培养了我综合运用所学知识,发现、提出、分析和解决实际问题、锻炼实践的能力。
在这次课程设计中,我懂得了如何设计窗函数,如何用窗函数法设计FIR滤波器的原理和方法。
在做设计的过程中难免总会出现各种问题,通过查阅资料,自学其中的相关知识,无形间提高了我们的动手,动脑能力,通过课程设计让我知道了,知识只有学以致用才能发挥它的价值,只有真正去做了,你才能真正懂得它的原理。
五、参考文献
[1]数字信号处理教程(第三版)程佩青清华大学出版社
[2]MATLAB基础与编程入门(第二版)张威编西安电子科技大学出版社
线性相位FIR低通数字滤波器
程序如下:
N=34;
Wc=pi/5;%通带截止频率
wc=Wc/pi;%频率归一化
h=fir1(N,wc);
[H,m]=freqz(h,[1],1024,'whole');%频率响应
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
pha=angle(H);
subplot(2,2,1)
n=0:
N;
stem(n,h,'.')
axis([0N-0.10.3])
holdon
n=0:
N;
x=zeros(N+1);
plot(n,x,'-')
holdoff
xlabel('n')
ylabel('h(n)')
title('实际低通滤波器的h(n)')
subplot(2,2,2)
plot(m/pi,db)
axis([01-1000])
xlabel('w/pi')
ylabel('dB')
title('副频衰减特性')
gridon
subplot(2,2,3)
plot(m,pha)
holdon
n=0:
7;
x=zeros(8);
plot(n,x,'-')
holdoff
axis([03.15-44])
xlabel('频率(rad)')
ylabel('相位(rad)')
title('相频特性')
subplot(2,2,4)
plot(m,mag)
axis([06.1501.5])
xlabel('频率W(rad)')
ylabel('幅值')
title('幅频特性')
线性相位FIR高通数字滤波器
N=32;
Wc=pi/2;
wc=Wc/pi;%频率归一化
h=fir1(N,wc,'high',Hanning(N+1));
[H,m]=freqz(h,[1],1024,'whole');%频率响应
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
pha=angle(H);
subplot(2,2,1)
n=0:
N;
stem(n,h,'.')
axis([0N-0.10.3])
holdon
n=0:
N-1;
x=zeros(N);
plot(n,x,'-')
holdoff
xlabel('n')
ylabel('h(n)')
title('实际低通滤波器的h(n)')
subplot(2,2,2)
plot(m/pi,db)
axis([01-1000])
xlabel('w/pi')
ylabel('dB')
title('副频衰减特性')
gridon
subplot(2,2,3)
plot(m,pha)
holdon
n=0:
7;
x=zeros(8);
plot(n,x,'-')
holdoff
axis([03.15-44])
xlabel('频率(rad)')
ylabel('相位(rad)')
title('相频特性')
subplot(2,2,4)
plot(m,mag)
axis([06.1501.5])
xlabel('频率W(rad)')
ylabel('幅值')
title('幅频特性')
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 线性 相位 FIR 数字滤波器 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)