構成エラー
カスタムデバイスを追加すると、Initialization VI とPage VI が実行されますが、構成についてのエラーはこれらが根本原因であることが多いです。カスタムデバイスのXMLファイルで参照されているVIがコンピュータ上で有効であり、実行可能であることを確認してください。これらの VIには一般的なデバッグ手法を使用できます。
構築されたカスタム デバイス LLB ファイルをデプロイ用のマシンに移植する場合は、両方のマシンのソフトウェア一式が同一であることを確認してください。たとえばドライバのバージョンが異なる場合、基礎となるVIが異なるため、カスタムデバイスをシステム定義に正しくロードできない可能性があります。
デプロイメントおよび実行時エラー
エラー原因の絞り込み
エラーが起きている原因、場所を特定するために、以下の内容を試してください。
- システム定義ファイルからカスタム デバイスを削除した後もエラーが継続しないことを確認して、エラーの原因が、作成したカスタム デバイスにあることを確認します。
- プロジェクトで複数のカスタム デバイスを使用している場合は、カスタム デバイスを 1 つずつ無効にするか全て削除したあとに1つずつ追加し、問題のあるカスタム デバイスを特定します。
- RT ターゲットにデプロイしている場合は、Windows PCに対するローカルデプロイを試します。このデプロイが成功した場合は、カスタムデバイス内の RT システムと互換性のない VIが正常なデプロイを妨げている可能性がないかを探し始めます。
- システム定義ファイルをターゲットにデプロイするときにこのエラーが発生するかを確認します。このエラーが発生した場合は、RT Driver VI の初期化フェーズを調査する必要があります。これには、Inline HardwareまたはInline ModelのカスタムデバイスのInitializationおよびStartのケース、およびAsynchronousカスタムデバイスのReport Final Status VIより前のものが含まれます。
- さらに、ダウンロード時またはコンパイル時に実行するように構成したAction VI もデプロイエラーを引き起こす可能性があります。
LabVIEW開発環境を使用したデバッグ
カスタムデバイスは、VeriStand Engine から動的に呼び出される LabVIEW VI です。 LabVIEW 開発環境を使用して、可能な限りカスタムデバイスのソースコードの開発とテストを行ってください。これにより、
LabVIEW のすべてのデバッグツール を利用できるようになります。
VeriStand Engine 内でのデバッグ
NI VeriStand – Print Debug Line.vi (VeriStand 2018以前の場合は
NI VeriStand – Print Debug String.vi)をカスタムデバイスコード全体に散りばめて、VIの実行のデバッグとトレースに役立つ便利な文字列をコンソールに出力します。これを 文字列にフォーマット関数と組み合わせて、特にエラーに関するできるだけ多くの情報を取得します。出力結果を表示するには、
コンソール ビューア を使用します。 NI Linuxリアルタイムターゲットについては、
Linuxターゲット用にコンソールを確認するための資料 を参照してください。
可能であれば Windows ターゲットで RT Driver VI エンジンのコードをデバッグします。フロントパネルを自動的に開き、制御器と表示器を使用してデバッグするように VI を構成できます。 詳しくは
LabVIEWでサブVIのフロントパネルがポップアップするように制御する を参照してください。
パフォーマンスのベンチマーク