数字信号处理实验八
数字信号处理实验 实验八

实 验 报 告课程:数字信号处理实 班级: 姓名: 学号:实验项目名称:用窗函数法设计FIR 数字滤波器 实验目的:1、掌握用窗函数法设计FIR 数字滤波器的原理和方法。
2、熟悉线性相位FIR 数字滤波器特性。
3、了解各种窗对滤波特性的影响。
实验仪器、材料及软件:电脑、MATLAB 软件实验步骤:1、复习用窗函数法设计FIR 数字滤波器的内容;2、熟悉产生矩形窗、汉宁窗、哈明窗、三角形窗、布莱克曼窗和凯塞-贝塞尔窗的窗函数子程序及其调用方法。
3、编写Matlab 程序sy8_1.m 用窗函数法设计低通数字FIR 滤波器。
滤波器指标为ωp =0.2π Rp=0.25dB ωs =0.3π As=50dB 。
选择哈明窗。
确定冲激响应,并画出滤波器的频率响应。
4、编写Mtable 程序sy8_2.m 用窗函数法设计数字带通FIR 滤波器。
滤波器指标为:低阻带:ω1s=0.2π,As=60dB 低通带:ω1p=0.35π,Rp=1dB 高通带:ω2p=0.65π,Rp=1dB 高阻带:ω2s=0.8π,As=60dB选用Blackman 窗。
确定冲激响应,并画出滤波器的频率响应。
5、编写程序sy8_3.m 用所设计的滤波器对由三个正弦波分量(频率分别为6、25和48赫兹)构成的一个复合信号采样序列进行仿真滤波处理,并分别绘出滤波前后的波形图,观察总结滤波作用与效果。
实验成绩 指导老师实验源程序代码及截图:function hd=ideal_lp(wc,M);alpha=(M-1)/2;n=[0:1:(M-1)];m=n-alpha+eps;hd=sin(wc*m)./(pi*m);wp=0.2*pi;ws=0.3*pi;tr_width=ws-wp;M=ceil(6.6*pi/tr_width)+1;n=[0:1:M-1];wc=(ws+wp)/2;hd=ideal_lp(wc,M);w_ham=(hamming(M))';h=hd.*w_ham;[H,w]=freqz(h,1,1000,'whole');H=(H(1:1:501))';w=(w(1:1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);grd=grpdelay(h,1,w);delta_w=2*pi/1000;Rp=-(min(db(1:1:wp/delta_w+1)));As=-round(max(db(ws/delta_w+1:1:501)));subplot(1,1,1);subplot(2,2,1);stem(n,hd);title('理想脉冲响应');axis([0 M-1 -0.1 0.3]);xlabel('n');ylabel('hd(n)');subplot(2,2,2);stem(n,w_ham);title('Hamming窗');axis([0 M-1 0 1.1]);xlabel('n');ylabel('w(n)');subplot(2,2,3);stem(n,h);title('实际脉冲响应');axis([0 M-1 -0.1 0.3]);xlabel('n');ylabel('h(n)');subplot(2,2,4);plot(w/pi,db);title('相对标尺的幅度响应');grid; axis([0 1 -100 10]);xlabel('frequency in pi units');ylabel('Decibels'); set(gca,'XTickMode','manual','XTick',[0,0.2,0.3,1]);set(gca,'YTickMode','manual','YTick',[-50,0]);set(gca,'YTickLabelMode','manual','YTickLabels',['50';'0']);204060-0.100.10.20.3理想脉冲响应nh d (n )02040600.51Hamming 窗nw (n )204060-0.100.10.20.3实际脉冲响应nh (n )0.20.31-50相对标尺的幅度响应frequency in pi unitsD e c i b e l sws1=0.2*pi;wp1=0.35*pi; wp2=0.65*pi;ws2=0.8*pi; As=60;tr_width=min((wp1-ws1),(ws2-wp2)) M=ceil(11*pi/tr_width)+1 n=[0:1:M-1];wc1=(ws1+wp1)/2;wc2=(wp2+ws2)/2; hd=ideal_lp(wc2,M)-ideal_lp(wc1,M); w_bla=(blackman(M))'; h=hd.*w_bla;[H,w]=freqz(h,1,1000,'whole'); H=(H(1:1:501))';w=(w(1:1:501))'; mag=abs(H);db=20*log10((mag+eps)/max(mag)); pha=angle(H);grd=grpdelay(h,1,w); delta_w=2*pi/1000;Rp=-(min(db(1:1:wp/delta_w+1)));As=-round(max(db(ws/delta_w+1:1:501))); subplot(1,1,1);subplot(2,2,1);stem(n,hd);title('理想脉冲响应');axis([0 M-1 -0.1 0.3]);xlabel('n');ylabel('hd(n)'); subplot(2,2,2);stem(n,w_bla);title('blackman 窗'); axis([0 M-1 0 1.1]);xlabel('n');ylabel('w(n)'); subplot(2,2,3);stem(n,h);title('实际脉冲响应'); axis([0 M-1 -0.1 0.3]);xlabel('n');ylabel('h(n)');subplot(2,2,4);plot(w/pi,db);title('相对标尺的幅度响应');grid; axis([0 1 -100 10]);xlabel('frequency in pi units');ylabel('Decibels'); set(gca,'XTickMode','manual','XTick',[0,0.2,0.3,1]); set(gca,'YTickMode','manual','YTick',[-50,0]);set(gca,'YTickLabelMode','manual','YTickLabels',['50';'0']); >> sy8_2 tr_width =0.4712 M =75204060-0.100.10.20.3理想脉冲响应nh d (n )20406000.51blackman 窗nw (n )204060-0.100.10.20.3实际脉冲响应nh (n )0.20.31-50相对标尺的幅度响应frequency in pi unitsD e c i b e l s窗函数法设计FIR滤波器的主要特点分析:FIR 滤波器目前常用的设计方法有窗函数法和频率采样法,窗函数法是从时域进行设计,而频率采样法是从频域进行设计。
北理工数字信号处理实验报告

本科实验报告实验名称:数字信号处理实验实验1 利用DFT 分析信号频谱一、实验目的1.加深对DFT 原理的理解。
2.应用DFT 分析信号频谱。
3.深刻理解利用DFT 分析信号频谱的原理,分析现实过程现象及解决办法。
二、实验原理1、DFT 和DTFT 的关系有限长序列()x n 的离散时间傅里叶变换()j X e ω在频率区间(02)ωπ≤≤的N个等分点{(0),(1),(),(1)}x x x k x N-……上的N 个取样值可以由下式表示:2120()|()()01(21)N jkn j Nk k X e x n eX k k N πωωπ--====≤≤--∑由上式可知,序列()x n 的N 点DFT ()X k ,实际上就是()x n 序列的DTFT 在N 个等间隔频率点{(0),(1),(),(1)}X X X k X N -……上样本()X k 。
2、利用DFT 求DTFT方法1:由()X k 恢复出()j X eω的方法如图2.1所示:图 2.1.由 N 点DFT 恢复频谱DTFT 的流程由图2.1所示流程图可知:01()()()(22)j j nkn j n N n n k X e x n eX k W e N ωωω∞∞∞---=-∞=-∞=⎡⎤==-⎢⎥⎣⎦∑∑∑ 由式2-2可以得到12()()()(23)Nj k kx e X k N ωπφω==--∑其中()x φ为内插函数12sin()2()(24)sin()2N j N e N ωωφωω--=•-方法2:然而在实际MATLAB 计算中,上诉插值公式不见得是最好的方法。
由于DFT 是DTFT 的取样值,其相邻的两个频率样本点的间距为2Nπ,所以如果我们增加数据的长度N ,使得得到的DFT 谱线就更加精细,其包络就越接近DTFT 的结果,这样可以利用DFT 来近似计算DTFT 。
如果没有更多的数据,可以通过补零来增加数据长度。
数字信号处理实验报告8

实验报告学院(系)名称:计算机与通信工程学院 姓名 学号 专业班级实验项目实验七 音乐信号处理课程名称 数字信号处理 课程代码实验时间2013年06月07日实验地点 主校区计算机基础实验室批改意见成绩教师签字:一,实验目的1、了解现代音乐信号制作时的时域处理方法。
2、了解现代音乐信号制作时的频域处理方法。
3、处理MATLAB 的常用函数来实现音乐信号的时域及频域的处理。
二,实验原理现代音乐的处理和加工基本上是采用数字处理技术来完成的,大概分以下几个步骤:首先在一个隔音的舞台上,把乐队中各个乐器的声音分别录制在一个多磁道的磁带中的各个独立的磁道上;然后再把各个磁道上的信号进行单独处理,即加入特定的声音效果;最后在一个混音系统中把这些信号进行合成,即录制在一个立体声的双磁道的磁带上。
这里简单地验证语音信号的时域处理方法和频域处理方法。
1. 时域处理方法在音乐厅中听到的悦耳音乐,主要是一次反射声音和混响造成的,而这两种声音实质上都是回声形成的。
在隔音舞台上录制的声音听起来会不自然,这时就需要用数字滤波器来人为地改变录制的信号,以增加回声,使其接近于音乐厅的效果。
回声可以用延迟单元来形成。
直接声音和它延迟了R 个周期的单个回声可以用如下的差分方程来表示:()()()y n x n x n R α=+-,1αp其中1αp 表示回声的衰减系数。
上述的差分方程的传递函数为:()1RH z z α-=+它可以作为一个FIR 滤波器来实现,它实际上是一个梳状的滤波器,其结构图如图4.3.1(a )所示。
为了生成间隔为R 个周期的多重回声,上式应该改写成: ()()12211...N RRRN H z zzzααα-----=++⋅++⋅=RNRN --•-•z1z -1αα 其结构图如图4.3.1(b )所示。
如果反射的次数很多,则N α→0,则多重回声可以用一个IIR 滤波器来实现。
其传递函数为:R z z H -•-=α11)(,|α|<1set(gcf,'color','w');%置图形背景色为白色从图中可以看出,调节K可以改变低频端幅度特性的提升程度,调节α则用来控制低频滤波器的边界频率。
数字信号处理实验报告(自己的实验报告)

数字信号处理实验报告(⾃⼰的实验报告)数字信号处理实验报告西南交通⼤学信息科学与技术学院姓名:伍先春学号:20092487班级:⾃动化1班指导⽼师:张翠芳实验⼀序列的傅⽴叶变换实验⽬的进⼀步加深理解DFS,DFT 算法的原理;研究补零问题;快速傅⽴叶变换(FFT )的应⽤。
实验步骤1. 复习DFS 和DFT 的定义,性质和应⽤;2. 熟悉MATLAB 语⾔的命令窗⼝、编程窗⼝和图形窗⼝的使⽤;利⽤提供的程序例⼦编写实验⽤程序;按实验内容上机实验,并进⾏实验结果分析;写出完整的实验报告,并将程序附在后⾯。
实验内容1. 周期⽅波序列的频谱试画出下⾯四种情况下的的幅度频谱,并分析补零后,对信号频谱的影响。
2. 有限长序列x(n)的DFT(1)取x(n)(n=0:10)时,画出x(n)的频谱X(k) 的幅度;(2)将(1)中的x(n)以补零的⽅式,使x(n)加长到(n:0~100)时,画出x(n)的频谱X(k) 的幅度;(3)取x(n)(n:0~100)时,画出x(n)的频谱X(k) 的幅度。
利⽤FFT进⾏谱分析已知:模拟信号以t=0.01n(n=0:N-1)进⾏采样,求N 点DFT 的幅值谱。
请分别画出N=45; N=50;N=55;N=60时的幅值曲线。
数字信号处理实验⼀1.(1) L=5;N=20;60,7)4(;60,5)3(;40,5)2(;20,5)1()](~[)(~,2,1,01)1(,01,1)(~=========±±=??-+≤≤+-+≤≤=N L N L N L N L n x DFS k X m N m n L mN L mN n mN n x )52.0cos()48.0cos()(n n n x ππ+=)8cos(5)4sin(2)(t t t x ππ+=n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(1)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=5,N=20'); subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');(2)L=5;N=40;n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(2)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=5,N=40');subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');(3)L=5;N=60;n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(3)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=5,N=60'); subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');(4)L=7;N=60;n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(4)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)'); title('DFS of SQ.wave:L=7,N=60'); subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');2. (1)M=10;N=10;n=1:M;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=[0:1:N-1];y1=[xn(1:1:M),zeros(1,N-M)]; figure(1)subplot(2,1,1);stem(n1,y1);xlabel('n'); title('signal x(n),0<=n<=10'); axis([0,N,-2.5,2.5]);Y1=fft(y1);magY1=abs(Y1(1:1:N/2+1));k1=0:1:N/2;w1=2*pi/N*k1;subplot(2,1,2);title('Samples of DTFT Magnitude');stem(w1/pi,magY1); axis([0,1,0,10]);xlabel('frequency in pi units');(2)M=10;N=100;n=1:M;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=[0:1:N-1];y1=[xn(1:1:M),zeros(1,N-M)]; figure(2)subplot(2,1,1);stem(n1,y1);xlabel('n'); title('signal x(n),0<=n<=10'); axis([0,N,-2.5,2.5]);Y1=fft(y1);magY1=abs(Y1(1:1:N/2+1));k1=0:1:N/2;w1=2*pi/N*k1;subplot(2,1,2);title('Samples of DTFT Magnitude');stem(w1/pi,magY1); axis([0,1,0,10]);xlabel('frequency in pi units');(3)M=100;N=100;n=1:M;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=[0:1:N-1];y1=[xn(1:1:M),zeros(1,N-M)]; figure(3)subplot(2,1,1);stem(n1,y1);xlabel('n'); title('signal x(n),0<=n<=100'); axis([0,N,-2.5,2.5]);Y1=fft(y1);magY1=abs(Y1(1:1:N/2+1));k1=0:1:N/2;w1=2*pi/N*k1;subplot(2,1,2);title('Samples of DTFT Magnitude');stem(w1/pi,magY1); axis([0,1,0,10]);xlabel('frequency in pi units');3.figure(1)subplot(2,2,1)N=45;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N); plot(q,abs(y))stem(q,abs(y))title('FFT N=45')%subplot(2,2,2)N=50;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N); plot(q,abs(y))title('FFT N=50')%subplot(2,2,3)N=55;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N);title('FFT N=55')%subplot(2,2,4)N=16;n=0:N-1;t=0.01*n;q=n*2*pi/N;x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N);plot(q,abs(y))title('FFT N=16')function[Xk]=dfs(xn,N)n=[0:1:N-1];k=[0:1:N-1];WN=exp(-j*2*pi/N);nk=n'*k;WNnk=WN.^nk;Xk=xn*WNnk;实验⼆⽤双线性变换法设计IIR 数字滤波器⼀、实验⽬的1.熟悉⽤双线性变换法设计IIR 数字滤波器的原理与⽅法; 2.掌握数字滤波器的计算机仿真⽅法;3.通过观察对实际⼼电图的滤波作⽤,获得数字滤波器的感性知识。
《数字信号处理》实验报告

