LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

FPGA: Calibrating raw analog data

Hi all,

I use 2 NI-9512 modules for analog measurements in a cRIO9074 in FPGA mode.

 

Right now, I use the uncalibrated raw data from the module, and stream it in a FIFO to the host, where I calibrate using the LBS ans offset value, which I also take from the IO node. I did read the NI article on how to do the calibration, and I use the "binary to nominal"-VI.

 

However, I noticed, that some of the channels (AI1, AI2 and AI3) give the wrong voltage values with an error of around 90 mV. AI0 is precisely correct, which is why I doubt I did a mistake in the calibration process.

I notice, that when I use the calibrated fixed point data from the FPGA, there is no error!

 

First, I wonder why using the raw data gives me wrong values.

 

secondly, and my main question is how to stream the fixed point data in my code without losing synchronization:

The reason I used the raw data is that my FPGA codes reads some analog data and some counter data that needs to me sync!  Obviously, the counter data are integers. I wanted to use the same FIFO to stream the data to make sure they are in sync, thats why I used the raw-type for the analog data - to have all integers.

Now, when I use 2 FIFOS, one with integers for the counter data, one with fixed point data to stream the calibrated analog values - can I be sure that they are in sync?

 

Thank you very much for any help.

 

Greeting,

Jack

0 Kudos
Message 1 of 4
(3,554 Views)

So as an example:

would these 2 DMA be time synchronized when I log them at the host?

 

Thanks?

0 Kudos
Message 2 of 4
(3,525 Views)

This is what I had on mind on the host side - so mainly I wonder if the 8 channels from the one DMA and the 6 channels from the other are synchronized.

 

Thank you

0 Kudos
Message 3 of 4
(3,511 Views)

anyone 🙂 ?

0 Kudos
Message 4 of 4
(3,465 Views)