0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文读懂FFT

jf_78858299 来源:欣飞鸽 作者:飞鸽 2023-05-05 09:51 次阅读

FFT--快速傅里叶变换

如果说改变世界必须了解的算法,那么FFT绝对占一席之位。

理论介绍 & 工程应用

理论介绍

图片

1

傅里叶变换与离散傅里叶变换

傅里叶变换公式是基于连续定义的,但是在我们的计算机对数据的处理都是离散的,所以必须对傅里叶变换进行离散化,进而有了离散傅里叶变换。

2

快速傅里叶变换

快速傅立叶变换(FFT)是离散傅立叶(DFT)的快速算法,它是根据离散傅立叶变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。它对傅立叶变换的理论并没有新的发现,但是对于在计算机系统或者说数字系统中应用离散傅立叶变换,可以说是进了一大步。

图片

FFT是基于DFT的一种算法,目的是为了加快DFT的计算速度。当采样点N=65536=2^16,DFT的计算量约是FFT的4096倍。

FFT典型的时域2分裂算法图示如下:

图片

3

物理意义

任何连续测量的时序或信号,都可以表示为不同频率的正弦波信号的无限叠加。有些信号在时域上是很难看出什么特征的,但是如果变换到频域之后,就很容易看出特征了。这就是很多信号分析采用FFT变换的原因。

图片

因此对于一个时域信号进行采样,经FFT运算处理后可以得到该信号的频谱图(频率及对应的幅值),基于频谱图我们可以设计特定的滤波器来滤除特定频率的噪声,从而让原信号更加真实的显示出来。如飞控设计过程中,对陀螺仪/加速度信号进行频谱分析,滤除机架振动的噪声频率,从而可以降低机架振动对姿态解算、飞机控制的影响。

工程应用

编程原理

FFT计算的快速性简单来讲就是数学家利用上面提到的旋转因子W的周期性,对称性等性质进行公式化简。在算法编程中则是不断利用已经计算过的点来算新的点,即:旧点算新点。

FFT中的采样序列经拆分抽取成很多的蝶形图,对于N=8的时间抽取如下:

图片

以上的拆分提取,可以称之为码位倒序,倒序获得的序列便为我们蝶形计算的初始序列,如下图的左边一列:

图片

将上图大的蝴蝶组,拆分想象成一个个的蝴蝶并联及串联组成,单个蝴蝶计算如下:

图片

后面的蝴蝶使用前面蝴蝶的计算后的节点,从而旧点算新点,循环计算多层,便可得到最后的频谱数列。

码位倒序及蝴蝶图的编程实现可知乎查找《C语言系列之FFT算法实现》,推导与编程实现讲的非常详细。

结果分析

虽然很多人都知道FFT是什么,可以用来做什么,怎么去做,但是却不知道FFT之后的结果是什意思、如何决定要使用多少点来做FFT。

由DFT公式可知,使用的输入值是经过ADC后的采样值(采样定理告诉我们,采样频率要大于信号频率的两倍),输入采样点的数量N决定了转换的计算规模。

N个采样点,经过FFT之后,就可以得到N个点的FFT结果。为了方便进行FFT运算,通常N取2的整数次方(参见FFT原理)。FFT运算量:Nlog2N(2为对数的底)。

变换后的频谱输出包含同样数量的采样点N,但是其中有一半的值是冗余的,通常不会显示在频谱中,所以真正有用的信息是N/2+1个点(依据采样定理)。

工程应用分析

假设采样频率为Fs,信号频率F,采样点数为N。那么FFT之后结果就是一个为N点的复数。每一个点就对应着一个频率点。这个点的模值,就是该频率值下的幅度特性。

纵坐标--幅值

假设原始信号的峰值为A,那么FFT的结果的每个点(除了第一个点直流分量之外)的模值就是A的N/2倍。而第一个点就是直流分量,它的模值就是直流分量的N倍。而每个点的相位呢,就是在该频率下的信号的相位。

横坐标--频率

第一个点表示直流分量(即0Hz),而最后一个点N的再下一个点则表示采样频率Fs,这中间被N-1个点平均分成N等份,每个点的频率依次增加。例如某点n所表示的频率为:Fn=(n-1)*Fs/N。