《数字信号处理》上机实验指导书一、引言“数字信号处理”是一门理论和实验密切结合的课程,为了深入地掌握课程内容,应当在学习理论的同时,做习题和上机实验。
上机实验不仅可以帮助学生深入地理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。
所以,根据本课程的重点要求编写了四个实验。
第一章、二章是全书的基础内容,抽样定理、时域离散系统的时域和频域分析以及系统对输入信号的响应是重要的基本内容。
由于第一、二章大部分内容已经在前期《信号与系统》课程中学习完,所以可通过实验一帮助学生温习以上重要内容,加深学生对“数字信号处理是通过对输入信号的一种运算达到处理目的” 这一重要概念的理解。
这样便可以使学生从《信号与系统》课程顺利的过渡到本课程的学习上来。
第三章、四章DFT、FFT是数字信号处理的重要数学工具,它有广泛的使用内容。
限于实验课时,仅采用实验二“用FFT对信号进行谱分析”这一实验。
通过该实验加深理解DFT的基本概念、基本性质。
FFT是它的快速算法,必须学会使用。
所以,学习完第三、四章后,可安排进行实验二。
数字滤波器的基本理论和设计方法是数字信号处理技术的重要内容。
学习这一部分时,应重点掌握IIR和FIR两种不同的数字滤波器的基本设计方法。
IIR滤波器的单位冲激响应是无限长的,设计方法是先设计模拟滤波器,然后再通过S~Z平面转换,求出相应的数字滤波器的系统函数。
这里的平面转换有两种方法,即冲激响应不变法和双线性变换法,后者没有频率混叠的缺点,且转换简单,是一种普遍应用的方法。
学习完第六章以后可以进行实验三。
FIR滤波器的单位冲激响应是有限长的,设计滤波器的目的即是求出符合要求的单位冲激响应。
窗函数法是一种基本的,也是一种重要的设计方法。
学习完第七章后可以进行实验四。
以上所提到的四个实验,可根据实验课时的多少恰当安排。
例如:实验一可根据学生在学习《信号与系统》课程后,掌握的程度来确定是否做此实验。
若时间紧,可以在实验三、四之中任做一个实验。
数字信号处理实验报告

