ロギングする前にTDMSファイルのサイズを予測する方法は?

更新しました Sep 27, 2022

使用製品

ソフトウェア

  • LabVIEW Full

ドライバ

  • NI-DAQmx

プログラミング言語

  • LabVIEW G

問題

DAQハードウェアを使用してデータを収集して、TDMS形式でログに記録しています。その際、DAQmxロギングを構成VIを使用しています。ログに記録するファイルのサイズを予測/推定するにはどうすればよいですか?

解決策

一般的なTDMSファイル

通常、TDMSファイルのサイズは次の要因に依存します。

  • データタイプ
  • チャンネル数
  • ロギング期間

 

予測サイズ = (各データタイプが消費するバイト数)X(チャンネル数)X(ロギングの継続時間)

たとえば、4つのチャネルで10秒間(1秒間に1回)、倍精度小数数値データタイプを記録するとします。倍精度小数数値データタイプで消費されるバイト数は8バイトなので、予測サイズ = 8 X 4 X 10 = 320バイトとなります。

 


 

DAQmxロギングを構成VIを使用して記録されたTDMSファイル

DAQmxロギングを構成VIを使用してログを記録する際、サイズはデータタイプに依存せず、ハードウェアで使用されるADCの幅に依存します。

上記の例を考慮すると、データタイプが倍精度小数であっても、DAQmxロギングを構成VIにより、未加工のADC出力がTDMSファイルに記録されます。ADCの幅が16ビット(2バイト)であると仮定すると、予測サイズ = 2 X 4 X 10 = 80バイトとなります。
 

メモ: TDMSファイルに含まれる追加のメタデータのため、TDMSファイルの実際のサイズは常に予測サイズよりもわずかに大きくなります。

追加情報

DAQmxロギングを構成VIを使用すると、データ圧縮が増加することがわかります。このVIを利用することで、DAQmxパレット内だけでTDMSファイルへのデータ書き込みを構成できます。これにより、既存のデータ収集アプリケーションの使用と統合が簡単になるだけでなく、内部での最適化により、データをディスクに書き込む最速の方法になります。詳細については、ディスクへの高速ストリーミングにおけるデータ圧縮を参照してください。