NI VISA、488.2、シリアル、およびモジュール式計測器ドライバのトラブルシューティング

更新しました Jul 27, 2023

環境

ソフトウェア

  • LabVIEW
  • LabWindows/CVI
  • Measurement Studio Instrument Driver Toolkit
  • Measurement Studio
  • Measurement & Automation Explorer (MAX)

ドライバ

  • NI-VISA
  • NI-Serial
  • NI-488.2
  • IVI Compliance Package

プログラミング言語

  • C
  • LabVIEW G

  • IDNetから計測器ドライバをダウンロードしましたが、想定どおりに動作していません。
  • LabVIEWプロジェクトでプラグアンドプレイ計測器ドライバを使用していますが、LabVIEWのあるバージョンから別のバージョンに移行すると、計測器ドライバライブラリが正しく見つかりません。
  • ナショナルインスツルメンツ(NI)製品でサードパーティ製の計測器を制御するためには、どのソフトウェアとドライバが必要ですか?
  • ベンチトップ計測器(マルチメータ、スコープ、電源など)を使用していますが、NI MAXでそれらが表示されません。
  • 使用しているコンピュータにはCOMシリアルポートがありますが、計測器と通信できません。

次の手順を行う前に、計測器の取扱説明書をお持ちであること、およびプログラム的に制御していないときは計測器が正しく動作することを確認してください。さらに、コンピュータから計測器への接続を再確認することをお勧めします。

 

 

A. コンピュータに正しいドライバがあることを確認する

  1. 必要なソフトウェアおよびその他の特別な使用法については、計測器ドライバのreadmeまたはダウンロードページを確認します。
  2. デバイスと通信するために必要なNational Instrumentsソフトウェアがインストールされていることを確認します。詳細は、計測器制御に必要なソフトウェア(GPIB、Serial、VISA、USBなど)を参照してください。
  3. 開発用のドライバが必要な場合は、「Runtime」というラベルのドライバをダウンロードしていないことを確認します。ランタイム版では、コンピュータはデバイスを検出できますが、VISAテストパネルなどデバイスの構成/デバッグオプションは表示されません。
     
  4. NI-VISA(またはその他のサポートするソフトウェア)を通じた通信が成功することを確認します。確認手順については、NI製品スタートアップガイドの計測器制御: ハードウェアのセットアップで説明しています。

 

 

B. 計測器ドライバのインストールを確認する

計測器ドライバが正しくインストールされていることを確認します。すべての計測器ドライバは、計測器ドライバネットワーク(IDNet)で見つけることができます。
 

  • LabVIEWプラグアンドプレイ計測器: LabVIEWプラグアンドプレイ計測器ドライバは、<LabVIEW>/instr.libディレクトリにあります(例:C:¥Program Files(x86)¥National Instruments¥LabVIEW 2017¥instr.lib¥Agilent 34401)。プラグアンドプレイ計測器ドライバにはインストーラはなく、instr.libに解凍するだけです。それらを解凍するときは、解凍ソフトウェアが追加のフォルダ層(例:C:¥Program Files(x86)¥National Instruments¥LabVIEW 2017¥instr.lib¥Agilent 34401¥Agilent 34401)を作成していないことを確認します。
     
  • LabWindows™/CVIプラグアンドプレイ計測器: LabWindows™/CVIプラグアンドプレイ計測器ドライバは、作成したプロジェクトでソースコードが正しく参照されている必要があります。このドライバもインストーラがないため、解凍してフォルダに移動のみが必要です。
     
  • IVIドライバを使用する計測器用: IVI計測器特定の計測器ドライバは、IVIStandardRootディレクトリにインストールする必要があります(例:C:¥Program Files¥IVI Foundation¥IVI¥Drivers)。IVI計測器特定の計測器ドライバがNIによって維持管理されている場合は、下図に示すようにMAXでIVIドライバエントリも作成されます。


メモ: IVI-Cクラスドライバを使用する場合は、MAXでIVI論理名とドライバセッションを設定してから、設定を保存する必要があります。これらの手順については、ナショナルインスツルメンツのIVIをLabVIEWまたはLabWindows/CVIで使用するためのスタートアップガイドを参照してください。

 

 

