The NI TDMS File Format

Überblick

Ein optimaler Austausch technischer Informationen trifft häufig auf verschiedene Hürden. Fast notorisch ist das Versäumnis, schon bei der Testvorbereitung und -durchführung Vorkehrungen für die effiziente Nutzung der erfassten Daten zu treffen. Allzu oft werden Messdaten und simulierte Daten ohne beschreibende Zusatzinformationen in diversen Dateiformaten verteilt auf Festplatten und Netzlaufwerken gespeichert. So entsteht schnell ein Datenfriedhof, aus dem sich nur mühsam die Datensätze extrahieren lassen, die Ingenieure für ihre tägliche Arbeit benötigen. Lassen sich Datensätze nicht finden, dann müssen Tests oder Simulationen neu erstellt werden. Ein Rückgang an Effizienz und erheblich steigende Entwicklungskosten sind die Folge. Um diesen Herausforderungen zu begegnen, hat NI eine Lösung definiert: das TDM-Dateiformat (Technical Data Management). Darin sind drei Komponenten enthalten:

  • Das offene NI-TDMS-Dateiformat zum Speichern umfassend dokumentierter Messdaten
  • Den NI DataFinder zum schnellen Auffinden zuvor gespeicherter Datensätze
  • NI DIAdem oder das LabVIEW DataFinder Toolkit zur Verarbeitung von Daten und zum Erstellen von Berichten


Der erste Schritt zu einer einheitlichen Lösung für das Datenmanagement besteht darin, sicherzustellen, dass die Daten so effizient, organisiert und skalierbar wie möglich gespeichert werden. In diesem Whitepaper wird der erste Aspekt der NI-TDM-Lösung – das NI-TDMS-Dateiformat – vorgestellt. Dabei handelt es sich um ein offenes Format, das für die Speicherung von Messdaten auf einer Festplatte optimiert wurde.

Contents

Traditional Approaches to Measurement Data Storage

Sie können aus einer Reihe von Formatoptionen für das Speichern von Messdaten wählen. Jedoch steht ein genaues Abwägen der Möglichkeiten für die Datenspeicherung bei der Anwendungsplanung meist nicht im Vordergrund. Die Auswahl des Dateiformats wird oft zugunsten anderer, offensichtlicherer Entscheidungen wie Hardwaresystemdesign oder Softwarearchitektur vernachlässigt. Entscheidungen über die Datenspeicherung sind manchmal widersprüchlich oder werden je nach Bedarf getroffen, ohne weiter an Wiederverwendbarkeit und Erweiterbarkeit zu denken, sodass komplexe und kostenaufwändige Softwarearchitekturen entstehen. Da sich Anwendungen und Anforderungen mit der Zeit ändern, erfüllen selbst die gängigsten Speicherformate schon bald nicht mehr die Erfordernisse der Anwender, die zeitbasierte Messdaten speichern. Tabelle 1 zeigt die Vor- und Nachteile einiger der am häufigsten gewählten Speicheroptionen für Messdaten.

*Evtl. ist ein Toolkit oder Zusatzpaket erforderlich.

Tabelle 1: Das TDMS-Dateiformat verbindet die Vorteile etlicher Datenspeicheroptionen in einem Dateiformat.

NI führte das Dateiformat TDMS (Technical Data Management Streaming) auf dem Markt ein, da andere Datenspeicheroptionen, die in Mess- und Prüfanwendungen eingesetzt werden, nicht ausreichten. Das binäre TDMS-Dateiformat ist ein leicht austauschbares, strukturiertes Dateiformat mit Hochgeschwindigkeits-Streaming-Fähigkeit, das in Verbindung mit anderen Technologien der NI-TDM-Lösung schnell durchsucht werden kann. Dazu ist keine komplizierte und kostenaufwändige Datenbankengestaltung, -architektur oder -pflege erforderlich.  

Einen besseren Überblick über die verschiedenen Speichermöglichkeiten aus Tabelle 1 bietet das Tutorium Vergleich gängiger Datei-I/O und Ansätze zur Datenspeicherung.

 

 