由上面的公式可以看出,Fn所能分辨到频率为Fs/N,如果采样频率Fs为1024Hz,采样点数N为1024点,则可以分辨到1Hz。

如果采样N为2048点,则结果可以分辨到0.5Hz。

如果要提高频率分辨力,则必须增加 采样点数 ,也即 采样时间(总采样计算周期) 。但这在一些实际的应用中是不现实的,有些需要在较短的时间内完成分析。

举个栗子

假设我们有一个信号,它含有2V的直流分量,频率为0.5371Hz、幅度为73V的交流分量,以及一个频率为1.025Hz、幅度为50V的交流分量。

用数学表达式就是如下:

S=2+73sin(2pi0.5371t)+50sin(2pi1.025t)

我们以50Hz的采样率对这个信号进行采样,采样点N(1024)进行FFT运算。

按照我们上面的分析,Fn=(n-1)*Fs/N,我们可以知道,每两个

点之间的间距就是50/1024Hz。我们的信号有3个频率,在频率点上出现峰值,其它各点应该 接近0(离散点的FT频谱是连续的,而DFT只是做了连续频谱的采样)

运算结果如下:

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FFT
    FFT
    +关注

    关注

    15

    文章

    433

    浏览量

    59250
  • 计算机系统
    +关注

    关注

    0

    文章

    276

    浏览量

    24071
  • DFT
    DFT
    +关注

    关注

    2

    文章

    224

    浏览量

    22651
  • 傅立叶
    +关注

    关注

    0

    文章

    36

    浏览量

    12509
  • 数字系统
    +关注

    关注

    0

    文章

    140

    浏览量

    20815
收藏 人收藏

    评论

    相关推荐

    读懂接口模块的组合应用有哪些?

    读懂接口模块的组合应用有哪些?
    发表于 05-17 07:15

    读懂如何去优化AC耦合电容?

    读懂如何去优化AC耦合电容?
    发表于 06-08 07:04

    读懂什么是NEC协议

    读懂什么是NEC协议?
    发表于 10-15 09:22

    读懂中断方式和轮询操作有什么区别吗

    读懂中断方式和轮询操作有什么区别吗?
    发表于 12-10 06:00

    读懂传感器的原理与结构

    读懂传感器传感器在原理与结构上千差万别,如何根据具体的测量目的、测量对象以及测量环境合理地选用传感器,是在进行某个量的测量时首先要解决的问题。当传感器确定之后,与之相配套的测量方法和测量设备也就
    发表于 01-13 07:08

    读懂无线充电产业链

    读懂无线充电产业链,新用户关注【电子发烧友网】微信公众号,输入“积分”,立送10积分!
    发表于 12-04 19:13 46次下载

    读懂NB-IoT 的现状、挑战和前景

    读懂 NB-IoT 的现状、挑战和前景
    的头像 发表于 02-28 15:42 6316次阅读

    读懂MCU的特点、功能及如何编写

    读懂MCU的特点、功能及如何编写
    发表于 12-05 09:51 24次下载
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>读懂</b>MCU的特点、功能及如何编写

    读懂汽轮机转子轴油封磨损修复的方法

    读懂,汽轮机转子轴油封磨损修复的方法
    发表于 06-24 15:42 1次下载

    读懂方壳电池仓段差缺陷检测

    读懂方壳电池仓段差缺陷检测
    的头像 发表于 01-12 15:46 859次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>读懂</b>方壳电池仓段差缺陷检测

    读懂,什么是BLE?

    读懂,什么是BLE?
    的头像 发表于 11-27 17:11 2101次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>读懂</b>,什么是BLE?

    读懂车规级AEC-Q认证

    读懂车规级AEC-Q认证
    的头像 发表于 12-04 16:45 856次阅读

    读懂微力扭转试验机的优势

    读懂微力扭转试验机的优势
    的头像 发表于 11-30 09:08 518次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>读懂</b>微力扭转试验机的优势

    读懂新能源汽车的功能安全

    电子发烧友网站提供《读懂新能源汽车的功能安全.pdf》资料免费下载
    发表于 09-04 09:22 3次下载

    读懂MSA(测量系统分析)

    读懂MSA(测量系统分析)
    的头像 发表于 11-01 11:08 657次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>读懂</b>MSA(测量系统分析)