实验一脉冲时间信号MATLAB表示
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1 连续时间信号在MATLAB 中的表示
1. 实验目的
学会运用MATLAB 表示常用连续时间信号的方法;观察并熟悉这些信号的波形和特性。
2. 实验原理
在某一时间区间内,除若干个不连续点外,如果任意时刻都可以给出确定的函数值,则称该信号为连续时间信号,简称为连续信号。从严格意义上讲,MATLAB 数值计算的方法并不能处理连续时间信号。然而,可利用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能够被MATLAB 处理,并且能较好地近似表示连续信号。
MATLAB 提供了大量生成基本信号的函数。比如常用的指数信号、正余弦信号等都是MATLAB 的内部函数。为了表示连续时间信号,需定义某一时间或自变量的范围和取样时间间隔,然后调用该函数计算这些点的函数值,最后画出其波形图。
3. 实例分析
3.1 典型信号的MATLAB 表示
(1)实指数信号
实指数信号的基本形式为()t f t Ke α=。式中,,K α为实数。当0α>时,实指数信号随时间按指数式增长;当0α<时,实指数信号随时间按指数式衰减;当0α=时候,则转化为直流信号。MATLAB 中用exp 函数来表示实指数信号,其语句格式为:
*exp(*)y K a t =
例1 用MATLAB 命令产生单边衰减指数信号 1.52()t e u t -,并绘出时间03t ≤≤的波形图。
解:MATLAB 源程序为:
clear;clc;
K = 2; a = -1.5;
t = 0:0.01:3;
ft = K*exp(a*t);
plot(t,ft);grid on
axis([0,3,0,2.2]);
title('单边指数衰减信号');
(2)正弦信号
正弦信号的基本形式为()sin()f t K t ωϕ=+或者()cos()f t K t ωϕ=+。其中K
是振幅;ω是角频率;ϕ是初相位。
这三个参数称为正弦信号的三要素。MATLAB 中可用sin 或者cos 函数来表示正弦信号,其语句格式为:
*sin(*)K t phi ω+ *cos(*)K t phi ω+
例2 用MATLAB 命令产生正弦信号2sin(2/4)t ππ+,并绘出时间03t ≤≤的波形图。
解:MATLAB 源程序为:
clear;clc;
K = 2; w = 2*pi; phi = pi/4;
t = 0:0.01:3;
ft = K*sin(w*t+phi);
plot(t,ft);grid on
axis([0,3,-2.2,2.2]);
title('正弦信号');
图1 单边指数衰减信号
图2 正弦信号 (3)抽样信号
抽样信号的基本形式为()sin()/Sa t t t =,在MATLAB 中用与()Sa t 类似的sinc()t 函数表示,定义为sinc()sin()/()t t t ππ=。
可以看出,()Sa t 函数与sinc()t 没有本质的区别,
只是在时间尺度上不同而已。 例3 用MATLAB 命令产生抽样信号()Sa t ,并绘出时间为66t ππ-≤≤的波形图。
解:MATLAB 源程序为:
clear;clc;
t = -6*pi: pi/100: 6*pi;
ft = sinc(t/pi);
plot(t,ft);grid on
axis([-20,20,-0.5,1.2]);
title('抽样信号');
图3 抽样信号
(4)矩形脉冲信号
矩形脉冲信号在MATLAB 中可用rectpuls 函数产生,其语句格式为:
(,)y rectpls t width = 该函数用于产生一个幅度为1、宽度为width ,且以t=0为对称轴的矩形脉冲信号,width 的默认值为1。
例4 用MATLAB 命令画出下列矩形脉冲信号的波形图。
2(01)()0(0,1)
t f t t t ≤≤⎧=⎨<>⎩ 解:根据所定义的矩形脉冲信号,()f t 定义的矩形脉冲宽度为1,脉冲的中心位置相对于纵轴向右移动了0.5。因此,其MATLAB 源程序为:
clear;clc;
t = -0.5: 0.01: 3;
t0 = 0.5; width = 1;
ft = 2* rectpuls(t-t0, width);
plot(t,ft);grid on
axis([-0.5,3,-0.2,2.2]);
title('矩形脉冲信号');
图4 矩形脉冲信号
周期性矩形波信号或方波在MATLAB 中可用square 函数产生,其语句格式为:
y=square(t,DUTY)
该函数用于产生一个周期为2π,幅值为1±的周期性方波信号,其中,DUTY 参数用来表示信号的占空比DUTY%,即在一个周期内脉冲宽度(正值部分)与脉冲周期比值。占空比默认值为0.5。
例5 用MATLAB 命令产生频率为10Hz ,占空比为30%的周期方波信号。 解:MATLAB 源程序为:
clear;clc;
t = 0: 0.001: 0.3;
y = square(2*pi*10*t, 30);
plot(t,y);grid on
axis([0,0.3,-1.2,1.2]);
title('周期方波信号');
图 5
周期方波信号
还有非周期的三角波脉冲可以用tripuls 函数,周期三角波(锯齿波)可以用sawtooth 函数实现。同学们可以通过MATLAB help 自学,或者上网搜索及其他途径学习。
3.2 单位阶跃信号的MATLAB 表示
单位阶跃信号是信号分析中的基本信号之一,在信号与系统分析中有着十分重要的意义,常用于简化信号的时域数学表示。例如,表示分段函数信号、时限信号和因果信号等。单位阶跃信号用符号()u t 表示,定义为:
10()00
t u t t >⎧=⎨<⎩ 例6 用MATLAB 命令产生单位阶跃信号()u t 。
解:MATLAB 源程序为:
clear;clc;
t = -1: 0.01: 5;
ft = (t >=0 );
plot(t,ft);grid on
axis([-1,5,-0.5,1.5]);
title('单位阶跃信号');
图6 单