数字信号处理实验报告引言数字信号处理(Digital Signal Processing,DSP)是一门研究数字信号的获取、分析、处理和控制的学科。
在现代科技发展中,数字信号处理在通信、图像处理、音频处理等领域起着重要的作用。
本次实验旨在通过实际操作,深入了解数字信号处理的基本原理和实践技巧。
实验一:离散时间信号的生成与显示在实验开始之前,我们首先需要了解信号的生成与显示方法。
通过数字信号处理器(Digital Signal Processor,DSP)可以轻松生成和显示各种类型的离散时间信号。
实验设置如下:1. 设置采样频率为8kHz。
2. 生成一个正弦信号:频率为1kHz,振幅为1。
3. 生成一个方波信号:频率为1kHz,振幅为1。
4. 将生成的信号通过DAC(Digital-to-Analog Converter)输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的正弦信号和方波信号的图片)实验分析:通过示波器的显示结果可以看出,正弦信号在时域上呈现周期性的波形,而方波信号则具有稳定的上下跳变。
这体现了正弦信号和方波信号在时域上的不同特征。
实验二:信号的采样和重构在数字信号处理中,信号的采样是将连续时间信号转化为离散时间信号的过程,信号的重构则是将离散时间信号还原为连续时间信号的过程。
在实际应用中,信号的采样和重构对信号处理的准确性至关重要。
实验设置如下:1. 生成一个正弦信号:频率为1kHz,振幅为1。
2. 设置采样频率为8kHz。
3. 对正弦信号进行采样,得到离散时间信号。
4. 对离散时间信号进行重构,得到连续时间信号。
5. 将重构的信号通过DAC输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的连续时间信号和重构信号的图片)实验分析:通过示波器的显示结果可以看出,重构的信号与原信号非常接近,并且能够还原出原信号的形状和特征。
这说明信号的采样和重构方法对于信号处理的准确性有着重要影响。
最新数字信号处理实验报告

