实验三FIR滤设计实验报告.doc_第1页
实验三FIR滤设计实验报告.doc_第2页
实验三FIR滤设计实验报告.doc_第3页
实验三FIR滤设计实验报告.doc_第4页
实验三FIR滤设计实验报告.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数 字 信 号 处 理 实验三 FIR 滤波器设计实验报告 班级:1202601 学号:1202601* 姓名:* 日期:2015-6-11哈尔滨工业大学(威海)一、实验目的1、 熟悉FIR 滤波器设计的基本方法;2、 掌握窗函数法设计FIR 滤波器的原理和方法;3、 熟悉线性相位FIR 滤波器的幅频特性和相位特性;4、 了解不同窗函数对滤波器性能的响应。二、实验原理1、 窗函数法设计FIR 滤波器原理采用理想滤波器的截断单位脉冲响应序列实现实际滤波器。对理想低通滤波器的单位脉冲响应hd(n) 进行长度为N 的截取,得到长度为N的序列h(n),截取时保证因果性和对滤波器线性相位的要求。为减少吉布斯效应,对h(n)进行加窗,选择合适的窗函数以保证阻带衰减和过渡带要求。注意窗函数的副瓣影响滤波器的阻带衰减,主瓣宽度影响滤波器的过渡带宽。2、 窗函数法设计FIR 低通过程 1) 取理想低通单位取样响应的N 点,N 奇数(N-1 阶滤波器) 2) 根据阻带衰减和过渡带要求选取窗函数在保证阻带衰减满足要求的情况下, 尽量选择主瓣窄的函数w(n) 3) 得到加窗后的序列 h(n)=hd(n)w(n)。w(n)时关于(N-1)/2 偶对称,所以h(n)对称性取决于hd(n) 4) 验证h(n)的频率响应是否满足设计要求。若满足,则终止;否则重复2、3、4 步骤。 3、 窗函数法设计高通 高通 = 全通 - 低通. 与低通设计的不同只在第1)步骤,选取理想高通的单位取样响应序列N 点。4、 设计带通 带通 = 低通 1 -低通 2 带通截止频率为c1c2 ,选择低通 1 截止频率c1 ,低通1 截止频率c2 5、 设计带阻 带阻 = 低通 + 高通 6、 频率采样法设计FIR 滤波器原理 若要求设计的滤波器Hd(ejw)公式复杂或者根本不能用封闭公式给出,对Hd(ejw)进行频率域取样,得到N 点离散取样值H(k),用N 点频率取样值得到滤波器。H(k)要满足线性相位FIR 的频率响应要求。三、实验内容和步骤1、 验证窗函数N 变化时,验证其频谱主瓣副瓣比、主瓣宽度的变化。 a)矩形窗函数的N 变化时,验证其其频谱主瓣副瓣幅度比基本不会发生变化, 而主瓣宽度将会变窄。这说明,当用矩形窗函数设计滤波器时,增大N 不能使得阻带衰减减小,但能够减小过渡带。 Matlab程序: N =20; n1=ones(1,N); fft1=fft(n1,128); fft1=fft1/max(fft1); x=(0:1:127)/128*2*3.14; figure (1); plot(x,20*log10(abs(fft1); grid on; hold on; title(N=20); N =30; n2=ones(1,N); fft2=fft(n1,128); fft2=fft2/max(fft2); x=(0:1:127)/128*2*3.14; figure(2) plot(x,20*log10(abs(fft2),r); grid on; title(N=30); 实验图像:由图可算:当N=20时,频谱主瓣副瓣幅度比为4.5704,过渡带为:0.63pi约等于4*/N。由图可算:当N=30时,频谱主瓣副瓣幅度比为4.59,过渡带为:0.43pi,约等于4*/N。 实验结论: 矩形窗函数的N变化时,其频谱主瓣副瓣幅度比基本不会发生变化,而主瓣宽度将会变窄。这说明,当用矩形窗函数设计滤波器时,增大N不能使得阻带衰减减小,但能够减小过渡带。2、 用窗函数法设计线性相位FIR 低通,通带截止频率wp=0.5PI, 阻带截止频率ws=0.6PI, 阻带衰减不小于40dB,通带衰减不大于3dB. a) 选取Hanning和Hamming就可以满足设计的要求。b) 根据过渡带的要求选择窗的长度。过渡带是0.1 PI,海明和汉宁窗的主瓣宽度均是8 PI/N的,从而选择的窗的长度都是大于等于80的,选择N大于等于80就可以了,在这里选取N=81.Matlab程序:wp = 0.5*pi; %通带截至频率ws = 0.6*pi; %阻带截至频率wdel = ws - wp; %过渡带宽% Hanning窗N_hanning = ceil( 8*pi/wdel );Wn = (wp + ws)/2; %截止频率% N_hanning取奇数if mod(N_hanning,2)=0 N_hanning = N_hanning + 1;endwindow_hanning = hanning(N_hanning); %获得hanning窗离散序列b_hanning = fir1( N_hanning-1, Wn/pi, window_hanning ); %指定滤波器阶次,归一化截止频率,窗函数序列得到hn%注意滤波器的阶次=窗长-1 !freq_axis = 0:pi/512:pi-pi/512; freq_norm = 0:511/512; %归一化的频率轴 H_hanning = freqz( b_hanning, 1, 512);subplot(2,1,1);plot( freq_norm,20*log10(abs(H_hanning) ); hold on;xlabel( 归一化频率w/pi ); ylabel( 幅度(dB) );title( 采用hanning和hamming设计的FIR-幅度响应);subplot(2,1,2);plot( freq_norm,angle(H_hanning) ); hold on;xlabel( 归一化频率w/pi ); ylabel( 相位 );title( 采用hanning和hamming设计的FIR-相位响应);% Hamming窗N_hamming = ceil( 8*pi/wdel );Wn = (wp + ws)/2; %截止频率% N_hamming取奇数if mod(N_hamming,2)=0 N_hamming = N_hamming + 1;endwindow_hamming = hamming(N_hamming); %获得hamming窗离散序列b_hamming = fir1( N_hamming-1, Wn/pi, window_hamming ); %指定滤波器阶次,归一化截止频率,窗函数序列得到hn%注意滤波器的阶次=窗长-1H_hamming = freqz( b_hamming, 1, 512);subplot(2,1,1);plot(freq_norm, 20*log10(abs(H_hamming),k );subplot(2,1,2);plot( freq_norm,angle(H_hamming),k );实验图像:Matlab程序:clc,clear all,close all;wp = 0.5*pi; %通带截至频率ws = 0.6*pi; %阻带截至频率wdel = ws - wp; %过渡带宽% Hanning窗-N_hanning = ceil( 8*pi/wdel );Wn = (wp + ws)/2 %截止频率% N_hanning取奇数if mod(N_hanning,2)=0 N_hanning = N_hanning + 1;endwindow_hanning = hanning(N_hanning) %获得hanning窗离散序列b_hanning = fir1( N_hanning-1, Wn/pi, window_hanning ) %指定滤波器阶次,归一化截止频率,窗函数序列得到hn%注意滤波器的阶次=窗长-1 !freq_axis = 0:pi/512:pi-pi/512; freq_norm = 0:511/512; %归一化的频率轴 H_hanning = freqz( b_hanning, 1, 512);subplot(2,1,1);plot( freq_norm,20*log10(abs(H_hanning) ); hold on;xlabel( 归一化频率w/pi ); ylabel( 幅度(dB) );title( 采用hanning和hamming设计的FIR-幅度响应);subplot(2,1,2);plot( freq_norm,angle(H_hanning) ); hold on;xlabel( 归一化频率w/pi ); ylabel( 相位 );title( 采用hanning和hamming设计的FIR-相位响应);% Hamming窗-N_hamming = ceil( 8*pi/wdel );Wn = (wp + ws)/2; %截止频率% N_hamming取奇数if mod(N_hamming,2)=0 N_hamming = N_hamming + 1endwindow_hamming = hamming(N_hamming); %获得hamming窗离散序列b_hamming = fir1( N_hamming-1, Wn/pi, window_hamming ); %指定滤波器阶次,归一化截止频率,窗函数序列得到hn %注意滤波器的阶次=窗长-1H_hamming = freqz( b_hamming, 1, 512);subplot(2,1,1);plot(freq_norm, 20*log10(abs(H_hamming),k );subplot(2,1,2);plot( freq_norm,angle(H_hamming),k ); hold on;% Hamming窗-% 增大N时,查看滤波器带宽以及阻带衰减的变化N_hamming_2N = ceil( 8*pi/wdel )*2;Wn = (wp + ws)/2; %截止频率% N_hamming_2N取奇数if mod(N_hamming_2N,2)=0 N_hamming_2N = N_hamming_2N + 1;endwindow_hamming = hamming(N_hamming_2N); %获得hamming窗离散序列b_hamming = fir1( N_hamming_2N-1, Wn/pi, window_hamming ); %指定滤波器阶次,归一化截止频率,窗函数序列得到hn %注意滤波器的阶次=窗长-1H_hamming = freqz( b_hamming, 1, 512);subplot(2,1,1);plot(freq_norm, 20*log10(abs(H_hamming),r );subplot(2,1,2);plot( freq_norm,angle(H_hamming),r ); hold on;legend( Hanning num2str(N_hanning) 阶 ,Hamming num2str(N_hamming) 阶,Hamming num2str(N_hamming_2N) 阶 );实验图像:实验结论:从上图可以看出设计符合要求指标,当N相同时hanning窗和hamming窗过渡带宽相同。对于hamming窗,当N增大时,过渡带宽变窄。hanning窗和hamming窗的相位均满足线性相位条件。3 用窗函数法设计线性相位FIR高通,通带截止频率wp=0.8PI, 阻带截止频率ws=0.7PI, 阻带衰减不小于30dB,通带衰减不大于3dB.1)根据阻带衰减的要求选择窗函数,可以选择汉宁窗(最大衰减是44dB)2)根据过渡带的要求选择窗的长度。过渡带是0.1 PI,海明和汉宁窗的主瓣宽度均是8 PI/N的,从而选择的窗的长度都是大于等于80的,选择N=81(必须是奇数);Matlab程序:clc,clear all,close all;wp = 0.8*pi; %通带截至频率ws = 0.7*pi; %阻带截至频率wdel = wp - ws; %过渡带宽% Hanning窗-N_hanning = ceil( 8*pi/wdel );Wn = (wp + ws)/2; %截止频率% N_hanning取奇数if mod(N_hanning,2)=0 N_hanning = N_hanning + 1;endwindow_hanning = hanning(N_hanning); %获得hanning窗离散序列b_hanning = fir1( N_hanning-1, Wn/pi, high,window_hanning ); %指定滤波器阶次,归一化截止频率,窗函数序列得到hn%注意滤波器的阶次=窗长-1 !freq_axis = 0:pi/512:pi-pi/512; freq_norm = 0:511/512; %归一化的频率轴 H_hanning = freqz( b_hanning, 1, 512);subplot(2,1,1);plot( freq_norm,20*log10(abs(H_hanning) ); hold on;xlabel( 归一化频率w/pi ); ylabel( 幅度(dB) );title( 采用hanning和hamming设计的FIR-幅度响应);subplot(2,1,2);plot( freq_norm,angle(H_hanning) ); hold on;xlabel( 归一化频率w/pi ); ylabel( 相位 );title( 采用hanning和hamming设计的FIR-相位响应);% Hamming窗-N_hamming = ceil( 8*pi/wdel );Wn = (wp + ws)/2; %截止频率% N_hamming取奇数if mod(N_hamming,2)=0 N_hamming = N_hamming + 1;endwindow_hamming = hamming(N_hamming); %获得hamming窗离散序列b_hamming = fir1( N_hamming-1, Wn/pi, high,window_hamming ); %指定滤波器阶次,归一化截止频率,窗函数序列得到hn %注意滤波器的阶次=窗长-1H_hamming = freqz( b_hamming, 1, 512);subplot(2,1,1);plot(freq_norm, 20*log10(abs(H_hamming),k );subplot(2,1,2);plot( freq_norm,angle(H_hamming),k ); hold on;% Hamming窗-% 增大N时,查看滤波器带宽以及阻带衰减的变化N_hamming_2N = ceil( 8*pi/wdel )*2;Wn = (wp + ws)/2; %截止频率% N_hamming_2N取奇数if mod(N_hamming_2N,2)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论