井敏英 郭佳林 李大伟 段 涛
(陕西理工学院,陕西 汉中 723001)
连续时间信号频谱分析研究及MATLAB实现
井敏英 郭佳林 李大伟 段 涛
(陕西理工学院,陕西 汉中 723001)
信号的频谱分析是信号与系统分析的基础。文章分析了用数值计算的方法实现确知连续时间信号的频谱分析,即采用离散傅里叶变换的快速算法实现对连续信号的频谱估计,然后在 MATLAB语言工具下结合正弦信号给出了频谱分析的结果。
频谱分析;离散傅里叶变化;MATLAB
在信号处理过程中,频域分析方法往往比时域分析方法更方便和有效。对于确知连续时间信号,其频域分析可以通过连续时间傅里叶变换来进行,但是,这样计算出来的结果仍然是连续函数,计算机不能直接加以处理。为了实现数值计算,还需要对其进行离散化处理,即采用离散傅里叶变换(DFT)进行分析。DFT的快速算法的出现,使DFT在数字通信、图像处理、功率谱估计、系统分析与仿真、雷达信号处理、光学、医学等各个领域都得到广泛应用。本文以正弦信号为例,介绍用DFT的快速算法即快速傅里叶变化(FFT)实现确知连续时间信号的频谱分析,给出了MATLAB语言工具下的分析程序。
对于时间连续信号f(t),其频谱分析可以通过连续时间傅里叶变换(CTFT)来进行。连续时间傅里叶变化特别适合于对时间连续信号的理论分析,但是,由于函数f(t)和其频谱函数都是连续函数,不能够直接用计算机来处理,因此在进行数值计算时必须将其离散化,然后利用离散傅里叶变换(DFT)实现近似计算。
设对连续时间信号 f(t)的截取时间段长度为L,对其进行离散化的采样时间间隔为T,那么采样输出的离散时间序列f( nT)中的信号样值点数N为:
但是,这样计算出来的结果F( Ω)仍然是连续函数,计算机不能直接加以处理。为了实现数值计算,还需要对F(Ω)进行离散化处理。将频率段0~1/THz划分为N个计算频率点,这N个离散频率点以角频率表示为:
即得到离散频率点上的近似计算式:
对比DFT计算式,显然有
该式表明,利用DFT(FFT)计算连续时间傅里叶变换的频谱时,除了计算时域样点的离散傅里叶变化的频谱F( k),还要将F( k)乘以取样时间间隔T,才能得出结果。
通过以上原理可知,连续非周期信号频谱的数值计算必须首先对信号时域采样,得到时间离散化的信号,时域采样必须满足或近似满足采样定理。根据时域频域的对应关系,时域采样将导致所得的抽样信号频谱周期化。然而,为了使周期化后的抽样信号频谱便于计算机处理,还必须再将其频域离散化,方法是对该频谱进行频域采样。根据时域频域的对应关系,频域离散化将对应于时域信号的周期化。因此,对于连续非周期信号频谱进行数值计算时,要确定如何截取信号的时间段、如何选择时域采样率,以及在时间段上对信号进行截取的方式。截取信号的时间段长度决定了时域周期化的周期,对应于频率抽样的频率间隔,即频率分辨率;时域采样率决定了频域周期化的周期,即频谱数值计算的范围;而在某时间段上对信号进行截取的方式,即不同窗函数的应用,决定了信号频谱估计的精度和有效范围。设要分析连续时间非周期信号f(t)在频率范围内的频谱,且要求分析的频谱分辨率(数值计算的频率间隔)为Δf,则首先应根据信号频率范围确定采样率,在根据所要求的频率分辨率确定截取时间长度,从而计算出所需计算FFT的序列长度(点数),最后根据信号时域波形特性选择使用不同的窗函数。
1.根据分析的信号频率范围确定采样率。要分析信号在频率范围内的频谱,则采样率必须满足采样定理,即相应地,采样时间间隔T(也称为时间分辨率)满足
2.根据频率分辨率要求确定分析信号 f(t)的截取时间长度。要使所分析的频率分辨率达到Δf,即每隔Δf计算一个频率点,那么对信号的截取时间长度L必须满足L≥1/Δf,根据截取时间长度L和采样时间间隔T就可以计算出截取时间信号离散化之后的序列点数N,也可以由计算采样率 fs和频率间隔Δf来等价计算出序列点数,即:
3.根据信号时域波形特性来应用不同的窗函数。使用窗函数可以控制频谱主瓣宽度、旁瓣抑制度等参数,从而更好地进行波形频谱分析和滤波器参数的设计。将窗函数与信号的时域波形或频谱进行相乘的过程,就称为对信号做时域加窗和频域加窗。不同窗函数与信号时域波形相乘就是以不同窗函数对时间无限长的连续信号f(t)进行时间段截取。
现应用MATLAB语言工具,使用数值计算的方法对其进行频谱估计。分别用矩形窗、汉明窗和汉宁窗进行时域加窗,分析信号幅度谱曲线,程序代码如下:
图1 3种加窗后的幅度频谱图
可以看出,图1中3种加窗后对信号的频谱估计与理论值都有一定的误差,这是由于在实际分析过程中,要对连续信号采样和截断。加矩形窗的频谱误差最大,那是因为事实上,加矩形窗等价于截取时不作加窗处理。从图1中3种加窗后的幅度谱估计曲线来看,应用汉明窗和汉宁窗都比应用矩形窗(等价于不加窗)的估计精度要高。
以上对带限确知连续时间信号的频谱分析的数值计算方法进行了分析,在分析过程中要对信号进行采样和截断,因此会出现一定误差,但只要合理选择分析参数可以使误差在工程允许的范围之内。对于随机信号,由于是无限大能量的功率信号,它不满足傅里叶变换条件,而且也不存在解析表达式,因此就不能够应用确知信号的频谱计算方法去分析随机信号的频谱。但可以用以上确知信号频谱分析的方法分析随机信号的功率谱,因此同样适应于随机信号的频域研究。
[1]高西全,丁玉美.数字信号处理[M].西安:西安电子科技大学出版社,2010.90-110.
[2]邵玉斌.Matlab/Simulink通信系统建模与仿真实例分析[M].北京:清华大学出版社,2008:166-180.
[3]张登奇,杨慧银.信号的频谱分析及 MATLAB实现[J].湖南理工学院学报(自然科学版),2010,23(3):29-33.
TN911.6
A
1008-1151(2011)04-0042-02
2011-01-18
井敏英(1978-),女,陕西富平人,陕西理工学院物理系硕士,从事通信信号处理的研究。