再利用のためにデータを記録する
- 更新日2025-08-27
- 11分で読める
他のVIやレポートで使用するためにデータを記録するには、フロントパネルのデータロギングを使用します。たとえば、グラフからデータを記録し、そのデータを別のVIの中にある別のグラフ内で使用できます。
フロントパネルのデータロギング機能によって、VIが実行されるたびにフロントパネルデータが個別のデータログファイルにバイナリ形式で保存されます。
データログファイルには、VIの各実行時のタイムスタンプおよびデータを含むレコードが格納されています。データログファイルにアクセスするときは、回収モードでVIを実行し、フロントパネル制御器を使用してデータを表示することによって、必要なレコードを選択します。回収モードでVIを実行すると、以下のとおりフロントパネルの一番上に数値制御器が表示されるので、レコード間を移動することができます。
自動および対話形式でのフロントパネルのデータロギング
自動ロギングを有効にするには、操作»完了時にログを選択します。VIのフロントパネルデータに初めてログする場合、LabVIEWはデータログファイルに名前を付けることを促すプロンプトを表示します。データログファイルのファイル拡張子は.datや.txtなど自由に選択できます。LabVIEWは、VIを実行するたびにデータをログして、VIの実行ごとにデータログファイルに新規のレコードを追加します。LabVIEWがデータログファイルにレコードの書き込みを実行した後はそのレコードは上書きできません。
データを対話形式で記録するには、操作»データロギング»ログを選択します。LabVIEWは、データログファイルにデータを即座に追加します。対話形式のデータロギングでは、データを記録する時刻を選択できます。自動的なデータロギングでは、VIを実行するたびにデータが記録されます。
| メモ 波形チャートは、フロントパネルデータロギングの場合、一度に1つのデータポイントのみログします。配列をチャート表示器に配線した場合、そのデータログファイルにはチャートに表示される配列の部分配列が含まれます。 |
記録済みのフロントパネルデータを対話形式で表示する
データを記録した後、操作»データロギング»回収を選択することによって、データを対話形式で表示できます。以下のようにデータ回収ツールバーが表示されます。
ハイライトされている数字は、現在表示中のデータレコードを示します。角括弧内の数字は、現在のVIについてログしたレコードの範囲を示します。VIを実行するたびにレコードが記録されます。日付と時刻は、選択したレコードがログされた日付と時刻を示します。次のレコードまたは前のレコードを表示するには、増分矢印または減分矢印をクリックします。キーボードの上矢印キーと下矢印キーを使用することもできます。
データ回収ツールバーだけでなくフロントパネルの外観も、ツールバーで選択したレコードに応じて変化します。たとえば、増分矢印をクリックして別のレコードに進むと、データを記録した時点におけるその特定のレコードのデータが制御器と表示器に表示されます。回収モードを終了し、表示していたデータログファイルを持つVIに戻るには、OKボタンをクリックします。
レコードを削除する
回収モード時に特定のレコードを削除できます。回収モードで個々のレコードを削除対象としてマークするには、そのレコードを表示し、ごみ箱ボタンをクリックします。ごみ箱ボタンをもう一度クリックすると、そのレコードは削除対象から外されます。
削除対象としてマークを付けたレコードをすべて削除するには、回収モード時に操作»データロギング»データをパージを選択します。
OKボタンをクリックする前にマークしたレコードを削除しないと、LabVIEWはマークしたレコードを削除するようプロンプトします。
ログファイルバインディングを解除する
フロントパネルデータの記録または回収時に使用するデータログファイルとVIを関連付けるには、ログファイルバインディングを使用します。1つのVIに複数のデータログファイルを関連付けることができます。これにより、VIデータをテストしたり比較することができます。たとえば、VIを初めて実行した際のログデータと、次にそのVIを実行した際のログデータを比較することができます。複数のデータログファイルとVIを関連付けるには、操作»データロギング»ログファイルバインディングを解除を選択して、ログファイルバインディングを解除する必要があります。次回そのVIを自動ロギングを有効にして実行したり対話的にデータロギングを実行すると、データログファイルを指定するプロンプトが表示されます。
ログファイルバインディングを変更する
別のログファイルに対してフロントパネルデータの記録または回収を行うようにログファイルのバインディングを変更するには、操作»データロギング»ログファイルバインディングの変更を選択します。LabVIEWは、別のログファイルを選択するか、新規ログファイルを作成するようプロンプトします。別のデータをVI内に取り込む場合や、VIから別のデータログファイルにデータを追加する場合は、ログファイルバインディングを変更できます。
プログラムでフロントパネルデータを取り出す
サブVIを使用するか、ファイルI/O VIおよび関数を使用して、記録済みデータを取り出すこともできます。
サブVIを使用してフロントパネルデータを取り出す
サブVIを右クリックし、ショートカットメニューからデータベースアクセスを可能にするを選択すると、以下のブロックダイアグラムに示すとおりサブVIの周りに黄色いボックスが表示されます。
ファイルキャビネットのような形をした黄色いボックスには、データログファイルからデータにアクセスするための端子が含まれています。データベースアクセスを有効にすると、サブVIの入出力は出力として機能し、そのログデータを返します。レコード番号は取り出すレコードを示し、無効レコード番号はレコード番号が存在するかどうかを示します。タイムスタンプはレコードの作成時刻であり、フロントパネルデータはフロントパネルオブジェクトのクラスタです。フロントパネルオブジェクトのデータにアクセスするには、フロントパネルデータクラスタを「バンドル解除」関数に接続します。
以下のブロックダイアグラムのように、サブVI上の対応する端子に直接配線することによって、特定の入力および出力の値を取り出すこともできます。
VIを実行すると、サブVIは実行されません。その代わりに、サブVIのフロントパネルからVIのフロントパネルにログデータがクラスタとして返されます。
| メモ サブVIまたはExpress VIを拡張可能な状態で表示する場合は、そのノードに対するデータベースアクセスを有効にすることはできません。 |
レコードを指定する
サブVIには n 個のログデータがあり、-n ~ n - 1の任意の数値をサブVIのレコード番号端子に配線します。負でないレコード番号を使用して、最初の記録済みレコードを基準としてレコードにアクセスできます。0は最初のレコード、1は2番目のレコード、そして最後のレコードを表すn -1まで以下同様に続きます。
負のレコード番号を使用すると、最後にログされたレコードに関連するレコードにアクセスできます。–1は最後のレコード、–2は最後から2番目のレコードなど、最初のレコードを示す-nまで以下同様に続きます。-n~n -1の範囲外の数値をレコード番号端子に接続すると、無効レコード番号出力はTRUEになり、サブVIはデータを回収しません。
LabVIEWデータディレクトリ
デフォルトLabVIEWデータディレクトリを使用して、.lvmや.txtファイルなど、LabVIEWが生成するデータファイルを保存します。LabVIEWは、デフォルトファイルディレクトリにLabVIEWデータディレクトリをインストールします。これは、ご使用のオペレーティングシステムでLabVIEWが生成するデータファイルの整理および検索をするときに役立ちます。デフォルトでは、「計測ファイルへ書き込む」Express VIは、このディレクトリで生成した.lvmまたは.tdmファイルを保存し、「計測ファイルから読み取る」Express VIは、このディレクトリから読み取ります。また、デフォルトデータディレクトリおよびアプリケーション:デフォルト:データディレクトリプロパティは、デフォルトでLabVIEWデータを返します。
ツール»オプションを選択し、カテゴリリストからパスを選択して、異なるデフォルトディレクトリを指定します。デフォルトデータディレクトリは、デフォルトディレクトリとは異なります。デフォルトディレクトリは、新規VI、カスタム制御器、VIテンプレート、または作成したその他のLabVIEWドキュメント用に指定したディレクトリです。
テキストベースの計測ファイル
テキストベースの計測ファイル (.lvm) には、「計測ファイルへ書き込む」Express VIが生成するデータが含まれています。テキストベースの計測ファイルは、表計算ソフトやテキストエディタで開くことができるタブ区切りのテキストファイルです。.lvmファイルには、Express VIが生成するデータの他にもデータが生成された日時などのデータに関する情報が含まれています。LabVIEWは6桁までのデータを.lvmファイルに保存します。
「計測ファイルから読み取る」Express VIを使用して、.lvmファイルからデータを読み取ります。
.lvmファイルでは、数値の区切り文字としてカンマを使用します。.lvmファイル内のデータを文字列から数値へ変換するには、ローカリゼーションコード形式指定子を使用して、小数点区切りはピリオドを指定します。
.lvmファイルについては、ni.comの以下のサポートドキュメントを参照してください。
バイナリ計測ファイル
バイナリ計測ファイル (.tdmまたは.tdms) には、「計測ファイルへ書き込む」Express VI、ストレージ/データプラグインVI、TDMストリーミングVIおよび関数が生成するデータが含まれます。.tdmファイルはXMLベース形式を使用して、ファイルプロパティ、および波形データを含むバイナリファイルへのリンクを保存します。.tdmsファイルは波形プロパティを保存する、波形データを含むバイナリファイルです。バイナリ計測ファイルを使用すると、LabVIEW計測データファイル (.lvm) よりも、ディスクで使用するスペースが少なく、実行速度が速く、確度が向上します。
バイナリ計測ファイル (.tdm) を使用して、LabVIEWとDIAdemなど、NIソフトウェア間でデータを交換します。
(Windows) 「計測ファイルから読み取る」Express VIおよび「計測ファイルへ書き込む」Express VIを使用して、.tdmファイルからデータの読み取りおよび、データの書き込みを行うことができます。.tdmファイルからデータを読み取ったり、データを書き込むには、「ストレージ/データプラグイン」VIを使用します。.tdmsファイルからデータを読み取ったり、データを書き込んだりするには、「TDMストリーミング」VIおよび関数を使用します。