好文档 - 专业文书写作范文服务资料分享网站

实验1 信号的时域描述与运算 

天下 分享 时间: 加入收藏 我要投稿 点赞

实验1 信号的时域描述与运算

一、实验目的

1、掌握信号的MATLAB表示及其可视化方法。 2、掌握信号基本时域运算的MATLAB实现方法。

3、利用MATLAB分析常用信号,加深对信号时域特性的理解。 二、实验原理

1、连续时间信号的MATLAB表示

在MATLAB中连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。

在MATLAB中连续时间信号是用信号等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好的近似表示出连续时间信号,这种表示方法称为向量表示法。表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。例如一个正弦信号可以表示如下:

>>t=0:0.01:10; >>x=sin(t); 利用plot(t,x)命令可以绘制上述信号的时域波形。 如果连续时间信号可以用表达式来描述,则还可以用符号表达式来表示信号。例如对于上述正弦信号,可以用符号对象表示如下:

>>syms t; >>x=sin(t); 利用ezplot(x)命令可以绘制上述信号的时域波形。 2、连续时间信号的时域运算

对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及移位、反转、尺度变换等。 (1)相加和相乘

对于两个采用向量表示的可以直接使用算术运算的运算符“+”和“*”来计算,此时要求表示两信号的向量时间范围和采样间隔相同。采用符号对象表示的两个信号,可以直接根据符号对象的运算规则运算。 (2)微分和积分

对于向量表示法表示的连续时间信号,可以通过数值计算的方法计算信号的微分和积分。这里微分是用差分来近似求取的,由时间向量[??1,??2,?,????]和采样值向量[??1,??2,?,????]表示的连续时间信号,其微分可以下式实现

x?xx?(t)|t?tk?k?1k,k?1,2,L,N?1

?t其中???表示采样间隔。MATLAB中用diff函数来计算差分????+1?????。 连续时间信号的定积分可以由MATLAB的quad函数实现,调用格式为

quad(‘function_name’,a,b)

其中,function_name为被积函数名,a、b为积分区间。 (3)移位、反转和尺度变换

移位:自变量??换为(?????0),表示信号在??轴上整体移动。 反转:自变量??换为-??,表示信号以??=0为轴翻转过来。 尺度变换:自变量??换为a??,表示信号压缩或拉伸。 3、离散时间信号的MATLAB表示

在MATLAB中离散时间信号需要使用两个向量来表示,其中一个向量用于表示离散的时间点,另一个向量表示在这些时间点上的值。例如对于如下离散时间信号

x(n)?{?3,2,?1,2,1,?1,2,3}

采用MATLAB可以表示如下:

>>n=-3:4;

>>x=[-3 2 -1 2 1 -1 2 3]; >>stem(n,x,’filled’); >>xlabel(‘n’); >>title(‘x(n)’);

stem函数用于绘制离散时间信号波形,在绘图时添加’filled’选项,以绘制实心的杆状图形。

4、离散时间信号的时域运算

离散时间信号的相加相乘是将两个信号对应的时间点上的值相加或相乘,可以直接使用算术运算的运算符“+”和“*”来计算。

离散时间信号的移位,则可看作是将表示时间的向量平移,而表示对应时间点上的值的向量不变。

离散时间信号的反转,则可看作是将表示时间的向量和表示对应时间点上的值的向量以零点为基准点,以纵轴为对称轴反折,向量的反折可以利用MATLAB中的fliplr函数实现。 三、实验内容

1、利用MATLAB绘制下列连续时间信号波形 (1)x(t)?(1?e?0.5t)u(t)

MATLAB程序如下:

>>t=-0.5:0.001:3.5;

>>x=(1-exp(-0.5*t)).*(heaviside(t));

>> plot(t,x); %绘制x(t)波形 >> xlabel('t'); >> title('x(t)'); 上述程序的运行结果为:

1

x(t)0.90.80.70.60.50.40.30.20.1-0.5000.511.522.533.5t(2)x(t)?cos(?t)[u(t)?u(t?2)]

MATLAB程序如下:

>>t=-3:0.001:3;

>>x=cos(pi*t).*(heaviside(t)-heaviside(t-2)); >>plot(t,x); >>xlabel('t'); >>title('x(t)');

上述程序的运行结果为:

x(t)10.80.60.40.20-0.2-0.4-0.6-0.8-1-3-2-10123t(3) x(t)?|t|2cos(?t)[u(t?2)?u(t?2)] MATLAB程序如下:

>>t=-3:0.001:3;

>> x=0.5*abs(t).*cos(pi*t).*(heaviside(t+2)-heaviside(t-2));

2

>>plot(t,x); >>xlabel('t'); >>title('x(t)');

上述程序的运行结果为:

x(t)10.80.60.40.20-0.2-0.4-0.6-3-2-10123t(4) x(t)?e?tsin(2?t)[u(t)?u(t?3)]

MATLAB程序如下:

>>t=-1:0.001:4;

>>x=exp(-t).*sin(2*pi*t).*(heaviside(t)-heaviside(t-3)); >>plot(t,x); >>xlabel('t'); >>title('x(t)');

上述程序的运行结果为:

x(t)0.80.60.40.20-0.2-0.4-0.6-1-0.500.511.522.533.54t

3

2、利用MATLAB绘制下列离散时间信号波形 (1)x(n)?u(n?3) MATLAB程序如下:

>>n=-2.999:7.999; >>x=heaviside(n-3); >>stem(n,x,'filled'); >>xlabel('n'); >>title('x(n)');

上述程序的运行结果为:

x(n)10.90.80.70.60.50.40.30.20.10-4-202468n(2)x(n)?(?12)nu(n)

MATLAB程序如下:

>>n=-1.999:9.999;

>>x=(-1/2).^n.*(heaviside(n)); >>stem(n,x,'filled'); >>xlabel('n'); >>title('x(n)');

上述程序的运行结果为:

4

实验1 信号的时域描述与运算 

实验1信号的时域描述与运算一、实验目的1、掌握信号的MATLAB表示及其可视化方法。2、掌握信号基本时域运算的MATLAB实现方法。3、利用MATLAB分析常用信号,加深对信号时域特性的理解。二、实验原理1、连续时间信号的MATLAB表示在MATLAB中连续时间信号可以用两种方法来表示,即向量表示法和符号
推荐度:
点击下载文档文档为doc格式
6i2lg3zjop6et861e24v
领取福利

微信扫码领取福利

微信扫码分享