Overview of the TDMS File Structure

The single, most important feature to understand about the internal format of the TDMS file structure is its inherent hierarchical organization. The TDMS file format is structured using three levels of hierarchy, as shown in Figure 1 – file, group, and channel. The file level can contain an unlimited number of groups, and each group can contain an unlimited number of channels. Because of this channel grouping, you can choose how to organize your data to make it easier to understand. For example, you may have one group for your raw data and another group for your analyzed data within one single file.1 Or, you may have multiple groups that correspond to sensor types or locations.

Figure 1. Each TDMS file contains descriptive information on the file, group, and channel levels.

At each level of the hierarchy, you can store an unlimited number of custom scalar properties. Each level accepts an unlimited number of custom-defined attributes to achieve well-documented and search-ready data files. The descriptive information located in the file, a key benefit of this model, provides an easy way to document the data without having to design your own header structure. As your documentation requirements increase, you do not have to redesign your application; you simply extend the model to meet your specific needs. The more custom properties you use to document your measurement data, the more easily it can be located at a later date by using an NI DataFinder client that abstracts complex database communication from the user.

For a detailed technical description of the internal structure of the open TDMS file format, see TDMS File Format Internal Structure.

1TDMS files also automatically generate a complimentary *.tdms_index file. This file provides consolidated information on all the attributes and pointers in the bulk data file that drastically speeds up read access to the data on larger data sets. This index file is not required for storage or distribution and automatically regenerates.

Writing and Reading TDMS Files with NI Software

Das offene NI-TDMS-Dateiformat wird von den Plattformen von NI unterstützt. Alle Softwareentwicklungsumgebungen von NI (mit Ausnahme von TestStand) bieten eine direkte Schnittstelle zu TDMS-Dateien als Teil ihrer Funktionspaletten oder -bibliotheken. Einfache vorgefertigte Funktionen ermöglichen es, beliebige Zusatzeigenschaften zusammen mit den eigentlichen Daten zu speichern.

 

LabVIEW

Von der Softwareumgebung NI LabVIEW gibt es mehrere Schnittstellen zu NI-TDMS-Dateien. Am einfachsten ist der Einstieg zum Schreiben von TDMS-Dateien in LabVIEW über das VI "Messwerte in Datei schreiben". Dieses Express-VI bietet eine dialogbasierte Konfiguration, was jedoch auf Kosten der Leistung geht, und eignet sich nicht für Hochgeschwindigkeits-Streaming oder Echtzeitanwendungen.

Mehr Flexibilität und das beste Leistungsvermögen liefern die TMDS-Low-Level-VIs der Datei-I/O-Palette. Mit diesen VIs können Sie TDMS-Dateien und ihre Eigenschaften so effizient wie möglich schreiben und lesen. Diese Zugriffsmethode auf TDMS-Dateien ist unter Nutzung des LabVIEW Real-Time Module echtzeitfähig. Die TDM-Streaming-Palette wurde in LabVIEW 8.2 eingeführt.

Eine Installation von LabVIEW oder Treibern (ab August 2010) beinhaltet eine brandneue TDMS-Advanced-Palette für eine sehr hardwarenahe Steuerung des TDMS-Dateizugriffs, sodass Sie anspruchsvolle Techniken wie asynchrone Schreib- und Leseoperationen ausführen können.

Abbildung 2: Sie haben die Auswahl aus mehreren LabVIEW-Schnittstellen zum Lesen und Schreiben von TDMS-Dateien.

Abbildung 3: Die TDM-Streaming-Palette bietet den flexibelsten und effizientesten Ansatz beim Schreiben und Lesen von TDMS-Dateien mit LabVIEW.

Eine detaillierte Übersicht über das Lesen und Schreiben von TDMS-Dateien mit LabVIEW bietet Ihnen das Tutorium Einführung in LabVIEW-TDM-Streaming-VIs.

LabWindows™/CVI

