LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Separation of integer and non-integer frequency ratio components in FFT

Hi,

I would like to separate integer frequency components and non-integer components of a signal from FFT.

I tried identifying the frequency content of the signal but I am not getting any idea to separate those frequency components.

Could you please give some suggestions by looking at the attached VI

0 Kudos
Message 1 of 7
(3,690 Views)
One of the basic problems with what you are doing is defining what is an integer. The output of an FFT consists of floating point numbers. Floats are by definition approximations.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 2 of 7
(3,677 Views)

Here integer non-integer means... the frequency content of the signal ( i.e. 1Hz peak, 50Hz peak & 9.5Hz peak, 100.2Hz peak) You may consider harmonic  and non-harmonic frequency components of the signal.

0 Kudos
Message 3 of 7
(3,670 Views)

When you say "Integer and non-integer frequency components", are you interested in integer frequency or integer gain and phase?  I'm going to assume the former.

 

Do you have an understanding of Signals and their analysis?  Do you know the relationship between the following concepts, especially as they relate to an FFT?

  • Sampling Frequency (usually in Hz)
  • Sampling Period (time, in seconds, over which samples are taken)
  • Number of Samples
  • Highest Frequency in Spectrum
  • Lowest Frequency in Spectrum
  • Number of Frequencies in Spectrum
  • Frequency spacing (difference) between Spectrum points

Note that there are really only two independent variables in the above list of 7 quantities (if this isn't obvious to you, do some reading).

 

In a proper spectrum, all spectral frequencies are an integer multiple of a "fundamental".  If the fundamental (determined by your sampling parameters) can be expressed as an integer (e.g. "10 Hz"), then all the spectral frequencies will be integers.  [Yes, yes, the computations are carried out by Floats, not Integers, and are based on hardware that don't give exact integer timing, but I'm assuming that we can get "sufficiently close" to ignore the tiny errors ...].

 

Bob Schor

0 Kudos
Message 4 of 7
(3,665 Views)
If he is looking to extract the frequency component at, say, 50 Hz, he can't just look for the freq axis value where f = 50 because the actual value may be anywhere from 49.99999999999 to 50.00000000001 and so not "equal" to 50.

The point is that his methodology has to be able to deal with "sufficiently close".

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 5 of 7
(3,663 Views)

I think I did not frame the question in a straightforward way. It's misleading.

IN my VI there is a base frequency ratio. That has the integer & non-integer values, those I want to separate.

Hope you understand the problem.

 By looking at the base frequency ratio, similar doubt i got. If the ratio is 6.07, can i consider this frequency as 6th harmonic of the base frequency?

0 Kudos
Message 6 of 7
(3,658 Views)

Maybe you can understand more on how to interpret the output here http://www.ni.com/white-paper/4541/en/#toc2

Thanks
uday
0 Kudos
Message 7 of 7
(3,621 Views)