-3

I got a acceleration data from rotating machine on field. so, I want to know about frequency components. so, did FFT on python (np.fft.fft).

Q) When i got a acceleration data that scale is -20~20 m/s^2. but, after fft, scale was converted 0~1(unit: i don't know....)

I want to understand Why scale was converted after FFT? and How can I set a unit that after FFT?

Fs = 51200                             
T = 1/Fs  
L = len(data1)         
t = np.arange(0,L-1)*T      
Y = np.fft.fft(data1)
P2 = abs(Y/L)
P1 = P2[0:int(L/2+1)]
P1[1:-1] = 2*P1[1:-1]
f = Fs*np.arange(0,L/2+1)/L

Before FFT(Original Acceleration data) Before FFT, Original Acceleration data

After FFT(Don't know abscissa's unit) After FFT, Don't know abscissa's unit

Andy_KIM
  • 35
  • 1
  • 4
  • the x axis units of any fft is frequency (wave cycles per time period). the y axis units are the magnitude portion of that frequency within your signal. i suggest you do some reading about [control theory] (https://en.wikipedia.org/wiki/Control_theory) and [Fourier series](https://en.wikipedia.org/wiki/Fourier_series) – yann ziselman Oct 11 '21 at 09:50
  • thanks for your answer. Y axis is magnitude, right. but, I want to know magnitude's unit. when i read some paper, expressed the units of the y-axis. – Andy_KIM Oct 11 '21 at 10:36

1 Answers1

0

The Fourier transform is decomposing your signal in harmonic waves (linear combination of sines and cosines), watch this if you need more details.

The FFT will put, for i in range(-(N+1)//2, N//2) at the index i the coefficient of a complex exponential of frequency i * N / Fs, so the abscissa of your plot is Frequency.

Bob
  • 13,867
  • 1
  • 5
  • 27