NI-DAQmx計測サービス・ソフトウェア

概要

本稿では、ナショナルインスツルメンツ(NI)のデータ集録ハードウェアに付属する計測サービス・ソフトウェアについて説明します。

内容

NIは、データ集録デバイスとともに、有益な計測サービス・ソフトウェアも提供しています。それらのソフトウェアを利用すれば、データ集録/ロギング・アプリケーションの開発に伴う総コストのうち2/3を占める時間コストを削減することが可能になります。ソフトウェアの品質を高め、NI LabVIEWとの密な統合を実現した結果、NIが提供する仮想計測器の販売数は、2004年には600万チャンネルに達しました。

1インタフェース多くプログラミング言語対応

 

LabVIEWは、仮想計測器を利用したテスト/計測/制御アプリケーションを開発するための標準ソフトウェアとして誕生しました。一方、NI-DAQmxは、1つのインタフェースで、Visual Studio .NETやC/C++といった一般的なプログラミング言語に幅広く対応可能な計測サービス・ソフトウェアです。関数や、プロパティ、使用する関数の呼び出し順などは、プログラミング言語に依存しません。このため、プロジェクト・チーム内で複数のプログラミング言語を使用する場合に大変便利です。さらに、ある言語から別の言語への移行も容易です。

1インタフェース数百種類データ集録デバイス対応

NI-DAQmxは、数百種類のデータ集録デバイスに対応するプログラミング・インタフェースです。言い換えると、このインタフェースを一度習得するだけで、数百種類もの機器を利用できるようになるということです。例えば、NI MシリーズのUSBデバイスとNI SシリーズのPCIデバイスのどちらを開発に使用しても、基本となるデータ集録用のコードは同じものとなります。プログラミング・インタフェースを1つに絞れば、コードを変更することなく、アップグレードやハードウェアの置き換えを簡単に行うことができます。

タスクグローバル仮想チャンネル

グローバル仮想チャンネルは、レンジ、端末コンフィギュレーション(構成)、カスタムスケールといった各チャンネルに固有の情報と一緒に物理チャンネルをカプセル化するソフトウェア・エンティティです。タスクには、1つ以上のチャンネルと、タイミングやトリガなどタスクに適用されるプロパティが収録されます。DAQアシスタントで仮想チャンネルとタスクを作成すれば、計測/生成タスクを容易に管理したり再利用したりすることができます。

VI

NI-DAQmxプログラミング・インタフェースは、あらゆる操作に対して多態性を持った関数とVIを提供することで、複雑なデータ集録アプリケーションの開発を簡素化します。例えば、デジタル回線からデータを読み取るのにデジタル読み取り関数を使用し、アナログ・データを読み取るのにアナログ読み取り関数を使用するよりも、1つの関数でデジタルとアナログの両方のデータを読み取れるほうが開発者にとっては便利です。このような振る舞いが多態性です。そして、入力値に応じて振る舞いが変化する関数のことを多態性関数と呼びます。1つのインタフェースで複数の関数を利用できるようにすることで、1台のデバイスだけでなく、複数のデバイスに対する学習曲線がより平坦になります。例として、NIのDAQデバイスで、4つの操作(アナログ入力、アナログ出力、デジタルI/O、カウンタ/タイマ)を行う場合のプログラミングについて考えてみます。その場合、1つのプログラミング方法を学習したら、その知識をほかの操作のプログラミングに再利用することが可能です。つまり、4種類のプログラミング方法を学習するよりも、大幅に負荷を軽減できるということもです。

NI-DAQmxシミュレーションデバイス

NI-DAQmxシミュレーションデバイスは、物理ハードウェアを使用せずに、NI-DAQmxプログラムを作成/実行したり、DAQアシスタントやNI LabVIEW SignalExpressなどのツールを試用したりする際に有用なものです。NI-DAQmxシミュレーションデバイスを利用する場合、実際のデバイスと同じ方法でNI-DAQmxのタスクを検証することができます。言い換えれば、物理ハードウェアを使わずにデバイスの機能を検証することが可能です。例えば、プロパティに無効な値が設定されている場合、NI-DAQmxシミュレーションデバイスに返されるエラーは、実際のデバイスに返されるエラーと同じものです。また、実際のデバイスと同様に、RTSIラインや、PXIトリガライン、DMAチャンネル、カウンタといった必要なタスク・リソースはすべてカウント/リザーブされます。

NI-DAQmx の関連ドキュメント

NI-DAQmxをインストールすると、数百ページにも及ぶ関連ドキュメントや、参考資料、データ集録アプリケーションの開発に着手する際に役立つ多数のサンプル・プログラムもインストールされます。

