Showing results for 
Search instead for 
Did you mean: 

Extracting total runtime from various files / filtering over channel values

Hi everyone,


We've been collecting some datas over the past months (using a cDaq system) and we'd like to extract from all these TDMS files (maybe 1 or 2 hundred files) a couple of infos : 

  1. How long has the system been running
  2. How many thermal cycles it has gone through

For the 1. : we'd like to filter the files and/or times when either the RPM or a certain temperatures crosses a threshold. I tried to do so with the DIADEM advanced search but while it does finds the right channels, I can't seem to "filter" over their values.


Regarding 2. : we would need to set a low threshold with an hysteresis to know whenever it cycles through it. Haven't found anything like it on Diadem so I'm turning to the community for some guidance.


Thanks for the input!



0 Kudos
Message 1 of 4

I've been venturing into VBS scripts but not sure I have the skill to pull it off.

One thing I'm stumbling upon : should I open all the files in a directory and then do an event search over it?
It seems a very ressource-consuming method...



0 Kudos
Message 2 of 4

Hello m_tt,


Both of your needs are good candidates for VBS Scripts.

Please find ressources hereafter to help you get started.






Hope it will help!

Have a nice day Smiley Happy




0 Kudos
Message 3 of 4

Hi m_tt,


Do you have multiple cycles stored in one data file?  I assume so.  In that case, are those multiple cycles all represented in a set of channels, i.e. exactly one RPM channel, exactly one Temperature channel, etc., or do you have each cycle stored to a separate channel group?


It sounds like your best path forward is to do some preprocessing of your data to put each cycle in a separate channel group, then store various metrics of that cycle as group properties.  Once that's been saved back to disk in a Search Area, you can use the DataFinder to assemble and analyze the portions of data you desire with combinations of query conditions.


The background here is that the DataFinder does NOT index channel values, only File, Group and Channel properties.  So in order to query the data portions you want, they need to be already sectioned out (per cycle) with metrics attached (as properties) to each section (cycle) of data.


Brad Turpin

DIAdem Product Support Engineer

National Instrumetns

0 Kudos
Message 4 of 4