最新数字信号处理实验报告一、实验目的本次实验旨在加深对数字信号处理(DSP)理论的理解,并通过实践操作掌握数字信号处理的基本方法和技术。
通过实验,学习如何使用相关软件工具进行信号的采集、分析、处理和重构,提高解决实际问题的能力。
二、实验内容1. 信号采集与分析- 使用数字示波器采集模拟信号,并将其转换为数字信号。
- 利用傅里叶变换(FFT)分析信号的频谱特性。
- 观察并记录信号的时域和频域特性。
2. 滤波器设计与实现- 设计低通、高通、带通和带阻滤波器。
- 通过编程实现上述滤波器,并测试其性能。
- 分析滤波器对信号的影响,并调整参数以优化性能。
3. 信号重构实验- 应用所学滤波器对采集的信号进行去噪处理。
- 使用逆傅里叶变换(IFFT)重构经过滤波处理的信号。
- 比较重构信号与原始信号的差异,评估处理效果。
三、实验设备与材料- 计算机及DSP相关软件(如MATLAB、LabVIEW等)- 数字示波器- 模拟信号发生器- 数据采集卡四、实验步骤1. 信号采集- 连接并设置好数字示波器和模拟信号发生器。
- 生成一系列不同频率和幅度的模拟信号。
- 通过数据采集卡将模拟信号转换为数字信号。
2. 滤波器设计- 在DSP软件中设计所需的滤波器,并编写相应的程序代码。
- 调整滤波器参数,如截止频率、增益等,以达到预期的滤波效果。
3. 信号处理与重构- 应用设计的滤波器对采集的数字信号进行处理。
- 利用IFFT对处理后的信号进行重构。
- 通过对比原始信号和重构信号,评估滤波器的性能。
五、实验结果与分析- 展示信号在时域和频域的分析结果。
- 描述滤波器设计参数及其对信号处理的影响。
- 分析重构信号的质量,包括信噪比、失真度等指标。
六、实验结论- 总结实验中所学习到的数字信号处理的基本概念和方法。
- 讨论实验中遇到的问题及其解决方案。
- 提出对实验方法和过程的改进建议。
七、参考文献- 列出实验过程中参考的书籍、文章和其他资源。
数字信号处理实验指导书(需印刷)

