Dynamic Signal Acquisition

cancel
Showing results for 
Search instead for 
Did you mean: 

SNR measurement VI?

thank you
if i want compute power of signal
Can you help me ?
0 Kudos
Message 11 of 27
(13,925 Views)
Generally, the 'power' of a signal is the squared sum of all the sample values divided by the block size P = sum((x_i)^2)/N. This oversimplifies the computation if you want true power units and you have the necessary measurements. There are also numerous factors that you can consider to get more accurate measurements depending on the nature of the signal. Given the very general request, your best power measurement is probably to square the RMS value output of the Basic Averaged DC-RMS VI.
Doug
NI Sound and Vibration
0 Kudos
Message 12 of 27
(13,924 Views)
Show picture VI please? i don' understand, i modify it but it run error. Can you help me please?  
0 Kudos
Message 13 of 27
(13,916 Views)
Sorry for any confusion. In the picture I attached to a previous email, I am using the posted VI (SNR Formula_modified for Express.vi) to convert SINAD (dB) and THD (ratio) output from the Distortion Express VI to SNR.

 

As for the power calculation, please see the attached screenshot.
Doug
NI Sound and Vibration
0 Kudos
Message 14 of 27
(13,824 Views)
hi doug
thank tou for vi
 
i want do you check SNR formula_modifiedfor Express vi. and check SNR=(THDN**2-THD**2)**-0.5  to correct? and i understand vi.
Give you Explain vi?
what mean is THD,unit?,[ratio?] and what mean is SINAD,unit?[dB?]
i want know very much.
 
thank you
 
0 Kudos
Message 15 of 27
(13,671 Views)

I am using the Sound and Vibration toolbox to compute the SNR and SNDR (or SINAD if you prefer to call it that). However, I am seeing some suspicious behavior and wanted to know if anyone else has seen similiar things. The SNDR can at times be greater than the SNR! Not just by a little, but up to 3 dB... I can't think of a physical scenario where this could actually occur (maybe I'm wrong). Also, I should mention that this is an application where I have to limit the bandwidth due to significant out of band noise so the express VI's won't work for this application.

0 Kudos
Message 16 of 27
(11,508 Views)

This issue is documented in CAR 231263. The fix has been implemented in the next version of the toolkit. In the mean time, attached is the fixed subVI. Please copy it over the old one at LabVIEW 2010\vi.lib\addons\Sound and Vibration\svt_Distortion\subVIs\sv_Harmonic Distortion and Noise.vi

 

Please, post if you have any difficulties.

Doug
NI Sound and Vibration
Message 17 of 27
(11,505 Views)

Hi Doug,

 

Thanks for the quick reply. Can you comment on the nature of the fix? (or point me to where I can see CAR 231263.) I have quite a bit of data already collected and would like to determine if there is anyway I can fix it. (Probably not, but figured I would check.)  Also, while I have you here, can you comment on a 64 bit version of the sound and vibration toolbox? We do a lot of very large data collection and processing and having to use the 32 bit version of LabVIEW in the past has been a major limitation for us.

 

Thanks,
Drew

 

0 Kudos
Message 18 of 27
(11,489 Views)

the subVI attached to my last post computes energy quantities for various signal components including (fundamental, harmonics, noise, harmonics + noise, and total). That subVI also computes ratios for distortion measurements such as THD, THD+N, and SINAD. The ratio measurements were correct. The energy measurements were not correct for noise, harmonics+noise, and total as these were computed for the specified bandwidth by a sum of squares of the FFT bin magnitudes without compensating for the ENBW of the window applied before the FFT spectrum. Fundamental energy was correctly computed while noise energy was too high by the ENBW of the window (for Hanning, ENBW = 1.5); therefore, SNR returns a value lower than expected. Simulated test cases for automated testing have some harmonic distortion so THD always better than THD+N and SNR always better than THD+N, and automated tests also randomize input parameters including window and FFT size which led to tolerances set too wide to catch this bug. I feel shame.

 

You have a significant amount of historical data:

You can reprocess saved time-domain signals or complex spectra and the fixed subVI will lead to correctly computed SNR.

You can compensate past SNR results by the ENBW of the window.

 

***

 

Toolkit VIs are completely supported in LabVIEW 64-bit. The Sound and Vibration Express VIs are not supported in LabVIEW 64-bit.

Doug
NI Sound and Vibration
0 Kudos
Message 19 of 27
(11,481 Views)

With regards to acquisition and processing of large data: what is a typical requirement? Is it along the lines of doing an FFT of a one million-sample block, or more along the line of post processing thousands of 1k, 2k, ...; 64k blocks from a 4 GB file? or something else? Actually, would you mind creating a different forum post that we can use to discuss 'Big Data' issues?

Doug
NI Sound and Vibration
0 Kudos
Message 20 of 27
(11,477 Views)