NI TDMS File Format - What is a TDMS File?

概要

複数の障壁により、技術情報の最適な交換が妨げられる場合があります。最も厄介なのは、テスト時やシミュレーション時に情報を不適切な形で取り込んでしまうことです。記述情報が付加されていないデータが、一貫性のないファイル形式で複数のコンピュータにばらばらに保存されてしまうことは多々あります。そうすると、それらの膨大な情報の中から特定のデータセットを見つけ出し、そのデータを解析して有用な情報を抽出するという作業が極めて困難になってしまいます。つまり、「情報の墓場」を作り出してしまうわけです。データセットを見つけ出すことができない場合は、テストまたはシミュレーションを作成し直す必要があります。この結果、多くの企業において、開発の効率が低下し、開発コストが劇的に増加するという状態が生じています。こうした課題に対処するため、NIでは以下の3つの統合コンポーネントを含むテクニカルデータ管理 (TDM) ソリューションを定義しました。

  • 適切にドキュメント化された計測データを保存するためのNI TDMSファイル形式。
  • 以前に記録されたデータセットをすばやく見つけ出すNI DataFinder。
  • データの処理とレポート作成向けのNI DIAdemまたはLabVIEW DataFinder Connectivity VI。


統合的なデータ管理ソリューションを構築するための最初のステップは、データを最も効率的に整理された拡張可能な形式で保管することです。このホワイトペーパーでは、NI TDMソリューションの1つ目の側面であり、計測データをディスクに保存するために最適化されたNI TDMSファイル形式について詳しく説明します。

Contents

計測データストレージに対する従来のアプローチ

計測データストレージ用には、さまざまなデータ形式の選択肢があります。残念なことに、データストレージの選択肢が、アプリケーション計画の最初に検討されることは、あまり一般的ではありません。ファイル形式の選択は、ハードウェアのシステム設計やソフトウェアアーキテクチャなどの注目度の高い決定事項に比べて見落とされがちです。データストレージに関する決定は、再利用性や拡張性を考慮することなく、そのときの都合や思いつきでアプリケーションごとに決定されることが珍しくありません。その結果、複雑で費用のかかるソフトウェアアーキテクチャの作り直しを招きます。アプリケーションや要件は時とともに変化するため、従来の最も一般的なストレージ形式でさえ、時間ベースの計測データを保存するエンジニアや科学者の要求をすぐに満たせなくなります。表1は、計測データ用によく選択されるストレージ形式の長所と短所を示したものです。

*ツールキットまたはアドオンモジュールが必要な場合があります。

表1.TDMSは、複数のデータストレージ形式の利点を兼ね備えたファイル形式。

NIでは、テストや計測アプリケーションで一般的に使用されている他のデータストレージオプションの欠点を補うため、テクニカルデータ管理ストリーミング (TDMS) ファイル形式を導入しました。バイナリTDMSファイル形式は、容易に交換可能で、本質的に構造化されており、高速ストリーミングが可能なファイル形式で、NI TDMソリューションの他のテクノロジと組み合わせることにより、複雑で高価なデータベース設計、アーキテクチャ、または保守を必要とせず、素早い検索ができるようになります。 

表1に示したさまざまなデータストレージの選択肢の詳細については、『Comparing Common File I/O and Data Storage Approaches』を参照してください。

TDMSファイル構造の概要

TDMSファイル構造の内部形式について理解するうえで、唯一の最も重要な機能となるのが、その固有の階層構造です。TDMSファイル形式は、ファイル、グループ、チャンネルの3つのレベルの階層を使用して構造化されています (図1)。ファイルレベルには無制限数のグループがあり、各グループには無制限数のチャンネルを含めることができます。このようにチャンネルをグループ化することで、データを扱いやすく整理する方法を選択できます。たとえば、1つのファイル内で1つのグループを生データ用、別のグループを解析済みデータ用にしたり1、センサの種類や場所によって複数のグループに分けたりすることもできます。

図1.各TDMSファイルには、ファイル、グループ、チャンネルレベルに関する記述情報が含まれています。

階層の各レベルには、無制限数のカスタムスカラプロパティを保管することができます。各レベルでは無制限数のカスタム定義の属性を設定できるため、整理された検索しやすいデータファイルを作成できます。ファイル内に説明が含まれていることはこのモデルの重要な利点であり、独自のヘッダ構造を設計するすることなく、データを簡単にドキュメント化することが可能です。文書化要件が増えてもアプリケーションを設計し直す必要はなく、ニーズに合わせてデータモデルを拡張するだけで済みます。計測データのドキュメント化に使用するカスタムプロパティの数が多いほど、あとでNI DataFinderクライアントを使用してユーザからの複雑なデータベース通信を抽象化し、簡単に見つけることができます。

