概述
一、前言
连续信号的频域分析:将信号分为周期与非周期利用FS和FT分析,连续信号的频谱是关于纵轴对称的,且是非周期的。
但是计算机不能处理连续信号,只可处理数字信号。
所以数字信号频谱特性更重要:
二、DFT(离散傅里叶变换)
数字信号的频谱是周期信号,周期是 2π rad/s(数字角频率),N点DFT是对数字信号的DTFT(傅里叶变换)在[0,2π]上的N点等间隔采样。FFT是在DFT的基础上简化了计算,提高了速度。
数字角频率=模拟角频率*采样周期,当数字角频率W=2π时,对应的模拟角频率是fs(采样频率)。
所以当以模拟角频率/模拟频率(f)为自变量时的频谱实际上是以fs为最高频率的N个采样点。
当以数字角频率W为自变量时的频谱实际上是以2π为最高频率的N个采样点。
matlab ffft
Y = fft(X)
%length(X)点DFT
Y = fft(X,n)
%n点DFT
数字信号频谱分析自变量:数字角频率;W=(0:N-1)*2*pi/N (对2π N等分)
因变量:20*log( abs ( fft ( x ) ) )/log(2)(dB)
与连续信号频谱一样,数字信号的DFT也对称,关于N/2对称,即关于W=π,f=fs/2对称。W:数字角频率,f:模拟频率。
三.连续/数字信号频域分析
3.1.连续信号:
3.1.1周期信号:单/双边谱,对称 and功率谱密度
单边谱:
双边谱:
3.1. 2.非周期信号:频谱密度 连续 对称and 能量谱密度
3.2数字信号:频谱DTFT周期
DFT(FFT):对DTFT在数字角频率[0,2π]N点等间隔采样 / 模拟频率[0,fs]N点等间隔采样,关于N/2,π(数字角频率),fs/2(模拟频率)对称。
四.数字信号频谱分析:
y = fft(x);length(x)点FFT
频率:取模拟频率f = (0:N-1)*fs/N
幅频:20*log(abs(fft(x)*2/N))/log(10),单位dB;或者abs(fft(x))*N/2也可以
plot(w(1:N/2),y(1:N/2)),由于对称性,取一半点画图。
function plot_fft(x,fs)
%x:待处理信号
%fs:采样率
%N:N点FFT
N = length(x);
y = fft(x);
y = abs(y);
f = (0:N-1)*fs/N;
figure,plot(f(1:N/2),y(1:N/2)*2/N),grid on,xlabel('f/Hz'),ylabel('|fft(x)|'),title('信号幅频特性'),grid on;
end
function plot_fft_angle(y,fs,N)
%y = fft(x);
%N:采样点数
%fs:采样率
f = (0:N-1)*fs/N;
ph = 2*angle(y(1:N/2));
plot(f(1:N/2),ph(1:N/2));
end
最后
以上就是忧虑云朵为你收集整理的数字信号频域分析:DFT与FFT的全部内容,希望文章能够帮你解决数字信号频域分析:DFT与FFT所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复