收藏 分享(赏)

实验一 离散时间信号的表示与运算.doc

上传人:tkhy51908 文档编号:4401085 上传时间:2018-12-27 格式:DOC 页数:12 大小:265.50KB
下载 相关 举报
实验一 离散时间信号的表示与运算.doc_第1页
第1页 / 共12页
实验一 离散时间信号的表示与运算.doc_第2页
第2页 / 共12页
实验一 离散时间信号的表示与运算.doc_第3页
第3页 / 共12页
实验一 离散时间信号的表示与运算.doc_第4页
第4页 / 共12页
实验一 离散时间信号的表示与运算.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、实验一 离散时间信号的表示与运算一 实验目的1、熟悉 MATLAB 的绘图函数;2、掌握单位取样序列、单位阶跃序列、矩形序列和正余弦序列的产生方法;3、掌握离散时间信号基本运算的 MATLAB 实现;4、掌握离散时间信号线性卷积和运算的 MATLAB 实现。二 实验设备1、计算机2、MATLAB R2007a 仿真软件三 实验原理1)序列相加和相乘设有序列 和 ,它们相加和相乘如下:)(1nx2)()(21nxnx注意,序列相加(相乘)是对应序列值之间的相加(相乘) ,因此参加运算的两个序列必须具有相同的长度,并且保证位置相对应。如果不相同,在运算前应采用 zeros 函数将序列左右补零使其长

2、度相等并且位置相对应。在 MATLAB 中,设序列用 x1 和 x2 表示,序列相加的语句为:x=x1+x2;然而要注意,序列相乘不能直接用 x=x1*x2,该式表示两个矩阵的相乘,而不是对应项的相乘。对应项之间相乘的实现形式是点乘“.*” ,实现语句为:x=x1.*x2。2)序列翻转设有序列: ,在翻转运算中,序列的每个值以 n=0 为中心进行翻转,)(nxy需要注意的是翻转过程中序列的样值向量翻转的同时,位置向量翻转并取反。MATLAB 中,翻转运算用 fliplr 函数实现。设序列 用样值向量 x 和位置向量 nx 表述,翻转后的序列)(用样值向量 y 和位置向量 ny 描述。)(ny3

3、)序列的移位移位序列 的移位序列可表示为: ,其中, 时代表序列右)(x )()0nxy0移 个单位; 时代表序列左移 个单位。在移位过程中,序列值未发生任何变化,0n00n只是位置向量的增减。MATLAB 中没有固定函数实现移位运算。设序列 用样值向量)(nxx 和位置向量 nx 描述移位 后的序列 用样值向量 y 和位置向量 ny 描述。0n)(ny4)序列的线性卷积和线性卷积和运算是离散时间信号的一种重要运算,两个有限长序列的线性卷积可以用conv 函数实现。设 x(n)和 y(n)分别用样值向量 x 和 y 表示,线性卷积 g(n)用样值向量 g 表示,则调用方式为 ,conv 函数并

