Borrar filtros
Borrar filtros

FFT of vibration data, Help me please.

3 visualizaciones (últimos 30 días)
Phakapol Tungboontina
Phakapol Tungboontina el 11 de Mayo de 2022
Comentada: Phakapol Tungboontina el 11 de Mayo de 2022
Dear friends
I have vibration data from the device, I need to convert it into Freq Domain (Magnitude vs Freq). I've tried several times and still stuck, I can't import that data into the formula/function. I've attached an excel file I got from the device. maybe you can download and see the excel files for complete information. Could you guys help me, what function/formula should I write? and how to find the max point in the plot?

Respuesta aceptada

Star Strider
Star Strider el 11 de Mayo de 2022
Try this —
T1 = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/994895/fantest.xlsx%20-%20Sheet2.xlsx', 'VariableNamingRule','preserve')
T1 = 717×6 table
hours Current Voltage axis x axis y axis z _____ _______ _______ ______ ______ ______ 1 0.182 228.8 -0.14 -0.25 0.84 2 0.181 228.8 -0.1 -0.22 0.84 3 0.182 229 0.07 -0.06 0.86 4 0.182 228.9 0.04 -0.12 0.86 5 0.181 228.7 0.02 -0.08 0.85 6 0.182 228.9 0.15 -0.01 0.86 7 0.182 229.1 0.02 -0.1 0.85 8 0.181 228.8 0.16 0.04 0.86 9 0.181 228.9 0.02 -0.12 0.84 10 0.181 228.6 0.25 0.14 0.89 11 0.181 228.7 0.19 0.1 0.87 12 0.181 228.9 -0.17 -0.23 0.84 13 0.181 228.8 0.17 0.09 0.88 14 0.182 229.1 0.3 0.17 0.89 15 0.182 229.2 0.29 0.12 0.87 16 0.182 229.5 0.12 -0.01 0.86
VN = T1.Properties.VariableNames
VN = 1×6 cell array
{'hours'} {'Current'} {'Voltage'} {'axis x'} {'axis y'} {'axis z'}
L = size(T1,1);
% QQ1 = nnz(diff(T1{:,1}) ~= 1)
Ts = T1.hours(2) - T1.hours(1); % Sampling Interval
Fs = 1/Ts; % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
NFFT = 2^nextpow2(L); % For Efficiency
FT_T1 = fft(T1{:,2:end} - mean(T1{:,2:end}), NFFT)/L; % Fourier Transform (Mean Subtracted To Show Other Peaks More Clearly)
Fv = linspace(0, 1, NFFT/2+1)*Fn; % Frequency Vector
Iv = 1:numel(Fv); % Index Vector
figure
plot(Fv, abs(FT_T1(Iv,:))*2)
grid
xlabel('Frequency (hr^{-1})')
ylabel('Amplitude')
legend(VN{2:end}, 'Location','best')
NrSp = size(FT_T1,2);
NrSp = 5
figure
for k = 1:NrSp
subplot(NrSp,1,k)
plot(Fv, abs(FT_T1(Iv,k))*2)
grid
ylabel('Amplitude')
title(VN(k+1))
end
xlabel('Frequency (hr^{-1})')
.
  4 comentarios
Star Strider
Star Strider el 11 de Mayo de 2022
As always, my pleasure!
Phakapol Tungboontina
Phakapol Tungboontina el 11 de Mayo de 2022
Can you help me another question that I post in topic How to conversion of Acceleration FFT to Velocity?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Fourier Analysis and Filtering en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by