数字信号处理实验报告 MATLAB_第1页
数字信号处理实验报告 MATLAB_第2页
数字信号处理实验报告 MATLAB_第3页
数字信号处理实验报告 MATLAB_第4页
数字信号处理实验报告 MATLAB_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、数字信号处理实验报告 姓名: 班级:09电信一班 学号:实验报告(一)姓名: 学号: 实验日期:8-12周实验题目:离散信号的时域运算与变换实验目的:1. 熟悉MATLAB编程特点 2. 了解离散序列的延迟、相加、相乘及平移、反折、及倒相变换实验内容:1.设计一个实现序列移位的函数 将序列x(n)1,2,3,4,0,7,其中n0:5的每一个样本都移动3个周期,移位后的序列y(n)=x(n-3)2.序列的奇偶分解将序列x(n)0,1,2,3,4,3,2,1,0,其中n-3:5进行奇偶分解 用函数stem显示其奇偶序列3.序列的加法运算 设x1(n)1,0.5,0.3,0.4其中n=-1:2 ;x

2、2(n)0.2,0.3,0.4,0.5,0.8,1其中n=-2:3 4.实现2中序列的翻转实验地点:4305实验结果:1.将如下文件另存为:segshift.m文件,function y,n = segshift(x,n,n0)% 功能 y(n) = x(n-n0)% y,n = segshift(x,n,n0)n = n+n0; y = x;在命令窗口输入:x=1,2,3,4,0,7;n=0:5;n0=3;y,n = segshift(x,n,n0)按ENTER键得到如下结果,y = 1 2 3 4 0 7n = 3 4 5 6 7 8再在命令窗口输入:y,n = segshift(x,n,

3、n0);n=0:5;n0=3;stem(n,y)按ENTER键出图如下图1。2. 在命令窗口输入: m = -fliplr(n);m1 = min(m,n); m2 = max(m,n); m = m1:m2;x1 = zeros(1,(length(m)-length(n),x;xe = 0.5*(x1 + fliplr(x1)xo = 0.5*(x1 - fliplr(x1)subplot(1,2,1),stem(m,xe),ylabel(xe),subplot(1,2,2),stem(m,xo),ylabel(xo),得下图二, 图二图一3将如下文件另存为:sigadd.m文件funct

4、ion y,n = sigadd(x1,n1,x2,n2)% 实现 y(n) = x1(n)+x2(n)% -% y,n = sigadd(x1,n1,x2,n2)% y = 在包含n1 和 n2 的n点上求序列和, % x1 = 在 n1上的第一序列% x2 = 在 n2上的第二序列(n2可与 n1不等)n = min(min(n1),min(n2):max(max(n1),max(n2); % y(n)的长度y1 = zeros(1,length(n); y2 = y1; % 初始化y1(find(n>=min(n1)&(n<=max(n1)=1)=x1; % 具有y的

5、长度的 x1 y2(find(n>=min(n2)&(n<=max(n2)=1)=x2; % 具有y的长度的x2 y = y1+y2; 在命令窗口输入:x1=1,0.5,0.3,0.4;n1=-1:2;x2=0.2,0.3,0.4,0.5,0.8,1;n2=-2:3; y,n = sigadd(x1,n1,x2,n2)得:y = 0.2000 1.3000 0.9000 0.8000 1.2000 1.0000n =-2 -1 0 1 2 3再在命令窗口输入:x1=1,0.5,0.3,0.4;n1=-1:2;x2=0.2,0.3,0.4,0.5,0.8,1;n2=-2:3;

6、y,n=sigadd(x1,n1,x2,n2) ;stem(n,y),得到下图:4. 将如下文件另存为.m文件n=-1:10;x=sin(0.4*pi*n);y=fliplr(x);n1=-fliplr(n);subplot(2,1,1),stem(n,x) subplot(2,1,2),stem(n1,y在命令窗口键入:n=-1:10;x=sin(0.4*pi*n);y=fliplr(x);n1=-fliplr(n);subplot(2,1,1),stem(n,x)subplot(2,1,2),stem(n1,y)得到如右图,结果分析:结果如上总结:运用MATLAB实现离散信号的时域运算与变

7、换,主要包括两步,首先赋初值然后再调用函数,在带哦用函数时,注意不要把function复制进来了。实验报告(二)姓名: 学号: 实验日期:8-12周实验题目:因果离散线性系统的时域分析实验目的:实现由差分方程构成的数字滤波器: 实验内容:1.用两种不同的程序计算数字滤波器的单位抽样响应,给定差分方程:y(n)-y(n-1)+0.9y(n-2)=x(n)a.编制文件himpz.m,实现数字滤波器的单位抽样响应b. 编制函数文件hfilter.m,实现数字滤波器的单位抽样响应2.给定计算此数字滤波器的单位阶跃响应,并判断系统的稳定性。用stem(n,y)画出相应的图形。实验地点:4305实验结果:

8、1.(1)在命令窗口键入:a=1,-1,0.9;b=1; impz(b,a) title('单位抽样响应'),得到右图:(2)在命令窗口键入:a=1,-1,0.9;b=1; impz(b,a) title(单位冲激响应) (2)hfilter.ma=1,-1,0.9;b=1; % 求h(n)x=impuls (0,-10,100);n=-10:100;h=filter(b,a,x);subplot(2,1,1);stem(n,h)axis(-10,100,-1.1,1.1) title(单位激响应);xlabel(n);ylabel(h(n)得到右图 2.在命令窗口输入:a=1

9、,-1,0.9;b=1;x=zeros(1,10),ones(1,101);n=-10:100;s=filter(b,a,x);subplot(2,1,2);stem(n,s)axis(-10,100,-.5,2.5)得到右图阶跃响应: 在命令窗口键入:sum(abs(h)z=roots(a);magz=abs(z)程序运行结果:ans = 14.8337magz = 0.9487 0.9487h(n)累加的结果是一个实数,说明系统稳定;magz说明极点的模小于1,所以系统稳定。结果分析:结果如上总结:用MATLAB可以实现求冲击响应及阶跃响应。 实验报告(三)姓名: 学号: 实验日期:8-1

10、2周实验题目:DFT变换的性质及应用实验目的:1.实现信号的DFT变换 2. 了解DFT 应用:(1)用DFT计算卷积 (2)用DFT 对序列进行谱分析 实验内容:1.用三种不同的DFT程序计算的傅立叶变换X(k),并比较三种程序的计算机运行时间2.给定,利用DFT实现两序列的线性卷积运算,并研究DFT的点数与混叠的关系,并用stem(n,y)画出相应的图形。3. 讨论序列补零及增加数据长度对信号频谱的影响(1)求出序列x(n)=cos(0.48 n)+cos(0.52 n)基于有限个样点n=10的频谱(2) 求n=100时,取x(n)的前10个,后90个设为零,得到x(n)的频谱(3) 增加

11、x(n)有效的样点数,取100个样点得到x(n)的频谱实验地点:4305实验结果:1.(1)在命令窗口输入:tic; am,pha=dft1(x)N=length(x);w=exp(-j*2*pi/N);for k=1:Nsum=0;for n=1:N sum=sum+x(n)*w(k-1)*(n-1); end am(k)=abs(sum); pha(k)=angle(sum);end;toc得到如下结果:am = Columns 1 through 11 120.0000 41.0066 20.9050 14.3996 11.3137 9.6215 8.6591 8.1567 8.0000

12、 8.1567 8.6591 Columns 12 through 16 9.6215 11.3137 14.3996 20.9050 41.0066pha = Columns 1 through 11 0 1.7671 1.9635 2.1598 2.3562 2.5525 2.7489 2.9452 3.1416 -2.9452 -2.7489 Columns 12 through 16 -2.5525 -2.3562 -2.1598 -1.9635 -1.7671Elapsed time is 0.047000 seconds.(2)在命令窗口输入:tic;am,pha=dft2(x)N

13、=length(x);n=0:N-1;k=0:N-1;w=exp(-j*2*pi/N);nk=n*k;wnk=w.(nk);Xk=x*wnk;am= abs(Xk);pha=angle(Xk);toc得到如下结果:Elapsed time is 0.020000 seconds.(3) 在命令窗口输入:tic;amfft,phafft=dft3(x)N=length(x);Xk=fft(x);amfft= abs(Xk);phafft=angle(Xk);toc得到如下结果Elapsed time is 0.016000 seconds.所以,第三种时间最小,第一种时间最多。2.在命令窗口键入

14、:%N1+N2-1=23<32N=32;x=0:15;xx=x,zeros(1,16) ;h=ones(1,8),zeros(1,24);Xk=fft(xx,N);Hk=fft(h,N);Yk=Xk.* Hk;y=ifft(Yk,N);n=0:N-1;stem(n,y);hold on%N=N1=16N1=16;x1=0:15;h1=ones(1,8),zeros(1,8);Xk1=fft(x1,N1);Hk1=fft(h1,N1);Yk1=Xk1.* Hk1;y1=ifft(Yk1,N1);n1=0:N1-1;stem(n1,y1,.,m);得到下图,3.(1) figure(1):在

15、命令窗口键入:n=0:1:99;x=cos(0.48*pi*n)+cos(0.52*pi*n);n1=0:1:9;y1=x(1:1:10);subplot(2,1,1);stem(n1,y1);title('signal x(n), 0 <= n <= 9');xlabel('n')axis(0,10,-2.5,2.5)Y1=fft(y1);magY1=abs(Y1(1:1:6);k1=0:1:5;w1=2*pi/10*k1;subplot(2,1,2);stem(w1/pi,magY1);title(10点DFT');xlabel('

16、;w/pi'),axis(0,1,0,10)得到下图:figure(1)(2)在命令窗口键入:n3=0:1:99;y3=x(1:1:10) zeros(1,90); 添90个零。得到100个数据subplot(2,1,1);stem(n3,y3);title('signal x(n), 0 <= n <= 9 + 90 zeros');xlabel('n')axis(0,100,-2.5,2.5)Y3=fft(y3);magY3=abs(Y3(1:1:51);k3=0:1:50;w3=2*pi/100*k3;subplot(2,1,2);st

17、em(w3/pi,magY3);title('100点DFT');xlabel('w/pi')axis(0,1,0,10)得到下图figure(2)(3)在命令窗口键入:n=0:1:99;x=cos(0.48*pi*n)+cos(0.52*pi*n);subplot(2,1,1);stem(n,x);title('signal x(n), 0 <= n <= 99');xlabel('n')axis(0,100,-2.5,2.5)X=fft(x);magX=abs(X(1:1:51);k=0:1:50;w=2*pi/1

18、00*k;subplot(2,1,2);stem(w/pi,magX);title('100点DFT);xlabel('w/pi')axis(0,1,0,60)得到下图figure(3)结果分析:结果如上总结:利用matlab7.0可以实现DFT变换,并绘制图形。实验报告(四)姓名: 学号: 实验日期:8-12周实验题目:数字低通巴特沃斯滤波器的设计实验目的:掌握IIR数字滤波器的设计方法实验内容:1.设计一个低通巴特沃斯模拟滤波器,绘制滤波器的的幅频响应及零极点图。指标如下:通带截止频率:WP1000HZ, 通带最大衰减:RP=3dB阻带截止频率:Ws2000HZ,

19、阻带最小衰减:Rs=40 dB2. 用冲激响应不变法和双线性变换法将一模拟低通滤波器转换为数字低通滤波器并图释H(S)和H(Z),采样频率Fs1000Hz实验地点:4305实验结果:1.在命令窗口输入:subplot(1,2,1) wp=1000;ws=2000;rp=3;rs=40; N,wn=buttord(wp,ws,rp,rs,'s') B,A=butter(N,wn,'s'); Z,P,K=buttap(N); h,w=freqs(B,A,1024); plot(w,20*log10(abs(h)/abs(h(1)grid;xlabel('频率

20、Hz');ylabel('幅度(dB)')title('巴特沃斯幅频响应') axis(0,3000, -40,3);line(0,2000,-3,-3);line(1000,1000,-40,3);subplot(1,2,2) p=P'q=Z'x=max(abs(p,q);x=x+0.1;y=x;axis(-x,x,-y,y);axis('square')plot(-x,x,0,0);hold onplot(0,0,-y,y);hold onplot(real(p),imag(p),'x')得到如下结果:

21、N = 7wn =1.0359e+0032:在命令窗口键入:b=1;a=1,1000;w=0:1000*2*pi;h,w=freqs(b,a,w);subplot(2,2,1)plot(w/2/pi,abs(h)/abs(h(1);grid;title('模拟频率响应');xlabel('f(Hz)');ylabel('幅度'); Fs=1000;bz,az=impinvar(b,a,Fs); bzl,azl=bilinear(b,a,Fs); wz=0:pi/512:pi;hz1=freqz(bz,az,wz);hz2=freqz(bzl,azl,wz);subplot(2,2,2);plot(wz/pi,abs(hz1)/hz1(1);grid; axis(0,1,0,1) title('冲激响应不变法数字频率响应') subplot(2,2,3);plot(wz/pi,abs(hz2)/hz2(1);grid; axis(0,1,0,1) title('双线性变换法数字频率响应'); 得到结果如右图: 结果分析:结果如上总结:matlaB可以实现低通数字巴特沃斯滤波器的设计实验报告(五)姓名: 学号: 实验日期:8-12周实验题目:窗函数设计FIR滤波

温馨提示

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

评论

0/150

提交评论