Zugriff auf TDMS-Dateien in der Software NI LabWindows™/CVI erhalten Sie über eine von zwei Bibliotheken. Die erste Bibliothek – die LabWindows/CVI TDM Streaming Library – ist die bei Weitem schnellste und universeller einsetzbare Variante. Mit dieser API erhalten Sie durch Einsatz des LabWindows/CVI Real-Time Module eine Schnittstelle zu TDMS-Dateien in Echtzeitanwendungen. Die TDM Streaming Library wurde in LabWindows/CVI 8.1 eingeführt.

Die Alternative dazu ist die DIAdem-Connectivity-API, die DIAdem als Zwischenmechanismus für das Schreiben oder Lesen von TDMS-Dateien verwendet.

Abbildung 5: LabWindows/CVI bietet zwei Schnittstellen zu TDMS-Dateien, aber die TDM Streaming Library ist die bei Weitem effizienteste und flexibelste der beiden.

 

 

.NET-Sprachen und Measurement Studio

Die TDM-Streaming-.NET-Klassenbibliothek von NI Measurement Studio (seit Measurement Studio 8.6) bietet eine schnelle und flexible Möglichkeit, eine direkte Schnittstelle zu TDMS-Dateien durch Nutzung von .NET-Sprachen herzustellen. Hinweis: Zugriff auf die TDM-Streaming-.NET-Klassenbibliothek ist auf die Versionen Professional und Enterprise von Measurement Studio beschränkt.

Abbildung 6: Measurement Studio umfasst eine integrierte TDM-Streaming-.NET-Klassenbibliothek.

 

 

DIAdem

Die Software DIAdem ist eine flexible Umgebung für die Datennachbearbeitung, Visualisierung und Berichterstellung. Durch den Einsatz von DataPlugins kann sie auch mit jedem beliebigen benutzerspezifischen Dateiformat arbeiten. DIAdem ist speziell darauf ausgelegt, TMDS-Dateien standardmäßig schreiben und lesen zu können. Allerdings werden Daten, die ins Datenportal – eine visuelle Darstellung des internen DIAdem-Speichers – kopiert werden, auf das TDMS-Modell abgebildet. Mit DIAdem – einem Client zum NI DataFinder und somit die dritte Komponente der NI-TDM-Lösung – können Sie den NI-DataFinder-Index durchsuchen, um Daten so einfach wie Internetinformationen mit einer Suchmaschine wie Google zu finden.

Abbildung 7: Sie können DIAdem so konfigurieren, dass sich jedes benutzerspezifische Dateiformat auf dem TDMS-Modell abbilden lässt.

Mehr zu DIAdem für eine interaktive Visualisierung, Analyse und Berichterstellung finden Sie unter ni.com/diadem/d.

 

VeriStand

NI VeriStand is a configuration based software environment for real-time testing that enables you to log measurements to TDMS files in multiple ways. Mithilfe des enthaltenen Stimulus Profile Editor können Sie automatisierte Testskripte für das Erzeugen von Echtzeitstimuli erstellen, während Systemparameter in eine Datei protokolliert werden. Außerdem können mit einer seit VeriStand 2013 in den Workspace integrierten Funktion Messungen konfiguriert und Daten direkt von der Benutzeroberfläche protokolliert werden. VeriStand bietet seit der Version 2013 zudem die direkte Integration in DIAdem, sodass die Datenanalyse wie auch die Berichterstellung automatisiert werden können. Dadurch wird sichergestellt, dass Ihre Datendateien bei jedem Test immer gleich analysiert und dargestellt werden, weshalb Entscheidungen schneller getroffen und die Produktqualität verbessert wird.

Im nachfolgenden Video erfahren Sie, wie Sie Daten von Echtzeittests mit VeriStand und DIAdem erzeugen und verwalten.

 

 

Writing and Reading TDMS Files with Third-Party Programming Software

NI stellt zahlreiche Werkzeuge zur Verfügung, um TDMS-Dateien mit Drittanbieteranwendungen zu schreiben und zu lesen.

 

TDM C DLL

