1、实验二:FIR 数字滤波器设计与软件实现一、实验指导1.实验目的(1掌握用窗函数法设计 FIR 数字滤波器的原理和方法。(2掌握用等波纹最佳逼近法设计 FIR 数字滤波器的原理和方法。(3掌握 FIR 滤波器的快速卷积实现原理。(4学会调用 MA TLAB 函数设计与实现 FIR 滤波器。2. 实验内容及步骤(1认真复习第七章中用窗函数法和等波纹最佳逼近法设计 FIR 数字滤波器的原理;(2调用信号产生函数 xtg 产生具有加性噪声的信号 xt ,并自动显示 xt 及其频谱,如 图 1所示; 图 1 具有加性噪声的信号 x(t及其频谱如图(3请设计低通滤波器,从高频噪声中提取 xt 中的单频调
2、幅信号,要求信号幅频失真 小于 0.1dB ,将噪声频谱衰减 60dB 。先观察 xt 的频谱,确定滤波器指标参数。(4根据滤波器指标选择合适的窗函数,计算窗函数的长度 N ,调用 MATLAB 函数 fir1设计一个 FIR 低通滤波器。并编写程序,调用 MATLAB 快速卷积函数 fftfilt 实现对 xt 的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。 (5 重复 (3 , 滤波器指标不变, 但改用等波纹最佳逼近法, 调用 MA TLAB 函数 remezord 和 remez 设计 FIR 数字滤波器。并比较两种设计方法设计的滤波器阶数。提示: 1MA
3、 TLAB 函数 fir1的功能及其调用格式请查阅教材; 2采样频率 Fs=1000Hz,采样周期 T=1/Fs; 3根据图 1(b和实验要求,可选择滤波器指标参数:通带截止频率 fp=120Hz,阻带截至频率 fs=150Hz, 换算成数字频率, 通带截止频率 p 20.24 pf=T=, 通带最大衰为 0.1dB ,阻带截至频率 s 20.3 sf=T=,阻带最小衰为 60dB 。 3、实验程序框图如图 2所示,供读者参考。图 2 实验程序框图4.信号产生函数 xtg 程序清单(见教材二、 滤波器参数及实验程序清单1、滤波器参数选取根据实验指导的提示选择滤波器指标参数:通带截止频率 fp=
4、120Hz,阻带截至频率 fs=150Hz。代入采样频率 Fs=1000Hz,换算成数字频 率,通带截止频率 p 20.24 pf=T=,通 带最大衰 为 0.1dB ,阻带 截至频率s 20.3 sf=T=,阻带最小衰为 60dB 。所以选取 ? 窗函数 。与信号产生函数 xtg 相 同,采样频率 Fs=1000Hz。按照图 2 所示的程序框图编写的实验程序为 exp2.m 。2、实验程序清单% FIR数字滤波器设计及软件实现clear all;close all;%=调用 xtg 产生信号 xt, xt长度 N=1000,并显示 xt 及其频谱 ,=N=1000;xt=xtg(N;fp=1
5、20; fs=150;Rp=0.2;As=60;Fs=1000; % 输入给定指标% (1 用窗函数法设计滤波器 wc=(fp+fs/Fs;B=2*pi*(fs-fp/Fs;Nb=ceil(11*pi/B;hn=fir1(? ; % 要求填入参数Hw=abs(fft(hn, ?; % 要求填入参数ywt=fftfilt(? ; % 要求填入参数%以下为用窗函数法设计法的绘图部分(滤波器损耗函数,滤波器输出信号波形 f=0:1023*Fs/1024;figure(2subplot(2,1,1plot(f,20*log10(Hw/max(Hw;grid;title(a 低通滤波器幅频特性 axis
6、(0,Fs/2,-120,20;xlabel(f/Hz;ylabel(幅度 t=0:N-1/Fs;Tp=N/Fs;subplot(2,1,2plot(t,ywt;grid;axis(0,Tp/2,-1,1;xlabel(t/s;ylabel(y_w(t;title(b 滤除噪声后的信号波形 % (2 用等波纹最佳逼近法设计滤波器fb=fp,fs;m=1,0; % 确定 remezord 函数所需参数 f,m,devdev=(10(Rp/20-1/(10(Rp/20+1,10(-As/20;Ne,fo,mo,W=remezord(fb,m,dev,Fs;hn=remez(? ; % 要求填入参数
7、Hw=abs(fft(hn, ?; % 要求填入参数yet=fftfilt(? ; % 要求填入参数%以下为用等波纹设计法的绘图部分(滤波器损耗函数,滤波器输出信号波形 figure(3;subplot(2,1,1f=0:1023*Fs/1024;plot(f,20*log10(Hw/max(Hw;grid;title(c 低通滤波器幅频特性 axis(0,Fs/2,-80,10;xlabel(f/Hz;ylabel(幅度 subplot(2,1,2;plot(t,yet;grid;axis(0,Tp/2,-1,1;xlabel(t/s;ylabel(y_e(t;title(d 滤除噪声后的信
8、号波形 三、 实验程序运行结果用窗函数法设计滤波器,滤波器长度 Nb=184。滤波器损耗函数和滤波器输出 yw(nT分别如图 3(a和(b 所示。用等波纹最佳逼近法设计滤波器,滤波器长度 Ne=83。滤波器损耗函数和滤波器输出 ye(nT分别如图 3(c和(d 所示。两种方法设计的滤波器都能有效地从噪声中提取信号, 但等波纹最佳逼近法设计的滤波 器阶数低得多,当然滤波实现的运算量以及时延也小得多,从图 3(b和(d 可以直观地看 出时延差别。 图 3四、思考题(1如果给定通带截止频率和阻带截止频率以及阻带最小衰减 , 如何用窗函数法设计线 性相位低通滤波器 ? 请写出设计步骤 .(2如果要求用窗函数法设计带通滤波器 , 且给定通带上、下截止频率为 pl 和 pu , 阻带上、下截止频率为 sl 和 su ,试求理想带通滤波器的截止频率 cl cu 和 。(3解释为什么对同样的技术指标,用等波纹最佳逼近法设计的滤波器阶数低?