FFT of bearing signal

23 visualizaciones (últimos 30 días)
Eris Prifti
Eris Prifti el 2 de Ag. de 2023
Comentada: Jon el 15 de Ag. de 2023
Hi everyone, i have a problem : when i do the fft of a signal i don't see the first harmonic , instead the fft show the first harmonic multiplied for 3. In fact my fundamental harmonic is 16,66 Hz e when i do the FFT it show 49,80 Hz. Is possible this? I insert the code and the signal on this. Also the sampling frequency is 10kHz.
S=size(N);
L2=S(1,1);
NFFT= 2^nextpow2(L2);
Y=fft(N,NFFT)/L2;
f1=f/2*linspace(0,1,NFFT/2+1);
f2=2*abs(Y(1:NFFT/2+1));
  4 comentarios
Jon
Jon el 2 de Ag. de 2023
I'm not seeing anything in either your attached code or data file that indicates what the sampling frequency is. I don't know how you can scale the fft in Hz without knowing the sampling frequency.
Also in your attached code, you reference a variable called N, but the attached data file only has one column of data named x11. You also don't tell us the value of f in your code, is that the sampling frequency? If so what is it's value?
Eris Prifti
Eris Prifti el 2 de Ag. de 2023
Sorry,
for fs is 10Khz and N indicate the size of the column named x11. I hope this is sufficiente
S=size(x11);
Unrecognized function or variable 'x11'.
L2=S(1,1);
NFFT= 2^nextpow2(L2);
Y=fft(x11,NFFT)/L2;
f1=fs/2*linspace(0,1,NFFT/2+1);
f2=2*abs(Y(1:NFFT/2+1));

Iniciar sesión para comentar.

Respuesta aceptada

Jon
Jon el 2 de Ag. de 2023
In the attached code, I independently calculated the spectrum and compared to your calculation. It seems correct that your data has a very strong component at 50 Hz and higher harmonics of 50 Hz. Note also in the time domain plot, the 0.02 second period (50 Hz) oscillation is clearly visible. This gives added confidence that the scaling is correct. I also see a smaller peak at approx. 28 Hz. I agree that there is nothing significant at harmonics of the rotating frequency, which you report as 1000rev/min*1 min/60s = 16.667 Hz.
So either there is extremely little imbalance in the shaft, or perhaps the shaft frequency is not actually 1000 rpm. Regarding the 50Hz component, are you in a country where the electrical line frequency is 50 Hz. If so you are likely picking up "hum" from the power supply, or nearby power lines.
% % % S=size(N);
% % % L2=S(1,1);
% % % NFFT= 2^nextpow2(L2);
% % % Y=fft(N,NFFT)/L2;
% % % f1=f/2*linspace(0,1,NFFT/2+1);
% % % f2=2*abs(Y(1:NFFT/2+1));
% Assign parameters
fs = 10e3; % sampling frequency
% Load data from data file, data is in x11
load('vettore.mat')
% Find the length of the signal
L = numel(x11);
% Make sure that length of signal is even, if it isn't throw away last
% value to make it even
if rem(L,2)~=0
x11 = x11(1:end-1);
L = L-1;
end
% Compute the fft
Y = fft(x11);
% Compute the two sided spectrum P2
P2 = abs(Y/L);
% Compute the single sided spectrum P1
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
% Define the frequency domain f and plot the single sided spectrum, P1
f = fs*(0:(L/2))/L;
% Plot results
% Plot the time domain signal
t = (0:L-1)*1/fs;
figure
plot(t,x11)
xlabel("time [s]")
ylabel("x11")
title("time domain signal x11")
xlim([0,0.1]); % zoom in
% Plot spectrum
figure
plot(f,P1)
title("Single-Sided Amplitude Spectrum of X(t)")
xlabel("f [Hz]")
ylabel("|P1(f)|")
xlim([0,300])
% Compare to OP's code
S=size(x11);
L2=S(1,1);
NFFT= 2^nextpow2(L2);
Y=fft(x11,NFFT)/L2;
f1=fs/2*linspace(0,1,NFFT/2+1);
f2=2*abs(Y(1:NFFT/2+1));
figure
plot(f1,f2)
title("OP's Spectrum")
xlabel("frequency [Hz]")
ylabel("Magnitude")
xlim([0,300])
  16 comentarios
Eris Prifti
Eris Prifti el 11 de Ag. de 2023
Hi jon,
i have another question : is possible to impement a Homomorphic filtering demodulation for signal like bearing in matlab and can you write the code if possible pls?
Jon
Jon el 15 de Ag. de 2023
Sorry, I'm not familiar with that technique. In general, I can offer you advice on particular problems you are having, but don't have time to write actual applications for people. If you start to work on your Homomorphic demodulation, and have specific MATLAB problems please open up a new question so others can see it and help you.

Iniciar sesión para comentar.

Más respuestas (1)

Eris Prifti
Eris Prifti el 3 de Ag. de 2023
Hi david,
the 50 Hz is the hum frequency of my electrical line frequency . Is possible to filter this harmonic and its harmonics?
  1 comentario
Jon
Jon el 3 de Ag. de 2023
To keep the flow of this thread, it would be better to please put this as a comment to an anwer, rather than as an answer to your own question.

Iniciar sesión para comentar.

Community Treasure Hunt

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

Start Hunting!

Translated by