NI bietet die TDM-C-DLL kostenlos zum Download an. Die DLL enthält alle benötigten Funktionen zum Lesen und Schreiben von TDMS-Dateien aus jeder Entwicklungsumgebung, die DLLs einbinden kann. Im Download-Bereich rechts oben auf dieser Webseite können Sie die DLL und zugehörige Beispiele kostenlos herunterladen.

Abbildung 8: Die TDM-C-DLL ist eine kostenlose Schnittstelle zu TDMS-Dateien, die Sie in Umgebungen von Drittanbietern nutzen können.

 

OpenOffice.org Calc

Mithilfe des kostenlosen Zusatzpakets für OpenOffice.org Calc können Sie TDMS-Dateien einschließlich beschreibender Eigenschaften in OpenOffice.org Calc laden und verarbeiten. Sie müssen lediglich das Zusatzpaket herunterladen, installieren und die Funktionen von OpenOffice.org Calc mit einem zusätzlichen Menü verwenden, um TDMS-Dateien zu laden und das Add-in zu konfigurieren.

Abbildung 9: Das kostenlose Zusatzpaket für OpenOffice.org installiert einen neuen Menüeintrag in OpenOffice.org Calc zum Importieren von TDMS-Dateien.

Weitere Informationen und den Download-Link für das kostenlose Zusatzpaket liefert die Anleitung TDM Add-In Tool for OpenOffice.org Calc User Guide.

 

Software MATLAB® von The MathWorks, Inc.

NI hat ein Beispiel entwickelt, das die Anpassung der TDM-C-DLL mit einer benutzerdefinierten Header-Datei zeigt, um eine Schnittstelle zu TDMS-Dateien aus der Software MATLAB® von The MathWorks, Inc. zu bieten.

 

 

 

Distributing and Exchanging TDMS Files with Colleagues Using Microsoft Excel

Obwohl alle Entwicklungsumgebungen von NI TDMS-Dateien schreiben und lesen können, ist es gelegentlich von Vorteil, Datendateien mit Kollegen auszutauschen, die nicht über NI-Software verfügen. Deshalb stellt NI ein kostenloses Zusatzpaket (verfügbar mittels NI-Softwareinstallation oder Web-Download) für eine gängige Softwareumgebung, nämlich Microsoft Excel, zur Verfügung, auf die viele Anwender Zugriff haben. Zwar ist Microsoft Excel kein ideales Werkzeug für die Nachbearbeitung von Messdaten, aber es eignet sich gut, um schnell kleine Datendateien zu sichten. Der Zugriff auf dieses kostenlose Zusatzpaket erfolgt aus der Excel-Umgebung.

Zu Softwareversionen von NI nach August 2010 (außer NI TestStand) wird eine brandneue Technologie installiert, um direkt aus dem Windows Explorer eine Schnittstelle zu TDMS-Dateien zu erhalten. Dieses neue Dienstprogramm (Excel Importer) öffnet sich im Bereich "Öffnen mit" des Kontextmenüs nach einem Klick mit der rechten Maustaste im Windows Explorer und bietet Anwendern ohne Zugriff auf NI-Software die Möglichkeit, Microsoft Excel zum Standardprogramm für die Ansicht von TDMS-Dateien zu machen. Nachdem die Dateierweiterung mit dem Excel Importer verknüpft wurde (erfolgt automatisch, falls DIAdem nicht auf dem Rechner installiert ist), können diese Anwender einfach einen Doppelklick auf eine TDMS-Datei ausführen, um sie mit Excel zu öffnen.

 

Abbildung 10: Durch Nutzung eines kostenlosen Zusatzpakets können Sie im Windows Explorer einen Doppelklick auf TDMS-Dateien ausführen und sie in Microsoft Excel öffnen selbst ohne NI-Software.

 

 

Mapping Existing Data Files to the TDMS Data File Format