C. アプリケーション開発環境(ADE)で計測器が動作することを確認する

  1. VISAがADE(LabVIEW、LabWindows™/ CVI、Measurement Studio)を介して動作していることを確認する簡単なVISAサンプルプログラムを介して通信してみます。ヘルプ>>サンプルを検索からサンプルファインダを開き、ハードウェア入力と出力に移動し、使用している接続のタイプを選択します(例: GPIBまたはシリアル)。
  2. 使用するADEを起動して、計測器ドライバのサンプルプログラムを見つけます。
    • LabVIEW PnP (プロジェクトスタイル)用: ヘルプ>>サンプルを検索して、ハードウェア入力と出力>>計測器ドライバ>>LabVIEWプラグアンドプレイに移動する必要があります。
    • IVI-Cドライバ用: CVIプロジェクトを作成し、ドライバファイルとサンプルをプロジェクトに追加します。ファイルは<IVIStandardRootDir>/Driversにあります。
    • CVI PnP用: .prjファイルを開き、サンプルプログラムを実行します。
    • IVI-Cクラスドライバ用:
      • LabVIEWでは、ヘルプ>>サンプルを検索からサンプルファインダを開き、ハードウェア入力と出力>>計測器ドライバ>>IVIに移動します。
      • LabWindows™/ CVIでは、Help>>Find Examplesからサンプルファインダを開き、Hardware I/O»Instrument Drivers»IVIに移動します。
         
  3. 正しいVISAリソースまたはIVI論理名を使用していることを確認して、このサンプルプログラムを実行します。このサンプルが正しく動作しない場合は、次の手順を行います。
    1. InitializeCloseコマンドだけを実行します。
    2. IDQueryを無効にします。
    3. コンピュータを再起動し、NI MAXのVISAテストパネルを使用してVISA通信を再確認します。
    4. 問題が他のコンピュータや他の同一の計測器で再現するかどうかを確認します。
    5. IVIを使用している場合は、特定のドライバ(プラグアンドプレイスタイル)を直接使用します。
       
  4. 計測器ドライバを介して通信することはできるが問題が発生する場合は、エラーを再現するVIまたは関数呼び出しを最小数まで減らして問題を特定します。
     
    1. ハイライト実行モード(LabVIEWのみ)またはシングルステップ実行で問題が解決されないかどうかを確認します。
    2. アプリケーションの最後に計測器ドライバのリファレンスを閉じていることを確認します。
    3. NIウェブサイトやフォーラムで発生したエラーコードを検索して、特有の解決策を探します。

Additional Information

不適切な計測器ドライバ動作となるよくある理由

  • コマンドが不完全または間違っています。
  • 計測器モデル/リビジョンは、計測器ドライバでサポートされていません。
  • 計測器ドライバで通信設定が正しくありません(RS-232でよく発生します)。
  • ユーザアプリケーションによって渡された値が範囲外です。
  • 計測器ドライバが正しくインストールまたは設定されていません。
  • 使用している特定の計測器モデルはドライバによってサポートされていますが、テストには使用できませんでした。
  • 使用している計測器制御バスは計測器ドライバでサポートされていません(RS-232でよく発生します)。
  • IVIドライバはシミュレーションモードであり、想定どおり動作していません。

 

 

追加のトラブルシューティング手順

  • NI I/O Traceで発生するエラーをキャプチャします。使用方法については、デバッグ/トラブルシューティングに優れたNI I/O Traceのキャプチャを実行するを参照してください。
    • NI I/O Traceでキャプチャしたエラー情報に基づいて、エラーが報告されているVIまたは関数を確認します。
       
  • 送信されたコマンドをチェックして、それらをプログラミングマニュアルと比較します。送信されたコマンドがプログラミングマニュアルのコマンドと一致しない場合は、それらを変更して問題が解決するかどうか確認します。
  • 計測器ドライバがNIでサポートされている場合は、次の情報を収集して、NIサポートにお問い合わせください。
    • オペレーションシステムのバージョンとビット数
    • ADEのバージョン、パッケージタイプ、ビット数
    • 計測器ドライバの名前、バージョン、ビット数
    • 正確な計測器モデル名、リビジョン、ファームウェアのバージョン
    • 対象の計測器は計測機器ドライバによってサポートされているとリストされていますか?
    • 計測器ドライバはこれまでに正しく動作していましたか?はいの場合、それ以降、何が変更がありましたか?
    • 最後に成功したVISA通信はいつ確認されましたか?
    • どのようなエラーコードが生成されていて、ni.comで検索すると何が見つかりましたか?
    • 他のコンピュータで問題が再現されていますか?
    • 問題は他の同一の計測器でも再現されますか?
    • 計測器制御バス(USB、GPIB、シリアルなど)が使用されている場合、問題はすべての通信バスで発生していますか?
       
  • 計測器ドライバがNIでサポートされていない場合は、計測器ドライバベンダに連絡してサポートを依頼するか、NIディスカッションフォーラムに問題を投稿してみます。
  • 可能であれば、別の計測器ドライバを試します。
  • IVIドライバを使用している場合は、デバイスをシミュレートするとき、またはレンジチェックがオフになっているときに問題が発生するかどうかを確認します。

 

NIドライバは、NIハードウェアとソフトウェア間の通信を容易にするソフトウェアを指します。例えば、一般的にNI-VISAと呼ばれるVirtual Instrument Software Architecture APIは、GPIB、USB、シリアル、イーサネットなどのほとんどの計測バスとの通信を可能にします。これは、一貫した使いやすいコマンドセットを提供し、さまざまな計測器と通信します。
 

計測器ドライバとは、プログラム可能計測器を制御する一連のソフトウェアルーチンを指します。各ルーチンは、機器の設定、読み取り、書き込み、トリガなどのプログラム動作に対応しています。計測器ドライバは、計測器の制御を簡素化し、各計測器のプログラミングプロトコルを習得する必要性を排除して、テストプログラムの開発時間を短縮します。