LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Get a common x-scale to compare data

Hi there.
I am using a 6036E DAQ card (PCMCIA) to acquire multiple sets of data simultaneously. However the card only has one ADC, so it cannot actually sample multiple channels at the exact same moment. I want to sample two channels, one point at a time for say, 1000 points. Then I want to take those two sets of data and interpolate to a common time frame. That way I can get points that exactly match up.

Can anyone tell me exactly how to do this? How do I use the time value that is associated with each point (in a form similar to: 12:35 AM, w/ more detail) to interpolate a common x axis?

Thanks for you help.
0 Kudos
Message 1 of 8
(3,173 Views)
Hi Randall.
I don't understand the first part very well, where you say that you go simultaneously to acquire 2 different signals by a same channel, seems to me that is not very simple, you need the necessary hardware ( multiplexer, clock)... In any case, if already you solved that problem, I would do the following thing: Supposing that you want to show both signals in the frontal panel as the acquisition is making. In the first place you must acquire the signals buffered, soon takes first waveform to pass it through a block "Get waveform components" to obtain the data array, then pass it through the block "Interpolate 1D Array" (Array Functions), then assign 0.5 to the "fractional index or x" input of this block, this is for to have the interpolated value tha
t corresponds to the value of the same point in the time, from the other channel, soon takes both signals and put in a common display, with the time base of the second signal.

Tell me if this is useful to you or is another thing which you want to do. Greetings.

JFT
0 Kudos
Message 2 of 8
(3,173 Views)
No, not the same channel, multiple channels that are multiplexed to one ADC. The card can only sample one channel at one instant.

I will try what you suggested and post the results soon!

Thanks.
0 Kudos
Message 3 of 8
(3,173 Views)
Hi Randall:

If you KNOW absolutely the lag time between the channels, then it's a simple matter to add that lag time to the FIRST data's time stamps. However, this may not be too elegant, unless you like working in EXCEL a lot. What you can do, is record the data as WAVEforms, and then use the waveform function "Align Time Stamps". This is, of course, assuming that you actually have time stamps to align! Do you have individual time stamps on each channel?

Hope this helps some.

Eric
Eric P. Nichols
P.O. Box 56235
North Pole, AK 99705
0 Kudos
Message 4 of 8
(3,173 Views)
Hi there,

The lag time is not constant. It varies probably in a 20ms range. I'm afraid interpolation is the only route here, although if you have any other ideas I am open to suggestion.

Thanks.
0 Kudos
Message 5 of 8
(3,173 Views)
In that case, your best bet is indeed the "align Timestamp" function in the WAVEFORM toolbox. You just have to decide which channel you want to use as your master...as selected by the INDEX terminal.

Hope this helps!
Eric P. Nichols
P.O. Box 56235
North Pole, AK 99705
0 Kudos
Message 6 of 8
(3,173 Views)
Randall:
Personally to work with data offline, and for your case, I wouldn't work with excel, because it happens the same problem and it is necessary to make a manual interpolación . If your problem is possible to work it this way (offline), I recommend the software "Microcal Origin", this software handles the temporary axes of way more efficient than Excel, interpolates the data automatically to make them match with number of signals that you want. I hope that it useful to you.
Bye.
JFT
0 Kudos
Message 7 of 8
(3,173 Views)
Using an external program of any sort won't work--this VI has to do everything internally.
0 Kudos
Message 8 of 8
(3,173 Views)