08-01-2007 02:58 PM
08-02-2007 08:33 AM
Hi Sima,
Wow, that was an extensive thread. It seemed to me like the suggestions eventually settled down to what I would have said myself. I definitely recommend streaming to a TDMS file. The TDM Excel Add-in works with TDM and TDMS files and works with all (modern) versions of Excel, including the newly expanded Excel 2007, and it is a free download. Furthermore, there is an API for reading and writing TDM(S) files from C code, which can be used in other programs, so the data format is pretty open. If the customer has the money to invest in a tool, then DIAdem would be an ideal fit for processing these large data sets. DIAdem can easily load specific time windows from the large data set and/or load the data in reduced format, say 1 out of every 100 data points, or the average of every 100 data points or the max and min of each set of 100 data points, etc. DIAdem can also easily load only 5 or 6 channels out of the total 300, so there are lots of ways to make the data consumption easier, and DIAdem handles large data set very well even if you simply drag them in and graph them.
I actually liked the idea that one of them suggested of building an executable out of the TDMS File Viewer VI on the TDMS palette. If your data consumers are willing to download the LabVIEW Run-Time Engine and run such an executable, they would be able to look at different time windows of data in tabular and/or graphical format. Check out the <Settings> button at the bottom of the VI. This strikes me as a very good basic data viewer solution for no money down. Note also that with TDMS you would be able to easily capture any descriptive information as properties (Operator, Gain, Humidity, Description, ...), and with the TDMS File Viewer you are also able to look at all of these properties at each of the 3 hierarchy levels (File, Group, Channel).
Brad Turpin
DIAdem Product Support Engineer
National Instruments
08-02-2007 09:00 AM
Thanks Brad. I have some more questions.
Can you use the TDMS file VIs in combination with other file VIs, in particular, the Get/Set File Position and so on? I've currently got a circular file buffer that writes to a simple binary file, and have been contemplating converting over to TDMS. I'm just concerned I can't access the file byte positions with a TDMS file in the same way as a binary file.
My next question: we provide our customers with a few options in report generation (plain text, Excel, and in the near future, DIAdem). We currently log the data in plain text and then perform the post-processing to pretty up the reports. I don't think that's the best option since ASCII files tend to be much larger. Now that we'd like to add DIAdem to the mix, we're rethinking our data logging file type. What do you suggest would be the best type of file to start with if we'd then like to have the option to convert to text, Excel, or import to DIAdem? I'm going between a simple raw binary file, or TDMS. I have a feeling as to what you might say!
08-02-2007 11:32 AM
08-06-2007 08:54 PM
08-13-2007 05:22 PM
Hi Sima,
Two ways to convert this binary file into TDMS would be:
Introduction to the LabWindows/CVI TDM Streaming Library
Reading and Writing TDM/TDMS Files
09-11-2007 03:19 PM
09-12-2007 09:40 AM