[comp.dsp] Basic Question on Resolution of Spectral Analysis

tohall@mars.lerc.nasa.gov (Dave Hall (Sverdrup)) (02/23/91)

      Here is a fundamental question that has been giving me trouble in
a spectral analysis application of DSP:

    I need to analyze a signal that contains a "fundamental" tone at
about 3200 Hz (call this f0) plus "sidebands" located at f0 +/- 1 hz, 
f0 +/- 2 hz   .......    I am also interested in signals at 2f0 +/- 2 hz,
etc (harmonics of the tone cluster at f0). My analyszer will be set up
to digitize at 32 Khz with Low pass anti-aliasing filters at 10 Khz.

    My problem has to do with getting enough resolution in my discrete
Fourier transform to separate these closely spaced tones. The fundamental
resolution in the analysis is, I THINK:

      DELTA F =  FS / N,     where:   FS = sample rate
                                       N = number of samples



    OR:      N = FS / DELTA F

             N = 32 kHZ / 1 hZ   =   32 K SAMPLES!!!!


    This is a best case (minimum) number of samples assuming no "smearing"
due to windowing, etc. My problem lies in the area of manipulating arrays
in the 32K - 128K sample range, and trying to compute the FFT. I have
been trying various "zoom" analysis techniques described in the book 
"Signal Processing Algorithms" by Stearns abd David (Prentice Hall - 1988)
including the chirp z-transform. These techniques don't seem to do anything
to improve spectral resolution (ie- ability to separate closely spaced tones)
The bottom line resolution seems to always be set by the number of pts
in the original time-sample. "Zoom" techniques just seem to speed up the
analysis over a narrow portion of the spectrum, providing pretty plots
as well.

      This may sound like a dumb question, but is there some way to get 
the resolution I need without using such a huge ensemble? Any help would
be appreciated. 



          Thanks in Advance.

                   Dave Hall

mcmahan@netcom.COM (Dave Mc Mahan) (02/24/91)

 In a previous article, tohall@mars.lerc.nasa.gov writes:
>
>      Here is a fundamental question that has been giving me trouble in
>a spectral analysis application of DSP:
>
>    I need to analyze a signal that contains a "fundamental" tone at
>about 3200 Hz (call this f0) plus "sidebands" located at f0 +/- 1 hz, 
>f0 +/- 2 hz   .......    I am also interested in signals at 2f0 +/- 2 hz,
>etc (harmonics of the tone cluster at f0). My analyszer will be set up
>to digitize at 32 Khz with Low pass anti-aliasing filters at 10 Khz.
>
>    My problem has to do with getting enough resolution in my discrete
>Fourier transform to separate these closely spaced tones. The fundamental
>resolution in the analysis is, I THINK:
>
>      DELTA F =  FS / N,     where:   FS = sample rate
>                                       N = number of samples
>
>    OR:      N = FS / DELTA F
>
>             N = 32 kHZ / 1 hZ   =   32 K SAMPLES!!!!


Well, your in luck I think.  While it is true that high resolution means that
you will need many samples/second and a high sample rate, you can borrow a
trick from the old analog spectrum analyzers and downconvert your signal
to a much lower center frequency.  This will allow you to discard the majority
of your samples.  Just sample at the maximum rate needed to acquire all your
frequencies and then take each sample and multiply it by a sine function.
In your case, say you need to look at frquencies of 1000 Hz with good
resolution.  Sample at 32 KHz, and filter out the passband you wish to
observe.  Now, take that passband and multiply it by a single tone (generated
digitally, of course!  Probably from a lookup table for speed) with a frequency
of about 980 Hz.  This will give you mixer products at 20 Hz and 1980 Hz.
Filter out the high stuff, discard lots of your samples (since your passband
is not centered around 20 Hz and you still want +/1 1 Hz resolution) and THEN
do your FFT spectral analysis.  You'll have to work out all the math to make
sure you get the proper number of samples, but I think you can create a system
that will work.  You will still need to sample at a high rate, but most
samples can be discarded and the math burden will be reduced.  You will also
have to repeat this technique for all bands you are interested in.   You
may be able to handle all bands at once, but sorting out the different mixer
products when you down convert can be quite tricky for a wide spectrum.


>                   Dave Hall

   -dave

-- 
Dave McMahan                            mcmahan@netcom.com
					{apple,amdahl,claris}!netcom!mcmahan