马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
初学信号处理,做一组振动加速度数据的处理,遇到一些很困惑的问题,想请大家帮忙解答一下!
①这个数据画出的时域图形总感觉有点不对。是不是我的AD数值转换成振动加速度值时出了问题?
②做出来的FFT图像,公驴皮图像感觉不太对劲。无法分辨。
现附上具体的代码和结果,请大家指教一下。
clear all;
[datafile, datapath]=uigetfile('*.tei','手动选择数据文件');
datafileposition=[datapath datafile ]
fid=fopen(datafileposition,'r');
fseek(fid,500,-1);%定位指针位置(数据存在500位以后)
data=zeros(8192,1);%创建存放数据的数组
%读取AD数据(数据一共8192个)
for i=1:8192
data(i)=fread(fid,1,'int16');
end
fs=2.56*8000;
vibdata=data.*(5000/2048/30);%将AD数值转换为振动加速度值,不知道对不对。
x=vibdata(:,1);%振动数据
figure(1);plot(x);axis tight;
n=length(x);%数据长度
nfft= 2^nextpow2(length(x));%fft变换的数据长度
ff=fs*(0:nfft/2-1)/nfft;%频率序列
y=fft(x,nfft);mag=abs(y);%fft
figure(2);
subplot(211);plot(ff,mag(1:nfft/2)*2/nfft); ylabel('幅值');xlabel('频率/Hz');title('FFT频谱');
Pxx=(abs(y.^2)/nfft)*2;%'直接法'功率谱
subplot(212);plot(ff,Pxx(1:nfft/2));ylabel('幅值'); xlabel('频率/Hz');title('功率谱');
|