パート4: ユーザインタフェースを作成する
- 更新日2025-02-20
- 6分で読める
多くのRTターゲットはヘッドレスで実行しますが、RTターゲットからの情報を表示したり、リアルタイムアプリケーションにコマンドを送信すると便利な場合があります。これらのタスクを完了するために、ホストコンピュータまたはRTターゲット (RTターゲットの場合は組込UIまたはリモートフロントパネルをサポートするもの) で実行されるユーザインタフェースを作成することができます。このチュートリアルでは、ユーザがホストコンピュータからリアルタイムアプリケーションを停止できるUIを作成します。
ホストコンピュータにVIを追加する
RTターゲットVIとは異なり、実行前にホストコンピュータVIをデプロイする必要はありません。ホストコンピュータで開発しているため、LabVIEWはVIを自動的にコンピュータに保存します。
ホストコンピュータに新しいVIを追加するには、以下の手順に従ってください。
- プロジェクトエクスプローラウィンドウでマイ コンピュータを右クリックし、ショートカットメニューから新規→VIを選択します。
- フロントパネルで、ファイル→保存を選択してVIを保存します。
- VIにWindows Mainと名前を付けます。
- OKをクリックします。
アプリケーションを停止するイベントケースを作成する
チュートリアルのUIでは、イベントストラクチャはユーザが停止ボタンを押すのを待機します。イベントストラクチャとRTターゲットで実行されているループを同期させるには、イベントストラクチャの周期をタイミングループに合わせて設定します。
ユーザが停止ボタンを押すのを待機するイベントストラクチャを作成するには、以下の手順に従ってください。
- Window Main.viのフロントパネルに停止ボタンを追加します。
- 停止ボタンラベルに「アプリケーションを停止」と入力します。
- VIのブロックダイアグラムにWhileループを追加します。
- Whileループ内にイベントストラクチャを追加します。
- イベントストラクチャのセレクタラベルを右クリックし、ショートカットメニューからイベントケースを追加を選択して、イベントを編集ダイアログボックスを表示します。
- イベントソースリストボックスでアプリケーションを停止を選択します。
- イベントリストボックスから値変更を選択します。
- OKをクリックします。
- イベントストラクチャ内にアプリケーションを停止制御器を配置します。
- イベントストラクチャの「イベントタイムアウト」端子を右クリックし、ショートカットメニューから定数を作成を選択します。
- Real-Time Main.viのタイミングループの周期に合わせて、定数として「250」を入力します。
両方のVIの停止関数を同期する
このセクションでは、Real-Time Main.viで使用したのと同じシェア変数を使用して、アプリケーション内のすべてのループの停止関数を同期する方法について説明します。アプリケーション全体が1つの停止ボタンにリンクされているため、アプリケーション内のすべてのプロセスを安全かつ同時に停止できます。
アプリケーションの停止機能を同期するには、以下の手順に従ってください。
- Windows Main.viのイベントストラクチャ内にActive?変数のコピーを配置します。
- Active?変数を右クリックし、ショートカットメニューからアクセスモード→書き込みを選択します。
- イベントストラクチャ内に「Not」関数を追加します。
- イベントストラクチャの外側、Whileループの内側に「Or」関数を追加します。
- アプリケーションを停止制御器の出力を「Not」関数のx入力に配線します。
- アプリケーションを停止制御器の出力を「Or」関数のx入力に配線します。
- 「Not」関数の.not. x?出力をActive?変数のActive?入力に配線します。
- 「Or」関数のx .or. y?出力をWhileループの条件端子に配線します。
エラー処理を追加する
チュートリアルの他の部分と同様に、関数のエラー端子を配線することをお勧めします。
Windows Main.viでエラーワイヤを接続するには、以下の手順に従ってください。
- Active?変数のエラー出力を右クリックして、ショートカットメニューから作成→表示器を選択します。
- Active?変数のエラー入力を右クリックして、ショートカットメニューから作成→定数を選択します。
- Whileループの外側と左側にエラー入力定数を配置します。
- エラー入力定数をWhileループおよびイベントストラクチャを介して配線し、それをActive?変数のエラー入力入力に接続します。
- Active?変数のエラー出力を「Or」関数のy入力に配線します。
- エラー出力表示器をWhileループの外側と右側に配置します。
- Active?変数のエラー出力出力をエラー出力表示器の入力に配線します。
- イベントストラクチャのセレクタラベルでタイムアウトを選択します。
- イベントストラクチャを介してエラーワイヤを接続します。
- 2つのWhileループエラートンネルのいずれかを右クリックし、ショートカットメニューからシフトレジスタと置換を選択します。
- もう一方のWhileループエラートンネルをクリックして、シフトレジスタに置き換えます。
- VIを保存します。
結果
Real-Time Main.viとWindows Main.viを実行し、Windows Main.viでアプリケーションを停止ボタンをクリックすると、LabVIEWはReal-Time Main.vi内で実行されているループを含むアプリケーション全体を停止します。