MATLAB产生信号波形的仿真实验
发布时间:2011-11-18 11:22:33
发布时间:2011-11-18 11:22:33
实验一 产生信号波形的仿真实验
一、实验目的:熟悉MATLAB软件的使用,并学会信号的表示和以及用MATLAB来产生信号并实现信号的可视化。
二、实验内容:
对信号进行时域分析,首先需要将信号随时间变化的规律用二维曲线表示出来。对于简单信号可以通过手工绘制其波形,但对于复杂的信号,手工绘制信号波形显得十分困难,且难以绘制精确的曲线。
一种是用向量来表示信号,另一种则是用符合运算的方法来表示信号。用适当的MATLAB语句表示信号后,可以利用MATLAB的绘图命令绘制出直观的信号波形。
1.向量表示法
对于连续时间信号f(t),可以用两个行向量f和t来表示,其中向量t是形如t=t1:p:t2的MATLAB命令定义的时间范围向量,t1为信号起始时间,t2为信号终止时间,p为时间间隔。向量f为连续信号f(t)在向量t所定义的时间点上的样值。
下面分析连续时间信号f(t)=Sa(t)=sin(t)/t,可用如下的两个变量表示:
t= -10:0.02:10
f=sin(t)./t
命令运行结果为:
t =
Columns 1 through 8
-10.0000 -8.5000 -7.0000 -5.5000 -4.0000 -2.5000 -1.0000 0.5000
Columns 9 through 14
2.0000 3.5000 5.0000 6.5000 8.0000 9.5000
f =
Columns 1 through 8
-0.0544 0.0939 0.0939 -0.1283 -0.1892 0.2394 0.8415 0.9589
Columns 9 through 14
0.4546 -0.1002 -0.1918 0.0331 0.1237 -0.0079
用上述向量对连续信号进行表示后,就可以用plot命令来绘制出信号的时域波形。plot命令可将点与点间用直线连接,当点与点间的距离很小时,绘出的波形就成了光滑的曲线。
MATLAB命令如下:
plot(t,f);
title(‘f(t)=Sa(t)’);
xlabel(‘t’);
axis([-10,10,-0.4,1.1]);
绘出的信号波形如图1所示(左图)。当把时间间隔p取得更小(例如为0.02)时,就可得到Sa(t)较好的近似波形,如图1所示(右图)。
如图1 Sa(t)的近似波形