Hi, I am a newbie in DSP. I have got a requirement to measure the frequency of a signal between 45KHz to 55 KHz with a resolution of 40Hz. The length of the signal which is available for measurement is 320 micro seconds. Is it possible to measure the frequency of this signal with 40Hz resolution? If yes, how? With FFT, to get the resolution of 40Hz the signal length should be atleast 25ms (...Am i correct?). Does this represent a fundamental limit? Thanks in advance, Abins
Resolution of frequency measurement possible
Started by ●September 27, 2004
Reply by ●September 27, 20042004-09-27
On 27 Sep 2004 03:50:27 -0700, abinsj@gmail.com (Abins) wrote:>Hi, > >I am a newbie in DSP. I have got a requirement to measure the >frequency of a signal between 45KHz to 55 KHz with a resolution of >40Hz. The length of the signal which is available for measurement is >320 micro seconds. Is it possible to measure the frequency of this >signal with 40Hz resolution? If yes, how? With FFT, to get the >resolution of 40Hz the signal length should be atleast 25ms (...Am i >correct?). Does this represent a fundamental limit? > >Thanks in advance, > >AbinsHi, Yep, you're right. To get 40 Hz resolution you need a time-domain sequence whose length is, ***at the very least***, 25 ms. And yes it's a fundamental limit. The very smallest resolution you can achieve is the reciprocal of your time-domain signal's duration. It's not only a good idea, it's the Law! Good Luck, [-Rick-]
Reply by ●September 27, 20042004-09-27
Abins wrote:> Hi, > > I am a newbie in DSP. I have got a requirement to measure the > frequency of a signal between 45KHz to 55 KHz with a resolution of > 40Hz. The length of the signal which is available for measurement is > 320 micro seconds. Is it possible to measure the frequency of this > signal with 40Hz resolution? If yes, how? With FFT, to get the > resolution of 40Hz the signal length should be atleast 25ms (...Am i > correct?). Does this represent a fundamental limit? > > Thanks in advance, > > AbinsIt depends on how pure the signal is. If you know -- with all the conditions that Rune mentioned -- that the frequency is pure and that there is very little noise, you can measure the time between zero crossings. With the numbers you give, there will be at least 15 zero crossings in your measurement interval, so by counting zero crossings, you can tolerate more uncertainty in the measured time than if there were much fewer. Noise or incoherent signal contamination will reduce the accuracy of your measurement. You can work out an error budget for this. When you do, it will become clear that higher the frequency (the fine the time resolution) the more tolerable those error sources become. Jerry -- ... they proceeded on the sound principle that the magnitude of a lie always contains a certain factor of credibility, ... and that therefor ... they more easily fall victim to a big lie than to a little one ... A. H. �����������������������������������������������������������������������
Reply by ●September 27, 20042004-09-27
On 27 Sep 2004 03:50:27 -0700, abinsj@gmail.com (Abins) wrote:>Hi, > >I am a newbie in DSP. I have got a requirement to measure the >frequency of a signal between 45KHz to 55 KHz with a resolution of >40Hz. The length of the signal which is available for measurement is >320 micro seconds. Is it possible to measure the frequency of this >signal with 40Hz resolution? If yes, how? With FFT, to get the >resolution of 40Hz the signal length should be atleast 25ms (...Am i >correct?). Does this represent a fundamental limit? > >Thanks in advance, > >AbinsThe other advice you've gotten here is correct, there are some fundamental limits. However, depending on the input conditions this can be treated in such a way that you can probably get pretty good accuracy, probably close to 40Hz with some reasonable reliability. It becomes a bit of a stochastic problem in most cases. Peter Kootsookos has an excellent website that contains good info on a number of different ways to solve the problem. See: http://www.itee.uq.edu.au/~kootsoop/freqalgs.htm The Fourier Coefficient technique links have some working matlab code in there that might be helpful. Eric Jacobsen Minister of Algorithms, Intel Corp. My opinions may not be Intel's opinions. http://www.ericjacobsen.org
Reply by ●September 27, 20042004-09-27
abinsj@gmail.com (Abins) wrote...> I am a newbie in DSP. I have got a requirement to measure the > frequency of a signal between 45KHz to 55 KHz with a resolution of > 40Hz. The length of the signal which is available for measurement is > 320 micro seconds. Is it possible to measure the frequency of this > signal with 40Hz resolution? If yes, how? With FFT, to get the > resolution of 40Hz the signal length should be atleast 25ms (...Am i > correct?). Does this represent a fundamental limit?If you know on, say, physical grounds, that your signal contains only one frequency (i.e. one sinusoid), or a small bounded number of frequencies, with at most a small amount of noise, then it is possible get better frequency resolution than a naive Fourier transform. One approach would be to simply least-squares fit your signal to a sinusoid, but this gets tricky if you have more than one frequency because the fitting process gets trapped in local minima, etcetera. As an alternative, a nice technique that was developed by Mandelshtam for NMR studies which I've found to work well is available at http://ab-initio.mit.edu/harminv/ . However, if by "frequency" you just mean that you have a general periodic signal, then you need some other approach. Again, if you have some solid a priori information, such as your signal having really only one period, then there are ways to circumvent the DFT uncertainty. Cordially, Steven G. Johnson
Reply by ●September 28, 20042004-09-28
In article <4157f85e.256197546@news.sf.sbcglobal.net>, Rick Lyons <r.lyons@_BOGUS_ieee.org> wrote:>On 27 Sep 2004 03:50:27 -0700, abinsj@gmail.com (Abins) wrote: >>I am a newbie in DSP. I have got a requirement to measure the >>frequency of a signal between 45KHz to 55 KHz with a resolution of >>40Hz. The length of the signal which is available for measurement is >>320 micro seconds. Is it possible to measure the frequency of this >>signal with 40Hz resolution? If yes, how? With FFT, to get the >>resolution of 40Hz the signal length should be atleast 25ms (...Am i >>correct?). Does this represent a fundamental limit?...> Yep, you're right. To get 40 Hz resolution >you need a time-domain sequence whose length >is, ***at the very least***, 25 ms. > >And yes it's a fundamental limit. >The very smallest resolution you can achieve >is the reciprocal of your time-domain >signal's duration.Doesn't the fundamental limit depend on the signal-to-noise ratio? Even using only the FFT results, one can use (sync, for instance) interpolation between bins, given a steady signal and sufficiently high S/N. IMHO. YMMV. -- Ron Nicholson rhn AT nicholson DOT com http://www.nicholson.com/rhn/ #include <canonical.disclaimer> // only my own opinions, etc.
Reply by ●September 28, 20042004-09-28
"Ronald H. Nicholson Jr." <rhn@mauve.rahul.net> wrote in message news:cjamig$460$2@blue.rahul.net...> >And yes it's a fundamental limit. > >The very smallest resolution you can achieve > >is the reciprocal of your time-domain > >signal's duration. > > Doesn't the fundamental limit depend on the signal-to-noise ratio? > Even using only the FFT results, one can use (sync, for instance) > interpolation between bins, given a steady signal and sufficiently > high S/N. > >Hello Ron et. al.,, Yes the S/N ratio is most important. If you had 3 consecutive noise free infinite precision samples from a single sinusoid, you can determine the freq, amplitude and phase exactly. We will assume that we are not bandpass sampling or if we are we know which spectral repeat we are operating in. The problems arise from noise and lack of knowing how many sinusoids there are. Clay
Reply by ●September 28, 20042004-09-28
rhn@mauve.rahul.net (Ronald H. Nicholson Jr.) wrote in message news:<cjamig$460$2@blue.rahul.net>...> > Doesn't the fundamental limit depend on the signal-to-noise ratio? > Even using only the FFT results, one can use (sync, for instance) > interpolation between bins, given a steady signal and sufficiently > high S/N. > >Thanks for your response. The signal-to-noise ratio is around 60dB. The signal is sinusoidal in nature. Could you please give some references to the interpolation techniques which can be applied to the FFT result?
Reply by ●September 28, 20042004-09-28
On Mon, 27 Sep 2004 11:31:00 GMT, r.lyons@_BOGUS_ieee.org (Rick Lyons) wrote:>On 27 Sep 2004 03:50:27 -0700, abinsj@gmail.com (Abins) wrote: > >>Hi, >> >>I am a newbie in DSP. I have got a requirement to measure the >>frequency of a signal between 45KHz to 55 KHz with a resolution of >>40Hz. The length of the signal which is available for measurement is >>320 micro seconds. Is it possible to measure the frequency of this >>signal with 40Hz resolution? If yes, how? With FFT, to get the >>resolution of 40Hz the signal length should be atleast 25ms (...Am i >>correct?). Does this represent a fundamental limit? >> >>Thanks in advance, >> >>Abins > >Hi, > > Yep, you're right. To get 40 Hz resolution >you need a time-domain sequence whose length >is, ***at the very least***, 25 ms. > >And yes it's a fundamental limit. >The very smallest resolution you can achieve >is the reciprocal of your time-domain >signal's duration. It's not only a good >idea, it's the Law! > >Good Luck, >[-Rick-] >Yikes, I should have been more specific. When I wrote "resolution", I should have used the phrase "FFT bin spacing". (The freq spacing between FFT result samples.) I shouldn't have used the word "resolution" because it means different things to different people. So, to achieve no more than 40 Hz FFT bin spacing you need a time-domain sequence whose length is, ***at the very least***, 25 ms. See Ya', [-Rick-]
Reply by ●September 28, 20042004-09-28
abinsj@gmail.com (Abins) wrote in message news:<d33e378e.0409280209.6bd63695@posting.google.com>...> rhn@mauve.rahul.net (Ronald H. Nicholson Jr.) wrote in message news:<cjamig$460$2@blue.rahul.net>... > > > > Doesn't the fundamental limit depend on the signal-to-noise ratio? > > Even using only the FFT results, one can use (sync, for instance) > > interpolation between bins, given a steady signal and sufficiently > > high S/N. > > > > > Thanks for your response. The signal-to-noise ratio is around 60dB. > The signal is sinusoidal in nature. Could you please give some > references to the interpolation techniques which can be applied to the > FFT result?With a 100 MHz clock, you should be able to locate a (say, positive-going) zero-crossing to within 10 nanoseconds. If you measure for 10 cycles out of the possible 15 that gall within your available interval, that's one nanosecond per cycle at each end of the measurement. You will then know your approximately 18 microsecond period to within two nanoseconds. Noise at 60 dB down can hardly extend that beyomg 5 nanoseconds. It seems that a straightforward measurement can give you accuracy to spare. Jerry