ドキュメントには、以下のような事柄が含まれます。

  • 関数ノードおよびプロパティ・ノードに関するプログラミング・インタフェースの参考資料
  • NI-DAQmxのタスク生成に関するプログラミング言語ごとのヘルプ
  • 計測の基本について説明した参考資料。バッファや、デバイスの同期、信号調整など、データ集録に関連するさまざまなトピックを網羅する
  • 一般的なデータ集録アプリケーションに関する説明資料

DAQ アシスタント Express VI

Windows版のNI-DAQmxに同梱されているDAQアシスタントは、計測タスクのコンフィギュレーション/テスト/プログラミングの方法について、順を追って説明するVIです。低レベルのカスタマイズを行うためのコンフィギュレーションに基づき、サンプル・プログラムを自動生成することも可能です。LabVIEWに含まれているほかのコンフィギュレーション用VIと同様に、DAQアシスタントExpress VIは、データ集録アプリケーションの開発を簡素化し、開発期間の短縮を実現します。

DAQアシスタントは、NI-DAQmxや、NIのデータ集録ハードウェア、さらにLabVIEW、LabVIEW SignalExpress、LabWindows/CVI、Measurement StudioといったNIのソフトウェアと組み合わせて使用することが可能です。

接続ダイアグラム

接続ダイアグラムを使用し、DAQアシスタントのタスク構成を基にセンサの接続先を示せば、システムのセットアップを簡素化することができます。1つ1つの仮想チャンネルには、センサからコネクタ・ブロックまでの接続方法を示した画像が添付されています。接続リストには、各チャンネルの接続方法がテキスト形式で表示され、端末名と番号が示されます。

タスクをHTML形式のレポートで保存するには、接続ダイアグラム・ツールで[Save as HTML(HTMLとして保存する)]オプションを選択します。そのレポートには、以下の内容が含まれます。

  • タスクに含まれる仮想チャンネルのリスト
  • 物理チャンネル
  • デバイスの種類
  • 計測の種類
  • 接続ダイヤグラム

チャンネルションザード

チャンネルキャリブレーションウィザードを使用すれば、センサからソフトウェアまで、エンドツーエンドでのキャリブレーション(校正)を実行することができます。例えば、華氏0度であるはずの氷浴の温度が、熱電対で測ると華氏-1度だったという場合には、使用しているセンサが不良品なのかもしれません。一方で、多機能I/Oデバイスのキャリブレーション、もしくはケーブル内のノイズの低減が必要である可能性もあります。チャンネルキャリブレーションとは、センサや、ハードウェア、計測ソフトウェアを対象とし、あらゆるスケールキャリブレーションとハードウェアキャリブレーションを実行して計測値を補正する機能のことです。これを実行することにより、計測精度を確保することが可能になります。なお、チャンネルキャリブレーションウィザードを利用する場合、キャリブレーションに関するプロパティは、キャリブレーションの対象となる仮想チャンネルごとにまとめて保存されます。

テストパネル

テストパネルを使えば、開発作業を一切行うことなくDAQデバイスの機能をテストすることができます。主要なDAQデバイスのサブシステムは、それぞれ以下のテストパネルを搭載しています。

  • アナログ入力
  • アナログ出力
  • デジタル入力
  • デジタル出力
  • カウンタ/タイマ

デバイスをテストするためのデータをテストパネルで集録/生成すれば、アプリケーションの開発/デバッグ段階で大幅な時間短縮を図ることができます。また、テストパネルでNI-DAQmxのタスクを実行することにより、構成済みのタスクが想定どおりに動作するかどうかを確認することが可能です。

デバイス・ション

デバイス・キャリブレーションは、デバイスの計測精度の検証と、計測誤差の調整という2つのプロセスから成ります。検証プロセスではデバイスの性能を計測し、公開されている仕様値と得られた計測値とを比較します。キャリブレーションの実行中、電圧/外部標準信号の供給と読み取りを行うことで、デバイスのキャリブレーション定数を調整することができます。そして、新しいキャリブレーション定数はEEPROMに保存されます。保存されたキャリブレーション定数は、デバイスが計測を実行して誤差を調整する際、必要に応じてメモリからロードされます。キャリブレーションには、外部キャリブレーションとセルフ・キャリブレーションの2種類があります。NI-DAQmxでデバイス・キャリブレーションを実行する詳しい方法については、キャリブレーション・デバイスに関する検討事項を参照してください。

  • セルフ・キャリブレーション(内部キャリブレーション):セルフ・キャリブレーションでは、デバイスに保存されているオンボードの基準と照らし合わせてキャリブレーション定数を調整します。セルフ・キャリブレーションによるデバイスの調整は、基本的にはいつでも実行可能です。
  • 外部キャリブレーション:外部キャリブレーションでは、高精度の電圧源を用いて、キャリブレーション定数の検証/調整を行います。そのため、通常は計測研究所で行われます。外部キャリブレーションの詳しい手順については、キャリブレーションに関する資料をご覧ください。

