傅里叶变换你都了解了吗?
学习傅里叶变换需要面对大量的数学公式,数学功底较差的同学听到傅里叶变换就头疼。事实上,许多数学功底好的数字信号处理专业的同学也不一定理解傅里叶变换的真实含义,不能做到学以致用。
事实上,傅里叶变换的相关运算已经非常成熟,有现成函数可以调用。对于绝大部分只需用好傅里叶变换的同学,重要的不是去记那些枯燥的公式,而是理解傅里叶变换的含义及意义。
本文试图不用一个数学公式,采用较为通俗的语言深入浅出的阐述傅里叶变换的含义、意义及方法,希望大家可以更加亲近傅里叶变换,用好傅里叶变换。
一、伟大的傅里叶、伟大的争议
1807年,39岁的法国数学家傅里叶于法国科学学会上展示了一篇论文(此时不能算发表,该论文要到21年之后发表),论文中有个在当时极具争议的论断:“任何连续周期信号可以由一组适当的正弦曲线组合而成”。
这篇论文,引起了法国另外两位著名数学家拉普拉斯和拉格朗日的极度关注。
58岁的拉普拉斯赞成傅里叶的观点。71岁的拉格朗日(貌似现在的院士,不用退休)则反对,反对的理由是“正弦曲线无法组合成一个带有棱角的信号” 。屈服于朗格朗日的威望,该论文直到朗格朗日去世后的第15年才得以发表。
之后的科学家证明:傅里叶和拉格朗日都是对的。
有限数量的正弦曲线的确无法组合成一个带有棱角的信号,然而,无限数量的正弦曲线的组合从能量的角度可以非常无限逼近带有棱角的信号。
二、傅里叶变换的定义
后人将傅里叶的论断进行了扩展:满足一定条件的函数可以表示成三角函数(正弦和/或余弦函数)或者它们的积分的线性组合。如何得到这个线性组合呢?这就需要傅里叶变换。
一定条件是什么呢?
这是数学家研究的问题,对于大多数搞电参量测量的工程师而言,不必关注这个问题,因为,电参量测量中遇到的周期信号,都满足这个条件。
这样,在电参量测量分析中,我们可以用更通俗的话来描述傅里叶变换:
任意周期信号可以分解为直流分量和一组不同幅值、频率、相位的正弦波。分解的方法就是傅里叶变换。
并且,这些正弦波的频率符合一个规律:是某个频率的整数倍。这个频率,就称为基波频率,而其它频率称为谐波频率。如果谐波的频率是基波频率的N倍,就称为N次谐波。直流分量的频率为零,是基波频率的零倍,也可称零次谐波。
三、傅里叶变换的意义
1、为什么要进行傅里叶变换呢?
傅里叶变换是描述信号的需要。只要能反映信号的特征,描述方法越简单越好。信号特征可以用特征值进行量化。
所谓特征值,是指可以定量描述一个波形的某种特征的数值。全面描述一个波形,可能需要多个特征值。
比如说:正弦波可以用幅值和频率两个特征值全面描述;方波可以用幅值、频率和占空比三个特征值全面描述(单个周期信号不考虑相位)。
上述特征值,我们可以通过示波器观测实时波形获取,称为时域分析法。事实上,许多人都习惯于时域分析法,想要了解一个信号时,一定会说:“让我看看波形!”
可是,除了一些常见的规则信号,许多时候,给你波形看,你也看不明白。复杂的不讲,看看下面这个波形,能看出道道吗?
我们能看到的仅仅是一个类似正弦波的波形,其幅值在按照一定的规律变化。如何记载这个波形的信息呢?尤其是量化的记载,很难。
事实上,上述波形采用傅里叶变换后,就是一个50Hz的正弦波上叠加一个40Hz的正弦波,两者幅度不同,40Hz的幅度越大,波动幅度就越大,而波动的频率就是两者的差频10Hz(三相异步电动机叠频温升试验时的电流波形)。
再看一个看似简单的波形:
这个波形有点像正弦波,但是,比正弦波尖,俗称“尖顶波”,多见于变压器空载电流输入波形。
我们很难准确定量其与正弦波的区别。采用傅里叶变换后,得到下述频谱(幅值谱):
主要包括3、5、7、9次谐波,一目了然。
傅里叶变换是一种信号分析方法,让我们对信号的构成和特点进行深入的、定量的研究。把信号通过频谱的方式(包括幅值谱、相位谱和功率谱)进行准确的、定量的描述。
这就是傅里叶变换的主要目的。
现在,我们知道傅里叶变换的目的了, 剩下的问题是:
2、为什么傅里叶变换要把信号分解为正弦波的组合,而不是方波或三角波?
其实,如果张三能够证明, 任意信号可以分解为方波的组合,其分解的方法不妨称为张三变换;李四能够证明,任意信号可以分解为三角波的组合,其分解的方法也可以称为李四变换。
傅里叶变换是一种信号分析的方法。既然是分析方法,其目的应该是把问题变得更简单,而不是变得更复杂。傅里叶选择了正弦波,没有选择方波或其它波形,正好是其伟大之处!
正弦波有个其它任何波形(恒定的直流波形除外)所不具备的特点:正弦波输入至任何线性系统,出来的还是正弦波,改变的仅仅是幅值和相位,即:正弦波输入至线性系统,不会产生新的频率成分(非线性系统如变频器,就会产生新的频率成分,称为谐波)。用单位幅值的不同频率的正弦波输入至某线性系统,记录其输出正弦波的幅值和频率的关系,就得到该系统的幅频特性,记录输出正弦波的相位和频率的关系,就得到该系统的相频特性。
线性系统是自动控制研究的主要对象,线性系统具备一个特点,多个正弦波叠加后输入至一个系统,输出是所有正弦波独立输入时对应输出的叠加。
也就是说,我们只要研究正弦波的输入输出关系,就可以知道该系统对任意输入信号的响应。
这就是傅里叶变换的最主要的意义。
四、如何求傅里叶变换?
文章开始就说了,具体求傅里叶变换,有成熟的函数可供调用。本文只讲述如何理解傅里叶变换的思想。如果你掌握了这个思想,不用再记公式,也不用去调用什么函数,自己编个简单程序就可实现。就算你不会编程,只要你学过三角函数,至少可以理解傅里叶变换的过程。
傅里叶的伟大之处不在于如何进行傅里叶变换,而是在于给出了“任何连续周期信号可以由一组适当的正弦曲线组合而成”这一伟大的论断。
知道了这一论断,只要知道正弦函数的基本特性,变换并不难,不要记公式,你也能实现傅里叶变换!
正弦函数有一个特点,叫做正交性,所谓正交性,是指任意两个不同频率的正弦波的乘积,在两者的公共周期内的积分等于零。
这是一个非常有用的特性,我们可以利用这个特性设计一个如下的检波器(下称检波器A):
检波器A由一个乘法器和一个积分器构成,乘法器的一个输入为已知频率f的单位幅值正弦波(下称标准正弦信号f),另一个输入为待变换的信号。检波器A的输出只与待变换信号中的频率为f的正弦分量的幅值和相位有关。
待变换信号可能包含频率为f的分量(下称f分量),也可能不包含f分量,总之,可能包含各种频率分量。一句话,待变换信号是未知的,并且可能很复杂!
没关系,我们先看看,待变换信号是否包含f分量。
因为其它频率分量与标准正弦信号f的乘积的积分都等于零,检波器A可以当它们不存在!经过检波器A,输出就只剩下与f分量有关的一个量,这个量等于待变换信号中f分量与标准正弦信号f的乘积的积分。
很容易得到的结论是:
如果输出不等于零,就说明输入信号包含f分量!
这个输出是否就是f分量呢?
答案:不一定!
正弦波还有下述的特性:
相同频率的正弦波,当相位差为90°时(正交),在一个周期内的乘积的积分值等于零;当相位相同时,积分值达到最大,等于两者的有效值的乘积,当相位相反时,积分值达到最小,等于两者的有效值的乘积取反。
我们知道标准正弦信号f的初始相位为零,但是,我们不知道f分量的初始相位!如果f分量与标准正弦信号f的相位刚好差90°(或270°),检波器A输出也等于零!为此,我们再设计一个检波器B:
检波器B与检波器A的不同之处在于检波器B用一个标准余弦信号f(与标准正弦信号A相位差90°)替代滤波器A中的标准正弦信号f。如果待变换信号中包含f分量,检波器A和检波器B至少有一个输出不等于零。
利用三角函数的基础知识可以证明,不论f分量的初始相位如何,检波器A和检波器B输出信号的幅值的方和根就等于f分量的幅值;而检波器B和检波器A的幅值的比值等于f分量初始相位的正切,如此如此……即可求出f分量的相位。
我们再把标准正弦信号f和标准余弦信号f的频率替换成我们关心的任意频率,就可以得到输入信号的各种频率成分。如果知道输入信号的频率,把这个频率作为基波频率f0,用f0、2f0、3f0依次替代标准正弦信号f和标准余弦信号f的频率,就可以得到输入信号的基波、2次谐波和3次谐波。
这就是傅里叶变换。什么?不会积分?
没有关系,实际上,在谐波检测仪、电能质量分析仪等各类电参量测量仪器中,现在用的都是基于交流采样的离散傅里叶变换,在离散信号处理中,累加就是积分!