实验二、信号的表示和运算

更新时间:2023-09-20 01:03:01 阅读量: 小学教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

重庆三峡学院 《信号与系统分析》实验

实验二、信号的表示和运算

1实验目的

1)学会利用MATLAB表示常用的信号,观察这些信号的波形和特性; 2)学会利用MATLAB对简单信号进行相加、相乘、平移、反转和尺度变换等运算。

2实验原理及实例分析

2.1 MATLAB基础

(具体内容见相关指导书)

2.2信号在MATLAB中的表示

例1:用MATLAB命令产生单边衰减指数信号f(t)?2e?1.5tu(t),并绘出时间范围在0?t?3的波形图。

解:MATLAB程序如下,产生的图形如图1所示。

t = 0: 0.01 : 3; ft = 2 * exp(-1.5 * t);

plot(t,ft,'Linewidth',2);grid;axis([0,3,0 2.5]) xlabel('t(sec)');title('单边指数衰减信号');

单边指数衰减信号2.5

21.510.5000.511.5t(sec)22.53

图1 例1程序产生的图形

2?t?例2:用MATLAB命令产生正弦信号f(t)?2sin(?4),并绘出时间范

围在0?t?3的波形图。

1

重庆三峡学院 《信号与系统分析》实验

解:MATLAB程序如下,产生的图形如图2所示。

t = 0:0.01:3;

ft = 2 * sin(2*pi*t + pi/4); plot(t,ft,'Linewidth',2); axis([0 3 -2.5 2.5]);grid

title('正弦信号');xlabel('t(秒)');

正弦信号2.521.510.50-0.5-1-1.5-2-2.500.511.5t(秒)22.53

图2 例2程序产生的正弦信号波形图

例3:用MATLAB命令画出复指数信号f(t)?2e(?1.5?j10)t的实部、虚部、模及相角随时间变化的曲线,并观察其时域特性。(时间范围:0?t?3)

解:MATLAB程序如下,产生的图形如图3所示。

t = 0:0.01:3;

ft = 2 * exp((-1.5 + j * 10) * t);

subplot(221); plot(t,real(ft),'Linewidth',2); title('实部');axis([0 3 -2 2]);grid;

subplot(222); plot(t,imag(ft),'Linewidth',2); title('虚部');axis([0 3 -2 2]);grid;

subplot(223); plot(t,abs(ft),'Linewidth',2);

title('模');axis([0,3,0,2]);grid;

subplot(224); plot(t,angle(ft) / pi * 180,'Linewidth',2); title('相角(度)');axis([0 3 -200 200]);grid;

2

重庆三峡学院 《信号与系统分析》实验

实部虚部221100-1-1-20123-20123模相角(度)22001.5100100.5-10000123-2000123

图3 例3程序产生的图形

例4:用MATLAB命令构建一个能够产生单位阶跃信号u(t)的函数,函数名为uCT.m,并绘出时间范围在?1?t?5内的阶跃信号波形图。

解:先定义函数如下:

function f = uCT(t)

f = (t >= 0);

绘制阶跃信号波形图的程序如下,图形如图4所示。

t = -1:0.001:5; ft = uCT(t);

plot(t,ft,'Linewidth',2); grid; axis([-1 5 -0.5 1.5]); title('单位阶跃信号'); xlabel('t(sec)');

单位阶跃信号1.510.50-0.5-1012345t(sec)

图4 例4产生的单位阶跃信号波形图

3

重庆三峡学院 《信号与系统分析》实验

例5:用例4中构建的函数实现幅度为1、宽度为1的门函数g(t)。 解:MATLAB程序为:

t = -2:0.001:2;

ft = uCT(t + 0.5) - uCT(t - 0.5); plot(t,ft,'Linewidth',2); grid;

axis([-1.5 1.5 -0.5 1.5]); title('门函数');

门函数1.510.50-0.5-1.5-1-0.500.511.5

图5 例5程序产生的门函数

2.3信号在MATLAB中的运算

关于信号相加、相乘、平移、反转、尺度变换等运算的基本原理请参阅教材p.8-11。

例6:已知f1(t)?sin?t,f2(t)?sin8?t,试用MATLAB命令绘出其中f?f1(t)?f2(t)和f1(t)?f2(t)的波形图,

?0?t?3)?1Hz。(时间范围:

2?解:MATLAB程序如下,产生的图形如图6所示。

close all clear all f = 1; t = 0:0.01:3;

f1 = sin(2 * pi * f * t); f2 = sin(2 * pi * 8 * f * t);

subplot(211); plot(t,f1,t,f1 + f2,'Linewidth',2);grid;

legend('f_1','f_1+f_2');title('f_1(t) + f_2(t)');axis([0 3 -2 2]); subplot(212);plot(t,f1,t,f1.*f2,'Linewidth',2);grid;

legend('f_1','f_1*f_2');title('f_1(t) * f_2(t)');axis([0 3 -2 2]);

4

重庆三峡学院 《信号与系统分析》实验

f1(t) + f2(t)210-1-2 00.511.5f1(t) * f2(t)210-1-2 00.511.522.522.5f1 f1+f23f1 f1*f23

图6 例6产生的波形

例7:已知信号f(t)的波形如图7所示,试用MATLAB命令画出f(t?2)、

f(3t)、f(?t)和f(?3t?2)的波形图。

f(t)21.510.50-0.5-1-3-2.5-2-1.5-1-0.500.511.52

图7 信号f(t)的波形

解:先建立f(t)函数:

function f = funct1(t)

f = uCT(t+2) - uCT(t) + (-t+1) .* (uCT(t) - uCT(t-1));

5

重庆三峡学院 《信号与系统分析》实验

调用上述函数来绘制所求信号的波形,程序如下。产生的图形如图8所示。

close all clear all t = -2:0.001:4;

ft1 = funct1(t - 2); ft2 = funct1(3 * t); ft3 = funct1(-t); ft4 = funct1(-3 * t - 2); subplot(221);plot(t,ft1,'Linewidth',2);grid; title('f(t-2)');axis([-2 4 -0.5 2]); subplot(222);plot(t,ft2,'Linewidth',2);grid title('f(3t)');axis([-2 4 -0.5 2]);

subplot(223);plot(t,ft3,'Linewidth',2);grid; title('f(-t)');axis([-2 4 -0.5 2]);

subplot(224);plot(t,ft4,'Linewidth',2);grid; title('f(-3t-2)');axis([-2 4 -0.5 2]);

f(t-2)21.510.50-0.5-20f(-t)21.510.50-0.5-202421.510.50-0.5-20242421.510.50-0.5-20f(-3t-2)24f(3t)

图8 例7产生的波形

3思考题

观察所得到的信号波形图,并思考下列各题:

1)从例5可知,怎样利用单位阶跃函数来表示门函数?

2)从例6和例7可知,信号间的相加和相乘是如何实现的?信号的平移、

反转、尺度变换等会否影响其值域范围? 3)在例7中,信号f(t)的闭合表达式是什么?

6

本文来源:https://www.bwwdw.com/article/euph.html

Top