LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Programmatic DAQmx Channel Calibration

Is there an example VI showing how to programmatically apply polynomial based channel calibrations to global virtual channels (EX: Not using MAX, which doesn't support polynomial channel calibration)?

 

I have a number of channels connecting through SCC modules.  The DAQ card (PXI-6281) is calibrated at the factory.  Each global virtual channel is mapped to the respective SCC physical channel:

 

AIN1 -> SCC1Mod1/ai0

AIN2 -> SCCMod1/ai1

...

AIN15 -> SCCMod8/ai0

AIN16 -> SCCMod8/ai1

 

My plan is to connect an HP5700A calibrator to each filter input and generate a transform polynomial instead of a simple table.  I use polynomials for all my sensors so this isn't an unfamiliar process.  What I don't see any examples of is how to use (Or save) channel calibrations through property nodes and VIs:

 

Untitled1.png

Yes, I know I can do this via custom scales, but I do want to figure out how to do it via channel calibration.  That's saved in the card's flash memory like the factory calibration is and fits better with the process I want to use for calibration.


Thanks,

 

XL600

0 Kudos
Message 1 of 5
(3,457 Views)

What you are looking for is an option to insert the polinomial equation in the property node?

 

Also, where is where you are getting the ecuation, or is it something that you will programm?

0 Kudos
Message 2 of 5
(3,367 Views)

I use the curve fitting vi to generate the forward coefficients.  But the cal seems to require reverse coefficients (not sure why..) and I haven't found any examples related to this yet.


 

0 Kudos
Message 3 of 5
(3,362 Views)

I haven't done this for Polynomial Scales, but have done it for Linear Scales, where you know the (forward) Slope and Y-Intercept.  You use the DAQmx Create Scale function to create your Scale (you'd choose Polynomial, rather than Linear), and wire this into your DAQmx Create Channel function, as shown in this Snippet (I wired Controls to most of the Inputs for mnemonic purposes):

Linear Scale Example.png

As to why you need Forward and Reverse coefficients, I'm not 100% certain, but DAQmx seems to need to map both ways.  Note that if you have the Forward Coefficient, DAQmx provides you a function to invert the matrix to get the Reverse Coefficients.

 

Hope this is helpful.

 

Bob Schor

0 Kudos
Message 4 of 5
(3,354 Views)

I'll take a look at that reverse poly function.  I didn't want to use scales since I wanted to store the calibration in the flash memory (hence the desire to use the channel calibration VI's).  The calibration is used to calibrate my external sc module inputs.  Those are going into LP-04 1khz filters which are pretty flat  +/-20mV when I measured it a few days ago.  I want to save scale use for connecting my sensors, which vary from test to test or the same channels.

 

Thanks!

0 Kudos
Message 5 of 5
(3,347 Views)