無償データロギング・ソフトウェア

LabVIEW SignalExpressは、データ集録/解析/表示をプログラミングレスで実現する対話式計測ワークベンチです。数百種類のデータ集録デバイス/計測器をサポートしています。直観的なドラッグ&ドロップ操作により、データの迅速な集録や、高度な解析の実行、カスタムレポートの生成を行うことができます。また、何百種類ものデータ集録デバイスや、モジュール式計測器、スタンドアロン型の計測器に対応しているので、それらを利用したデータロギングや計測器の制御の自動化を短時間で実現できます。

デバイスの自動検出
LabVIEW SignalExpressは、NIのUSB対応DAQデバイスを自動的に検出し、実行中の計測に適したデータロギング・アプリケーションを直ちに起動します。NI DAQデバイスをLabVIEW SignalExpressと組み合わせて使用すれば、計測を素早く実行できます。

チャンネルビュー
LabVIEW SignalExpressのチャンネルビューを利用すれば、複数のロギング用チャンネルを同時に構成することが可能です。そのため、セットアップと構成を短時間で完了することができます。また、チャンネルビューを利用することにより、マルチチャンネルのデータロガーを構成し、さまざまなタイプの計測を短時間で実行することが可能になります。

データビュー
LabVIEW SignalExpressのデータビューは、集録データの表示/解析用のメインウィンドウです。グラフやチャート、温度計、メータ、ゲージ、LEDなどさまざまなコンポーネントを追加して、カスタマイズすることも可能です。データビューでは、アプリケーションの実行中に、適切なステップからデータビューにデータをドラッグするだけで、ユーザ独自のディスプレイを作成することができます。

データエクスポート


 

LabVIEW SignalExpressでは、データのエクスポートなど、多数の一般的なデータロギング・タスクを簡単に実行することができます。Microsoft Excelなど、Windowsの標準的なアプリケーションへのエクスポートは、データを右クリックするか、LabVIEW SignalExpressからExcelなどのアプリケーション画面にドラッグ&ドロップするだけで完了します。データは自動的にフォーマットされ、カラム・ヘッダが適用されます。集録データをTDMS(Technical Data Management Streaming)形式でストリーミングすることも可能です。TDMS形式では、バルク・データに、オペレータ名、日付、時間といったさまざまなテスト・パラメータを追加で記述することができます。それにより、保存データに関するドキュメントに記述すべき情報を補完することが可能になります。また、TDMSファイルはデータ・マイニング向けに最適化されています。そのため、NI DIAdemなどオフラインで利用するデータ・マイニング・ツールを使って、テスト・データを迅速に検索/特定/解析/表示することが可能です。

LabVIEW コード生成


LabVIEW SignalExpressはLabVIEWをベースとしています。そのため、LabVIEWのコードを自動的に生成したり、グラフィカル・プログラミングによってカスタム機能を追加したりすることが可能です。LabVIEWは、FPGAやDSP、組込みデバイスなど、複数のハードウェア・プラットフォームに対応します。

構成可能デプロイメント(実装)オプション

LabVIEWやLabWindows/CVIで作成した実装(デプロイメント)済みのデータ集録アプリケーションの中には、NI-DAQmxのドライバやユーティリティの全機能を必要としないものも少なくありません。そこで、NI-DAQmx 8.5では、NI-DAQmxのランタイムを5つのバージョン(ディストリビューション)から選んで配備できるようにしました。5つのバージョンとしては、全機能を含む617 MBのドライバや、最小限のサイズに最適化された169 MBのランタイム・エンジンなどが用意されています。なお、カスタム・インストーラ機能は、以下の手順で呼び出します。

  1. NI-DAQmxアプリケーションをターゲット・マシン上に作成し、新しいLabVIEWプロジェクトに保存します。
  2. プロジェクトエクスプローラでビルド仕様を右クリックし、[New(新規作成)] → [Installer(インストーラ)]へと進みます。
  3. インストーラプロパティウィンドウで、[Categories(カテゴリ)]の[Additional Installers(追加インストーラ)]をクリックします。
  4. NI-DAQmx 8.3以降のバージョンを選択し、ウィンドウの右上にあるドロップダウン・リストから[Installer Type(インストーラタイプ)]を選択します。

 

