1、云南大学信息学院 数字信号处理实验报告1实验二 离散时间系统的时域分析实验室名称: 实验时间: 姓 名: 学号: 专业: 指导教师:成绩教师签名: 年 月 日一、实验目的1.利用 MATLAB 仿真简单的离散时间系统,研究其时域特性;2.对线性时不变系统进行重点分析研究,掌握其特性。二、实验内容2.1 对 M=2,运行上述程序,生成输入 xn=s1n+s2n的输出信号。输入 xn的哪个分量被该离散时间系统抑制?2.2 若线性时不变系统由 yn=0.5(xn+xn-1)变成 yn=0.5(xn-xn-1),对输入 xn=s1n+s2n的影响是什么?2.4 修改程序 P2.1,用一个长度为 101
2、、最低频率为 0、最高频率为 0.5 的扫频正弦信号作为输入信号(见程序 P1.7) ,计算其输出信号。你能用该系统对扫频信号的响应来解释习题 Q2.1 和习题 Q2.2 的结果吗?2.7 运行程序 P2.3,对由加权输入得到的 yn与在相同权系数下输出 y1n和y2n相加得到的 ytn进行比较,这两个序列是否相等?该系统是线性系统吗?2.12 运行程序 P2.4 并比较输出序列 yn和 ydn-10。这两个系列之间有什么关系?该系统是时不变系统吗?2.19 运行程序 P2.5,生成式( 2.15)所给离散时间系统的冲激响应。2.20 修改程序 P2.5,产生如下因果线性时不变系统的冲激响应的
3、前 45 个样本:362.04.017.0 nynyny .559 xxx2.23 运行程序 P2.6,计算输出序列 yn和 y2n以及差值信号 dn。Yn 和 y2n相等吗?2.28 运行程序 P2.7,对序列 hn和 xn求卷积,生成 yn,并用滤波器 hn对输入 xn滤波,求得 y1n。yn和 y1n有差别吗?为什么要使用对 xn补零后得到的 x1n作为输入来产生 y1n?三、实验器材及软件1. 微型计算机 1 台2. MATLAB 7.0 软件云南大学信息学院 数字信号处理实验报告2四、实验原理1.三点平滑滤波器是一个线性时不变的有限冲激响应系统,将输出延时一个抽样周期,可得到三点平滑
4、滤波器的因果表达式,生成的滤波器表示为 )21(31ynxnx归纳上式可得 10Mk此式表示了一个因果 M 点平滑 FIR 滤波器。2.对线性离散时间系统,若 y1n和 y2n分别是输入序列 x1n和 x2n的响应,则输入 21nxnx的输出响应为 21yy则系统称为线性系统。3.对于离散时不变系统,若 y1n是 x1n的响应,则输入xn=x1n-n0的输出响应为yn=y1n-n0则称系统为时不变系统。五、实验步骤2.1 首先利用 MATLAB 产生一个高频正弦信号和一个低频正弦信号,利用两个信号生成一个输入信号,接着利用 filter 函数生成输出信号,最后利用 plot 函数画出4个信号,
5、再对输出信号进行分析。2.2 在 2.1 的基础上编写 num=ones1 -1,运行程序得出结论。2.4 分别用扫频信号通过 2.1、2.2 的系统,进行比较分析。2.7 分别计算出 y1n和 y2n,得到 ytn;再利用 filter 函数求得 yn,计算差值输出,比较 yn和 ytn。2.20 根据 impz 函数的调用方式,得到num = 0.9 -0.45 0.35 0.002 den = 1 0.71 -0.46 -0.62,再调用 impz 函数,画出图像。2.23 首先产生序列 xn,把它作为四阶系统的输入,生成 yn。然后将同样的输入 xn应用到第一级得到 y1n。接着用相同
6、的方法得到 y2n。最后求得两者的差,并画出图像。2.28 分别用 conv 函数和 filter 函数求得输出,进行图像比较。云南大学信息学院 数字信号处理实验报告11六、实验记录(数据、图表、波形、程序等)2.1 对 M=2,运行上述程序,生成输入 xn=s1n+s2n的输出信号。输入 xn的哪个分量被该离散时间系统抑制?% Program P2_1clf;n = 0:100;s1 = cos(2*pi*0.05*n); s2 = cos(2*pi*0.47*n); x = s1+s2;M = input(滤波器所需的长度=);num = ones(1,M);y = filter(num,
7、1,x)/M;subplot(2,2,1);plot(n, s1);axis(0, 100, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(信号 #1);subplot(2,2,2);plot(n, s2);axis(0, 100, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(信号 #2);subplot(2,2,3);plot(n, x);axis(0, 100, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(输入信号);subplot(2,2,4);plot(n, y);axis(
8、0, 100, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(输出信号); axis;0 10 20 30 40 50 60 70 80 90 10-2-1.5-1-0.500.511.52于于于于 n于于于于 #10 10 20 30 40 50 60 70 80 90 10-2-1.5-1-0.500.511.52于于于于 n于于于于 #20 10 20 30 40 50 60 70 80 90 10-2-1.5-1-0.500.511.52于于于于 n于于于于于于0 10 20 30 40 50 60 70 80 90 10-2-1.5-1-0.500
9、.511.52于于于于 n于于于于于于云南大学信息学院 数字信号处理实验报告12.2 若线性时不变系统由 yn=0.5(xn+xn-1)变成 yn=0.5(xn-xn-1),对输入 xn=s1n+s2n的影响是什么?在 M=2 的基础上,线性时不变系统由 yn=0.5(xn+xn-1)变成 yn=0.5(xn-xn-1),则在 MATLAB 上,程序 P2.1 更改:num 可以直接表示为 num=1 -1,通用的表达式为:num=1 -ones(1,M-1)。得到图像为0 50 100-2-1012于 于 于 于 n于于于 于 #10 50 100-2-1012于 于 于 于 n于于于 于
10、#20 50 100-2-1012于 于 于 于 n于于于 于 于 于0 50 100-2-1012于 于 于 于 n于于于 于 于 于2.4 修改程序 P2.1,用一个长度为 101、最低频率为 0、最高频率为 0.5 的扫频正弦信号作为输入信号(见程序 P1.7) ,计算其输出信号。你能用该系统对扫频信号的响应来解释习题 Q2.1 和习题 Q2.2 的结果吗?%扫频信号通过 2.1 系统:clf;n = 0:100;s1 = cos(2*pi*0.05*n); s2 = cos(2*pi*0.47*n); a = pi/2/100;b = 0;arg = a*n.*n + b*n;x =
11、cos(arg); M = input(滤波器所需的长度=);num = ones(1,M);y = filter(num,1,x)/M;subplot(2,2,1);plot(n, s1);axis(0, 100, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(信号 #1);subplot(2,2,2);云南大学信息学院 数字信号处理实验报告1plot(n, s2);axis(0, 100, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(信号 #2);subplot(2,2,3);plot(n, x);axis(0, 1
12、00, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(输入信号);subplot(2,2,4);plot(n, y);axis(0, 100, -2, 2);xlabel(时间 序号 n); ylabel(振幅);title(输出信号); axis;0 50 100-2-1012于 于 于 于 n于于于 于 #10 50 100-2-1012于 于 于 于 n于于于 于 #20 50 100-2-1012于 于 于 于 n于于于 于 于 于0 50 100-2-1012于 于 于 于 n于于于 于 于 于%扫频信号通过 2.2 系统:clf;n = 0:10
13、0;s1 = cos(2*pi*0.05*n); s2 = cos(2*pi*0.47*n); a = pi/2/100;b = 0;arg = a*n.*n + b*n;x = cos(arg); M = input(滤波器所需的长度=);num = 1 -1;y = filter(num,1,x)/M;云南大学信息学院 数字信号处理实验报告1subplot(2,2,1);plot(n, s1);axis(0, 100, -2, 2);xlabel(时间序号 n); ylabel(振幅);title(信号 #1);subplot(2,2,2);plot(n, s2);axis(0, 100,
14、 -2, 2);xlabel(时间序号 n); ylabel(振幅);title(信号 #2);subplot(2,2,3);plot(n, x);axis(0, 100, -2, 2);xlabel(时间序号 n); ylabel(振幅);title(输入信号);subplot(2,2,4);plot(n, y);axis(0, 100, -2, 2);xlabel(时间序号 n); ylabel(振幅);title(输出信号); axis;0 50 100-2-1012于于于于 n于于于于 #10 50 100-2-1012于于于于 n于于于于 #20 50 100-2-1012于于于于
15、n于于于于于于0 50 100-2-1012于于于于 n于于于于于于2.7 运行程序 P2.3,对由加权输入得到的 yn与在相同权系数下输出 y1n和y2n相加得到的 ytn进行比较,这两个序列是否相等?该系统是线性系统吗?% Program P2_3clf;n = 0:40;a = 2;b = -3;x1 = cos(2*pi*0.1*n);x2 = cos(2*pi*0.4*n);云南大学信息学院 数字信号处理实验报告1x = a*x1 + b*x2;num = 2.2403 2.4908 2.2403;den = 1 -0.4 0.75;ic = 0 0;y1 = filter(num,
16、den,x1,ic); y2 = filter(num,den,x2,ic);y = filter(num,den,x,ic);yt = a*y1 + b*y2; d = y - yt;subplot(3,1,1)stem(n,y);ylabel(振幅 );title(加权输入: a cdot x_1n + b cdot x_2n的输出);subplot(3,1,2)stem(n,yt);ylabel(振幅 );title(加权输出: a cdot y_1n + b cdot y_2n);subplot(3,1,3)stem(n,d);xlabel(时间 序号 n);ylabel(振幅 );t
17、itle(差信号);0 5 10 15 20 25 30 35 40-50050于于于于于于: a x1n + b x2n于于于0 5 10 15 20 25 30 35 40-50050于于于于于于: a y1n + b y2n0 5 10 15 20 25 30 35 40-505x 10-15于于于于 n于于于于于2.12 运行程序 P2.4 并比较输出序列 yn和 ydn-10。这两个系列之间有什么关系?该系统是时不变系统吗?% Program P2_4clf;n = 0:40; D = 10;a = 3.0;b = -2;x = a*cos(2*pi*0.1*n) + b*cos(2
18、*pi*0.4*n);xd = zeros(1,D) x;num = 2.2403 2.4908 2.2403;云南大学信息学院 数字信号处理实验报告1den = 1 -0.4 0.75;ic = 0 0;y = filter(num,den,x,ic);yd = filter(num,den,xd,ic);d = y - yd(1+D:41+D);subplot(3,1,1)stem(n,y);ylabel(振幅 ); title(输出 yn); grid;subplot(3,1,2)stem(n,yd(1:41);ylabel(振幅 );title(由于延 时输入 xn, num2str(
19、D),的输出 ); grid;subplot(3,1,3)stem(n,d);xlabel(时间 序号 n); ylabel(振幅);title(差值信号); grid;0 5 10 15 20 25 30 35 40-50050于于于于 yn0 5 10 15 20 25 30 35 40-50050于于于于于于于于xn10于于于0 5 10 15 20 25 30 35 40-101于于于于n于于于于于于2.19 运行程序 P2.5,生成式( 2.15)所给离散时间系统的冲激响应。% Program P2_5clf;N = 40;num = 2.2403 2.4908 2.2403;den
20、 = 1 -0.4 0.75;y = impz(num,den,N);stem(y);xlabel(时间 序号 n); ylabel(振幅);title(冲激响应); grid;0 5 10 15 20 25 30 35 40-3-2-101234于于于于n于于于于于于云南大学信息学院 数字信号处理实验报告10 5 10 15 20 25 30 35 40 45-1.5-1-0.500.511.52于于于于n于于于于于于2.20 修改程序 P2.5,产生如下因果线性时不变系统的冲激响应的前 45 个样本:36.04.017.0 nynyny 2.9 xxxclf;N = 45;num = 0.
21、9 -0.45 0.35 0.002;den = 1 0.71 -0.46 -0.62;y = impz(num,den,N);stem(y);xlabel(时间 序号 n); ylabel(振幅);title(冲激响应); grid;2.23 运行程序 P2.6,计算输出序列 yn和 y2n以及差值信号 dn。Yn 和y2n相等吗?% Program P2_6clf;x = 1 zeros(1,40);n = 0:40;den = 1 1.6 2.28 1.325 0.68;num = 0.06 -0.19 0.27 -0.26 0.12;y = filter(num,den,x);num1
22、 = 0.3 -0.2 0.4;den1 = 1 0.9 0.8;num2 = 0.2 -0.5 0.3;den2 = 1 0.7 0.85;y1 = filter(num1,den1,x);y2 = filter(num2,den2,y1);d = y - y2;subplot(3,1,1);stem(n,y);ylabel(振幅 );title(四阶实现的输出); grid;subplot(3,1,2);stem(n,y2)ylabel(振幅 );title(级联实现的输出); grid;subplot(3,1,3);stem(n,d)xlabel(时间 序号 n);ylabel(振幅 )
23、;title(差值信号); grid;云南大学信息学院 数字信号处理实验报告10 5 10 15 20 25 30 35 40-101于于于于于于于于于0 5 10 15 20 25 30 35 40-101于于于于于于于于于0 5 10 15 20 25 30 35 40-0.500.5x 10-14于于于于n于于于于于于2.28 运行程序 P2.7,对序列 hn和 xn求卷积,生成 yn,并用滤波器 hn对输入 xn滤波,求得 y1n。yn和 y1n有差别吗?为什么要使用对 xn补零后得到的 x1n作为输入来产生 y1n?% Program P2_7clf;h = 3 2 1 -2 1 0
24、 -4 0 3;x = 1 -2 3 -4 3 2 1; y = conv(h,x);n = 0:14;subplot(2,1,1);stem(n,y);xlabel(时间 序号 n); ylabel(振幅);title(用卷积得到的输出 ); grid;x1 = x zeros(1,8);y1 = filter(h,1,x1);subplot(2,1,2);stem(n,y1);xlabel(时间 序号 n); ylabel(振幅);title(由滤波生成的输出); grid;0 2 4 6 8 10 12 14-20-1001020于于于于n于于于于于于于于于于0 2 4 6 8 10 12 14-20-1001020于于于于n于于于于于于于于于于
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。