Our online shopping is experiencing intermittent service disruptions.

Support teams are actively working on the resolution.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Time in LabVIEW DAQ Assistant and Write LabVIEW file

Hello all,
I would be extremely grateful for your assistance in helping me understand the timing in LabVIEW.
Here are the details of the system. The data acquisition is done using a simple LabVIEW 8.2 based program consisting of a DAQ Assistant VI and a Write to Measurement File VI, which writes data in TDM format (binary with XML header).
The hardware consists of a 1042Q chassis that contains 2 PXI-6133 cards. 16 transducers are connected to these 8 channel cards. The chassis is connected to a PC by means of MXI-4 fiber optic cable and a PCI-8336 card.
 
I would like to sample all 16 channels simultaneously at 500 kS/s for 2 secs. or 1MS/s for 0.5 secs.
When the signals were sampled at 500kS/s x 2secs., the time column looks like this when opened on DIAdem.
 
Serial#   Time   Time(in secs. when displayed in number format with 8 decimals)
1     07/10/2007 00:09:42.1406     63351158982.14060800
14   07/10/2007 00:09:42.1407     63351158982.14069760
64   07/10/2007 00:09:42.1408     63351158982.14080000
109 07/10/2007 00:09:42.1409     63351158982.14090240
etc.
 
The time does not change from serial 1 to 13, and only at the 14th row does it change, after which it remains constant till the 63rd row, and then  it remains the same till row 108, and so on. I understand that the time displayed in the format "63351158982.14069760" is the total number of seconds since 0 A.D.
But why does the time step not change at 0.000 002 seconds intervals? When an operation was performed in DIAdem to find the difference between the individual time values, the time steps were different from one pair of rows to another, e.g., 4us, -4us, -6us, etc. (u=micro).
 
A similar "non-uniform time step" trend is seen when sampling at 1MS/s also.
 
Is the system multiplexing the sampling of signals from the 16 channels, rather than taking simultaneous sampling of all 16 channels at one point in time? (I think this is the case.) How is the time step determined by the system?
 
How do I estimate the uncertainty in the determination of time? Where do I look for the uncertainty information for the DAQ system?
 
Evidently, I am perplexed. If anyone can point me in the right direction(s), I'd be very grateful. Thank you all for your time.
Philip
0 Kudos
Message 1 of 3
(2,397 Views)
I can't for say for sure because I don't have your exact software, but I suspect that the problem is rounding error.

I'm assuming that the "63351158982.14069760" you quote is an actual value. If that is the case, you probably should look at how the data is being represented. If any stage in the process is using double-precision floats you are losing enough precision in the number to demonstrate a problem similar to the one you are describing. For example, in LV if you paste the above value into a DBL control, the value that you get is 63351158982.1407013 - note the rounding. Now if you add .000002 to this the result of the addition is still 63351158982.140701300000 because with so many digits in front of the decimal point there isn't enough precision left to accurately reproduce a change so small.

Now change all the math to EXT. Pasting the value into the control results in
63351158982.14069760, as you would expect; and the result if the addition is 63351158982.1406996 - again as it should be.

This may not be the whole answer but it
at least sounds like a place to start looking.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 2 of 3
(2,391 Views)
For the lack of anything better to do on a Saturday night (man, I just GOT to get a life...) I did a bit more playing around. And created a little VI that simulates the number changes and I found out that with DBL precision the output value only changes every 5th iteration. Add to this additional rounding in the conversion to text and you could have your 13 steps before a visible change occurs in the output value.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 3 of 3
(2,388 Views)