Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

Can you get a correct voltage with AnalogUnscaledReader with a X series board?

Since version 6 of NiDaq I have used AnalogUnscaledReader to retrieve Int16 raw data from the A/D using E series boards. I now have a X series board (PCIe-6361) using NiDAQmx version 9. AnalogUnscaledreader returns a value less than the actual value. I have seen other posts mentioning this problem with M series board. The problem seems to be the AnalogUnscaledReader does not take into account the boards calibration data. The only other option I have found is acquiring double data with AnalogMultiChannelReader which takes into account the calibration data and converts the data to a voltage. This is not what I require. Is there a way to grab Int16 data with the calibration correction or is there a way to get the calibration data and apply it myself? Has anyone heard of backwards compatibility? 
John A. Lively
NDE Engineer
Pratt & Whitney
0 Kudos
Message 1 of 4
(3,382 Views)
Ever since the M series, the calibration information is available from a channels AI.DeviceScalingCoeff property. This is actually a better calibration than the linear scaling of the old E series devices so I would not call this a problem, it's a feaure. So, if you want to acquire I16 data, read the property and save that to the file as well, perhaps as a header.
0 Kudos
Message 2 of 4
(3,376 Views)
As Dennis mentioned, with the release of the M Series boards, we implemented a new calibration procedure that uses a polynomial equation to provide a more accurate calibration for our analog input signals.  This new calibration scheme better accounts for nonlinearities at the high and low ends of an ADCs range, and provides superior accuracy.  Using the property that Dennis mentioned, you can apply the calibration yourself using the device's scaling coefficients and a polynomial equation to scale your data.
Seth B.
Principal Test Engineer | National Instruments
Certified LabVIEW Architect
Certified TestStand Architect
0 Kudos
Message 3 of 4
(3,367 Views)

I checked out DeviceScalingCoeff. This property provides the coefficients of a polynomial that provide both the calibration and the scaling for the data. Is there a way to get the coefficients of only the calibration? I know if I want to slow the process even more I can removed the scaling after applying and convert back to an integer.

 

When using AnalogMultiChannelReader what happens if you are using an older series board (E series or older) that does not have software controllable calibration? 

John A. Lively
NDE Engineer
Pratt & Whitney
0 Kudos
Message 4 of 4
(3,348 Views)