MATLAB 2020信号处理从入门到精通
上QQ阅读APP看书,第一时间看更新

2.3 非周期性信号

周期信号是每隔时间T出现重复信号。T称为信号的周期。非周期信号与之相反,信号不具有周期性。Signal Processing Toolbox提供了几种广泛使用的非周期性波形的函数。

2.3.1 随机信号

随机信号(Random Signal)是指幅度不可预知但又服从一定统计特性的信号,又称不确定信号。

通常通信系统中传输的信号都具有一定的不确定性,因此都属于随机信号,否则不可能传递任何新的信息,也就失去了通信的意义。

另外,在信号传输过程中,不可避免地会受到各种干扰和噪声的影响,这些干扰与噪声也都具有随机特性,属于随机噪声。随机噪声也是随机信号的一种,只是不携带信息。在数字滤波器和快速傅里叶变换的计算中,由于运算字长的限制,产生了有限字长效应。这种效应无论采用截尾还是舍入的方式,均产生噪声,此种噪声可视为随机噪声。

按照随机矩阵的分布规则,可将随机矩阵分为两种:均匀分布的随机数矩阵和正态分布的随机数矩阵。根据取值区间,可将随机矩阵分为区间(0,1)和(0,max)。下面介绍生成几种不同随机矩阵的函数。

1.rand函数

在MATLAB中,rand函数用来生成在区间(0,1)均匀分布的随机数矩阵,该命令的调用格式见表2-8。

表2-8 rand调用格式

978-7-111-67965-3-Chapter02-46.jpg

在MATLAB中,randn命令用来生成正态分布的随机信号,它的调用格式见表2-9。

表2-9 randn命令的调用格式

978-7-111-67965-3-Chapter02-47.jpg

在MATLAB中,randi函数用来生成均匀分布的伪随机整数信号,该命令的调用格式见表2-10。

表2-10 randi调用格式

978-7-111-67965-3-Chapter02-48.jpg

在MATLAB中,rng函数设置随机数生成器,控制随机数的生成,具体的调用格式见表2-11。

表2-11 rng函数调用格式

978-7-111-67965-3-Chapter02-49.jpg

随机矩阵每次的运行结果是随机的,若不设置随机生成器,上例中前后两次随机矩阵生成的值将不同。

2.randperm函数

在MATLAB中,randperm函数生成区间为[1,n]的没有重复元素的随机整数排列,具体的调用格式见表2-12。

表2-12 randperm函数调用格式

978-7-111-67965-3-Chapter02-50.jpg

例2-9:创建随机波。

978-7-111-67965-3-Chapter02-51.jpg

解:MATLAB程序如下。

978-7-111-67965-3-Chapter02-52.jpg

978-7-111-67965-3-Chapter02-53.jpg

运行结果如图2-14所示。

978-7-111-67965-3-Chapter02-54.jpg

图2-14 随机波显示结果

2.3.2 Sinc信号

Sinc函数,又称辛格函数,用sinc(x)表示。数学上,Sinc函数定义为sinc(t)=sin(t/t,在数字信号处理和通信理论中,归一化Sinc函数通常定义为sinc(x)=sin(πx)/πx。该函数的傅里叶变换正好是幅值为1的矩形脉冲。

在MATLAB中,sinc命令用来生成Sinc波,它的使用格式见表2-13。

表2-13 sinc命令的使用格式

978-7-111-67965-3-Chapter02-55.jpg

例2-10:创建Sinc波。

978-7-111-67965-3-Chapter02-56.jpg

解:MATLAB程序如下。

978-7-111-67965-3-Chapter02-57.jpg

运行结果如图2-15所示。

2.3.3 Chirp信号

Chirp(啁啾)是编码脉冲技术中的一种术语,是指对脉冲进行编码时,其载频在脉冲持续时间内线性地增加,当将脉冲变到音频时,会发出一种声音,听起来像鸟叫的啁啾声,故名“啁啾”。该信号是一个典型的非平稳信号,在通信、声呐、雷达等领域具有广泛的应用。将脉冲传输时中心波长发生偏移的现象叫作“啁啾”。在光纤通信中由于激光二极管本身不稳定而使传输单个脉冲时中心波长瞬时偏移的现象,也叫“啁啾”。

chirp信号的表达式如下。

978-7-111-67965-3-Chapter02-58.jpg

978-7-111-67965-3-Chapter02-59.jpg

图2-15 Sinc波显示结果

式中,f0为起始频率;u0为调频率。对相位进行求导,得到角频率以及频率随时间的线性变化关系f=f0+u0t

在MATLAB中,chirp命令用来生成扫频余弦信号的样本——Chirp信号,它的使用格式见表2-14。

表2-14 chirp命令的使用格式

978-7-111-67965-3-Chapter02-60.jpg

例2-11:创建对数扫频信号。

978-7-111-67965-3-Chapter02-61.jpg

解:MATLAB程序如下。

978-7-111-67965-3-Chapter02-62.jpg

运行结果如图2-16所示。

978-7-111-67965-3-Chapter02-63.jpg

图2-16 chirp信号图形显示结果

2.3.4 狄利克雷函数

工具箱的dinic组件能计算狄利克雷函数,有时也被称为周期性正弦或别名正弦函数,对于输入向量或矩阵x。Dirichlet函数D(x)是:

978-7-111-67965-3-Chapter02-64.jpg

式中,N是用户指定的正整数。N为奇数时,狄利克雷函数的周期为2π;N为偶数,其周期为4π。

在MATLAB中,diric命令用来生成狄利克雷函数信号,它的使用格式见表2-15。

表2-15 diric命令的使用格式

978-7-111-67965-3-Chapter02-65.jpg

例2-12:创建狄利克雷信号。

978-7-111-67965-3-Chapter02-66.jpg

解:MATLAB程序如下。

978-7-111-67965-3-Chapter02-67.jpg

运行结果如图2-17所示。

978-7-111-67965-3-Chapter02-68.jpg

图2-17 狄利克雷信号图形显示结果

2.3.5 非周期方波信号

在MATLAB中,rectpuls命令用来产生非周期方波信号,它的使用格式见表2-16。

表2-16 rectpuls命令的使用格式

978-7-111-67965-3-Chapter02-69.jpg

例2-13:创建方波信号。

978-7-111-67965-3-Chapter02-70.jpg

解:MATLAB程序如下。

978-7-111-67965-3-Chapter02-71.jpg

978-7-111-67965-3-Chapter02-72.jpg

运行结果如图2-18所示。

978-7-111-67965-3-Chapter02-73.jpg

图2-18 方波信号图形显示对比

2.3.6 非周期三角波信号

在MATLAB中,tripuls命令用来生成产生非周期三角波信号,它的使用格式见表2-17。

表2-17 tripuls命令的使用格式

978-7-111-67965-3-Chapter02-74.jpg

例2-14:创建三角波信号。

978-7-111-67965-3-Chapter02-75.jpg

解:MATLAB程序如下。

978-7-111-67965-3-Chapter02-76.jpg

978-7-111-67965-3-Chapter02-77.jpg

运行结果如图2-19所示。

978-7-111-67965-3-Chapter02-78.jpg

图2-19 三角波信号图形显示对比