实验一 常见离散信号的MATLAB 产生和图形显示1、实验目的:(1)熟悉MATLAB 应用环境,常用窗口的功能和使用方法。
(2)加深对常用离散时间信号的理解。
(3)掌握简单的绘图命令。
(4)掌握线性卷积的计算机编程方法。
2、实验原理:(1)单位抽样序列⎩⎨⎧=01)(n δ0≠=n n如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ≠=n k n(2)单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n(3)矩形序列 ⎩⎨⎧=01)(n R N 其他10-≤≤N n(4)正弦序列)sin()(ϕ+=wn A n x(5)复正弦序列jwnen x =)((6)指数序列na n x =)((7)线性时不变系统的响应为如下的卷积计算式:∑∞-∞=-=*=m m n h m x n h n x n y )()()()()(3、实验内容及步骤:(1)复习常用离散时间信号的有关内容。
(2)编制程序产生上述6种序列(长度可输入确定,对(4) (5) (6)中的参数可自行选择),并绘出其图形。
(3)已知系统的单位脉冲响应),(9.0)(n u n h n=输入信号)()(10n R n x =,试用卷积法求解系统的输出)(n y ,并绘出n n x ~)(、n n h ~)(及n n y ~)(图形。
4、实验用MATLAB 函数介绍(1)数字信号处理中常用到的绘图指令(只给出函数名,具体调用格式参看help)figure(); plot(); stem(); axis(); grid on; title(); xlabel(); ylabel(); text(); hold on; subplot()(2)离散时间信号产生可能涉及的函数zeros(); ones(); exp(); sin(); cos(); abs(); angle(); real(); imag(); (3)卷积计算可能涉及的函数conv(); length()注:实验过程中也可以使用自己编制的自定义函数,如impseq()、stepseq()等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告实验名称:FIR数字滤波器设计及应用课程名称____数字信号处理________院系部:电气与电子工程专业班级:信息1002学生姓名:王萌学号: ***********同组人:实验台号:指导教师:范杰清成绩:实验日期:华北电力大学一、实验目的加深理解FIR 数字滤波器的时域特性和频域特性,掌握FIR 数字滤波器的设计原理与设计方法,以及FIR 数字滤波器的应用。
二、 实验原理FIR 数字滤波器可以设计成具有线性相位,在数据通信、图像处理、语音信号处理等实际应用领域得到广泛应用。
M 阶FIR 数字滤波器的系统函数为:FIR 数字滤波器的单位脉冲响应h [k ]是长度为M +1的有限长因果序列。
当满足对称条件时,该FIR 数字滤波器具有线性相位。
FIR 数字滤波器设计方法主要有窗口法、频率取样法及优化设计法。
MATLAB 中提供的常用FIR 数字滤波器设计函数有:fir1 窗函数法设计FIR 数字滤波器(低通、高通、带通、带阻、多频带滤波器)fir2 频率取样法设计FIR 数字滤波器:任意频率响应firls FIR 数字滤波器设计:指定频率响应firrcos 升余弦型 FIR 数字滤波器设计intfilt 内插FIR 数字滤波器设计kaiserord 凯塞(Kaiser)窗函数设计法的阶数估计firpm Parks-McClellan 算法实现FIR 数字滤波器优化设计firpmord Parks-McClellan 数字滤波器的阶数选择cremez 复系数非线性相位FIR 等波纹滤波器设计1、 窗口法设计FIR 数字滤波器fir1函数可以很容易地实现FIR 数字滤波器窗口法设计。
可设计低通、高通、带通、带阻滤波器、多频带滤波器。
k Mk z k h z H -=∑=][)(0b = fir1(M, Wc)b = fir1(M, Wc, 'ftype')b = fir1(M, Wc, window)b = fir1(M, Wc, 'ftype', window)b = fir1(M,Wc,‘ ftype',window)输出参数:b 为FIR 数字滤波器的M +1个系数构成的矩阵(即系统的单位脉冲响应)输入参数:M 为FIR 数字滤波器的阶数。
Wc 为3dB 截频:0 < Wc < 1, 1 对应数字频率。
ftype 指定滤波器类型,当ftype 为:’high ’, 指定一个截频为Wc 的高通滤波器;’stop ’ 指定一个带阻滤波器,其阻带截止频率为Wc=[w1,w2];’DC-0’ 在多频带滤波器中,使第一个频带0<w<w1为阻带;’DC-1’ 在多频带滤波器中,使第一个频带0<w<w1为通带。
window 指定窗函数,若不指定,默认为哈明窗。
2. 频率取样法设计FIR 滤波器fir2函数可以实现FIR 数字滤波器的频率取样法设计。
可设计任意形状频率响应的滤波器。
格式如下:b = fir2(M, f, m)b = fir2(M, f, m, window)输出参数:b 为FIR 数字滤波器的M +1个系数构成的矩阵。
输入参数:M 为滤波器的阶数。
f 指定归一化的各频带边界频率,从0到1递增, 1对应于f sam /2,即数字频率Ω=π。
m 指定各频带边界频率处的幅度响应, 因此f 和m 的长度相等,即length(f)=length(a)。
window 指定窗函数,若不指定,默认为哈明窗。
三、实验内容1.分别使用矩形窗、汉明窗、汉宁窗设计一个阶数 M=9的FIR 数字(rad)3π=c Ω低通滤波器,截频为(1)画出各种方法设计的数字滤波器的单位脉冲响应。
(2)画出它们的幅频响应,并比较各滤波器的通带纹波和阻带纹波,有何结论?(3)若输入为 计算各滤波器的输出并画出其波形.解答:(1)b1=fir1(9,1/3,boxcar(10));[H1,w]=freqz(b1,1,512);H1_db=20*log10(abs(H1));b2=fir1(9,1/3,hamming(10));[H2,w]=freqz(b2,1,512);H2_db=20*log10(abs(H2));b3=fir1(9,1/3,hanning(10));[H3,w]=freqz(b3,1,512);H3_db=20*log10(abs(H3));subplot(4,1,1); stem(b1);title('矩形窗得到的FIR 滤波器脉冲响应')subplot(4,1,2); stem(b2);title('哈明窗得到的FIR 滤波器脉冲响应')subplot(4,1,3); stem(b3);title('汉宁窗得到的FIR 滤波器脉冲响应')subplot(4,1,4); plot(w,H1_db,w,H2_db,'r--',w,H3_db,'y--');title('Frequency response')legend('rectangular window','hamming window','hanning window') grid on)2cos( )4cos(21][k k k x ππ++=(3)k=0:127;x=1+2*cos(pi/4*k)+cos(pi/2*k);b1=fir1(9,1/3,boxcar(10));H1=freqz(b1,x,128);b2=fir1(9,1/3,hamming(10));H2=freqz(b2,x,128);b3=fir1(9,1/3,hanning(10));H3=freqz(b3,x,128);subplot(3,1,1); stem(H1);title('矩形窗得到的FIR滤波器输出') subplot(3,1,2); stem(H2);title('哈明窗得到的FIR滤波器输出') subplot(3,1,3); stem(H3);title('汉宁窗得到的FIR滤波器输出')2.利用频率抽样方法设计FIR 数字低通滤波器,并绘出衰耗特性。
已知阶数M=15,给定指标为:改变Ad[4]的值,观察该FIR 低通数字滤波器的衰耗特性的变化。
f=[0 1/(7*pi) 2/(7*pi) 3/(7*pi) 4/(7*pi) 5/(7*pi) 6/(7*pi) 1]; m=[1 1 1 1 0.389 0 0 0];b=fir2(15,f,m);[h,w] = freqz(b, 1, 128);legend('Ideal', 'fir2 Designed')figure(1);plot(f,m,w/pi,abs(h)) ;gridtitle('Comparison of Frequency Response Magnitudes')figure(2); H_db=20*log10(abs(h));plot(w,H_db);⎪⎩⎪⎨⎧====7,6,504389.03,2,1,01][m m m m A d3.利用频率抽样方法设计FIR 数字带通滤波器,并绘出衰耗特性。
已知阶数M=15,给定指标为:改变Ad[2]或Ad[6]的值,观察该FIR 带通数字滤波器的衰耗特性的变化。
f=[0 1/(7*pi) 2/(7*pi) 3/(7*pi) 4/(7*pi) 5/(7*pi) 6/(7*pi) 1];m=[0 0 0.456 1 1 1 0.456 0];b=fir2(15,f,m);[h,w] = freqz(b, 1, 128);legend('Ideal', 'fir2 Designed')figure(1);plot(f,m,w/pi,abs(h)) ;gridtitle('Comparison of Frequency Response Magnitudes')figure(2);H_db=20*log10(abs(h));plot(w,H_db); grid⎪⎩⎪⎨⎧====5,4,316,2456.07,1,000][m m m m A d%改变A d[2]的值:f=[0 1/(7*pi) 2/(7*pi) 3/(7*pi) 4/(7*pi) 5/(7*pi) 6/(7*pi) 1]; m=[0 0 0.20 1 1 1 0.456 0];b=fir2(15,f,m);[h,w] = freqz(b, 1, 128);legend('Ideal', 'fir2 Designed')figure(1);plot(f,m,w/pi,abs(h)) ;gridtitle('Comparison of Frequency Response Magnitudes') figure(2);H_db=20*log10(abs(h));plot(w,H_db);grid4. 设计一窄带通FIR数字滤波器,通带中心频率带宽不大于。
(1)利用fir1函数和kaiser窗设计该滤波器。
(2)利用fir3函数设计该滤波器,达到fir1函数的设计效果。
(3)分别画出上述两个滤波器的实现结构,并比较其经济性。
b1=fir1(9, [0.45 0.55]/pi, kaiser(10,0.5));[H1,w]=freqz(b1,1,512);H1_db=20*log10(abs(H1));subplot(2,1,1); stem(b1);title('矩形窗得到的FIR滤波器脉冲响应¦')subplot(2,1,2); plot(w,H1_db);title('矩形窗设计的窄带通滤波器');gridf=[0 9/(20*pi) 9/(20*pi) 11/(20*pi) 11/(20*pi) 1];m=[0 0 1 1 0 0];b=fir2(41,f,m);[h,w] = freqz(b, 1, 128);legend('Ideal', 'fir2 Designed')figure(1);plot(f,m,w/pi,abs(h)) ;gridtitle('Comparison of Frequency Response Magnitudes') figure(2);H_db=20*log10(abs(h));plot(w,H_db);四、思考题1.为什么通信应用中需要线性相位?相位失真将会对信号产生什么影响?答:线性相位系统稳定;相位失真会部分导致使信号失真2.为什么FIR滤波器无需考虑稳定性问题?答:单位脉冲响应是有限长的3.在相同的设计指标时,为何FIR数字滤波器的阶数远高于IIR数字滤波器的阶数?答:FIR是有限长的4.线性相位的条件是什么?答:满足h(n)=+或-h(N-1-n)5.在FIR窗口法设计中,为何采用不同特性的窗函数?选用窗函数的依据是什么?答:在满足阻带衰减的前提下,尽可能选择主瓣宽度小的窗函数,减少衰减6.在频率取样法中,如果阻带衰耗不够,采取什么措施?答:在通带和阻带间设置幅度非0过渡样本点7.窗口法和频率取样法的优缺点是什么?答:窗口法的优点是简单,有闭合的公式可用,性能及参数都有表格资料可查,计算程序简单,较为实用。