Question

I have an audio file that represents the sound of a motor. I've been reading that the 'normal' fft doesn't deliver a valuable analysis about the machine, and that I should use the Order analysis to describe the 'behavior' of the machine. I recorded its sound while incrementing its speed, and I put the records together and calculated its spectogram. Here is the code for that:

%% read the Audio file and plot its 
clear, clc , clf;
M = 512;
k =1 
data= 0 ;
   for i =100:5:180
    fileName =['A10_uSp0_Mic100k_2nd_V_',int2str(i),'.wav']
    [x(:,k),Fs] = audioread(fileName);
    k = k+1 ;
end
for i = 1:length(x(1,:))
    data = [data(:);x(:,i)];
end
 k = length(x(1,:));
    while k ~= 2
   data = [data(:);x(:,k)];
   k = k -1;
    end
spectrogram(data,hamming(M),M/2,0:20:4000,Fs,'yaxis');

and the result looks like:

Spectogram

As you might be able to see, I incremented the speed of the machine by 5 for each timepoint. My question is how to calculate the order analysis for this system!? Thanks so much for any help!

Was it helpful?

Solution

This is more of a scientific question than a question about programming. Order analysis can be done using the fourier transform. All you need to do is looking for diagonal lines in the output, i.e. where the frequency of the noise is proportional to the rotation speed.

In your example image there is such an order from 2000 Hz at time(speed) 0 to 4000 Hz at time(speed) 150. Afterwards it seems to reflected downwards, probably an artifact of insufficient sampling.

So which order is it? For this you need to know the rotational speed of the motor which you do not seem to know. There is also another weaker order starting at 3000 Hz at time(speed) 0. With two or more visible orders you might be able to deduce the rotational speed of the motor (by requiring the frequencies to be whole number multiples of the original speed).

Anyway the code probably doesn't need to be changed except for a higher frequency resolution.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top