DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

DIAdem TDMS organization

This is a rather generic question, so sorry for those of you who think this may be trivial.  I'm running many tests on a single UUT and plan on storing all data in a TDMS file.  There are several of the tests I run over and over.  Let's say I have Test A which runs 3000 times over the course of a 24 hour period.  I'm collecting 2 double values and an array of doubles (waveform).  It makes sense to create 3 channels (2 doubles, and one that stores the array), however, if I append data I need to be able to figure out where one test ends and the other begins.  Should I be separating these into individual channels based on time, or maybe multiple TDMS files?  I'm sure there's a "best practice" for this sort of thing, I'm just not well versed in TDMS organization and DIAdem reporting yet.  Thanks for your help in advance.

0 Kudos
Message 1 of 6
(5,779 Views)

Hello plasmaphase,

 

There is a paper written by Dr. Brad Turpin (Senior DIAdem Product Support Engineer) that might help you with some of your questions.

 

http://www.ni.com/white-paper/14252/en

 

I'll also contact Dr. Turpin to check if he has a more specific answer to your questions.

 

     Otmar

Otmar D. Foehner
Message 2 of 6
(5,756 Views)

That white paper is fantastic, thanks for the share.  I'm not sure, however, that it completely answered my question (although maybe I missed something).  Let me provide an example to clarify:

 

At the beginning of a test I grab a spectrum plot in an array of doubles and push it into a channel in a TDMS file along with a Time Channel.  Several hours later, after opening and closing that same TDMS file and storing other test data, I need to put the same spectrum plot test data into the TDMS file.  The question is, where, and how?  It sounds like I need to create a new group with a new array channel and Time channel.  I guess I'm just hesitant to make thousands of these groups which would presumably all have to be named independently (probably with a date/time in the name).

 

I've tried appending the data, and it's rather cumbersome to figure out where one ends and the other begins, so I'm guessing that's not reasonable.  I hope this makes sense.  Thanks for the help so far.

0 Kudos
Message 3 of 6
(5,747 Views)

Hi plasma,

 

If you don't want to append the data, then you need new channels in the TDMS file.  You said that each run generated 2 doubles and 1 double array (waveform).  If you really mean 2 scalar numbers with double precision, do yourself a favor and write those to the double array channel as 2 channel properties.  There are no cases where a channel with one value in it makes sense in DIAdem.  Also, if you really mean that you have a brown waveform wire in LabVIEW, then wire that brown wire directly to the TDMS Write.vi and you'll get a waveform channel in DIAdem that automatically plots vs. the (equidistant) waveform time information.  If both of those are true, then you'll just have one channel per run, and at that point you can live quite well with one group, though your channels will need to be uniquely named within that group.  Alternatively, you could create a group for each run, even if that results in thousands of groups-- this would make sense if you have non-equidistant X axis values in your spectrum.  How big is one of these TDMS files that stores all 3000 tests from a 24 hour period?

 

One of the most important considerations when structuring your TDMS file is to ask yourself what you want to do with that data.  Do you want to plot all 3000 tests overlaid on one graph?  Do you want to derive scalar results from each test and show a trend of those scalar results over time or test number?  Do you want to do something else entirely?

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

Message 4 of 6
(5,734 Views)

What you said makes sense.  All meta-data should be contained within properties; I agree.  My issue is that the depth of TDMS files is highly limited.  With an HDF5 file, for example, I can have groups of groups.  This requirement can be overcome by adding detail to the names of my groups and flattening out my data, but it's cludgy in my opinion.  I think you all have answered my questions and I'm in understanding of how to accomplish my task.  Thanks for the input!

0 Kudos
Message 5 of 6
(5,722 Views)

Oh, and the all the data will be brought into DIAdem for automatic report generation purposes.  The report will be quite flat and long, so not much overlay of plots, but moreso a, "Step 1: Plot Result 1, Step N: Plot Result N" sort of methodology.

0 Kudos
Message 6 of 6
(5,720 Views)