TDMSプロパティを設定関数
- 更新日2025-07-30
- 15分で読める
指定した.tdmsファイル、チャンネルグループ、チャンネルのプロパティを設定します。値を持つグループ名入力とチャンネル名入力を配線する場合、関数はチャンネルレベルでプロパティを書き込みます。値を持つグループ名入力はチャンネルレベルでプロパティの配線のみを行います。グループ名入力とチャンネル名の入力の両方に値がない場合、プロパティはファイル特有になります。チャンネル名入力に値を配線する場合は、グループ名入力にも値を配線する必要があります。 変更を有効にするには、.tdmsファイルへのリファレンスを閉じるか、.tdmsファイルにデータを排出する必要があります。

入力/出力
プロパティ値
—
プロパティ値は、指定されたチャンネルグループ、チャンネル、.tdmsファイルのプロパティ値を指定します。この入力には以下のデータタイプを使用できます。
同じ関数を使用して複数のプロパティを設定する場合、以前指定された任意のデータタイプの1D配列をプロパティ値入力に配線することができます。配列の各値は単一のプロパティに対応します。ただし、単一のプロパティには値の配列を含めることはできません。
プロパティ名
—
プロパティ名は、指定されたチャンネルグループ、チャンネル、.tdmsファイルのプロパティ名を指定します。
TDMSファイル
—
グループ名
—
グループ名は操作を実行するチャンネルグループを指定します。チャンネル名入力に値を配線した場合は、この入力にも値を配線する必要があります。
チャンネル名
—
チャンネル名は操作を実行するチャンネルを指定します。この入力に値を配線する場合は、グループ名入力にも値を配線する必要があります。
エラー入力 (エラーなし)
—
エラー入力は、このノードを実行する前に発生したエラーの状態を示します。この入力は、標準エラー入力として機能します。
TDMSファイル出力
—
グループ名出力
—
グループ名出力は操作を実行するチャンネルグループ名を返します。
チャンネル名出力
—
チャンネル名出力は操作を実行するチャンネル名を返します。
エラー出力
—
エラー出力には、エラー情報が含まれます。この出力は、標準エラー出力として機能します。 |
このセクションには、.tdmsファイルを使用する際に必要となる可能性があるプロパティがすべて記載されています。最初の表は、.tdmsファイルに含まれている可能性があるプロパティをすべて示しています。2番目の表に示すプロパティは、.tdmsファイルには含まれていませんが、特定の操作を実行するために使用できます。これらのプロパティは、波形属性として.tdmsファイルに書き込むことができます。ただし、一部のプロパティは.tdmsファイルから波形データを読み取る際に、波形属性として表示されない可能性があります。波形属性として有効?の列は、プロパティが波形属性として有効かどうかを示しています。LabVIEWは変数のデータタイプが文字列でない場合このプロパティを無視し、プロパティはテーブルに記述されたようには実行しません。
これらのプロパティの値は、「TDMSプロパティを取得」関数を使用して取得できます。これらのプロパティの値を変更するには、「TDMSプロパティを設定」関数を使用します。
次の表は、.tdmsファイルに含まれている可能性があるプロパティをすべて示しています。
| プロパティ名 | データタイプ | アクセス | ファイル形式バージョンで利用可能 | 波形属性として有効? | 説明 |
|---|---|---|---|---|---|
| name | 文字列 | 読み取り/書き込み | 2.0 | はい | .tdmsファイルで、ルート名、グループ名、またはチャンネル名などのオブジェクト名を指定します。 |
| NI_ArrayColumn | 32ビット符号付き整数 | 読み取り専用 | 1.0および2.0 | いいえ | 2D配列で列の指標を示します。このプロパティは、データの2D配列をファイルに書き込む場合のみ.tdmsファイルに表示されます。 |
| NI_ChannelLength | 64ビット符号なし整数 | 読み取り専用 | 1.0および2.0 | はい | .tdmsファイルでチャンネルの値の数を示します。 |
| NI_DataType | 16ビット符号なし整数 | 読み取り専用 | 1.0および2.0 | はい |
チャンネルのデータタイプを示します。値は、LabVIEWタイプコードに対応する整数です。 メモ .tdmsファイルは以下のデータ型にLabVIEWの型コードとは異なる型コードを使用します:
TDMSデータ型コードの全リストは、 TDMSファイルフォーマット内部構造のデータ型値のセクションを参照してください。 |
| NI_DigitalCompression | ブール | 読み取り専用 | 1.0および2.0 | いいえ | デジタルテーブルが圧縮されるかどうかを表示します。1の値はデジタルテーブルが圧縮されていることを示します。デジタルテーブルが圧縮されていない場合、このプロパティは表示されません。 |
| NI_DigitalLine | 32ビット符号付き整数 | 読み取り専用 | 1.0および2.0 | いいえ | デジタルテーブルの行の指標を示します。 |
| NI_DigitalNumberOfLines | 32ビット符号付き整数 | 読み取り専用 | 1.0および2.0 | いいえ | デジタルテーブルの行数を示します。 |
| NI_Number_Of_Scales | 32ビット符号なし整数 | 読み取り/書き込み | 2.0 | いいえ | .tdmsファイルからデータを読み取る際に使用するスケール数を指定します。たとえば、.tdmsファイルに5つのスケールがあり、NI_Number_Of_Scalesの値が4である場合は、.tdmsファイルを読み取る際、データに最初の4つのスケールだけが適用されます。 |
| NI_Scale[n]ここで、 nは スケールの順番を表し、 configは スケールの構成を表す。 | なし | 読み取り/書き込み | 2.0 | いいえ | .tdmsファイルのデータのスケール情報を指定します。.tdmsファイルでは、複数のスケール情報を作成できます。 メモ ナショナルインスツルメンツでは、 TDMSスケーリング情報作成 VIを使用してスケールを作成することを推奨しています。
|
| NI_Scaling_Status | 文字列 | 読み取り/書き込み | 2.0 | いいえ | .tdmsファイルのデータ読み取り時にデータをスケールするかどうかを指定します。値がunscaledで.tdmsファイルに1つ以上のスケールが含まれる場合、データはスケールされます。値がscaledの場合は、データはスケールされません。DAQmxデータチャンネルの場合、NI_Scaling_Statusがunscaledでも、LabVIEWはスケールなしデータを返せません。 |
| unit_string | 文字列 | 読み取り/書き込み | 1.0および2.0 | いいえ | .tdmsファイルのチャンネルデータの単位を指定します。 |
| wf_increment | 倍精度 | 読み取り/書き込み | 1.0および2.0 | いいえ | 2つの連続するサンプルのx軸上の増分を表します。 |
| wf_samples | 32ビット符号付き整数 | 読み取り/書き込み | 1.0および2.0 | いいえ | .tdmsファイルに書き込む波形の最初のデータチャンクに含まれるサンプル数を表します。値は0より大きい必要があります。 |
| wf_start_offset | 倍精度 | 読み取り専用 | 1.0および2.0 | いいえ | 周波数領域データとヒストグラムでは、このデータがx軸の最初の値として使用されます。 |
| wf_start_time | タイムスタンプ | 読み取り専用 | 1.0および2.0 | いいえ | 波形が集録または生成された時間を表します。このプロパティの値は、時間情報が相対時間である場合、または波形が時間領域内ではない場合、0である可能性もあります。 |
| wf_time_pref | 文字列 | 読み取り専用 | 1.0および2.0 | いいえ | x軸のデータを絶対時間または相対時間のどちらとして解釈するかを示します。 |
| wf_xname | 文字列 | 読み取り専用 | 1.0および2.0 | いいえ | 波形のx軸の名前を示します。 |
| wf_xunit_string | 文字列 | 読み取り専用 | 1.0および2.0 | いいえ | x軸の単位テキストを示します。 |
.tdmsファイルには、上記の表のプロパティ以外の波形属性が含まれる場合があります。
次の表に示すプロパティは、.tdmsファイルには含まれていませんが、特定の操作を実行するために使用できます。
| プロパティ名 | データタイプ | 単位 | アクセス | ファイル形式バージョンで利用可能 | 波形属性として有効? | 説明 |
|---|---|---|---|---|---|---|
| NI_DiskCacheSize | 32ビット符号なし整数 | バイト | 読み取り/書き込み | 2.0 | はい | NI_DiskCacheSizeプロパティを使用し、特定の量のキャッシュサイズをデータのメモリに割り当てることで.tdmsデータの書き込みパフォーマンスを向上できます。LabVIEWは、.tdmsデータをファイルごとにバイトで書き込みます。このプロパティは、「TDMSを開く」関数のバッファを無効?入力がTRUEの場合のみに有効です。このプロパティのデフォルト値は約2 MBです。キャッシュサイズを変更するには、「TDMSプロパティを設定」関数のプロパティ値入力に異なる値を配線します。NI_DiskCacheSizeプロパティにより大きな値を指定すると、書き込みパフォーマンスが向上しますが、より多くのコンピュータリソースが必要になります。 |
| NI_DiskGapSize | 32ビット符号なし整数 | バイト | 読み取り/書き込み | 2.0 | はい | NI_DiskGapSizeプロパティを使用して、不連続なデータを読み取る際の.tdmsデータの読み取りパフォーマンスを向上できます。このプロパティは、「TDMSを開く」関数のバッファを無効?入力がTRUEの場合のみに有効です。NI_DiskGapSizeプロパティの値は、ローカルハードディスクのセクタサイズの倍数です。このプロパティのデフォルト値は10です。.tdmsファイル内のデータ間のギャップがNI_DiskGapSizeプロパティの値より小さい場合、「TDMS読み取り」関数はファイルからすべてのデータを一度に読み取ります。.tdmsファイル内のデータ間のギャップがNI_DiskGapSizeプロパティの値より大きい場合、「TDMS読み取り」関数は各データを1度に1つずつ読み取ります。違いの大きさを変更するには、「TDMSプロパティを設定」関数のプロパティ値入力に値を配線します。 メモ 最適な読み取り/書き込みパフォーマンスを得るまでには、試行錯誤で設定変更を必要とする場合もあります。コンピュータを変更すると、同じ構成で同じパフォーマンスが得られない場合があります。別のコンピュータにアプリケーションをデプロイした後に、プロパティの値を調整してください。
|
| NI_InMemoryFileSize | 64ビット符号付き整数 | バイト | 読み取り専用 | 2.0 | はい | NI_InMemoryFileSizeプロパティを使用して、メモリ内の.tdmsファイルのサイズを返します。 |
| NI_InMemoryWriteBlockSize | 64ビット符号付き整数 | バイト | 読み取り/書き込み | 2.0 | はい | NI_InMemoryWriteBlockSizeプロパティを使用して、メモリにブロックサイズを割り当ててデータを書き込みます。このプロパティのデフォルト値は10 MBです。このプロパティの値範囲は[1 KB, 1 GB]です。このプロパティにより大きな値を指定すると、割り当てるブロックが少なくなり、メモリ内の書き込みパフォーマンスが向上しますが、より多くのコンピュータリソースが必要になります。書き込み操作が開始する前にこのプロパティを設定しておく必要があります。それ以外の場合、LabVIEWはエラーを返します。 |
| NI_MinimumBufferSize | 32ビット符号なし整数 | データサンプル | 読み取り/書き込み | 1.0および2.0 | はい | NI_MinimumBufferSizeプロパティを使用してファイルへの書き込み頻度を減らすことにより、.tdmsデータフローの書き込み性能を向上させることができます。このプロパティは、データがディスクに書き込む回数を制御することにより、.tdmsファイルのサイズを小さくできます。NI_MinimumBufferSizeプロパティは、「TDMS書き込み」関数のデータレイアウト入力がdecimatedの場合のみに有効です。デフォルトでは、NI_MinimumBufferSizeプロパティの値はゼロです。値をグループレベルで設定した場合、この関数は、その値がゼロである、基本となっているチャンネルの値も設定します。値をファイルレベルで設定した場合、この関数は、その値がゼロである、基本となっているグループおよびチャンネルの値も設定します。このプロパティと NI_DiskCacheSize プロパティを使用すると、 .tdmsファイルのファイル・バッファリングに影響します。 |
|
NI_UpdateChannelName NI_UpdateGroupName |
文字列 | N/A | 書き込み専用 | 1.0および2.0 | はい | 「TDMSプロパティを設定」関数で.tdmsファイルのグループとチャンネルの名前を変更できます。グループの名前を変更するにはNI_UpdateGroupNameをプロパティ名入力に配線し、チャンネル名を変更するにはNI_UpdateChannelNameをプロパティ名入力に配線します。新規グループまたはチャンネル名をプロパティ値入力に配線して、置換するグループまたはチャンネル名をグループ名またはチャンネル名入力に配線します。グループ名またはチャンネル名に配線するグループまたはチャンネルが存在しない場合、LabVIEWは新規の名前で新規グループまたはチャンネルを作成します。 |
サンプルプログラム
LabVIEWに含まれている以下のサンプルファイルを参照してください。
- labview\examples\File IO\TDMS\Standard Read and Write\TDMS Write Time Domain Data.vi
プロパティ値
—
プロパティ名
—
TDMSファイル
—
グループ名
—
エラー入力 (エラーなし)
—
TDMSファイル出力
—
グループ名出力
—
エラー出力
—