信号与系统实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一 连续时间信号的MATLAB 表示
实验目的
1.掌握MATLAB 语言的基本操作,学习基本的编程功能; 2.掌握MATLAB 产生常用连续时间信号的编程方法; 3.观察并熟悉常用连续时间信号的波形和特性。
实验原理
1. 连续信号MATLAB 实现原理
从严格意义上讲,MATLAB 数值计算的方法并不能处理连续时间信号。然而,可用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能够被MATLAB 处理,并且能较好地近似表示连续信号。
MATLAB 提供了大量生成基本信号的函数。比如常用的指数信号、正余弦信号等都是MATLAB 的内部函数。为了表示连续时间信号,需定义某一时间或自变量的范围和取样时间间隔,然后调用该函数计算这些点的函数值,最后画出其波形图。
2. 典型信号的MATLAB 表示
(1) 实指数信号:()at f t Ke =,式中K ,a 为实数。在MA TLAB 中可以利用exp()函数实现,其语句格式为:y=K*exp(a*t)。
(2) 正弦信号:()sin()f t K t ωϕ=+或()cos()f t K t ωϕ=+,其中K 为振幅,ω是角频率;φ是初相位。在MATLAB 中可以利用sin()或cos()函数实现,其语句格式为K *sin(ω*t+phi),K *cos(ω*t+phi)。
(3) 单位阶跃信号:单位阶跃信号定义为()
()
1
0()0
0t t t ε>⎧⎪=⎨
<⎪⎩,单位阶跃信号在MA TLAB 中用“( t >=0)”产生。MA TLAB 表达式“y = ( t >=0)”的含义就是t ≥ 0时y =1,而当t < 0时y =0。
此外,也可在MATLAB 的work 目录下创建uCT 的M 文件,其MATLAB 源程序为 function f=uCT(t) f=(t>=0);
保存为uCT.m 后,就可以调用该函数。
注意,在此定义的uCT 函数是阶跃信号数值表示方法,因此在数值计算中我们将调用uCT 函数。而在MA TLAB 的MAPLE 内核中,将Heaviside 函数定义为阶跃信号符号表达式,
在符号运算过程中,若要调用它必须用sym 定义后,才能实现。
(4) 复指数信号:()()cos()sin()st j t
t t f t Ke Ke
Ke t jKe t σωσσωω+===+,其中,s =σ+j ω是复变量;σ、ω为实数。在MATLAB 中可以利用exp()函数表示复指数信号,MATLAB 中默认变量i 为虚部单位,求取实部用real()函数,求取虚部用imag()函数,求取模用abs()函数,求取相角用angle()函数。
(5) 抽样信号:()sin()/Sa t t t =,在MA TLAB 中用与Sa(t )类似的sinc (t )函数表示,定义为sin ()sin()/()c t t t ππ=。
(6) 矩形脉冲信号:()()
1/2()0
/2t g t t τττ⎧<⎪=⎨
>⎪⎩在MA TLAB 中可用rectpuls()函数产生,其语句格式为y=rectpuls(t,width),该函数用于产生一个幅度为1、宽度为width ,且以t=0为对称轴的矩形脉冲信号,width 的默认值为1。
周期性矩形波信号或方波在MA TLAB 中可用square 函数产生,其语句格式为square(t,DUTY)。该函数用于产生一个周期为2π、幅值为1±的周期性方波信号,其中,DUTY 参数用来表示信号的占空比DUTY%,即在一个周期内脉冲宽度(正值部分)与脉冲周期的比值。占空比默认值为0.5。
(7) 三角波脉冲信号:在MA TLAB 中可用tripuls()函数产生,其语句格式为y=tripuls(t,width,skew),该函数用于产生一个幅度为1、宽度为width ,且以t=0为中心左右各展开width/2大小、斜度为skew 的三角波。width 的默认值为1,skew 的取值范围在-1~+1之间。一般最大幅度1出现在t=(width/2)×skew 的横坐标位置,默认时skew=0,此时产生对称三角波。
(8) 下面的函数也可以产生特定的信号 y=fliplr(t)——信号的翻转;
y=sawtooth(t,width)——产生锯齿波信号。
实验内容
1. 实例分析与验证
根据以上典型信号的MA TLAB 函数,分析与验证下列典型信号MA TLAB 程序,并实现各信号波形图的显示,连续信号的图形显示使用连续二维图函数plot()。
(1) 正弦信号:用MA TLAB 命令产生正弦信号2sin(2/4)ππ+,并会出时间0≤ t ≤3的波形图。
程序如下:
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('正弦信号')
0.5
1
1.5
2
2.5
3
-2-1.5-1-0.500.511.5
2正弦信号
(2) 抽样信号:用MA TLAB 中的sinc(t)函数命令产生抽样信号Sa(t),并会出时间为
66t ππ-≤≤的波形图。
程序如下:
t=-6*pi:pi/100:6*pi; ft=sinc(t/pi); plot(t,ft),grid on; axis([-20,20,-0.5,1.2]) title('抽样信号')