LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Distortion measurements using USB 6008

Hello, I am using a USB 6008 with LabVIEW community edition. Measuring distortion in the 1KHz sine wave region.  Using the VIs in the Signal Analysts pallet.

This has been working out very well with results as expected , measuring frequency and amplitude match my Scope exactly  and distortion is as expected (THD).  I recently calibrated an old heathkit sine wave generator, the resulting 1KHz sine wave measured 0.5% I managed to get this down to 0.19% as expected in the manual . I wanted better so I just received a dedicated single frequency sine wave generator at 1KHz the distortion is supposed to be too low to measure with average lab equipment at 0.0000 something %THD. My LabVIEW VI measures 0.06%

 

My question is with this pure analog sine wave going into a USB 6008  I must be adding some distortion. Looking for opinions.

 

Thanks,

Alan

0 Kudos
Message 1 of 3
(677 Views)

My opinion is you should play around and learn from experimentation with your USB-6008 but don't forget that is a very cheap, multi-purpose DAQ module that is NOT designed for measuring with the quality you would need to analyze low distortion audio.  The USB-6008 uses a good quality ADC and analog amp but it IS a multiplexing, general purpose device so it uses the cheap Successive Approximation Register (SAR) type of converter.   If you want accuracy, especially at higher frequencies, find a good Delta-Sigma unit for professional audio applications and look for some free audio analysis software on the internetz. 🤓

 

Here's a good PDF on noise in general:

MT-003:Understand SINAD, ENOB, SNR, THD, THD + N, and SFDR so You Don't Get Lost in the Noise Floor ...

 

Also look into the effects of non-linearities of ADCs and DACs.  For example:

INL/DNL Measurements for Types of High-Speed Analog-to-Digital Converters (ADCs) | Maxim Integrated ...

LabVIEW Pro Dev & Measurement Studio Pro (VS Pro) 2019
Message 2 of 3
(648 Views)

0.06% is a very low percentage of the reading- it's 1 part in 1,666. Your USB-6008 has a 12-bit ADC in it, which means that *at its full range* its resolution is only 1 in 4096, and that's assuming you're using a differential measurement. If you're using a single ended measurement, it's 1 in 2,048.

 

So assuming you're using the default input range of +/-5V, and you're in single ended mode (the default mode), and you're measuring a 1V signal (just a guess)- then your measurement resolution would be 10 V/2048 = 0.00488 V, which is about the noise spec on your system.

 

0.00488V/1V = 0.48%, meaning that your measurement resolution is much too coarse to try to get to 0% error.

 

Things you can do? First, make sure you're using differential mode, not single ended. Second, make sure you specify your max and min expected input values. I'd recommend using +/-1V range, which will dramatically increase your resolution and will reduce system noise to 0.5mVrms (10x better than the default values). Third, make sure the signal you're measuring is as large as possible for the given input range. Measuring a +/-1V sine wave on the +/-10V input setting just means you're throwing away resolution. I'd recommend a +/-0.95V input sine wave on the +/-1V input setting for the best resolution you'll get. If you're measuring a +/-1V signal on a +/-1V range you may have some clipping at the ends, especially if your grounds aren't tied together well (or if they have some noise on them).

 

Give that a shot and see if you can get better measurements, but like NIquist said this is a pretty low-cost device. Stepping up to a pricier NI-based DAQ card would get you to 16 bits of resolution, which will help a lot, and will probably have better system noise.

 

Take a look at these specs for your card:

 

https://www.ni.com/docs/en-US/bundle/usb-6008-specs/page/specs.html

 

Note that the absolute accuracy goes from 15 mV at +/-20V to 1.5 mV at +/-1V.

Message 3 of 3
(637 Views)