matlab复数信号_DFT(FFT)结果,采样率,信号频谱的理
解
1、因为周期T1信号可以表⽰为各级⾼次不同频率的信号(正余弦或者指数)叠加。
但是,我们通常接触的都是数字信号。数字信号是对原始模拟系统采样⽽得到的。
2、由于采样后得到信号的频谱,是将原始模拟信号的频谱中,低于fs/2的部分和⾼于fs/2的频谱混叠在⼀起,⽽且呈周期出现。因此我们看到的DFT(FFT是其快速计算⽅法,含义相同)不⼀定是真实的频谱。只有在采样率⾼于模拟信号包含频率的最⾼频率的两倍,我们看到的才是真实的频谱。这个要求采样率⾼是容易理解。
对于上图中,采样率30Hz,⽽模拟信号f1=10Hz采集的结果,如红⾊数据。与,模拟信号f2=40hz,采集结果是⼀样的。当我们只看到AD 采集的信号是红⾊的信号,我们不知道真实的信号是10Hz,还是40Hz的,甚⾄更⾼的频率⽐如f=30*n+10,其中n>1。
因此频率混跌是这样发⽣的:1、2、3..倍于采样率的信号,采样值是⼀样的,因此傅⾥叶频谱看上去也是⼜回到0频率。⾼于采样频率的原始信号中的频率,⼜回到的原点附近,f1-n*fs。其实不是回到了0频率⽽是叠加到了0频率上,就如同在极坐标中,0度和2
位置⼀样。后续⽤Z变换则直接⽤单位圆表⽰频谱特性了。
总之,采样导致周期性频谱。
离散傅⾥叶变换,把单位圆上的频谱(⾼低频混跌了频谱)周期性的展开,就是我们看到的频谱。因此经过采样的周期信号频谱是混叠的和周期的(周期为Fs)。
因为采样导致周期性频谱,那⾼频混跌到低频怎么办?(1)提⾼采样率,把周期拉开呀,所以我们常常采⽤⾼采样采集卡。这样万⼀信号中混⼊⾼频噪声被容易看清楚。(2)采样前就⽤模拟滤波器把⾼频滤掉,称为抗混叠滤波器,不关⼼这个⾼频,就不让它添乱了。
3、DFT(通常采⽤FFT快速计算⽅法)的结果,是⼀个周期的结果。也就是N点的采集数据,输出N
点的结果对应0~fs。因此FFT结果,数据点间隔对应的频率间隔是fs/N,也就是第⼀点是0,第⼆点是fs/N,第3点是2*fs/N,第k点是(k-1)*fs/N。其中有效范围是0~fs/2范围。
matlab中,fft()函数的结果是个复数,取绝对值表⽰幅值。⾮零频率的幅值为fft结果,除以⼆分之⼀点数(N/2),可以得到正确的幅值,0频率直接除以点数N。
4、对于离散序列,我们实在懒得因为采样率不同,每个数据⽤不同的频率表⽰。因此我们都把周期⽤2π表⽰。这个2π的含义就是采样率。采样后离散序列的频谱是以2π为周期的,也是以fs为周期的。有了这⼆者的等价关系,我们就可顺利地在离散序列和被采样的模拟原始信号频率之间互相理解和换算。我们常把⾓频率归结为2π周期(⾓频率为横轴),或者频率fs=1(频率为横轴),称为归⼀化频率。
5、傅⾥叶变换主要是理解其含义和概念,它们之间的严格逻辑关系并不重要。⽐如连续周期信号⽤傅⾥叶级数(FS)表⽰,因为其FT⽆限⼤不能表⽰。⾮周期连续信号⽤傅⾥叶变换(FT)表⽰,因为其FS⽆限⼩,为0,不能表⽰。对连续⾮周期信号数据⽚段采样的离散时间傅⾥叶变换(DTFT),因为被采样所以是具有周期性频谱特性的FT。离散周期信号-DFS(离散傅⾥叶级数)表⽰,因为它的频谱是离散的(因为时域是周期的)且周期的(因为被采样过)。离散数据⽚段⽤DFT(离散傅⾥叶变换),DFT是经过⼈为周期延续,并借⽤DFS的概念,
再截取DFS结果的⼀个周期,本质上DFT也是⼀个⼈为的⾏为,所以没有必要严格思考DFS与DFT之间的逻辑变换的严密性。
matlab求傅里叶变换
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论