4、未考虑到位置向量,默认所有的序列都从),(yxconvgn=0 开始。如果把位置向量考虑在内,则需要对位置向量作额外处理。设 x(n)和 y(n)的位置向量分别是 nx:ns1,nf1和 ny:ns2,nf2表示,线性卷积的位置向量用 ng:ns3,nf3表示。四 实验内容1、上机实验前,认真阅读实验原理,掌握离散时间信号表示和运算的方法;2、掌握离散时间信号表示及运算的 MATLAB 实现。实例 1:产生单位采样序列 )(n在 MATLAB 中,函数 zeros(1,N)产生一个 N 个令的列向量,利用它可以实现在有限的区间上的单位采样序列。按照前面所述的方法,将下列文件输入到 Comman

5、d Window 窗口中。n=0:49; %定义横轴坐标x=zeros(1,50); %matlab 中数组下标从 1 开始x(1)=1; stem(n,x); %绘制离散序列数据title(单位采用信号序列)按回车键,将产生如下图所示的序列。实例 2:产生单位阶跃序列 )(nu在 MATLAB 中,函数 ones(1,N)产生一个 N 个 1 的行向量,利用它可以实现在有限区间上的单位阶跃序列。按照前面所述方法,将下列指令编辑到“exlstep.m”文件中。n=0:49; %定义横轴坐标x=ones(1,50); %matlab 中数组下标从 1 开始x(1)=1; stem(n,x); %

6、绘制离散序列数据title(单位阶跃信号序列3文件编辑后保存,然后单击 DebugRun ,运行“exlstep.m”,将产生如下图所示序列。实例 3:产生矩形阶跃序列 )(RNn他1n0N在 MATLAB 中,函数 sign(x)产生在 x 大于 0 时其值为 1;在等于 0 时其值为 0,在x 小于 0 时其值为-1。利用它可以实现窗长度为 N 的矩形序列。按照前面所述方法,将下列指令编辑到“exlrectang.m”文件中。N=10;n=0:49; %定义横轴坐标x=sign(sign(N-1-n)+1); stem(n,x); %绘制离散序列数据title(矩形序列 )文件编辑后保存,

7、然后单击 DebugRun ,运行“exlrectang.m ”,将产生如下图所示序列。实例 4:产生正弦和余弦序列nAnx)si()(yco将下列指令编辑到“exlsincos.m”文件中。N=50; %采样 50 个点A=1; %正余弦波的幅值为 1f=50; %信号频率为 50Hzfs=500; %采样频率为 500Hzn=0:N-1; x=A*sin(2*pi*f*n/fs); %获得采样点的值 y=A*cos(2*pi*f*n/fs); subplot(1,2,1); %子图分割函数,参数一表示列,参数二表示行,stem(n,x); %参数三表示绘图序号 title(正弦序列 )su

8、bplot(1,2,2);stem(n,y);title(余弦序列 )文件编辑后保存,然后单击 DebugRun ,运行“exlsincos.m”,将产生如下图所示序列。实例 5:已知两个离散序列 , ,用 MATLAB3,210,)(1kkf 2,10)(kf绘出 的波形。源程序如下:)()(21fkffa1=-3,-2,-1,0,1,2,3;k1=-3:3;a2=-2,-1,0,1,2;k2=-2:2;k=min(k1:k2):max(k1,k2);f1=zeros(1,length(k);f2=zeros(1,length(k);f1(find(k=min(k1)f3=f1+f2;f4=

9、f1.*f2;subplot(2,1,1);stem(k,f3,filled);title(相加);subplot(2,1,2);stem(k,f4,filled);title(相乘);题2:k1=-2:5;f1=1,2,3,4,5,6,7,8;f=fliplr(f1);k=-fliplr(k1);stem(k,f);title(翻转);题3:a0=1,2,3,4,5,5,5,5;k0=-2:5;k1=3;k2=-2;m1=k0+k1;m2=k0+k2;f=a0;subplot(2,1,1);stem(m1,f,filled);title(右移);subplot(2,1,2);stem(m2,

10、f,filled);title(左移);题4:x1=1,1,1,1,1,1;n1=-2:3;x2=1,1,1,1,1,1,1;n2=-1:5;n3=min(n1)+min(n2);x=conv(x1,x2);subplot(3,1,1);stem(n1,x1);ylabel(x1(n);title(卷积);subplot(3,1,2);stem(n2,x2);ylabel(x2(n);subplot(3,1,3);stem(n3:length(x)-1+n3,x);xlabel(n);ylabel(x(n);title(x(n)=x1(n)*x2(n);题5:f1=1,3,3,3;k1=0:3;f2=1,2,3,3,4;k2=0:4;f=conv(f1,f2);subplot(3,1,1);stem(k1,f1);ylabel(f1(k);title(卷积);subplot(3,1,2);stem(k2,f2);ylabel(f2(k);subplot(3,1,3);stem(0:length(f)-1,f);xlabel(k);ylabel(f(k);title(f(k)=f1(k)*f2(k);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 统计图表

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报