FIR数字滤波器设计实验_完整版
实验六FIR滤波器的设计
实验六、用窗函数法设计FIR 数字滤波器一、实验目的:(1)熟悉基本的窗函数,及其特点。
(2)掌握用窗函数法设计FIR 数字滤波器的原理和方法。
(3)熟悉线性相位FIR 数字滤波器特性。
二.实验原理(一)FIR 滤波器的设计FIR 滤波器具有严格的相位特性,这对于语音信号处理和数据传输是很重要的。
目前FIR 滤波器的设计方法主要有三种:窗函数法、频率取样法和切比雪夫等波纹逼近的最优化设计方法。
本实验中的窗函数法比较简单,可应用现成的窗函数公式,在技术指标要求不高的时候是比较灵活方便的。
它是从时域出发,用一个窗函数截取一个理想的)(n h d 得到h(n),以有限长序列h(n)近似理想的)(n h d :如果从频域出发,用理想的)(jw d e h 在单位圆上等角度取样得到H (k ),根据h(k)得到H(z)将逼近理想的)(z H d 这就是频率取样法。
(二)窗函数设计法同其它的的数字滤波器设计的方法一样,用窗函数设计滤波器也是首先要对滤波器提出性能指标。
一般是给定一个理想的频率响应)(jw d e h ,使所设计的FIR 滤波器的频率响应)(jw e h 去逼近所要求的理想的滤波器的响应)(jw d e h 窗函数设计的任务在于寻找一个可实现(有限长单位脉冲响应)的传递函数。
∑-=-=1)()(N n jw jwn e n h e H去逼近)(jw d e h 。
我们知道,一个理想的频率响应)(jw d e h 的傅里叶变换⎰=ππ20)(21)(dw e e H n h jwnjw d d 所得到的理想的单位脉冲响应)(n h d 往往是一个无限长序列,对)(n h d 经过适当的加权、截取处理才得到一个所需要的有限长脉冲响应序列。
对应不同的加权、截断,就有不同的窗函数。
所要寻找的滤波器脉冲响应就等于理想脉冲响应和窗函数的乘积。
即:)()()(n w n h n h d =由此可见,窗函数的性质就决定了滤波器的品质。
实验7 窗函数法设计FIR数字滤波器
实验7窗函数法设计FIR数字滤波器一、实验目的掌握窗函数法设计F1R数字滤波器的原理和具体方法二、实验设备与环境计算机、Mat1ab软件环境三、实验基础理论1>基本原理窗函数设计法的基本思想为,首先选择一个适当的理想的滤波器Hd(,3),然后用窗函数截取它的单位脉冲响应%(九),得到线性相位和因果的FIR滤波器,这种方法的重点是选择一个合适的窗函数和理想滤波器,使设计的滤波器的单位脉冲响应逼近理想滤波器的单位脉冲响应。
2、设计步骤(1)给定理想滤波器的频率响应Hd("3),在通带上具有单位增益和线性相位,在阻带上具有零响应。
一个带宽为g(3c<Tr)的低通滤波器由下式给定h(e j^=(eW∣ω∣≤ωc虱)一1Oωc<∣ω∣<π其中α为采样延迟,其作用是为了得到因果的系统。
(2)确定这个滤波器的单位脉冲响应为了得到一个h(n)长度为N的因果的线性相位FIR滤波器,我们令N-Ia=-2-(3)用窗函数截取hd(τι)得到所设计FIR数字滤波器h(n)h(n)=h d(n)w(n)3、窗函数的选择常用的窗函数有矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗等。
Mat1ab提供了一些函数用于产生窗函数,如下表所示:在设计过程中我们需要根据给定的滤波器技术指标,选择滤波器长度N 和窗函数3(n)°表7.2列出了常用的窗函数的一些特性,可供设计时参考。
其中幻是修正的零阶贝塞尔函数,参数B 控制最小阻带衰减,这种窗函数对于相同的N 可以提供不同的过渡带宽。
由于贝塞尔函数比较更杂,这种窗函数的设计方程很难推导,然而幸运的是,有一些经验设计方程可以直接使用。
已知给定的指标叫Msc,Rp 和4,滤波器长度N 和凯瑟窗参数B 可以按如下凯瑟窗设计方程给出过渡带宽:∆ω=ωst -ωp入一7.95 2.285∆ω_(0.1102(4-8.7) ,P=iθ.5842(4-21)04+0.07886(4-21), 四、实验内容1、设计一个数字低通FIR 滤波器,其技术指标如下ωp =0.2τr,RP=0.25dBωst =0.3τr,A s =50dB分别采用矩形窗、汉宁窗、海明窗、布莱克曼窗、凯瑟窗设计该滤波器。
实验四FIR数字滤波器的设计
实验四FIR数字滤波器的设计
FIR(有限冲击响应)数字滤波器是一种常见的数字信号处理器件,
可以用于滤波、降噪等应用。
下面是一种FIR数字滤波器的设计流程:
1.确定滤波器的需求:首先确定需要滤除的频率范围和滤波的类型,
例如低通、高通、带通、带阻等等。
2.设计滤波器的频率响应:根据滤波器的需求,设计其理想的频率响应。
可以使用窗函数、最小二乘法等方法获得一个理想的滤波器响应。
3.确定滤波器的阶数:根据设计的频率响应,确定滤波器的阶数。
阶
数越高,滤波器的响应越陡峭,但计算复杂度也会增加。
4.确定滤波器的系数:根据滤波器的阶数和频率响应,计算滤波器的
系数。
可以使用频域窗函数或时域设计方法。
5.实现滤波器:根据计算得到的滤波器系数,实现滤波器的计算算法。
可以使用直接形式、级联形式、传输函数形式等。
6.评估滤波器的性能:使用所设计的FIR滤波器对输入信号进行滤波,评估其滤波效果。
可以使用频率响应曲线、幅频响应、群延时等指标进行
评估。
7.调整滤波器设计:根据实际的滤波效果,如果不满足需求,可以调
整滤波器的频率响应和阶数,重新计算滤波器系数,重新实现滤波器。
以上是FIR数字滤波器的基本设计流程,设计过程中需要考虑滤波器
的性能、计算复杂度、实际应用需求等因素。
实验五FIR数字滤波器的设计
实验五FIR数字滤波器的设计FIR数字滤波器(Finite Impulse Response)是一种数字滤波器,它的输出仅由有限数量的输入样本决定。
设计FIR数字滤波器的步骤如下:1.确定滤波器的要求:首先需要明确滤波器的频率响应、截止频率、通带和阻带的幅频响应等要求。
2.选择滤波器类型:根据实际需求选择合适的滤波器类型,如低通滤波器、高通滤波器、带通滤波器或带阻滤波器等。
3.确定滤波器的阶数:根据滤波器类型和要求,确定滤波器的阶数。
通常情况下,滤波器的阶数越高,能够实现更陡峭的频率响应,但会引入更多的计算复杂度。
4.设计滤波器的理想频率响应:根据滤波器的要求和类型,设计滤波器的理想频率响应。
可以使用常用的频率响应设计方法,如窗函数法、最小最大法或线性相位法等。
这些方法可以实现平滑的频率响应或者良好的阻带衰减。
5.确定滤波器的系数:根据设计的理想频率响应,通过反变换或优化算法确定滤波器的系数。
常用的优化算法包括频域方法、时域方法、最小二乘法或最小相位法等。
6.实现滤波器:将所得的滤波器系数转化为滤波器的差分方程形式或直接计算滤波器的频域响应。
7.评估滤波器性能:使用合适的测试信号输入滤波器,并对滤波器的输出进行评估。
可以使用指标,如频率响应曲线、幅度响应误差、相位响应误差或阻带衰减等指标来评估滤波器性能。
8.优化滤波器性能:根据评估结果,进行必要的修改和优化设计,以满足滤波器的要求。
通过以上步骤,可以设计出满足需求的FIR数字滤波器。
需要注意的是,FIR数字滤波器设计的复杂度和性能需要权衡与平衡,以满足实际应用的要求。
FIR数字滤波器设计实验_完整版
FIR数字滤波器设计实验_完整版本实验旨在设计一种FIR数字滤波器,以滤除信号中的特定频率成分。
下面是完整的实验步骤:材料:-MATLAB或其他支持数字信号处理的软件-计算机-采集到的信号数据实验步骤:1.收集或生成需要滤波的信号数据。
可以使用外部传感器采集数据,或者在MATLAB中生成一个示波器信号。
2. 在MATLAB中打开一个新的脚本文件,并导入信号数据。
如果你是使用外部传感器采集数据,请将数据以.mat文件的形式保存,并将其导入到MATLAB中。
3.对信号进行预处理。
根据需要,你可以对信号进行滤波、降噪或其他预处理操作。
这可以确保信号数据在输入FIR滤波器之前处于最佳状态。
4.确定滤波器的设计规范。
根据信号的特性和要滤除的频率成分,确定FIR滤波器的设计规范,包括滤波器的阶数、截止频率等。
你可以使用MATLAB中的函数来帮助你计算滤波器参数。
5. 设计FIR滤波器。
使用MATLAB中的fir1函数或其他与你所使用的软件相对应的函数来设计满足你的规范条件的FIR滤波器。
你可以选择不同的窗函数(如矩形窗、汉宁窗等)来平衡滤波器的频域和时域性能。
6. 对信号进行滤波。
将设计好的FIR滤波器应用到信号上,以滤除特定的频率成分。
你可以使用MATLAB中的conv函数或其他相应函数来实现滤波操作。
7.分析滤波效果。
将滤波后的信号与原始信号进行比较,评估滤波效果。
你可以绘制时域图、频域图或其他特征图来分析滤波效果。
8.优化滤波器设计。
如果滤波效果不理想,你可以调整滤波器设计参数,重新设计滤波器,并重新对信号进行滤波。
这个过程可能需要多次迭代,直到达到最佳的滤波效果。
9.总结实验结果。
根据实验数据和分析结果,总结FIR滤波器设计的优点和缺点,以及可能的改进方向。
通过完成以上实验步骤,你将能够设计并应用FIR数字滤波器来滤除信号中的特定频率成分。
这对于许多信号处理应用都是非常重要的,如音频处理、图像处理和通信系统等。
实验六FIR数字滤波器的设计
实验六FIR数字滤波器的设计实验六FIR数字滤波器的设计⼀、实验⽬的(1)掌握⽤窗函数法设计FIR数字滤波器的原理和⽅法。
(2)掌握⽤等波纹最佳逼近法设计FIR数字滤波器的原理和⽅法。
(3)掌握⽤海明窗设计FIR数字滤波器的原理和⽅法。
(4)学会调⽤MATLAB函数设计与实现FIR滤波器。
⼆、实验内容及步骤(1)掌握⽤窗函数法和等波纹最佳逼近法设计FIR数字滤波器的原理;(2)调⽤信号产⽣函数xtg产⽣具有加性噪声的信号xt,并⾃动显⽰xt及其频谱;图1 具有加性噪声的信号x(t)及其频谱(3)请设计低通滤波器,从⾼频噪声中提取xt中的单频调幅信号,要求信号幅频失真⼩于0.1dB,将噪声频谱衰减60dB。
先观察xt的频谱,确定滤波器指标参数。
(4)根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调⽤MATLAB函数fir1设计⼀个FIR低通滤波器。
并编写程序,调⽤MATLAB快速卷积函数fftfilt实现对xt的滤波。
绘图显⽰滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。
(5)重复(3),滤波器指标不变,但改⽤等波纹最佳逼近法,调⽤MATLAB函数remezord和remez设计FIR数字滤波器。
并⽐较两种设计⽅法设计的滤波器阶数。
(6)⽤海明窗设计⼀个阶数为48,通带范围为0.35pi≤w≤0.65pi 的带通线性相位滤波器。
提⽰:1.采样频率Fs=1000Hz,采样周期T=1/Fs;2.可选择滤波器指标参数:通带截⽌频率fp=120Hz,阻带截⾄频率fs=150Hz,换算成数字频率,通带截⽌频率p 20.24pfωπ=T=π,通带最⼤衰为0.1dB,阻带截⾄频率s 20.3sfωπ=T=π,阻带最⼩衰为60dB。
3.实验程序框图:图2 实验程序框图附件:(1)信号产⽣函数xtg程序清单:function xt=xtg(N)%实验五信号x(t)产⽣,并显⽰信号的幅频特性曲线%xt=xtg(N) 产⽣⼀个长度为N,有加性⾼频噪声的单频调幅信号xt,采样频率Fs=1000Hz%载波频率fc=Fs/10=100Hz,调制正弦波频率f0=fc/10=10Hz. N=2000;Fs=1000;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;fc=Fs/10;f0=fc/10; %载波频率fc=Fs/10,单频调制信号频率为f0=Fc/10;mt=cos(2*pi*f0*t); %产⽣单频正弦波调制信号mt,频率为f0ct=cos(2*pi*fc*t); %产⽣载波正弦波信号ct,频率为fcxt=mt.*ct; %相乘产⽣单频调制信号xtnt=2*rand(1,N)-1; %产⽣随机噪声nt%=======设计⾼通滤波器hn,⽤于滤除噪声nt中的低频成分,⽣成⾼通噪声=======fp=150; fs=200;Rp=0.1;As=70; % 滤波器指标fb=[fp,fs];m=[0,1]; % 计算remezord函数所需参数f,m,devdev=[10^(-As/20),(10^(Rp/20)-1)/(10^(Rp/20)+1)];[n,fo,mo,W]=remezord(fb,m,dev,Fs); % 确定remez函数所需参数hn=remez(n,fo,mo,W); % 调⽤remez函数进⾏设计,⽤于滤除噪声nt中的低频成分yt=filter(hn,1,10*nt); %滤除随机噪声中低频成分,⽣成⾼通噪声yt%============================================ ====================xt=xt+yt; %噪声加信号fst=fft(xt,N);k=0:N-1;f=k/Tp;subplot(3,1,1);plot(t,xt);grid;xlabel('t/s');ylabel('x(t)');axis([0,Tp/5,min(xt),max(xt)]);title('(a) 信号加噪声波形') subplot(3,1,2);plot(f,abs(fst)/max(abs(fst)));grid;title('(b) 信号加噪声的频谱')axis([0,Fs/2,0,1.2]);xlabel('f/Hz');ylabel('幅度')(2)⽤窗函数法设计FIR滤波器% FIR数字滤波器设计及软件实现clear all;close all;%==调⽤xtg产⽣信号xt, xt长度N=1000,并显⽰xt及其频谱,=========N=1000;xt=xtg(N);fp=120; fs=150;Rp=0.2;As=60;Fs=1000; T=1/Fs; % 输⼊给定指标% (1) ⽤窗函数法设计滤波器wc=(fp+fs)/Fs; %理想低通滤波器截⽌频率(关于pi归⼀化)B=2*pi*(fs-fp)/Fs; %过渡带宽度指标Nb=ceil(11*pi/B); %blackman窗的长度Nhn=fir1(Nb-1,wc,blackman(Nb));Hw=abs(fft(hn,1024)); % 求设计的滤波器频率特性ywt=fftfilt(hn,xt,N); %调⽤函数fftfilt对xt滤波figure(2);subplot(3,1,1);myplot(hn,xt); %调⽤绘图函数myplot绘制损耗函数曲线y1t='y_w(t)';subplot(3,1,2);tplot(ywt,T,y1t);(3) % ⽤等波纹最佳逼近法设计滤波器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); % 确定remez函数所需参数hn=remez(Ne,fo,mo,W); % 调⽤remez函数进⾏设计Hw=abs(fft(hn,1024)); % 求设计的滤波器频率特性yet=fftfilt(hn,xt,N); % 调⽤函数fftfilt对xt滤波figure(3);subplot(3,1,1);myplot(hn,xt); %调⽤绘图函数myplot绘制损耗函数曲线y2t='y_e(t)';subplot(3,1,2);tplot(yet,T,y2t)(4) 上⾯代码调⽤的⼦函数:(4-1) myplot:计算时域离散系统损耗函数并绘制曲线图。
FIR数字滤波器设计实验_完整版
FIR数字滤波器设计实验_完整版
在FIR数字滤波器设计实验中,我们需要完成以下步骤:
1.确定滤波器的规格:包括滤波器的类型(低通、高通、带通或带阻)、截止频率、通带波纹、阻带衰减等。
2.选择适当的滤波器设计方法:常见的设计方法包括窗函数法、频率抽样法等。
3.根据选择的设计方法,计算滤波器的系数。
4.实现滤波器:根据计算得到的系数,编写程序在计算机或嵌入式系统中实现滤波器。
5.对输入信号进行滤波处理:将需要滤波的信号输入到滤波器中,获得滤波后的输出信号。
6.评估滤波效果:通过对比输入和输出信号,评估滤波器的性能,包括频率响应、相位响应、时域响应等。
完成FIR数字滤波器设计实验需要具备一定的信号处理和数字滤波器设计的知识,以及一些编程和实验能力。
实验中通常会使用MATLAB、Python等工具进行滤波器设计和信号处理的仿真和实现。
这样的实验对于学习信号处理和数字滤波器设计非常有帮助,可以加深对理论知识的理解,并锻炼实际应用的能力。
实验七FIR数字滤波器设计
实验七 FIR 数字滤波器设计一、实验目的1.掌握利用窗函数设计FIR 滤波器;2.掌握线性相位滤波器的特点及其应用。
二、背景知识1.线性相位FIR 滤波器特性:如果FIR 滤波器单位冲激响应h(n)为实数,0≤n ≤N-1,且满足以下条件,则这种FIR 滤波器具有严格线性相位。
具体分四种形式:1)N 为奇数,h(n)偶对称则频率响应:212/)1(0)cos()()(---=⎥⎥⎦⎤⎢⎢⎣⎡=∑N jw N n jw e wn n a e H 其中,231)21(2)()21()0(-≤≤--⋅=-=N n n N h n a N h a振幅响应为: ∑-==2/)1(0)cos()()(N n wn n a w Hr ,它不同于幅值特性|H(e jw )| 2)N 为偶数,h(n)偶对称 则频率响应:212/1)}21(cos{)()(--=⎥⎥⎦⎤⎢⎢⎣⎡-=∑N jw N n jw e n w n b e H 其中,21)2(2)(N n n N h n b ≤≤-⋅= 振幅响应为: ∑=-=2/1)}21(cos{)()(N n n w n b w Hr ,3)N 为奇数,h(n)奇对称则频率响应:]212[2/)1(1)sin()()(w N j N n jw e wn n c e H ----=⎥⎥⎦⎤⎢⎢⎣⎡=∑π 其中,211)21(2)(-≤≤--⋅=N n n N h n c 振幅响应为: ⎥⎥⎦⎤⎢⎢⎣⎡=∑-=2/)1(1)sin()()(N n wn n c w Hr )1()(n N h n h --±=4)N 为偶数,h(n)奇对称则频率响应:212/1)}21(sin{)()(--=⎥⎥⎦⎤⎢⎢⎣⎡-=∑N jw N n jw en w n d e H 其中,21)2(2)(Nn n Nh n d ≤≤-⋅=振幅响应为: ∑=-=2/1)}21(sin{)()(N n n w n d w Hr ,2.各种窗函数:略三、实验内容ing Program10_1, complete EXAMPLE10.13 of Page 424ing Program10_2, complete EXAMPLE10.15 of Page 4253. Using Program10_4, complete EXAMPLE10.24 of Page 4374. Using Program10_5, complete EXAMPLE10.25 of Page 438四、实验程序及结果五、参考程序:1.% Program 10_1% Estimation of FIR Filter Order Using remezord%fedge = input('Type in the bandedges = ');mval = input('Desired magnitude values in each band = '); dev = input('Allowable deviation in each band = ');FT = input('Type in the sampling frequency = ');[N, fpts, mag, wt] = remezord(fedge, mval, dev, FT); fprintf('Filter order is %d \n',N);2.% Program 10_2% Design of Equiripple Linear-Phase FIR Filters%format longfedge = input('Band edges in Hz = ');mval = input('Desired magnitude values in each band = '); dev = input('Desired ripple in each band =');FT = input('Sampling frequency in Hz = ');[N,fpts,mag,wt] = remezord(fedge,mval,dev,FT);b = remez(N,fpts,mag,wt);disp('FIR Filter Coefficients'); disp(b)[h,w] = freqz(b,1,256);plot(w/pi,20*log10(abs(h)));grid;xlabel('\omega/\pi'); ylabel('Gain, dB');3.% Program 10_4% Kaiser Window Generation%fpts = input('Type in the bandedges = ');mag = input('Type in the desired magnitude values = '); dev = input('Type in the ripples in each band = ');[N,Wn,beta,ftype] = kaiserord(fpts,mag,dev)w = kaiser(N+1,beta); w = w/sum(w);[h,omega] = freqz(w,1,256);plot(omega/pi,20*log10(abs(h)));grid;xlabel('\omega/\pi'); ylabel('Gain, dB');4.% Program 10_5% Lowpass Filter Design Using the Kaiser Window%fpts = input('Type in the bandedges = ');mag = input('Type in the desired magnitude values = '); dev = input('Type in the ripples in each band = ');[N,Wn,beta,ftype] = kaiserord(fpts,mag,dev)kw = kaiser(N+1,beta);b = fir1(N,Wn, kw);[h,omega] = freqz(b,1,512);plot(omega/pi,20*log10(abs(h)));grid;xlabel('\omega/\pi'); ylabel('Gain, dB');。
实验四FIR数字滤波器的设计
实验四FIR数字滤波器的设计
FIR数字滤波器也称作有限脉冲响应数字滤波器,是一种常见的数字滤波器设计方法。
在设计FIR数字滤波器时,需要确定滤波器的阶数、滤波器的类型(低通、高通、带通、带阻)以及滤波器的参数(截止频率、通带波纹、阻带衰减、过渡带宽等)。
下面是FIR数字滤波器的设计步骤:
1.确定滤波器的阶数。
阶数决定了滤波器的复杂度,一般情况下,阶数越高,滤波器的性能越好,但计算量也越大。
阶数的选择需要根据实际应用来进行权衡。
2.确定滤波器的类型。
根据实际需求,选择低通、高通、带通或带阻滤波器。
低通滤波器用于去除高频噪声,高通滤波器用于去除低频噪声,带通滤波器用于保留一定范围内的频率信号,带阻滤波器用于去除一定范围内的频率信号。
3.确定滤波器的参数。
根据实际需求,确定滤波器的截止频率、通带波纹、阻带衰减和过渡带宽等参数。
这些参数决定了滤波器的性能。
4.设计滤波器的频率响应。
使用窗函数、最小二乘法等方法,根据滤波器的参数来设计滤波器的频率响应。
5.将频率响应转换为滤波器的系数。
根据设计的频率响应,使用逆快速傅里叶变换(IFFT)等方法将频率响应转换为滤波器的系数。
6.实现滤波器。
将滤波器的系数应用到数字信号中,实现滤波操作。
7.优化滤波器性能。
根据需要,可以对滤波器进行进一步优化,如调整滤波器的阶数、参数等,以达到较好的滤波效果。
以上是FIR数字滤波器的设计步骤,根据实际需求进行相应的调整,可以得到理想的滤波器。
fir滤波器设计实验报告
fir滤波器设计实验报告一、实验目的本次实验的目的是设计FIR滤波器,从而实现信号的滤波处理。
二、实验原理FIR滤波器是一种数字滤波器,它采用有限长的冲激响应滤波器来实现频率选择性的滤波处理。
在FIR滤波器中,系统的输出只与输入和滤波器的系数有关,不存在反馈环路,因此具有稳定性和线性相位的特性。
FIR滤波器的设计最常采用Window法和最小二乘法。
Window法是指先对理想滤波器的频率特性进行窗函数的处理,再通过离散傅里叶变换来得到滤波器的时域响应。
最小二乘法则是指采用最小二乘法来拟合理想滤波器的频率特性。
本次实验采用的是Window法。
三、实验步骤1.设计滤波器的频率响应特性:根据实际需要设计出需要的滤波器的频率响应特性,通常采用理想滤波器的底通、高通、带通、带阻等特性。
2.选择窗函数:根据设计的滤波器的频率响应特性选择相应的窗函数,常用的窗函数有矩形窗、汉宁窗、汉明窗等。
3.计算滤波器的时域响应:采用离散傅里叶变换将设计的滤波器的频率响应特性转化为时域响应,得到滤波器的冲激响应h(n)。
4.归一化:将得到的滤波器的冲激响应h(n)进行归一化处理,得到单位加权的滤波器系数h(n)。
5.实现滤波器的应用:将得到的滤波器系数h(n)应用于需要滤波的信号中,通过卷积的方式得到滤波后的信号。
四、实验结果以矩形窗为例,设计一阶低通滤波器,截止频率为300Hz,采样频率为8000Hz,得到的滤波器系数为:h(0)=0.0025h(1)=0.0025滤波效果良好,经过滤波后的信号频率响应相对于滤波前有较明显的截止效应。
五、实验总结通过本次实验,我们掌握了FIR滤波器的设计方法,窗函数的选择和离散傅里叶变换的应用,使我们能够更好地处理信号,实现更有效的信号滤波。
在日常工作和学习中,能够更好地应用到FIR滤波器的设计和应用,提高信号处理的精度和效率。
实验6FIR滤波器设计
实验6FIR滤波器设计FIR (Finite Impulse Response)滤波器是一种数字滤波器,其输出信号仅取决于振荡器的输入以前的有限个值。
FIR滤波器设计的目的是通过调整滤波器的系数以实现所需的频率响应。
在FIR滤波器设计中,首先确定滤波器的类型和频率响应的规格。
常见的滤波器类型有低通滤波器、高通滤波器、带通滤波器和带阻滤波器。
频率响应的规格由滤波器的截止频率、通带增益和阻带衰减等参数决定。
FIR滤波器的设计步骤如下:1.确定滤波器的类型和频率响应规格。
根据应用的需求,选择适当的滤波器类型和定义频率响应的参数。
2.确定滤波器的阶数。
阶数决定了滤波器的复杂度和性能。
一般而言,阶数越高,滤波器的性能越好,但计算复杂度也越高。
3.根据频率响应规格和系统设计的约束,选择一种滤波器设计方法。
常见的设计方法有窗函数法、频率采样法、最小均方误差法等。
4.设计滤波器的理想频率响应。
根据所选的设计方法,确定滤波器的理想频率响应。
这通常是一个分段线性函数,其中包括通带增益和阻带衰减。
5.将理想频率响应转换为时域的冲激响应。
这可以通过将理想频率响应进行反傅里叶变换来实现。
6.通过选择合适的窗函数,对冲激响应进行窗函数变换。
窗函数的选择是设计滤波器性能的重要因素。
7.通过窗函数变换得到滤波器的系数。
通过将窗函数变换应用于冲激响应,可以得到设计滤波器的系数。
这些系数确定了滤波器的时间响应和频率响应。
8.可选地,通过优化算法对滤波器的系数进行优化。
优化算法可以用来进一步改善滤波器的性能。
常用的优化算法包括加权最小二乘方法、梯度下降法等。
9.实现滤波器。
将设计好的滤波器系数应用于输入信号,得到滤波器输出。
可以使用编程语言或滤波器设计工具来实现滤波器。
10.验证滤波器的性能。
通过将滤波器应用于不同的输入信号,检验滤波器输出是否符合设计要求。
可以使用频谱分析工具和滤波器性能评估指标来评估滤波器的性能。
FIR滤波器设计是数字信号处理中重要的课题之一、设计一个性能良好的FIR滤波器需要对滤波器原理和设计方法有深入的了解,以及熟练的使用滤波器设计工具和编程工具。
fir数字滤波器设计实验报告
fir数字滤波器设计实验报告FIR数字滤波器设计实验报告概述数字滤波器是数字信号处理中的重要组成部分,广泛应用于音频、图像、视频等领域。
其中,FIR数字滤波器是一种常见的数字滤波器,具有线性相位、稳定性好、易于实现等优点。
本实验旨在设计一种基于FIR数字滤波器的信号处理系统,实现对信号的滤波和降噪。
实验步骤1. 信号采集需要采集待处理的信号。
本实验采用的是模拟信号,通过采集卡将其转换为数字信号,存储在计算机中。
2. 滤波器设计接下来,需要设计FIR数字滤波器。
为了实现对信号的降噪,我们选择了低通滤波器。
在设计滤波器时,需要确定滤波器的阶数、截止频率等参数。
本实验中,我们选择了8阶低通滤波器,截止频率为500Hz。
3. 滤波器实现设计好滤波器后,需要将其实现。
在本实验中,我们采用MATLAB 软件实现FIR数字滤波器。
具体实现过程如下:定义滤波器的系数。
根据滤波器设计的公式,计算出系数值。
利用MATLAB中的filter函数对信号进行滤波。
将采集到的信号作为输入,滤波器系数作为参数,调用filter函数进行滤波处理。
处理后的信号即为滤波后的信号。
4. 结果分析需要对处理后的信号进行分析。
我们可以通过MATLAB绘制出处理前后的信号波形图、频谱图,比较它们的差异,以评估滤波器的效果。
结果显示,经过FIR数字滤波器处理后,信号的噪声得到了有效的降低,滤波效果较好。
同时,频谱图也显示出了滤波器的低通特性,截止频率处信号衰减明显。
结论本实验成功设计并实现了基于FIR数字滤波器的信号处理系统。
通过采集、滤波、分析等步骤,我们实现了对模拟信号的降噪处理。
同时,本实验还验证了FIR数字滤波器的优点,包括线性相位、稳定性好等特点。
在实际应用中,FIR数字滤波器具有广泛的应用前景。
实验四FIR数字滤波器的设计
实验四FIR数字滤波器的设计实验四 FIR 数字滤波器的设计一、实验目的1.理解滤波器参数的意义;2.掌握用窗函数法设计FIR 数字滤波器的方法;3.掌握利用Matlab 设计其它各型FIR 数字滤波器的方法;4.掌握分析滤波器是否达到性能指标的方法。
二、实验原理窗函数法设计FIR 数字滤波器的步骤为:(1)由过渡带宽和阻带最小衰减的要求,选定窗口函数并确定N 的大小,得到w (n );(2)计算出相应的理想滤波器的单位脉冲响应h d (n );(3)求得所设计的FIR 滤波器的单位脉冲响应)()()(n w n h n h d =,n =0,1,, N -1;(4)为了验证设计结果是否满足设计要求,可以求[])()(n h DTFT e H j =ω加以验证,如不满足要求,则需重新设计。
常用的窗函数有:① 矩形窗;② 巴特列特窗;③ 汉宁窗;④ 汉明窗;⑤ 布莱克曼窗;⑥ 凯泽窗。
选取合适的窗函数后,将窗函数与理想滤波器的单位脉冲响应相乘,就将无限长的理想滤波器的单位脉冲响应变为了有限长的单位脉冲响应。
常用的滤波器是低通、高通、带通和带阻滤波器,这些滤波器的单位脉冲响应为:① 理想低通滤波器[])()(sin 21)(a n a n d e e n h c n j a j d c c --==--πωωπωωωω (1) ② 理想高通滤波器 ()[]()[])(sin sin )(a n a n a n n h c d ----=πωπ (2) ③ 理想带通滤波器 ()[]()[])(sin sin )(a n a n a n n h cl ch d ----=πωω (3) ④ 理想带阻滤波器()[]()[]()[])(sin sin sin )(a n a n a n a n n h ch cl d ----+-=πωωπ (4) 设计出的滤波器不一定能满足指标要求,如有必要,要计算其频率响应进行验证,如不满足要求,要重新设计。
实验8 FIR数字滤波器的设计实验
实验8 FIR 数字滤波器设计实验一.实验目的1.掌握用窗函数法设计FIR 数字滤波器的原理和方法。
2.熟悉线性相位FIR 数字滤波器特性。
3.了解各种窗函数对滤波器特性的影响。
二.实验设备PC 兼容机一台,操作系统为WindowsXP ,安装CCS 软件。
三.实验原理1.基于窗函数法设计FIR 数字滤波器的基础理论。
(请参考教材《数字信号处理教程》)2.根据要求设计FIR 数字低通滤波器。
要求:通带边缘频率10kHz p f =,阻带边缘频率22kHz st f =,阻带衰减70dB ,采样频率50kHz s f =。
(1) 求各对应的数字频率:通带截止频率:2210500.4 p p s f f ωπππ==⋅=弧度阻带截止频率:2222500.88 st st s f f ωπππ==⋅=弧度阻带衰减相当于:270dB δ=(2) 求()d h n 。
设,()0, j j c d e H e ωτωωω-⎧≤=⎨⎩其他, 理想数字低通滤波器的截止频率为:10.40.88()0.6422c p st ππωωωπ+=+== 由此可得:()()sin ,1()2, c j j n d c n n n h n e e d n πωτωπωττπτωπωτπ--⎧-⎡⎤⎣⎦≠⎪⎪-==⎨⎪=⎪⎩⎰ 其中,12N τ-=(3) 求窗函数。
由阻带衰减2δ确定窗形状,由过渡带宽确定N 。
由于270dB δ=,查表可选择布莱克曼窗。
由于布莱克曼窗过渡带宽满足: 5.982/N ωπ=⋅故:窗函数长度 )5.9820.880.424.9N πππ=⋅-=所以N =25,窗函数为:2424()0.420.5cos 0.08cos ()2424n n w n R n ππ⎡⎤⎛⎫⎛⎫=-+⋅ ⎪ ⎪⎢⎥⎝⎭⎝⎭⎣⎦ (4) 求()h n 。
()()24sin 0.641224()()()0.420.5cos 0.08cos ()122424d n n n h n h n w n R n n ππππ-⎡⎤⎡⎤⎛⎫⎛⎫⎣⎦=⋅=⋅-+⋅ ⎪ ⎪⎢⎥-⎝⎭⎝⎭⎣⎦(5) 根据上面计算出的()h n ,得到数字滤波器的差分方程为:()0.001(2)0.002(3)0.002(4)0.01(5)0.009(6)0.018(7)0.049(8)0.02(9)0.11(10)0.28(11)0.64(12)0.28(13) 0.11(14)0.02(15)0.049(y n x n x n x n x n x n x n x n x n x n x n x n x n x n x n x n =-----+-----+-----+-+-+-----+16)0.018(17)0.009(18)0.01(19)0.002(20)0.002(21)0.001(-22)x n x n x n x n x n x n -----+-----+3.程序流程图:四.实验步骤1.设置软件仿真工作模式。
fir数字滤波器设计实验报告
fir数字滤波器设计实验报告fir数字滤波器设计实验报告引言数字滤波器是一种常见的信号处理工具,用于去除信号中的噪声或者滤波信号以达到特定的目的。
其中,FIR(Finite Impulse Response)数字滤波器是一种常见且重要的数字滤波器,其特点是具有有限冲击响应。
本实验旨在设计并实现一个FIR数字滤波器,通过对滤波器的设计和性能评估,加深对数字滤波器的理解。
设计过程1. 确定滤波器的要求在设计FIR数字滤波器之前,首先需要明确滤波器的要求。
这包括滤波器类型(低通、高通、带通或带阻)、截止频率、滤波器阶数等。
在本实验中,我们选择设计一个低通滤波器,截止频率为1kHz,滤波器阶数为32。
2. 设计滤波器的传递函数根据滤波器的要求,我们可以利用Matlab等工具设计出滤波器的传递函数。
在本实验中,我们选择使用窗函数法设计滤波器。
通过选择合适的窗函数(如矩形窗、汉宁窗等),可以得到滤波器的传递函数。
3. 确定滤波器的系数根据滤波器的传递函数,我们可以通过离散化的方法得到滤波器的系数。
这些系数将决定滤波器对输入信号的响应。
在本实验中,我们使用了Matlab的fir1函数来计算滤波器的系数。
4. 实现滤波器在得到滤波器的系数之后,我们可以将其应用于输入信号,实现滤波器的功能。
这可以通过编程语言(如Matlab、Python等)来实现,或者使用专用的数字信号处理器(DSP)来进行硬件实现。
实验结果为了评估设计的FIR数字滤波器的性能,我们进行了一系列的实验。
首先,我们使用了一个具有噪声的输入信号,并将其输入到滤波器中。
通过比较滤波器输出信号和原始信号,我们可以评估滤波器对噪声的去除效果。
实验结果显示,设计的FIR数字滤波器能够有效地去除输入信号中的噪声。
滤波后的信号更加平滑,噪声成分明显减少。
此外,滤波器的截止频率也得到了有效控制,滤波器在截止频率之后的信号衰减明显。
讨论与总结通过本次实验,我们深入了解了FIR数字滤波器的设计和实现过程。
实验五FIR数字滤波器的设计
实验五FIR数字滤波器的设计一:实验目的(1)掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的原理及方法,熟悉响应的matlab编程;(2)熟悉线性相位FIR滤波器的幅频特性和相频特性;(3)了解各种不同窗函数对滤波器性能的影响。
二:实验原理:(一)线性相位实系数FIR滤波器按其N值奇偶和h(n)的奇偶对称性分为四种:1、h(n)为偶对称,N为奇数;H(e jω)的幅值关于ω=0,π,2π成偶对称。
2、h(n)为偶对称,N为偶数;H(e jω)的幅值关于ω=π成奇对称,不适合作高通。
3、h(n)为奇对称,N为奇数;H(e jω)的幅值关于ω=0,π,2π成奇对称,不适合作高通和低通。
=0,不适合作低通。
4、h(n)为奇对称,N为偶数;H(e jω)ω=0、2π(二) 窗口法窗函数法设计线性相位FIR 滤波器步骤确定数字滤波器的性能要求:临界频率{ωk },滤波器单位脉冲响应长度N ;根据性能要求,合理选择单位脉冲响应h(n)的奇偶对称性,从而确定理想频率响应H d (e jω)的幅频特性和相频特性;求理想单位脉冲响应h d (n),在实际计算中,可对H d (e jω)按M(M 远大于N)点等距离采样,并对其求IDFT 得h M (n),用h M (n)代替h d (n);选择适当的窗函数w(n),根据h(n)= h d (n)w(n)求所需设计的FIR 滤波器单位脉冲响应; 求H(e jω),分析其幅频特性,若不满足要求,可适当改变窗函数形式或长度N ,重复上述设计过程,以得到满意的结果。
窗函数的傅式变换W(e jω)的主瓣决定了H(e jω)过渡带宽。
W(e jω)的旁瓣大小和多少决定了H(e jω)在通带和阻带范围内波动幅度,常用的几种窗函数有:(1)矩形窗(Rectangle Window))()(n R n w N =(2)汉宁(Hanning)窗,又称升余弦窗)()]12cos(1[21)(n R N n n w N --=π (3)汉明(Hamming)窗,又称改进的升余弦窗)()]12cos(46.054.0[)(n R N n n w N --=π(4)布莱克曼(Blankman)窗,又称二阶升余弦窗 )()]14cos(08.0)12cos(5.042.0[)(n R N n N n n w N -+--=ππ(5)凯塞(Kaiser)窗 10,)())]1/(21[1()(020-≤≤---=N n I N n I n w ββ其中:β是一个可选参数,用来选择主瓣宽度和旁瓣衰减之间的交换关系,一般说来,β越大,过渡带越宽,阻带越小衰减也越大。
fir数字滤波器设计实验报告
fir数字滤波器设计实验报告fir数字滤波器设计实验报告引言:数字滤波器是一种广泛应用于信号处理和通信系统中的重要工具。
其中,有一类常见的数字滤波器是FIR(Finite Impulse Response)数字滤波器。
FIR数字滤波器具有线性相位特性、稳定性好、易于设计和实现等优点,被广泛用于音频处理、图像处理、通信系统等领域。
本实验旨在通过设计一个FIR数字滤波器,探索其设计原理和实际应用。
一、实验目的本实验的目的是通过设计一个FIR数字滤波器,实现对特定信号的滤波处理。
具体来说,我们将学习以下几个方面的内容:1. FIR数字滤波器的基本原理和特点;2. FIR数字滤波器的设计方法和流程;3. 使用MATLAB软件进行FIR数字滤波器的设计和仿真。
二、实验原理1. FIR数字滤波器的基本原理FIR数字滤波器是一种线性时不变系统,其输出仅与当前输入和过去若干个输入有关,没有反馈回路。
这种特性使得FIR数字滤波器具有线性相位特性,适用于对信号的频率响应要求较高的应用场景。
FIR数字滤波器的输出可以通过卷积运算来计算,即将输入信号与滤波器的冲激响应进行卷积运算。
2. FIR数字滤波器的设计方法FIR数字滤波器的设计方法有很多种,常见的包括窗函数法、频率采样法和最优化方法等。
在本实验中,我们将使用窗函数法进行FIR数字滤波器的设计。
窗函数法的基本思想是将理想滤波器的频率响应与一个窗函数相乘,从而得到实际可实现的滤波器。
三、实验步骤1. 确定滤波器的设计要求在设计FIR数字滤波器之前,我们首先需要明确滤波器的设计要求。
包括滤波器的通带、阻带、过渡带的频率范围和响应要求等。
2. 选择窗函数和滤波器的阶数根据设计要求,选择合适的窗函数和滤波器的阶数。
常见的窗函数有矩形窗、汉宁窗、汉明窗等。
不同的窗函数对滤波器的性能有一定影响,需要根据实际情况进行选择。
3. 计算滤波器的冲激响应利用所选窗函数和滤波器的阶数,计算滤波器的冲激响应。
(完整word版)有限冲激响应滤波器(FIR)算法实验(word文档良心出品)
福州大学至诚学院《DSPs原理及应用》实验报告实验题目:实验三有限冲激响应滤波器(FIR)算法实验姓名:学号:系别:信息工程系专业:通信工程年级: 2011 级同组姓名:实验时间: 2014.11.10~2014.11.112014年 11 月 14 日实验3:有限冲激响应滤波器(FIR)算法实验1.实验目的1.1掌握用窗函数法设计FIR数字滤波器的原理和方法;1.2熟悉线性相位FIR数字滤波器特性;1.3了解各种窗函数对滤波器特性的影响。
2.实验设备PC 兼容机一台;安装Code Composer Studio 3.1软件。
3.实验原理3.1有限冲激响应数字滤波器的基础理论。
3.2模拟滤波器原理(巴特沃斯滤波器、切比雪夫滤波器、椭圆滤波器、贝塞尔滤波器)。
3.3数字滤波器系数的确定方法。
3.4根据要求设计低通 FIR 滤波器:要求:通带边缘频率 10kHz,阻带边缘频率 22kHz,阻带衰减 75dB,采样频率50kHz。
设计:3.4.1过渡带宽度=阻带边缘频率-通带边缘频率=22-10=12kHz;3.4.2采样频率:f1=通带边缘频率+(过渡带宽度)/2=10000+12000/2=16kHz;Ω1=2πf1/fs=0.64π;3.4.3理想低通滤波器脉冲响应:h1[n]=sin(nΩ 1)/n/π =sin(0.64π n)/n/π3.4.4根据要求,选择布莱克曼窗,窗函数长度为:N=5.98fs/过渡带宽度=5.98*50/12=24.93.4.5选择 N=25,窗函数为:w[n]=0.42+0.5cos(2π n/24)+0.8cos(4π n/24)3.4.6滤波器脉冲响应为:h[n]=h1[n]w[n] |n|≤12 h[n]=0 |n|>123.4.7根据上面计算,各式计算出 h[n],然后将脉冲响应值移位为因果序列。
3.4.8完成的滤波器的差分方程为:y[n]=-0.001x[n-2]-0.002x[n-3]-0.002x[n-4]+0.01x[n-5]-0.009x[n-6]-0.018x[n-7]-0.049x[n-8]-0.02x[n-9]+0.11x[n-10]+0.28x[n-11]+0.64x[n-12]+0.28x[n-13]-0.11x[n-14]-0.02x[n-15]+0.049x[n-16]-0.018x[n-17]-0.009x[n-18]+0.01x[n-19]-0.002x[n-20]-0.002x[n-21]+0.001x[n-22]3.5程序流程图:4.实验步骤4.1实验准备:设置软件仿真模式;启动CCS 3.3。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
班级:姓名:学号:FIR数字滤波器设计实验报告一、实验目的1.掌握FIR数字滤波器的设计方法;2.熟悉MATLAB信号处理工具箱的使用;3.熟悉利用MATLAB软件进行FIR数字滤波器设计,以及对所设计的滤波器进行分析;4.了解FIR滤波器可实现严格线性相位的条件和特点;5.熟悉FIR数字滤波器窗函数设计法的MATLAB设计,并了解利用窗函数法设计FIR滤波器的优缺点;6.熟悉FIR数字滤波器频率采样设计法的MATLAB设计,并了解利用频率采样法设计FIR滤波器的优缺点;7.熟悉FIR数字滤波器切比雪夫逼近设计法的MATLAB设计,并了解利用切比雪夫逼近法设计FIR滤波器的优缺点。
二、实验设备及环境1.硬件:PC机一台;2.软件:MATLAB(6.0版以上)软件环境。
三、实验内容及要求1.实验内容:基于窗函数设计法、频率采样设计法和切比雪夫逼近设计法,利用MATLAB软件设计满足各自设计要求的FIR数字低通滤波器,并对采用不同设计法设计的低滤波器进行比较。
2.实验要求:(1)要求利用窗函数设计法和频率采样法分别设计FIR 数字低通滤波器,滤波器参数要求均为:0.3c w π=。
其中,窗函数设计法要求分别利用矩形窗、汉宁窗和布莱克曼窗来设计数字低通滤波器,且21N ≥,同时要求给出滤波器的幅频特性和对数幅频特性; 频率采样法要求分别利用采样点数21N =和63N =设计数字低通滤波器,同时要求给出滤波器采样前后的幅频特性,以及脉冲响应及对数幅频特性。
(2)要求利用窗函数设计法和切比雪夫逼近法分别设计FIR 数字低通滤波器,滤波器参数要求均为:0.2π,0.25dB,0.3π,50dB p p s s ωαωα====其中,窗函数设计法要求利用汉明窗来设计数字低通滤波器,且66N ≥,同时要求给出滤波器理想脉冲响应和实际脉冲响应,汉名窗和对数幅频特性; 切比雪夫逼近法要求采用切比雪夫Ⅰ型,同时要求给出滤波器的脉冲响应、幅频特性和误差特性。
(3)将要求(1)和(2)中设计的具有相同参数要求,但采用不同设计方法的滤波器进行比较,并以图的形式直观显示不同设计设计方法得到的数字低通滤波器的幅频特性的区别。
四、实验步骤1.熟悉MATLAB 运行环境,命令窗口、工作变量窗口、命令历史记录窗口,FIR 常用基本函数;2.熟悉MATLAB 文件格式,m 文件建立、编辑、调试;3.根据要求(1)的内容,设计FIR数字低通滤波器,建立M文件,编写、调试、运行程序;4.根据要求(2)的内容,设计FIR数字低通滤波器,建立M文件,编写、调试、运行程序;5.将要求(1)和(2)中设计的具有相同参数要求,但采用不同设计方法的滤波器进行比较分析;6.记录实验结果;7.分析实验结果;8.书写实验报告。
五、实验预习思考题1.FIR滤波器有几种常用设计方法?这些方法各有什么特点?2.FIR滤波器线性相位的条件和特点是什么?3. FIR数字滤波器窗函数设计法的流程是什么?具有什么样的优缺点?4.FIR数字滤波器频率采样设计法的流程是什么?具有什么样的优缺点?5.FIR数字滤波器切比雪夫逼近设计法的流程是什么?具有什么样的优缺点?6.利用MATLAB设计FIR数字滤波器以及进行分析时,都有哪些常用的基本函数?六、实验结果记录(一)满足实验要求(1)的数字低通滤波器设计实验记录1、利用窗函数法设计FIR低通滤波器得到的实验结果:滤波器的幅频特性和对数幅频特性如下:(N=21)0123400.20.40.60.811.21.401234-140-120-100-80-60-40-200202、利用频率采样法设计FIR 低通滤波器得到的实验结果:(1) 采样点数21N 时,通滤波器采样前后的幅频特性,以及脉冲响应及对数幅频特性如下:0.51H d (k)5101520脉冲响应h (n )0.510.51幅度响应H (w )0.51-60-40-200幅度响应w in pi20l o g H (w )(2) 采样点数63N 时,通滤波器采样前后的幅频特性,以及脉冲响应及对数幅频特性如下:0.51H d (k)204060脉冲响应h (n )0.510.51幅度响应H (w )0.51-60-40-200幅度响应w in pi20l o g H (w )(二)满足实验要求(2)的数字低通滤波器设计实验记录 1、利用窗函数法设计FIR 低通滤波器得到的实验结果:滤波器的理想脉冲响应和实际脉冲响应,汉名窗和对数幅频特性如下:204060理想脉冲响应h d (n )0204060汉明窗w (n )204060实际脉冲响应h (n )00.51幅度响应d B2、利用切比雪夫逼近法设计FIR 低通滤波器得到的实验结果: 滤波器的脉冲响应、幅频特性和误差特性如下:2040脉冲响应01234-100-50050对数幅频特性1234绝对幅频特性1234-0.02-0.0100.010.02误差特性七、实验分析针对上述实验结果,可以展开如下几个方面的实验分析:1.利用窗函数设计法设计FIR 数字低通滤波器,对于同样的设计指标,采用不同的窗函数,得到的数字低通滤波器的幅频特性有差异,根据实验发现:用矩形窗、汉宁窗和布莱克曼窗设计得到的数字低通滤波器中,汉宁窗和布莱克曼窗的幅度特性差别不大,而矩形窗的幅度特性在通带和阻带上相对于汉宁窗和布莱克曼窗存在着较大的纹波。
这个实验结果很好的验证了教材上关于不同窗函数所得滤波器的幅度特性差异的理论。
2. 利用频率采样法设计FIR 低通滤波器,对于同样的设计指标,采用不同的采样点数,得到的数字低通滤波器的幅频特性有差异,根据实验发现:N 较大的数字低通滤波器相对于N 较小的数字低通滤波器,具有更为密集的脉冲响应,同时幅频特性在通带和阻带内具有频率更大幅度相对较小的振荡纹波。
这个实验结果很好的验证了教材上关于不同采样点数得滤波器的脉冲响应和幅度特性差异的理论。
3. 利用切比雪夫逼近法(切比雪夫Ⅰ型)设计FIR低通滤波器,根据实验发现:利用切比雪夫Ⅰ型设计FIR低通滤波器得到的幅频特性通带具有较为明显的一致纹波,阻带纹波较小,因此其误差特性,在通带内具有较大的等纹波误差,阻带内具有较小的等纹波误差。
另外,对于同样的设计指标,采用窗函数设计法得到的数字低通滤波器相对于利用切比雪夫逼近法(切比雪夫Ⅰ型)设计FIR低通滤波器,在通带和阻带内均有较大的不等纹波。
八、实验体会通过本次实验主要有如下体会:1.掌握了FIR数字滤波器的设计方法;2.熟悉了MATLAB信号处理工具箱的使用;3.熟悉了利用MATLAB软件进行FIR数字滤波器设计,以及对所设计的滤波器进行分析;4.进一步熟悉了FIR数字滤波器窗函数设计法的MATLAB设计,并熟悉了利用窗函数法设计FIR滤波器的特点;5.进一步熟悉了FIR数字滤波器频率采样设计法的MATLAB设计,并熟悉了利用频率采样法设计FIR滤波器的特点;6.进一步熟悉了FIR数字滤波器切比雪夫逼近设计法的MATLAB设计,并了解了利用切比雪夫逼近法设计FIR滤波器的特点。
九、附录:设计的程序代码1.满足实验要求(1)的程序代码:(1)窗函数设计法之一的代码:WC=0.3*pi;N=21; %给出指标和长度Nhd=ideallp(WC,N); %求出给定指标下的理想脉冲响应Wd1=boxcar(N)';h1=hd.*Wd1; %用矩形窗设计Wd2=hamming(N)';h2=hd.*Wd2; %用汉明窗设计Wd3=blackman(N)';h3=hd.*Wd3; %用布莱克曼窗设计[H1,W]=freqz(h1,1); %求h1频率特性[H2,W]=freqz(h2,1); %求h2频率特性[H3,W]=freqz(h3,1); %求h3频率特性subplot(1,2,1);plot(W,abs(H1),W,abs(H2),':',W,abs(H3),'-.'); %画出幅频特性绝对值legend('Rectanle','Hamming','Blacman'); %标注subplot(1,2,2);plot(W,20*log10(abs(H1)),W,20*log10(abs(H2)),':',W,20*log10(abs(H3)),'-. '); %画对数特性legend('Rectanle','Hamming','Blacman'); %标注(2)频率采样法的代码:N =15;wc=0.3*pi; %给定指标N1=fix(wc/(2*pi/N));N2=N-2*N1-1; %N1为通带点数,N2为阻带长度HK = [ones(1,N1+1),zeros(1,N2),ones(1,N1)]; %理想幅度特性样本序列theta=-pi*[0:N-1]*(N-1)/N; %相位特性样本序列H=HK.*exp(j*theta); %频率特性样本序列h=real(ifft(H)); %求脉冲响应序列。
h应为实序列,故去掉虚部,减小误差[db,mag,pha,grd,w] = myfreqz(h,1);%求滤波器分贝幅频、绝对幅频、相频、群延时delta_w = 2*pi/1000; %1000等分2*piRp = -(min(db(1:wc/delta_w+1))) %求通带波动As = -(max(db((wc+1)/delta_w+1:501))) %求阻带衰减subplot(2,2,1);plot([0:2/N:(2/N)*(N-1) ],HK,'*');grid;%画理想低通样本序列axis([0,1,-0.1,1.1]);ylabel('Hd(k)')subplot(2,2,2);stem([0:N-1],h);title('脉冲响应'); %画所求滤波器脉冲响应axis([0 N -0.1 0.4]);ylabel('h(n)')subplot(2,2,3);plot(w/pi,mag); %画滤波器实际频率响应axis([0,1,-0.2,1.2]);title('幅度响应');ylabel('H(w)');grid;。