信号实验三用窗函数设计FIR滤波器.docx

上传人:scccc 文档编号:14009040 上传时间:2022-01-30 格式:DOCX 页数:13 大小:524.25KB
返回 下载 相关 举报
信号实验三用窗函数设计FIR滤波器.docx_第1页
第1页 / 共13页
信号实验三用窗函数设计FIR滤波器.docx_第2页
第2页 / 共13页
信号实验三用窗函数设计FIR滤波器.docx_第3页
第3页 / 共13页
信号实验三用窗函数设计FIR滤波器.docx_第4页
第4页 / 共13页
信号实验三用窗函数设计FIR滤波器.docx_第5页
第5页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《信号实验三用窗函数设计FIR滤波器.docx》由会员分享,可在线阅读,更多相关《信号实验三用窗函数设计FIR滤波器.docx(13页珍藏版)》请在三一文库上搜索。

1、实验三用窗函数设计FIR滤波器一、实验目的1 .熟悉FIR滤波器设计的基本方法。2 .掌握用窗函数设计 FIR数字滤波器的原理及方法,熟悉相应的计算 机高级语言编程。3 .熟悉线性相位FIR滤波器的幅频特性和相位特性。4 . 了解各种不同窗函数对滤波器性能的响应。 二、实验内容1、以下是几种常用的窗函数:1 .矩形窗:w(n) = RN(n)2 .Hanning (汉宁)窗:w(n)=651 Rn8)3 .Hamming (海明)窗:2 it nw(n) = 0.54- 0.46cos (-)RN (n)N 14.Blackman 窗:w(n) = 10.42 - 0.5 cos+ 0 8co

