常用信号的MATLAB表示

上传人:re****.1 文档编号:498042555 上传时间:2022-12-08 格式:DOC 页数:11 大小:61.50KB
返回 下载 相关 举报
常用信号的MATLAB表示_第1页
第1页 / 共11页
常用信号的MATLAB表示_第2页
第2页 / 共11页
常用信号的MATLAB表示_第3页
第3页 / 共11页
常用信号的MATLAB表示_第4页
第4页 / 共11页
常用信号的MATLAB表示_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《常用信号的MATLAB表示》由会员分享,可在线阅读,更多相关《常用信号的MATLAB表示(11页珍藏版)》请在金锄头文库上搜索。

1、.5 常用信号的MATLAB表示 5.1单位冲激函数、单位冲激序列示例7:t = -5:0.01:5;y = (t=0);subplot(121);plot(t, y, r);n = -5:5;x = (n=0);subplot(122);stem(n, x);图5运行结果如图5所示。 精品.程序说明: (1)由n = -5:5得到一个111数组n;而在x = (n=0)中,n=0是一个向量运算,即向量n中的每一个元素与0比较是否相等,其比较结果0或1放在x中。这样得到的向量x也是111数组,且正好就是单位冲激序列。 (2)在MATLAB中,任何向量x的下标是从1开始的,不能取零或负值,而x(

2、n)中的时间变量n则不此受限制。因此向量x的下标与时间变量n是两个概念,如本例中向量x(n)的下标是从1到11,而时间变量n是从-5到5。所以必须用一个与向量x等长的定位时间变量n,以及向量x,才能完整地表示序列x(n)。在信号的表示和运算中,这一点请务必注意;只有当序列x(n)的时间变量正好是从1开始时,才能省去时间变量n,因为此时向量的下标与时间变量相同。 (3)单位冲激函数的实现方法实际上与单位冲激序列是完全相同的,都是用序列表示。只不过表示连续时间信号的序列中两相邻元素所对应的时间间隔更小,如本例中t的间隔为0.01,而表示离散时间信号的序列中两相邻元素所对应的时间间隔一般为1。 由于

3、单位冲激序列在信号与系统中经常使用,我们专门编制一个函数文件delta.m,在后面的实验部分直接调用该函数即可产生需要的波形。 % delta.mfunction x, n = delta(n1,n2,k)% 产生冲激序列(n-k),其中n1=n=n 2, n1=k=n2 精品.if nargin =3disp(输入不正确,输入参数要有三个!);return;elseif (kn2)|(n1n2)error(输入不正确,输入参数要应满足n1=k=”,就可得到单位阶跃函数、单位冲激序列,如图6所示。 图6我们编制了函数文件stepseq.m来生成单位阶跃序列。 function x, n = s

4、tepseq(n1,n2,n0)% 产生序列u(n-n0),其中n1=n=n 2, n1=n0=n2精品.if nargin =3disp(输入不正确,输入参数要有三个!);return;elseif (n0n2)|(n1n2)error(输入不正确,输入参数要应满足n1=k=0);示例8:绘图表示 (1) 门函数;(2) 序列。t = -3 :0.05: 3;z1 = (t+1) = 0);z2 = (t-1) = 0);g = z1 - z2; % 门函数 figure;subplot(221)plot(t,g,r);axis(-3 3 0 1.1)x1 = stepseq(-5,10,-

5、3); % 调用函数stepseqx2 = stepseq(-5,10,5); % 调用函数stepseq精品.x = x1 - x2;n = -5:10;subplot(222)stem(n,x);axis(-5,10,0,1.1)运行结果如图7所示。 图75.3其他典型的信号 1. 实指数信号 其MATLAB实现为:n = n1: n2; x = a.n; 1. 复指数信号 其MATLAB实现为:n = n1: n2; x = exp(sigma+jw)*n; 1. 正(余)弦信号 精品.其MATLAB实现为:n = n1: n2; x = cos(w*n+sita)5.4工具箱中的信号产

6、生函数 利用MATLAB信号处理工具箱提供的一些函数,可以很方便地产生三角波、方波等函数波形。 1. 周期性三角波或锯齿波函数sawtooth 调用格式为:x = sawtooth(t, width)功能:产生一个周期为2、幅度在-1到+1之间的周期性三角波信号。其中width表示最大幅度出现的位置:即在一个周期内,信号从t=0到width2时函数值从-1到+1线性增加,而从width2到2又是从+1到-1线性下降。width取值在0 1之间。 若x = sawtooth(t, width),则对应的周期为2/。 示例9:产生周期为0.2的三角波,width取值分别为0、1、0.5。 td =

7、 1/100000; % td为时间间隔 t = 0 : td : 1;x1 = sawtooth(2*pi*5*t,0);x2 = sawtooth(2*pi*5*t,1);x3 = sawtooth(2*pi*5*t,0.5);subplot(311); plot(t,x1);subplot(312); plot(t,x2);subplot(313); plot(t,x3);运行结果如图8所示。 精品.图81. 周期性方波信号square 调用格式为:x = square (t, duty)功能:产生一个周期为2、幅度为1的周期性方波信号。其中duty表示占空比,即在信号的一个周期中正值所

8、占的百分比。 例如产生频率为40Hz、占空比为75%的周期性方波所调用的语句为 x = square (2*pi*40*t, 75);1. (非周期)三角波脉冲信号tripuls 调用格式为:x = tripuls (t, width, skew)功能:产生一个最大幅度为1、宽度为width、斜率为skew的三角脉冲信号。该函数横坐标范围由向量t决定,其三角波形是以t=0为中心向左右各展开精品.width/2的范围;斜率skew在-1到+1之间取值,它决定了最大幅度1所对应的横坐标位置:width/2skew。 示例10:仔细观察由下面代码产生的图9中3个三角波信号之间的区别,自己对tripu

9、ls函数的使用做一个总结。 t = -3:0.001:3;x1 = tripuls(t,4,0);subplot(131); plot(t,x1);axis(-4 4 0 1);gridt = -6:0.001:6;x2 = tripuls(t,4,0.5);subplot(132);plot(t,x2);axis(-4 4 0 1); gridx3 = tripuls(t+2,4,0.5);subplot(133);plot(t,x3);axis(-4 4 0 1);grid精品.图91. (非周期)矩形脉冲信号rectpuls 调用格式为:x = rectpuls (t, width)功能

10、:产生一个幅度为1、宽度为width、以t=0为中心左右对称的矩形波信号。该函数横坐标范围由向量t决定,其矩形波形是以t=0为中心向左右各展开width/2的范围。width的默认值为1。 示例11:生成幅度为2,宽度T = 4、中心在t = 0的矩形波x(t)以及x(t-T/2).t = -4 : 0.0001 : 4;T = 4;x1 = 2*rectpuls(t, T);subplot(121);plot(t, x1);axis(-4 6 0 2.2)grid;x2 = 2*rectpuls(t-T/2,T);subplot(122);精品.plot(t, x2);axis(-4 6 0 2.2)grid;运行结果如图10所示。 图10 如有侵权请联系告知删除,感谢你们的配合!精品

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号