Friday, 27 November 2015

voltage measurement - How can I calibrate my sound card based oscilloscope?


I'm using Soundcard Oscilloscope software that presents as below



Soundcard Oscilloscope software display


You'll notice that the display has a grid, and in the example is set for 100mV/div. Since it's using the sound card integral to my motherboard, there is no calibration of this display or the line in socket, so the divisions could actually be anything.


I have a digital multimeter as well that can measure AC style voltages in the 10 - 400 Hz range. How can I calibrate it, at least roughly? My only thought was to build a sine wave oscillator to produce 100 Hz @ 1 V RMS. That way I can confirm the amplitude with my multimeter, feed it though line in to the software and then adjust for the reading.


Is this likely to work, or is there some other way of calibrating PC based soft oscilloscopes?


EDIT:


Following some comments, I tested my multi meter against a range of sine wave frequencies. These were line outs generated via Audacity software, with the TONE command set to a volume of 0.8. The red dot is @ 50Hz, so this should be ideal for the meter and forms a baseline voltage reading. The response seems reasonable over 10Hz - 10KHz. Even better across 50Hz - 1KHz.


DMM calibration graph



Answer



The only way to truly calibrate an oscilloscope is with a calibrated function generator. A quick internet search will demonstrate that these things are usually not cheep, of course.


...but you don't need perfect, just "reasonable"...



The best way to do this, then, is to:



  1. Build a variable frequency square-wave generator (CMOS 555 FTW)

  2. Use your DMM to measure the output peak voltage with freq set to ~DC.

  3. Bump the frequency to ~1k and adjust the scope.


Provided the square-wave gen's impedance is fairly consistent over all frequencies used, the peak voltage that appears on the scope should reflect the DC voltage fairly accurately. Knowing this we know that it's just a matter of getting the scope to agree with the DMM.


If you want more confidence, repeat the process with your gen powered from more voltages, then just compare the scope output to what you expected.


Lastly, I would not rely on the AC function of any DMM to be useful for something like this. Those things are usually specified for specifically 50 or 60Hz, and will read inaccurate for other frequencies. And, in case you're thinking you've got a workaround for that, you should know that your sound card will (read: should) take to 50-60Hz like an NSA vending machine to a crinkled Won.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...