您好,欢迎访问三七文档
1《数字信号处理》课程设计报告任课教师:李春明指导教师:李春明学生学号:080701126学生姓名:王冬丽所学专业:电子信息工程2011年06月22日2目录一、设计题目二、设计目的三、设计原理四、实现方法(包括MATLAB算法原理等)五、设计内容及要求(含有设计源程序)六、设计结果及改进建议(画出所有设计曲线,并加以说明)七、回答思考题八、设计体会九、参考文献3一、设计题目设计一、DFT在信号频谱分析中的应用设计八、窗函数法设计FIR数字低通滤波器二、设计目的(一)设计一、DFT在信号频谱分析中应用的原理1.熟悉DFT的性质。2.加深理解信号频谱的概念及性质。3.了解高密度谱与高分辨率频谱的区别。(二)设计八、窗函数法设计FIR数字低通滤波器1.熟悉设计线性相位数字滤波器的一般步骤。2.掌握用窗函数法设计FIR数字滤波器的原理和方法。3.熟悉各种窗函数的作用以及各种窗函数对滤波特性的影响。4.学会根据指标要求选取合适的窗函数。设计低通FIR滤波器的指标:通带最大波动0.25,pRdB,0.2p阻带最小衰减50,sAdB,0.3s三、设计原理(一)设计一、DFT在信号频谱分析中应用的原理所谓信号的频谱分析就是计算信号的傅里叶变换。连续信号与系统的傅里叶分析显然不便于直接用计算机进行计算,使其应用受到限制,而DFT是一种时域和频域均离散化的变换,适合数值运算,成为分析离散信号和系统的有力工具。工程实际中,经常遇到的连续信号Xa(t),其频谱函数Xa(jW)也是连续函数。数字计算机难于处理,因而我们采用DFT来对连续时间信号的傅里叶变换进行逼近,进而分析连续时间信号的频谱。离散傅里叶变换(DFT)定义:设有限长序列x(n)长为N(0nN-1),其离散傅里叶变换是一个长为N的频率有限长序列(0kN-1),其正变换为WnkNNnnxnxDFTkX100kN-14(WeNjNπ2)离散傅里叶变换的实质是:把有限长序列当做周期序列的主值序列进行DFS变换,x(n)、X(k)的长度均为N,都是N个独立值,因此二者具有的信息量是相等的。已知x(n)可以唯一确定X(k),已知X(k)可以唯一确定x(n)。虽然离散傅里叶变换是两个有限长序列之间的变化,但它们是利用DFS关系推导出来的,因而隐含着周期性。(二)设计八、窗函数法设计FIR数字低通滤波器的原理1、设计步骤(1)给定所求的频率响应函数Hd(ejw);(2)求hd(n)=IDTFT[Hd(ejw)];(3)由过渡带宽及阻带最小衰减的要求,选定窗w(n)的形状及N的大小,一般N要通过几次试探而最后确定;(4)求得所设计的FIR滤波器的单位抽样响应h(n)=hd(n)w(n),n=0,1,…,N-1;(5)求H(ejw)=DTFT[h(n)],检验是否满足设计要求,如不满足,则需重新设计。2、理想滤波器的频率响应函数其对应单位脉冲响应为:deeHnhjjdd21。窗函数设计法的基本原理是用有限长单位脉冲响应h(n)逼近,用窗函数w(n)将它截断,并进行加权处理。3、h(n)就是实际设计的FIR数字滤波器的单位脉冲响应序列,其频率响应函数为:njNnjenheH10。如果要求线性相位特性,则h(n)还必须满足:nNhnh1,根据上式中的正负号和长度N的奇偶性又将线性相位滤波器氛围四类。要根据所设计的滤波特性选择其中一类。例如要设计线性相位低通特性,可以选择h(n)=h(N-1-n)这一类,而不能选择h(n)=-h(N-1-n)这一类。4、四种窗口函数(1)矩形窗(2)汉宁窗(升余弦窗)5=0.5三部分矩形窗频谱相加,使旁瓣互相抵消,能量集中在主瓣,旁瓣大大减小,主瓣宽度增加1倍。(3)汉明窗(改进的升余弦窗)它是对汉宁窗的改进,在主瓣宽度(对应第一零点的宽度)相同的情况下,旁瓣进一步减小,可使99.96%的能量集中在主瓣内。(4)布莱克曼窗(三阶升余弦窗)增加一个二次谐波余弦分量,可进一步降低旁瓣,但主瓣宽度进一步增加,增加N可减少过渡带。四、实现方法(包括MATLAB算法原理等)(一)设计一、DFT在信号频谱分析中应用的实现方法1.用MATLAB语言编写计算序列x(n)的N点DFT的m函数文件dft.m。并与MATLAB中的内部函数文件fft.m作比较。2.对离散确定信号()cos(0.48)cos(0.52)xnnn作如下谱分析:截取()xn使()xn成为有限长序列N(0nN-1),(长度N自己选)写程序计;算出()xn的N点DFT()Xk,画出时域序列图xn~n和相应的幅频图()~Xkk。(2)将(1)中()xn补零加长至M点,长度M自己选,(为了比较补零长短的6影响,M可以取两次值,一次取较小的整数,一次取较大的整数),编写程序计算()xn的M点DFT,画出时域序列图和两次补零后相应的DFT幅频图。(3)利用补零DFT计算(1)中N点有限长序列()xn频谱()jXe并画出相应的幅频图()~jXe。3.研究高密度谱与高分辨率频谱。对连续确定信号333()cos(26.510)cos(2710)cos(2910)axtttt以采样频率fs=32kHz对信号()axt采样得离散信号()xn,分析下列三种情况的幅频特性。(1)采集数据()xn长度取N=16点,编写程序计算出()xn的16点DFT()Xk,并画出相应的幅频图()~Xkk(2)采集数据()xn长度N=16点,补零加长至M点(长度M自己选),利用补零DFT计算()xn的频谱1()jXe并画出相应的幅频图1()~jXe。(1)采集数据()xn长度取为M点(注意不是补零至M),编写程序计算出M点采集数据()xn的的频谱2()jXe并画出相应的幅频图2()~jXe。(二)设计八、窗函数法设计FIR数字低通滤波器的实现方法1.熟悉各种窗函数,在MATLAB命令窗下浏览各种窗函数,绘出(或打印)所看到的窗函数图。2.编写计算理想低通滤波器单位抽样响应hd(n)的m函数文件ideal.m。3.编写计算N阶差分方程所描述系统频响函数()jHe的m函数文件fr.m。4.根据指标要求选择窗函数的形状与长度N。5.编写.m程序文件,通过调用ideal.m和fr.m文件,计算你设计的实7际低通FIR滤波器的单位抽样响应h(n)和频率响应()jHe,打印在频率区间[O,π]上的幅频响应特性曲线()~jHe,幅度用分贝表示。6.验证所设计的滤波器是否满足指标要求。五、设计内容及结果(应含有设计源程序)(一)DFT部分程序清单1、计算序列x(n)的N点DFT的m函数文件dft.mfunctionXk=dft(xn,N)iflength(xn)Nxn=[xn,zeros(1,N-length(xn))];endn=0:N-1;fork=0:N-1Xk(1,k+1)=sum(xn.*exp((-1)*j*n*k*(2*pi/N)));end2、对离散确定信号()cos(0.48)cos(0.52)xnnn作如下谱分析参考程序如下:(假设N取10,即0≤n≤9时,编写程序,计算出X(n)的10点DFTXk)n=0:9;xn=cos(0.48*pi*n)+cos(0.52*pi*n);Xk=fft(xn,10);subplot(2,1,1);stem(n,xn);grid;subplot(2,1,2);stem(n,abs(Xk));grid;83、补零DFT算法及零点数目不同时的DFT图形:(假设M取15和M取60,即分别补5个0和50个0,得补零后15点的序列xn1和60点的序列xn2,编写程序,计算出xn1的15点DFTXk1和xn2的60点DFTXk2)n=0:9;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=0:14;xn1=[xn,zeros(1,5)];n2=0:59;xn2=[xn,zeros(1,50)];Xk1=fft(xn1,15);Xk2=fft(xn2,60);subplot(3,1,1);stem(n,xn);grid;subplot(3,1,2);stem(n1,abs(Xk1));grid;subplot(3,1,3);stem(n2,abs(Xk2));grid;94、用补零DFT计算(1)中N点有限长序列()xn频谱()jXe并画出相应的幅频图()~jXe。(假设M取100)n=0:9;xn=cos(0.48*pi*n)+cos(0.52*pi*n);n1=0:99;xn3=[xn,zeros(1,90)];Xk3=fft(xn3,100);plot(n1,abs(Xk3));grid;105研究高密度谱与高分辨率频谱。T=1/(32*10^3);t=(0:15);xn=cos(2*pi*6.5*10^3*t*T)+cos(2*pi*7*10^3*t*T)+cos(2*pi*9*10^3*t*T);Xk=fft(xn,16);subplot(2,1,1);stem(t,xn);grid;subplot(2,1,2);stem(t,abs(Xk));grid;T=1/(32*10^3);t=(0:15);xn=cos(2*pi*6.5*10^3*t*T)+cos(2*pi*7*10^3*t*T)+cos(2*pi*9*10^3*t*T);n1=0:30;xn1=[xn,zeros(1,15)];Xk1=fft(xn1,31);subplot(2,1,1);stem(n1,xn1);grid;subplot(2,1,2);plot(n1,abs(Xk1));grid;11T=1/(32*10^3);t=[0:30];xn=cos(2*pi*6.5*10^3*t*T)+cos(2*pi*7*10^3*t*T)+cos(2*pi*9*10^3*t*T);Xk2=fft(xn,31);subplot(2,1,1);stem(t,xn);grid;subplot(2,1,2);plot(t,abs(Xk2));grid;(二)窗函数设计部分程序清单1、各窗函数图(假设N=67;)N=67;n=0:N-1;wn1=ones(1,N);stem(n,wn1);figure12wn2=hamming(N);stem(n,wn2);figure;wn3=BARTLETT(N);stem(n,wn3);13figure;wn4=Hanning(N);stem(n,wn4);142、计算理想低通滤波器单位冲激响应的源程序function[hd]=ideal(wc,N)q=(N-1)/2;n=0:N-1;m=n-q+eps;hd=sin(wc*m)./(pi*m);3、计算频率响应的源程序function[H]=fr(b,a,w);m=0:length(b)-1;l=0:length(a)-1;num=b*exp(-j*m'*w);den=a*exp(-j*l'*w);H=num./den;4、低通滤波器设计程序wp=0.2*pi;ws=0.3*pi;width=ws-wp;N=ceil(6.6*pi/width)+1;n=0:N-1;a=[1];wc=(ws+wp)/2;hd=ideal(wc,N);wn=(hamming(N))';h=hd.*wn;k=0:500;w=(pi/500)*k;[H]=fr(h,a,w);mag=abs(H);db=-20*log10((mag+eps)/max(mag));15wth=pi/500;rp=max(db(1:1:wp/wth+1))as=round(min(db(ws/wth+1:1:500)))subplot(2,2,1);stem(n,hd);title('理想冲激响应');axis([0N-1-0.10.3]);ylabel('hd');subplot(2,2,2);s
本文标题:数字信号处理终稿
链接地址:https://www.777doc.com/doc-4047762 .html