2、sS)5.Kaiser 窗:wfn)=% (小一照)-R窗函数法设计线性相位FIR 滤波器可以按如下步骤进行:1 确定数字滤波器的性能要求。确定各临界频率 错误 ! 未找到引用源。 和滤波器单位脉冲响应长度N。2 . 根据性能要求和N 值,合理地选择单位脉冲响应 h(n) 有奇偶对称性,从而确定理想频率响应Hd(a)的幅频特性和相位特性。3 . 用傅里叶反变换公式,求得理想单位脉冲响应hd(n) 。4 .选择适当白窗函数 W(n)根据式h(n尸hd(n) w(n)求得所设计的FIR滤 波器单位脉冲响应。5 .用傅理叶变换求得其频率响应H(Q),分析它的幅频特性,若不满足要求,可适当改变窗函数形

3、式或长度N,重复上述过程,直至得到满意的结果。2、 生成四种窗函数:矩形窗、三角窗、汉宁窗、海明窗,并观察其频率 响应。n=30;%矩形窗及其频响window1=rectwin(n);h1,w1=freqz(window1,1);subplot(4,2,1);stem(window1);title( 矩形窗 );subplot(4,2,2);plot(w1/pi,20*log(abs(h1)/abs(h1(1);title( 矩形窗频响 );% 三角窗及其频响window2=triang(n);h2,w2=freqz(window2,1);subplot(4,2,3);stem(window2

4、);title( 三角窗 );subplot(4,2,4);plot(w2/pi,20*log(abs(h2)/abs(h2(1);title( 三角窗频响 );% 汉宁窗及其频响window3=hann(n);h3,w3=freqz(window3,1);subplot(4,2,5);stem(window3);title( 汉宁窗 );subplot(4,2,6);plot(w3/pi,20*log(abs(h3)/abs(h3(1);title( 汉宁窗频响 );% 汉明窗频响window4=hamming(n);h4,w4=freqz(window4,1);subplot(4,2,7)

5、;stem(window4);title( subplot(4,2,8);汉明窗);汉明窗频响plot(w4/pi,20*log(abs(h4)/abs(h4(1);title( );3、(1)用Hanning窗设计一个线性相位带通滤波器,其长度N=15,上下边带宽截止频率分别为1=0.3冗错误!未找到引用源。,2=0.5冗错误!未找到引用源0 ,求h(n),绘制它的幅频和相位特性曲线,观察它的实际3dB和3dB带宽。如果N=45,重复这个设计,观察幅频和相位特性的变化,注意长度N变化对结果的影响。 window=hanning(16); b=fir1(15,0.3 0.5,window);f

6、reqz(b,1);GPrpn-EBH空0 10 20 30.40.50.60.70.30.91Normald Frequency 卜/ rad/=mp固010 20 30.40,50.601 Q8 0 91LJormal jed Frecuencycad/asmple)DODOO mDOm-2-4改变N=45 window=hanning(46); b=fir1(45,0.3 0.5,window);freqz(b,1);-160500*5010000.10.20.3 O.d 。上 0 50 7 OB 09r,flrmalijed l-requsncy (xt rad/amplj500111

7、11I-11hiid- J 1北:1!111111111144ii1i1!ilIIII11144I1144 window=boxcar(16); b=fir1(15,0.3 0.5,window);freqz(b,1);10auOLI Q.2(130.40.606 Q7 0,8019530 一口已1另七尊Hon,ialLed F阳qumnqf (TiradJsarr pl&i改变N=45: window=boxcar(46); b=fir1(45,0.3 0.5,window);freqz(b,1);iI11I-! _1L J110dmm/w-Inga-JkapJ 0IAEJZLLB 、Bla

8、ckman 窗: window=blackman(16); b=fir1(15,0.3 0.5,window);freqz(b,1);D1SD0石叩IUUU0.-3.2 口 3 M U-50.5 CI.7 US US*口广】审 iztd Fiecuen/ :,工 raJ/srri3leL8-k 1LJ11 11 1100.1 J ,203 O.A 0.5D,607 O.Q up 1hormali工rd Fierjijir/ 工工例如mm阳o Q- 5 口EIJ 一面 pw三 LnEl:改变N=45: window=blackman(46); b=fir1(45,0.3 0.5,window);

9、freqz(b,1);_,留51弓-0SR1CL(3)用Kaiser窗设计一个专用的线性相位滤波器。N=40,当B伯:分别为4, 6, 8时,设计相应的滤波器,比较它们的幅频和相位 特性,观察并分析 错误!未找到引用源。值不同的时候对结果有什么影响。 window=kaiser(41,4); b=fir1(40,0.2 0.4,window);freqz(b,1);口口 口 4 C5 0607 OS 0.91kamaltzedlFr&quEncy (n鼻WEirn。oDeorn%-m已七三一uE金21(M4lii1丁 J0.3 IM 05 lG 07 ae 0.91Komai zed IFrb

10、:u&ncy 卜中仃时“门口助 window=kaiser(41,6); b=fir1(40,0.2 0.4,window);freqz(b,1); window=kaiser(41,8); b=fir1(40,0.2 0.4,window);freqz(b,1);0 10203 0J 0,5 oe D7 口6 09N: rr3ll3tl Frequency (、n rsd/sarrpl&i- - * -O Q D nu D6 0 E0102 ni O.J 05 ne 0 7 OB1Ni rirFryuencv ( n r;d/iar plai、实验内容报告1、用窗函数设计滤波器的步骤(1)、

11、根据阻带的衰减,选择合适的窗:不同的窗有不同的性质:不同的窗函数,产生泄漏的大小不一样,频 率分辨能力也不一样。信号的截断产生了能量泄漏,而用FFT算法计算频谱又产生了栅栏效应,从原理上讲这两种误差都是不能消除的,但是我们可以通过选择不同的窗函数对它们的影响进行抑制。(矩形窗主瓣窄,旁瓣大,频率识别精度最高,幅值识别精度最低;布莱克曼窗主瓣宽,旁瓣 小,频率识别精度最低,但幅值识别精度最高)。(2)、根据窗函数得到的序列经过巾ri或fir2得到一个滤波器传输函数系数的序列。a、firl :用来设计传统的低通,高通,带通,带阻,多频带FIR滤波器;调用格式:b = fir1(N,Wn);b =

12、fir1(N,Wn, high);b = fir1(N,Wn, stop);参数说明:N :阶次,滤波器长度为 N+ 1 ;Wn:通带截止频率,其值在 01之间,1对应FsA; b:滤波器系数。在上述所有格式中,若不指定窗函数的类型,fir1自动选择Hamming窗。b、fir2:用来设计具有任意幅度响应的FIR滤波器。调用格式: b= fir2(N, F,M);参数说明:F是频率向量,其值在01之间;M是和F相对应的所希望的幅频相应。如同 fir1 ,缺省时自动选用 Hamming 窗。c、为了观测到设计出来的滤波器的特性,用 freqz得到频率响应。其中在画频率响应的时候我们分为幅度和相位

13、画出。 又因为我们要观测的是衰减的大小程度,以 dB 为单位,所以我们在画幅度的时候纵坐标应该转换成dB。d、为了观测是否滤除已知频率,用 filter(b,1,a)函数来实现,对信号的滤波实验。2、产生一个包含三个正弦成分(120hz,80hz,20hz)的信号,设计基于窗函数的FIR滤波器,去除120hz、20hz成分,保留80hz信号。 通带允许的最大衰减为0.25dB, 阻带应达到的最小衰减为20dB。滤波器的采样频率为500Hz。答:MATLAB 程序如下clear;clc;fs=500;t=(1:250)/fs;x=10*cos(2*pi*20*t)+cos(2*pi*80*t)+

14、10*cos(2*pi*120*t);L=length(x);N=2A(nextpow2(L);Hw=fft(x,N);figure(2);subplot(2,1,1);plot(t,x);grid on;title( 滤波前信号x);xlabel( 时间 /s); % 原始信号subplot(2,1,2);plot(0:N-1)*fs/L,abs(Hw); % 查看信号频谱grid on;title( 滤波前信号频谱图 );xlabel( 频率 /Hz);ylabel( 振幅 |H(eAjw)|);Ap=0.25;As=20; % 定义通带及阻带衰减dev=10A(-As/20),(10A(

15、Ap/20)-1)/(10A(Ap/20)+1),10A(-As/20); % 计算偏移量mags=0,1,0; % 带通fcuts=30,50,90,110; % 边界频率N,Wn,beta,ftype=kaiserord(fcuts,mags,dev,fs);%估 算FIR 滤波器阶数hh2=fir1(N,Wn,ftype,kaiser(N+1,beta); %FIR 滤波器设计hn,w1=freqz(hh2,1,512); %求解数字滤波器的频率响应figure(5)stem(hh2)title(hh2 波形)figure(1) % 绘图subplot(2,1,1);plot(w1/pi

16、,20*log10(abs(hn)gridxlabel(频率 w);ylabel(幅度/db);subplot(2,1,2)plot(w1/pi,angle(hn)gridxlabel(频率 w);ylabel(相位/rad);y=cos(2*pi*80*t);y=filter(hh2,1,x); %滤波y(1:ceil(N/2)二口; %群延时N/2,删除无用信号部分L=length(y);N=2A(nextpow2(L);Hw_2=fft(y,N);figure(3);subplot(2,1,1);plot(t(1:L),y);grid on;title(y=cos(2*pi*80*t);

17、xlabel(时间 /s);subplot(2,1,2);plot(0:N-1)*fs/L,abs(Hw_2); %查看信号频谱grid on;title( 滤波后信号y频谱图);xlabel( 频率/Hz);ylabel( 振幅 |H(eAjw)|);1500;工工可相时间一油君前信号转语图沈浪后信与y频帝S100200300400500频率/Hn600四、思考题1.定性的说明用本实验程序设计的FIR滤波器的3dB截止频率在什么位置?它等于理想频率响应的截止频率吗?答: 在 0.3-0.5 之间, 等于理想频率响应的截止频率2、如果没有给定h(n)长度N,而是给定了通带边缘截止频率 s错误!未找到引用源。,阻带临界频率c,以及相应的衰减,你能根据这些条件用窗函数法设计线性相位FIR低通滤波器吗?答:能,可以根据通带边缘截止频率Ws 和阻带临界频率WcW所选用的窗函数来大致判断长度N3、频率取样方法和窗函数法各有什么特点?简单说明?答:频率采样法的优点是可以从频域直接处理, 并且适合于最优化设计, 它的缺点是频率控制点的位置受限于频率周上的 N 个采样点, 因此滤波器的截止频率不易随意控制。窗口法设计的主要优点是简单, 使用起来方便。 窗 口函数大多有封闭的公式可循, 性能、 参数都已有表格、资料可供参考,计算程序简便,所以很实用。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1