オープン時のTDMSファイル形式の内部構造の詳しい技術的説明については、『TDMSファイル形式の内部構造』を参照してください。

1 TDMSファイルはまた、補足的な*.tdms_indexファイルを自動的に生成します。このファイルには、大規模なデータセット上のデータへの読み取りアクセスを大幅にスピードアップするバルクデータファイルのすべての属性とポイントに関する情報がすべて統合されています。このインデックスファイルは、保存や配布に必要なものではなく、自動的に再生成されます。

NIソフトウェアを使用したTDMSファイルの書き込みと読み取り

NI TDMSファイル形式は、NIプラットフォームでサポートされているファイル形式です。すべてのNIソフトウェア開発環境は、ネイティブの関数パレットまたはライブラリの一部としてTDMSファイルとのインタフェースを備えています。これらのインタフェースによって、構造化データの保存の複雑さが抽象化されると同時に、キャプチャした計測データやシミュレーションデータと一緒に説明情報を簡単に追加できるようになります。

LabVIEW

NI LabVIEWソフトウェアからNI TDMSファイルへは、複数のインタフェースが用意されています。LabVIEWでTDMSファイルの書き込みを使い始めるには、「計測ファイルに書き込む」Express VIを使用するのが最も簡単です。このExpress VIを使用すればダイアログベースで簡単に構成できますが、性能が犠牲になるため、高速ストリーミングやリアルタイムアプリケーションには不向きです。

より柔軟性を高めて最高の性能を実現するには、ファイルI/OパレットのTDMSプリミティブVIを使用します。これらのVIを使用すると、TDMSファイルとそのプロパティの読み取り、書き込みを可能な限り効率的に行うことができます。この方法でTDMSファイルにアクセスすると、LabVIEW Real-Timeモジュールを使用してリアルタイムアプリケーションにも対応できます。LabVIEW 8.2ではTDMストリーミングパレットが導入されました。

2010年8月以降にリリースされたLabVIEWまたはドライバをインストールすると、新型のTDMS上級パレットにアクセスできます。このパレットを使用すると、TDMSファイルを極めて低レベルで制御することができ、非同期の書き込みと読み取りなどの高度な手法を実行できます。

図2.LabVIEWでは、TDMSファイルの読み取りや書き込みを実行するためのインタフェースが複数用意されています。

図3.LabVIEWでTDMSファイルの読み取りや書き込みを実行する方法のうち、TDMストリーミングパレットは最も柔軟で効率的です。

LabVIEWを使用したTDMSファイルの読み取りや書き込みの詳しい概要については、『LabVIEW TDMストリーミングVIの概要』を参照してください。

LabWindows™/CVI

NI LabWindows™/CVIソフトウェアでは、2つのライブラリのいずれかを使用してTDMSファイルにアクセスできます。1つ目はLabWindows/CVI TDMストリーミングライブラリで、はるかに高速で汎用性の高いアプローチです。このAPIを使用すると、LabWindows/CVI Real-Timeモジュールを使用してリアルタイムアプリケーションでTDMSファイルとインタフェースできます。このTDMストリーミングライブラリはLabWindows/CVI 8.1で導入されたものです。

LabWindows/CVIからTDMSファイルへの代替インタフェースとなるのが、DIAdem接続ライブラリです。これは、TDMSファイルの読み取りや書き込みを実行するための中間のメカニズムとしてNI DIAdemソフトウェアを使用するものです。 

: LabWindows/CVI 2017ではDIAdem接続ライブラリはサポートされなくなりました。既存のプロジェクトにはTDMストリーミングライブラリを使用し、新規のプロジェクトにはTDM C DLL (添付) を使用することをお勧めします。

図5.LabWindows/CVIでは、TDMSファイルへのインタフェースが2つ用意されていますが、TDMストリーミングライブラリの方がはるかに効率的で柔軟性があります。

Measurement Studioを使用した.NET言語

Measurement Studio 8.6で導入されたNI Measurement Studio TDMストリーミング.NETクラスライブラリを利用すれば、.NET言語を使用して高速かつ柔軟にTDMSファイルと直接的にインタフェースすることができます。メモ:TDMストリーミング.NETクラスライブラリへのアクセスは、Measurement StudioのProfessional EditionとEnterprise Editionに制限されています。

