01-26-2011 09:37 AM
I tried creating two DAQ-mx (one for each chassis) then saving the raw data with a export waveform to spreadsheet. There are other sub VIs down that road that do some indexing and transforms.
When I run this I get a "memory is full" error.
Can I make a loop or make this more this less memory consuming?
requirements:
-2 min of continuous data ( i e 480000 divided by 4000 = 120s)
-save all data to file with timestamps
-endgame: pass the signals to signalexpress for data viewing and manipulation.
01-26-2011 09:54 AM
I did not look at your entire program, yet notice that you are performing a acquire N samples. This collects all of your data into memory.
I would recommend instead, you acquire data continiously with an appropriate block size, and stream data to TDMS using the DAQmx tools to do so.
http://zone.ni.com/devzone/cda/tut/p/id/9574
This will also work in a continious loop.
Then you can play back the data block by block for additional analysis and conversion. In this way, you have just the data you need in memory.
Other examples to review:
http://zone.ni.com/devzone/cda/epd/p/id/6354 (Flexsignal executes DAQmx and takes care of a lot of the configuration internally, it also plays back files).
http://zone.ni.com/devzone/cda/tut/p/id/11805 (Data Acqusition Reference Design provides a recording feature and builds on Flex Signal)
Hope these help.
Preston
01-26-2011 02:48 PM
Thanks Preston. Using the TDMS worked well, but...
Now I'm getting the "memory full error" later down the line when I am manipulating my data.
How do I "play back my data block by block" as you described above.
As you can probably tell I'm very new to labview. thanks for you help and patience.
01-26-2011 08:27 PM
The TDMS file structure is rich in features. It has file pointers, etc where you can read back some of the data and advance the pointer to read more after you processed the first part of data.
Try the FlexSignal example from my previous post. It already has the constructs to read just part of the file back, and to advance through the file at your choice of block size. It advances the pointers for you and allows you to select all the channels or just some of them.
Preston