Jump to content
infinitenothing

Frequency estimation

Recommended Posts

I tried a few different ways of estimating frequency and I thought I'd compare them. If anyone has some other ideas or links to other techniques, I'd like to see how they perform.

Techniques used the VI:

  • Zoom FFT
  • PSD
  • AutoCorrelation

Frequency Estimation.vi

Frequency Estimation.png

Share this post


Link to post
Share on other sites

If you need to track frequency in a noisy realtime environment, I've seen Kalman-based filtering being used. 
Unfortunately, I don't have an implementation example to provide. NI has this discrete filter in the Control Design and Simulation toolkit... which does not come cheap.

Share this post


Link to post
Share on other sites
On 2/9/2019 at 7:45 AM, Francois Normandin said:

If you need to track frequency in a noisy realtime environment, I've seen Kalman-based filtering being used. 
Unfortunately, I don't have an implementation example to provide. NI has this discrete filter in the Control Design and Simulation toolkit... which does not come cheap.

Interesting. I've seen its use in things like GPS. Actually, in my particular application, I'm not tracking a frequency. There's some "dead air" which I simulated above with the zeros and then the signal which is unrelated to the previous signal. Does that rule out Kalman or am I misunderstanding how you'd use it. I have the platform suite so I think I have the control design toolkit.

On 2/9/2019 at 9:05 AM, ShaunR said:

Mhmm..yeah... I know some of these words. 😉 I'll take a look at some of the algorithms they mention.

Share this post


Link to post
Share on other sites
20 hours ago, infinitenothing said:

Interesting. I've seen its use in things like GPS. Actually, in my particular application, I'm not tracking a frequency. There's some "dead air" which I simulated above with the zeros and then the signal which is unrelated to the previous signal. Does that rule out Kalman or am I misunderstanding how you'd use it. I have the platform suite so I think I have the control design toolkit.

Mhmm..yeah... I know some of these words. 😉 I'll take a look at some of the algorithms they mention.

Wavelets are part of the Advanced Signal Processing Library.

Share this post


Link to post
Share on other sites

Total Harmonic Distortion (appears to have been renamed Harmonic Distortion Analyzer from when last used it) can be used to find the fundamental frequency.

Share this post


Link to post
Share on other sites
18 hours ago, infinitenothing said:

Thank you for the tip. The performance seems similar to ZoomFFT.

Plus THD.PNG

I know you are looking for the most precise method for this type of waveform, but is there a reason you can't do a peak detect to remove the lead-in?  

Share this post


Link to post
Share on other sites
5 hours ago, ShaunR said:

I know you are looking for the most precise method for this type of waveform, but is there a reason you can't do a peak detect to remove the lead-in?  

At this point, AutoCorr is working well enough and I'm just curious about the advantages and disadvantages of different methods. My signals are rather noisy so it's not always super clear how far back the "start" is from the trigger.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.