図6.Measurement Studioには、TDMストリーミング.NETクラスライブラリが組込で搭載されています

NI DIAdem

NI DIAdemソフトウェアは、データの後処理、視覚化、レポート作成を柔軟に行える環境であり、データプラグインを使用することで、任意のカスタムファイル形式で機能するように簡単に拡張できます。DIAdemは、入手後すぐにTDMSファイルの読み取りと書き込みができるように特別に設計されています。ただし、Data Portal (内部DIAdemメモリの視覚的な表現) にロードされたデータはすべてTDMSモデルにマッピングされる仕組みです。DIAdemはNI DataFinderのクライアントであり、NI TDMソリューションにおける3つ目の側面です。DIAdemを使用すると、NI DataFinderのインデックスを検索して所要のデータを見つけることができます。これは、インターネット上でGoogleのような検索エンジンを使用して情報を見つけるのと同じくらい簡単です。 

図7.DIAdemでは、どのようなカスタムファイル形式でもTDMSモデルにマッピングするように構成でき、TDMSモデルの利点を活用できます。

DIAdemによる対話式の視覚化、解析、レポート作成の詳細については、ni.com/diademを参照してください。

NI VeriStand

NI VeriStandは、プログラミングが不要のリアルタイムテスト用ソフトウェア環境で、複数の方法で計測データをTDMSファイルに記録することができます。 内蔵の刺激プロファイルエディタツールを使用して自動テストスクリプトを作成し、リアルタイムの刺激信号をテスト対象デバイスに対して生成しながら、システムパラメータをファイルに記録することができます。 また、VeriStand 2013ではワークスペースデータロギングオブジェクトを使って、ユーザインタフェースから直接計測を構成してデータを記録することができます。 VeriStand 2013ではDIAdemとの統合が可能なため、後処理とレポート生成の両方を自動化することもできます。 これにより、テストを実行するたびにデータファイルが処理されて同時に表示されるため、迅速に意思決定を下し、製品の質を向上させることができます。

以下のビデオでは、VeriStandとDIAdemを使ってリアルタイムテストデータを作成、管理する方法をご紹介します。 

 

他社製プログラミングソフトウェアによるTDMSファイルの書き込みと読み取り

NIでは、他社製アプリケーションを使用してTDMSファイルの読み取りと書き込みを行うためのツールをいくつか提供しています。 

TDM C DLL

NIのTDM C DLLは無料でダウンロードできます。TDM C DLLにはTDMSファイルの読み取りと書き込みに必要な機能が組み込まれており、DLL通信を実行できる十分な柔軟性を備えたアプリケーション開発環境から利用できます。DLLと対応する例を無料でダウンロードするには、このページの添付ファイルセクションからTDM C DLLをダウンロードしてください。

図8.TDM C DLLは、他社環境で利用できるTDMSファイルへの無料のインタフェースです。

OpenOffice.org Calc

OpenOffice.org Calc用の無料アドインを使用すると、OpenOffice.org Calcの説明情報を含めて、TDMSファイルをロードして処理できます。アドインをダウンロードしてインストールした後、OpenOffice.org Calcの関数と追加のメニューを使用してTDMSファイルをロードし、アドインを構成するだけです。

図9.OpenOffice.org用の無料アドインによって、TDMSファイルをインポートするための新しいメニュー項目がOpenOffice.org Calcにインストールされます。

無料のアドインの詳細またはそのダウンロードについては、『TDM Add-In Tool for OpenOffice.org Calc User Guide』を参照してください。

The MathWorks, Inc.MATLAB® Software

NIは、MathWorksソフトウェア環境のMATLAB®内からTDMファイルやTDMSファイルを読み取る方法を紹介するデモを開発しました。

 

Microsoft Excelを使用したTDMSファイルの配布や他のユーザとの交換

TDMSファイルの書き込みと読み取りはすべてのNI開発環境で可能ですが、NIソフトウェアをインストールしていない他のユーザとデータファイルを共有すると便利な場合があります。そこでNIでは、多くのエンジニアがこれらのTDMSファイルにアクセスできるように、一般的なソフトウェア環境であるMicrosoft Excel用の無料のアドインとしてTDM Excelアドインを提供しています。このアドインはNIソフトウェアと一緒にインストールされ、マシンにNIソフトウェアがないユーザもスタンドアロンのダウンロードとして利用してデータを表示できます。 Microsoft Excelは計測データを後処理するための理想的なツールではありませんが、小さなデータファイルをすばやく表示する環境としては適しています。この無料のアドインにはExcel環境内からアクセスできます。

