我正在努力平衡气动主轴。对于不平衡分析,我使用加速度计(NI设备)。我有来自加速度计的电压信号,对应于以excel文件中保存的特定频率(rpm)的主轴振动。为了分析这个振动信号的不平衡,我使用" fft"在Matlab中的功能。我的数据以100,000 Hz的采样频率进行采样。我使用的是fft文档中给出的相同示例代码。在文档中,fft在与正弦波信号(50Hz和120Hz)的频率相对应的频率处具有峰值。当我使用相同的代码来获取40Hz(2400rpm)旋转频率的采样数据的fft时,我没有达到40Hz的峰值。难道我做错了什么??我应该在哪里提到fft代码中主轴的旋转频率。我想知道旋转频率(40Hz)振动信号的相位和幅度。 fft图看起来像this。我的代码如下。非常感谢任何帮助。
%For vibration analysis of signal without any trial mass.
filename = '2400RPM.xlsx';
sheet = 1;
xlRange = 'C40:C516039'; % Column C has sampled vibration data
x = xlsread(filename,sheet,xlRange);
T=1/100000;
Fs=1/T;
L = length(x);
t= (0:L-1)*T;
Y = fft(x);
mag1 = abs(Y/L);
mag = mag1(1:L/2+1);
mag(2:end-1) = 2*mag(2:end-1);
ph1 = rad2deg(Y/L);
ph = ph1(1:L/2+1);
ph(2:end-1) = 2*ph(2:end-1);
f=Fs*(0:(L/2))/L;
%PLOTTING RESULTS
%--------------------------------------
subplot(2,2,[1,2])
plot(t,x);
title('Vibration Signal: 2400RPM');
xlabel('Time (seconds)');
ylabel('Amplitude (voltage)');
subplot(2,2,3)
plot(f,mag);
title('Magnituge Plot');
xlabel('Frequency (Hz)');
ylabel('Amplitude');
subplot(2,2,4)
plot(f,ph);
title('Phase Plot');
xlabel('Frequency (Hz)');
ylabel('Phase (degree)');