TDMSで保存されたファイルを、CSVファイル形式に変換する方法を紹介します。
TDMS(Technical Data Management Streaming)は、National Instrumentsが開発した、測定データをメタデータとともに高速で保存することを目的としたファイル形式です。データは、DIAdemやVeristandといったソフトウェアで開く以外に、アドインを使用することでExcelで開くことも出来ます。しかし、Excel自体の制限により、読み取られる行数には上限があります。
そこで、TDMSをCSVファイル形式にすることで、メモ帳やワードパッド等でExcelの上限以上のデータを参照することができるようなプログラムを作りました。このプログラムでは、TDMSのプロパティとして保存されていたグループ名やチャンネル名をそのままCSVに反映させる以外に、ユーザーが任意の名前をつけることもできます。
NI TDMSファイル形式 - National Instruments
Microsoft Excel用TDMアドインツール ユーザガイド - National Instruments
・LabVIEW 2015 SP1以降
viの使用方法を確かめる際には、zipファイルに入っているsample_data.tdmsを使用することもできます。
viの使い方の説明については、付属の「how_to_use_conversion_vi.pdf」も参照して下さい。
NIコミュニティのサンプルコード交換のサンプルコードは、MIT Licenseによりライセンス供与されています。
下記のスクリプトをDIAdemで実行すると、複数のTDMSファイルを一括でCSVに変換できます。
*********************
If FileDlgShow(DataReadPath,"TDMS Files,*.tdms","DataSelection",True) = "IDOk" Then
For i = 0 to UBound(FileDlgNameList)
Call Data.Root.Clear()
Call DataFileLoad(FileDlgNameList(i),"TDMS","Load")
CsvFilePath = NameSplit(FileDlgNameList(i), "P") & NameSplit(FileDlgNameList(i), "N") & ".CSV"
Call DataFileSave(CsvFilePath,"CSV")
Next
End If
*********************