すべてのNIソフトウェアでは、Windowsエクスプローラ内から直接TDMSファイルとインタフェースするための最新テクノロジがインストールされます。この新しいExcel Importerユーティリティは、Windowsエクスプローラの右クリックコンテキストメニューの「プログラムから開く」セクションに表示されます。これにより、NIソフトウェアにアクセスできないユーザはTDMSファイルを表示するためのデフォルトプログラムとしてMicrosoft Excelを関連付けることができます。 ファイル拡張子をExcel Importerに関連付けると (DIAdemがマシンに存在しない場合は自動で関連付けられます)、TDMSファイルをダブルクリックするだけでExcelで開くことができます。

図10.無料のアドインを使用すると、NIソフトウェアがインストールされていなくても、WindowsエクスプローラでTDMSファイルをダブルクリックしてMicrosoft Excelで開くことができます。

 

既存のデータファイルのTDMSデータファイル形式へのマッピング

状況によってはTDMSファイル形式を使用できない場合があります。たとえば、顧客やサプライヤの要件として、データストレージに特定のファイル形式を使用することが求められる場合があります。従来型計測器によっては、カスタム形式を使用してデータ出力ファイルを自動的に提供するものがあります。また、すでに特定の方法で収集されたレガシー計測データを、単にTDMSファイル形式で保存するだけの目的で再収集することはできません。

こうした目的に応えるため、NIでは任意のカスタムファイル形式をTDMSモデルにマッピングする方法の記述を提供するために使用できるテクノロジを開発しました。「データプラグイン」と呼ばれるこのテクノロジは、DIAdemのウィザードを使用して作成するか、VBScript、C++、またはLabVIEWを使用してプログラムすることができます。ユーザがTDMSモデルを使用してカスタムファイル形式を解釈する方法を記述すると、NI DataFinderによって記述情報が識別されてインデックスが作成され、LabVIEW DataFinder Connectivity VIやDIAdemなどのNI DataFinderクライアントからの検索が可能になります。   

NIでは、ダウンロードできる無料のデータプラグインを多数提供しています。ni.com/datapluginsでは、最も一般的なファイル形式でTDMSモデルを使用するためのデータプラグインをダウンロードしたり、カスタムファイル形式用のデータプラグインの記述を無料でリクエストしたりできます。

図11.データプラグインを使用すると、ファイル、チャンネルグループ、チャンネル情報の場所を、この図に示すようなカスタムのファイル形式内で記述し、TDMSモデルで使用することができます。

 

計測データをディスクにストリーミングする最速の方法

NI-DAQmx 9.0以降では、DAQmx API内から直接、TDMSファイルにデータを記録できます。DAQmxロギングを構成VI (DAQmx Configure Logging VI) を介してロギングを構成することにより、TDMSロギングを既存のアプリケーションに簡単に統合できます。また、この方法でデータをディスクにストリーミングすると、いくつかのメモリ操作が最適化され、Windows、LabVIEW、TDMSのバッファがバイパスされて最大の効率得られるため、高速度測定データストリーミングの限界を引き上げることができます。DAQmxロギングを構成VI (DAQmx Configure Logging VI) を使用したテストでは、1.2 GB/sを超えるデータストリーミング速度を実現しました。NI-DAQmxアプリケーション内でTDMSロギングを統合する方法の詳細については、『ディスクへの高速ストリーミングにおけるデータ圧縮』を参照してください。

図12.NI-DAQmxロギングを構成VI (NI-DAQmx Configure Logging VI) を使用すると、簡単な手順を1つ追加するだけで、TDMSファイル形式を介してデータをディスクにストリーミングできます。

データの形式にではなくデータに専念する

NIでは、エンジニアや科学者がシミュレーションやテストで生成した大量のデータを適切に保存できるように、TDMSファイル形式を開発しました。適切に整理されドキュメント化されたファイルを使いやすいインタフェースで保存できるため、アプリケーションの中でより重要な領域に専念することができ、アプリケーションインタフェースにおけるデータストレージの側面をアプリケーションに合わせて自然に拡張できます。

 

次のステップへ

MATLAB®は、The MathWorks, Inc.の登録商標です。

LabWindowsマークは、Microsoft Corporationの使用許諾を得て使用しています。Windowsは、Microsoft Corporationの米国およびその他の国における登録商標です。

ダウンロード

要件

 

ソフトウェア

言語: VBScript

Was this information helpful?

Yes

No