Real Timeコントローラ上で実行しているプログラムを止めずにLabVIEWプログラムを終了する

更新しました Sep 2, 2024

使用製品

ソフトウェア

  • LabVIEW
  • LabVIEW Real-Time Module

問題

cRIOなどのReal Timeターゲット上でviを実行し、フロントパネル通信で実行中の様子を確認しています。Real Timeターゲット上でのviの実行は継続したまま、ホストPCとの接続を解除したり、LabVIEWを終了させ、後でまた実行中のviに接続することはできますか?
 

解決策

LabVIEWプロジェクトエクスプローラ上で、Real Timeターゲット上にviを配置し、このviを実行することで、そのviがコンパイルされた状態でReal Timeターゲットにダウンロードされます。この状態でそのviのフロントパネルの操作をホストPCに表示し制御器の入力や表示器の表示を行っている状態はフロントパネル通信と呼ばれます。

以下の方法で、Real Timeターゲット上でのプログラムの実行を止めずに、ホストPCとの接続を解除したり、LabVIEWを終了させ、その後プログラム実行中のReal Timeターゲットにアクセスすることができます。

(1) フロントパネル通信をしているviのウィンドウは閉じずに、LabVIEWプロジェクトエクスプローラでReal Timeターゲットを右クリックし、接続解除を選択します。
2024-09-02_13h53_32.png
接続解除後、フロントパネル通信をしていたviは実行が終了した状態となります。
このとき、このviのフロントパネルは閉じても構いません。
LabVIEWプロジェクトエクスプローラから再びReal Timeターゲットに対して右クリックし接続を選択すると、実行中のプログラムのフロントパネルが表示されます。(もし既にフロントパネルを閉じていても接続することで自動的に表示されるようになります)

(2) Real Timeターゲット上でプログラムを実行している途中でファイル>>終了でLabVIEWを終了させます。このとき、以下のダイアログが表示されます。
2024-09-02_13h48_41.png
ここで閉じるを選択するとReal Timeターゲット上のプログラムは終了してLabVIEWも終了します。接続解除を選択すると、Real Timeターゲット上のプログラムは実行を続けたまま、LabVIEWが終了します。
再びLabVIEWを起動し、プロジェクトエクスプローラを開いてReal Timeターゲットを右クリックして接続を選択すると、実行中のプログラムのフロントパネルをフロントパネル通信で表示できるようになります。
 

追加情報

フロントパネル通信はデバッグ等の目的で使用することが有効ですが、時間確定性を持たせたいコードについては余分なジッタを抑えるためにフロントパネルに制御器や表示器を配置しないことが望ましいことに留意してください。