Manchmal kann das TDMS-Dateiformat nicht verwendet werden. So schreiben etwa manche Anforderungen von Kunden oder Lieferanten vor, dass Sie ein bestimmtes Dateiformat für die Datenspeicherung verwenden müssen. Bestimmte herkömmliche Messgeräte stellen Datenausgangsdateien mithilfe eines benutzerdefinierten Formats automatisch zur Verfügung. Außerdem können ältere Messdaten, die bereits auf bestimmte Art und Weise erfasst wurden, nicht erneut erfasst werden, um sie im TDMS-Dateiformat zu speichern.

Zu diesem Zweck hat NI eine Technologie erstellt, mit der Sie eine Beschreibung dazu bereitstellen können, wie ein beliebiges benutzerdefiniertes Dateiformat auf dem TDMS-Modell abgebildet wird. Sie können diese Technologie – so genannte DataPlugins – mithilfe eines DIAdem-Assistenten erstellen oder es mit VBScript, C++ oder LabVIEW programmieren. Sobald Sie beschrieben haben, wie Ihr spezifisches Dateiformat mithilfe des TDMS-Modells interpretiert werden soll, kann der NI DataFinder beschreibende Eigenschaften identifizieren und indizieren. Dadurch wird eine Suche aus einem NI-DataFinder-Client wie dem LabVIEW DataFinder Toolkit oder DIAdem möglich.

NI bietet Hunderte kostenlose DataPlugins zum Download an. Unter ni.com/dataplugins finden Sie die DataPlugin-Downloads für die gängigsten Dateiformate, um das TDMS-Modell zu nutzen, oder Sie können sich kostenlos ein DataPlugin für Ihr spezielles Dateiformat erstellen lassen.

Abbildung 11: Mit DataPlugins können Sie den Ort der Datei, der Kanalgruppe und der Kanalinformationen innerhalb jedes beliebigen Dateiformats wie dem in dieser Abbildung für die Verwendung mit dem TDMS-Modell beschreiben.

 

 

The Fastest Way to Stream Measurement Data to Disk

Ab der Treiberversion NI-DAQmx 9.0 ist es möglich, Daten in TDMS-Dateien direkt aus der DAQmx-API aufzuzeichnen. Indem das Aufzeichnen über das VI "DAQmx - Protokollierung konfigurieren" konfiguriert wird, können Sie die TDMS-Protokollierung ganz einfach in bestehende Anwendungen integrieren. Des Weiteren trägt diese Methode des Daten-Streamings dazu bei, die Messlatte beim Hochgeschwindigkeits-Messdaten-Streaming höher zu legen. Dazu werden mehrere Speichervorgänge optimiert und Windows-, LabVIEW- und TDMS-Puffer umgangen, um maximale Effizienz zu erzielen. Tests mit dem VI "DAQmx - Protokollierung konfigurieren" zeigten Daten-Streaming-Raten von mehr als 1,2 GB/s. Nähere Informationen, wie Sie die TDMS-Protokollierung in Ihre NI-DAQmx-Anwendung integrieren können, finden Sie in dem Whitepaper Direkte Integration von TMDS in NI-DAQmx.

 

Abbildung 12: Mithilfe des VIs "DAQmx – Protokollierung konfigurieren" können Sie Daten mithilfe des TDMS-Dateiformats mit nur einem zusätzlichen Schritt auf eine Festplatte übertragen.

 

 

Focus on the Data, Not the Format

NI entwickelte das offene TDMS-Dateiformat, um Anwender bei der richtigen Speicherung großer Datenmengen zu unterstützen, die sie während der Simulations- und Testphase generiert haben. Mithilfe einer bedienfreundlichen Schnittstelle für das Speichern umfassend organisierter und dokumentierter Dateien können Sie sich auf dringendere Bereiche Ihrer Anwendung konzentrieren. Der Datenspeicherungsaspekt Ihrer Anwendungsschnittstelle skaliert sich von selbst mit Ihrer Anwendung.

 

 

Take the Next Steps Today

MATLAB® is a registered trademark of The MathWorks, Inc.

The mark LabWindows is used under a license from Microsoft Corporation. Windows is a registered trademark of Microsoft Corporation in the United States and other countries.

Downloads

Requirements

 

Software

Language(s): VB Script