Matlab分析FFT数据,采用录波器记录数据,采样10M/s

xlsread()函数读取.CSV格式的文件;

num = xlsread(‘C:\Users\guochangfeng\Desktop\有源阻尼\系数9\tek0050CH1.csv’,1,‘B22:B400000’);

在利用fft()函数对读取的数据进行FFT分析;
plot(num);
y = fft(num);

采样1M;
fs=10e6; N=length(num); %采样频率和数据点数
n=0:N-1; %时间序列

mag=abs(y);
f=n*fs/N;

最后在画出频谱分析图;
length(f);
length(mag);
bar(f(10:1000),mag(10:1000));

% %% 例1:x=0.5sin(2pi15t)+2sin(2pi40t)。采样频率fs=100Hz,分别绘制N=128、1024点幅频图。
% clf;
% fs=100;N=128; %采样频率和数据点数
% n=0:N-1;t=n/fs; %时间序列
% x=0.5sin(2pi15t)+2sin(2pi40t); %信号
% y=fft(x,N); %对信号进行快速Fourier变换
% mag=abs(y); %求得Fourier变换后的振幅
% f=nfs/N; %频率序列
% subplot(2,2,1),plot(f,mag); %绘出随频率变化的振幅
% xlabel(‘频率/Hz’);
% ylabel(‘振幅’);title(‘N=128’);grid on;
% subplot(2,2,2),plot(f(1:N/2),mag(1:N/2)); %绘出Nyquist频率之前随频率变化的振幅
% xlabel(‘频率/Hz’);
% ylabel(‘振幅’);title(‘N=128’);grid on;
% %对信号采样数据为1024点的处理
% fs=100;N=1024;n=0:N-1;t=n/fs;
% x=0.5
sin(2pi15t)+2sin(2pi40t); %信号
% y=fft(x,N); %对信号进行快速Fourier变换
% mag=abs(y); %求取Fourier变换的振幅
% f=n
fs/N;
% subplot(2,2,3),plot(f,mag); %绘出随频率变化的振幅
% xlabel(‘频率/Hz’);
% ylabel(‘振幅’);title(‘N=1024’);grid on;
% subplot(2,2,4)
% plot(f(1:N/2),mag(1:N/2)); %绘出Nyquist频率之前随频率变化的振幅
% xlabel(‘频率/Hz’);
% ylabel(‘振幅’);title(‘N=1024’);grid on;