本文共 1854 字,大约阅读时间需要 6 分钟。
实验1信号的产生及运算.doc
教 案 纸
空 军 雷 达 学 院 PAGE 9 页
实验1 信号的产生及运算
2.1 实验目的
1.了解常用模拟信号和离散信号的定义及特点;
2.进一步加深对给定信号的基本运算的求解。
2.2 实验原理
一、连续时间信号的MATLAB表示
MATLAB提供了大量的生成基本信号的函数。最常用的指数信号、正弦信号是MATLAB的内部函数,即不安装任何工具箱就可调用的函数。
1.指数信号
指数信号在MATLAB中可用exp函数表示,其调用形式为:
y=A*exp(a*t)
2.正弦信号
正弦信号和分别用MATLAB的内部函数cos和sin表示,其调用形式为:
y=A*cos(w0*t+phi)
y=A*sin(w0*t+phi)
除了内部函数外,在信号处理工具箱(Signal Processing Toolbox)里还提供了诸如矩形波、三角波、周期性矩形波和三角波等信号处理中常用的信号。
3.抽样信号
抽样函数Sa(t)在MATLAB中用sinc函数表示,定义为:
其调用形式为:
y=sinc(t)
4.矩形脉冲信号
矩形脉冲信号在MATLAB中用rectpuls函数表示,其调用形式为:
y=rectpuls(t,width)
用以产生一个幅度为1,宽度为width,相对于t=0点左右对称的矩形波信号。该函数的横坐标范围由向量t决定,是以t=0为中心向左右各展开width/2的范围。width的默认值为1。
周期性矩形脉冲(方波)信号在MATLAB中用square函数来表示,其调用形式为:
y=square(t,DUTY)
用以产生一个周期为2、幅度值为的周期性方波信号,其中DUTY参数表示占空比(duty cycle),即在信号的一个周期中正值所占的百分比。
5.三角波脉冲信号
三角波脉冲信号在MATLAB中用tripuls函数表示,其调用形式为:
y=tripuls(t,width,skew)
用以产生一个最大幅度为1、宽度为width、斜度为skew的三角波信号。该函数的横坐标范围由向量t决定,是以t=0为中心向左右各展开width/2的范围。斜度skew是一个介于-1和1之间的值,它表示最大幅度1出现所对应的横坐标位置,比如skew=0表示是一个左右对称的三角波信号,最大幅度1出现在t=0处;一般地,最大幅度1出现在t=(width/2)×skew的横坐标位置。
周期性三角波信号在MATLAB中用sawtooth函数来表示,其调用形式为:
y=sawtooth(t,WIDTH)
用以产生一个周期为2、最大幅度为1、最小幅度为-1的周期性三角波(锯齿波)信号,其中的WIDTH参数表示最大幅度出现的位置:在一个周期内,信号从t=0到WIDTH×2时函数值是从-1到1线性增加的,而从WIDTH×2到2时函数值又是从1到-1线性递减的;在其它周期内依次类推。
6.一般周期性脉冲信号
一般周期性脉冲信号在MATLAB中用pulstran函数来表示,其调用形式为:
y=pulstran(t,d,’func’)
该函数基于一个名为func的连续函数并以之为一个周期,从而产生一串周期性的连续函数(func函数可自定义)。该pulstran函数的横坐标范围由向量t指定,而向量d用于指定周期性的偏移量(即各个周期的中心点),这样这个func函数会被计算length(d)次,并且整个pulstran函数的返回值实际上就相当于:
y = func(t-d(1))+func(t-d(2))+…
从而实现一个周期性脉冲信号的产生。pulstran函数的更一般调用形式为:
y=pulstran(t,d,’func’,p1,p2,…)
其中的p1,p2,…为需要传送给func函数的额外输入参数值(除时间变量t之外),如上述的rectpuls函数需要width这个额外参数,tripuls函数需要width和skew这两个额外参数,即整个pulstran函数的返回值实际上相当于:
y = func(t-d(1),p1,p2,…)+func(t-d(2),p1,p2,…)+…
二、离散时间信号的MATLAB表示
对于任意离散序列f(n),需要两个向量来表示:一个表示n的取值范围,另一个表示序列的值。例如,序列可用MATLAB表示为:
n=-2:4;f=[2,1,1,-1,3,0,2];
若序列是从n=0开始的,则只用一个向量f就可以表示该序列
转载地址:https://blog.csdn.net/weixin_32541663/article/details/115880975 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!