以下のセクションでは、実行可能ファイルを構築する際に選択できるNI-DAQmxランタイム・エンジンの5つのオプションを紹介します。

フル機能バージョン(617 MB)

このディストリビューションを利用する場合、NI-DAQmxに収録されているドライバ・ソフトウェアがすべてインストールされます。ただし、以下のものは含まれません。

  • NI LabVIEW SignalExpress

このバージョンは、NI-DAQmxを含むカスタム・インストーラを構築する際のデフォルト・オプションとなります。

ランタイム1(494 MB)

このディストリビューションでは、NI-DAQmxに収録されているドライバ・ソフトウェアがすべてインストールされます。ただし、以下のものは含まれません。

  • NI LabVIEW SignalExpress
  • LabVIEW、LabWindows/CVI、NI Measurement Studio向けのアプリケーション開発環境(ADE:Application Development Environment)

以前、アプリケーションを開発/デプロイ(実装)した際にDAQアシスタントを使用したことのあるユーザは、NI-DAQmxインストーラの作成時にこのオプションを選択してください。

ランタイム 2 (375 MB)

このディストリビューションでは、NI-DAQmxに収録されているドライバ・ソフトウェアがすべてインストールされます。ただし、以下のものは含まれません。

  • NI LabVIEW SignalExpress
  • LabVIEW、LabWindows/CVI、Measurement Studio向けのADE
  • DAQアシスタント

ランタイム 3 (315 MB)

このディストリビューションでは、NI-DAQmxに収録されているドライバ・ソフトウェアがすべてインストールされます。ただし、以下のものは含まれません。

  • NI LabVIEW SignalExpress
  • LabVIEW、LabWindows/CVI、Measurement Studio向けのADE
  • DAQアシスタント
  • NI-DAQmxの関連ドキュメト

ランタイム 4 (305 MB)

このディストリビューションでは、NI-DAQmxに収録されているドライバ・ソフトウェアがすべてインストールされます。ただし、以下のものは含まれません。

  • NI LabVIEW SignalExpress
  • LabVIEW、LabWindows/CVI、Measurement Studio向けのADE
  • DAQアシスタント
  • NI-DAQmxの関連ドキュメント
  • LabVIEW Real-Timeのサポート

ランタイム 5 (169 MB)

このディストリビューションでは、NI-DAQmxに収録されているドライバ・ソフトウェアがすべてインストールされます。ただし、以下のものは含まれません。

  • NI LabVIEW SignalExpress
  • LabVIEW、LabWindows/CVI、Measurement Studio向けのADE
  • DAQアシスタント
  • NI-DAQmxの関連ドキュメント
  • LabVIEW Real-Timeのサポート
  • MAX(Measurement & Automation Explorer)

その他ドライバ・オプション

NI-DAQmx Base

NI-DAQmx Baseは、NI-DAQmxの一部の機能をWindowsや、Linux、Mac OS X、Pocket PCで利用できるようにするためのソフトウェアです。わかりやすく簡潔なプログラミング・インタフェースを使ってプログラムでチャンネルやタスクを生成し、LabVIEWとの密な統合を実現すれば、アプリケーション開発はさほど複雑なものではありません。NI-DAQmx Baseには、LabVIEW VIやC関数など、すぐに利用可能な機能が含まれています。それらは、NI-DAQmxドライバのフル機能バージョンに収められている機能に匹敵するほどのものです。

NI-DAQmx Baseは、現在EOL (販売終了) となっています。 詳細については、「End-of-Life Announcement for DAQmx Base Driver」をご覧ください。

NI計測ハードウェアDDK

NI計測ハードウェアDDK(Driver Development Kit:ドライバ開発キット)は、NIのデータ集録ハードウェアに向けた開発ツール、およびレジスタ・レベルのプログラミング・インタフェースを提供します。このパッケージは、標準的ではないOSを利用するアプリケーションの開発に携わるOEMカスタマ向けに設計されたものです。各デバイスの完全なレジスタ・マップにアクセスできるほか、一般的な計測/制御関数を補完するサンプルも収録されています。計測ハードウェアDDKは、Mシリーズのマルチファンクション・デバイスや、アナログ出力デバイス、デジタルI/Oデバイス、カウンタ/タイマI/Oデバイスに対応しています。

計測ハードウェアDDKについて、詳しくはこちらをご覧ください。

Was this information helpful?

Yes

No