I have a Sine wave at frequency F1. This signal changes and shifts to frequency F2.

In frequency domain I like to find this shift as quickly as possible. (Signal has a lot of random noise and hard to Observe in time domain)

What is the best approach ?

I have tried various FFT chunk sizes and zero padded approaches but they are not fast enough. It takes time for FFT to show decent spectrum.


This is the classical use case for a Phase-Locked Loop (PLL). You can control speed vs noise robustness by adjusting the loop filter bandwidth.


I agree with Marcus and in addition to add some other options based on their simplicity and effectiveness:

We are interested in frequency versus time, so ultimately this would be the work of a frequency discriminator. With that we have similar trades of SNR and bandwidth, range of use etc. A simple way to make a frequency discriminator in analog or digital form by simply combining a delay line with a mixer (multiplier). The length of the delay line trades sensitivity for range (longer delay line is higher sensitivity translating to higher SNR meaning more volts per Hz, but at the expense of limiting the unique and linear range). In the analog you can overdrive the mixer to create a linear output. A low pass filter after the mixer can set the bandwidth of the demodulation to increase SNR at the expense of tracking rate. I detail the specifics of that approach here:


If monitoring the signal with test equipment, this can also be done easily using a spectrum analyzer by setting the instrument's resolution bandwidth to sufficiently exceed the sweep rate and then set the span to zero span with the signal centered on the side of the effective filter of the spectrum analyzer given by its resolution bandwidth, and then change the sweep rate to observe the change in frequency versus time. This mirrors a discrimination approach of combining filter roll-offs with power detectors, which is also an approach that can be done in the analog or digital domains. With an approach of using frequency selective filters, often two bandpass filters are used offset from each other with their detected outputs subtracted resulting in the desired S-curve output of magnitude versus frequency and again we see the trades of the bandwidth of the filter (sharpness meaning high sensitivity but narrower range and inability to track fast moving signals: consider Carson's Rule when working with Frequency Modulated signals which gives an indication of total occupied bandwidth and ensure sufficient energy is inside the bandwidth of the filter: this is seen by the setting of the resolution bandwidth on the spec analyzer as described at the beginning of this paragraph).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.