通信人家园

 找回密码
 注册
搜索
热搜: 家园 活动
凌华科技
恒扬科技

军衔等级:

  新兵

注册时间:
2016-12-28
发表于 2017-1-7 23:06:20 |显示全部楼层
本帖最后由 酷玩无线电 于 2017-1-7 23:21 编辑

信号在频域


频谱概念

信号可以分为时域信号和频域信号,听起来有点抽象,我们可以这样来思考前面举例的语音信号,如果X轴为时间轴,Y轴是语音的振幅,坐标系体现语音随时间振幅的变化,就是信号的时域模型。如果X轴换成频率轴(单位Hz),Y轴是语音的振幅,坐标系体现语音在不同频率能量的变化,那就进入了信号的频域分析。


频谱示意图

参见下图,X轴为0~5000Hz的频谱,可以看出在不同频率下信号能量的分布情况,下图可以看出低频0~1000Hz比高频1000~5000Hz有更高的能力分布。


傅立叶变换

傅里叶变换(Fourier transform)是一种线性的积分变换,常在将信号在时域(或空域)和频域之间变换时使用。

离散傅里叶变换(Discrete Fourier Transform,缩写为DFT),是傅里叶变换时域频域上都呈离散的形式,将信号的时域采样变换为其DTFT的频域采样。在形式上,变换两端(时域和频域上)的序列是有限长的,而实际上这两组序列都应当被认为是离散周期信号的主值序列。

傅立叶变换


numpy中作快速傅立叶变换的函数是numpy.fft,其中返回的数组A[0]为0频率的能量,对于傅立叶变换点数为偶数的情况来说,A[1:n/2]即1~n/2是正频率输出,A[n/2+1:]即n/2~n-1是负频率输出。

傅立叶变换例子1

采样率fs:64Hz

傅立叶变换点数:16

正弦波频率fc:4Hz

正弦波信号:y = sin(2*π*fc*t)


傅立叶变换点数决定了FFT计算结果的bin分辨率:fs/傅立叶变换点数=64/16=4


从上图可以看出信号能量主要集中在4Hz处,如下频率序列都有对应的FFT计算结果。

频率序列:[  0.   4.   8.  12.  16.  20.  24.  28.]

对应FFT计算结果如下:

[  6.22374531e-18   5.00000000e-01   4.91616938e-17   1.96767894e-16

   3.76385442e-17   1.21014683e-16   5.01509866e-17   1.67248602e-16]


傅立叶变换


傅立叶变换例子:频谱泄露


上面一个例子我们选取的信号频率是4Hz,正好落入FFT的bin中:

[  0.   4.   8.  12.  16.  20.  24.  28.]


假如我们选择的频率不是在这些bin里面,会发生什么情况:

参见下图,信号产生频率fc为6Hz,可以看出信号能量泄漏到4H之外的其他FFT频率序列中:

[ 0.20603489  0.37575121  0.27920834  0.07737123  0.04176116  0.02859865

  0.02256836  0.01978133]



KW软件无线电-1(引子)

KW软件无线电-2(简介)

KW软件无线电-3(信号)

KW软件无线电-4(信号)




使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|C114 ( 沪ICP备12002291号 )|联系我们 |网站地图  

GMT+8, 2017-1-21 12:13 , Processed in 0.051666 second(s), 14 queries , Gzip On.

Copyright © 1999-2016 C114 All Rights Reserved

Discuz Licensed

回顶部