パート6: ユーザインタフェースでのRTデータを表示する
- 更新日2025-02-20
- 7分で読める
このチュートリアルでは、ネットワークストリームを使用して、RTターゲットデータをネットワーク経由で受信します。また、ユーザインタフェースにデータをグラフィカルに表示します。RTターゲットデータを表示するインタフェースの作成に関する詳細については、ni.com/infoに「EmbUIOptions」と入力してください。
ネットワークストリーム読み取りを構成する
データを受信するネットワークストリームを構成するには、読み取り名、データタイプ、および読み取りバッファサイズを指定する必要があります。これらのプロパティは、データを読み取るエンドポイント、読み取るデータのタイプ、および読み取るデータ量を指定します。また、読み取りエンドポイントがデータを待機する時間を指定する時間制限も指定します。
ネットワークストリーム読み取りエンドポイントを作成機能を構成するには、以下の手順に従ってください。
- Windows Main.viのブロック図に「ネットワークストリーム読み取りエンドポイントを作成」関数を追加します。
- エラー入力定数とWhileループの左側のエラートンネルの間のエラーワイヤを削除します。
- イベントストラクチャセレクタラベルでアプリケーションを停止を選択した状態で、エラー入力定数、「ネットワークストリーム読み取りエンドポイントを作成」関数、Active?変数間のエラーワイヤを順番に接続します。
- 「ネットワークストリーム読み取りエンドポイントを作成」関数の読み取り名入力を右クリックし、ショートカットメニューから作成→定数を選択します。
- 読み取りエンドポイントに名前を付ける定数として「HostDataReader」と入力します。
- DBL数値定数を「ネットワークストリーム読み取りエンドポイントを作成」関数のデータタイプ入力に配線します。
- 「ネットワークストリーム読み取りエンドポイントを作成」関数のタイムアウト (ms) 入力を右クリックして、ショートカットメニューから作成→定数を選択します。
- 定数として「1000」を入力し、読み取りがVIの次の部分に実行を渡す前に新しいデータを1秒待機するように指定します。
- 「ネットワークストリーム読み取りエンドポイントを作成」関数の読み取りバッファサイズ入力を右クリックし、ショートカットメニューから作成→定数を選択します。
- 定数として「4096」を入力します。
RTターゲットを指定する制御を作成する
ネットワークストリームがデータを読み取るには、データを送信するRTターゲットのIPアドレスまたはホスト名が必要です。
RTターゲットのIPアドレスを指定するコントロールをフロントパネルに作成するには、以下の手順に従ってください。
- 「文字列連結」関数を「ネットワークストリーム読み取りエンドポイントを作成」関数の左側に追加します。
- 「文字列連結」関数を展開して、3つの入力を含めます。
- 「文字列連結」関数の一番上の入力を右クリックし、ショートカットメニューから作成→定数を選択します。
- 定数として「//」を入力します。
- 「文字列連結」関数の一番下の入力を右クリックし、ショートカットメニューから作成→定数を選択します。
- 定数として「/RTAcqData」を入力し、書き込みエンドポイントを指定します。
- フロントパネルに文字列制御器を追加します。
- 文字列コントロールに「Target IP Address」という名前を付けます。
- Target IP Addressテキストボックスに、RTターゲットのIPアドレスを入力します。メモ アプリケーションを開くたびに、フロントパネルに入力したIPアドレスが、RTターゲットのIPアドレスに一致していることを確認してください。ネットワークの設定によっては、RTターゲットのIPアドレスが変わる場合があります。
- ブロック図で、Target IP Address制御を「文字列連結」関数の中央の入力に配線します。
- 「文字列連結」関数の連結された文字列出力を、「ネットワークストリーム読み取りエンドポイントを作成」関数の書き込みURL入力に配線します。
RTターゲットからストリーミングデータを受信する
ネットワークストリーム書き込みエンドポイントと同様に、読み取りエンドポイントでは、データを受信するために「ストリームから単一要素を読み取る」関数と「ストリームエンドポイントを破棄」関数が必要です。
Window Main.viでネットワークストリーム読み取りエンドポイントを完成させるには、以下の手順に従ってください。
- セレクタラベルでタイムアウトを選択し、「ストリームから単一要素を読み取る」関数をイベントストラクチャ内に配置します。
- Whileループの外側と右側に「ストリームエンドポイントを破棄」関数を追加します。
- Whileループとエラー出力表示器間のエラーワイヤを削除します。
- イベントストラクチャ内のエラーワイヤを削除します。
- エラーワイヤを、「ネットワークストリーム読み取りエンドポイントを作成」関数、「ストリームから単一要素を読み取る」関数、「ストリームエンドポイントを破棄」関数、およびエラー出力表示器間に順次接続します。
- 「ネットワークストリーム読み取りエンドポイントを作成」関数の読み取りエンドポイント出力を、「ストリームから単一要素を読み取る」関数のエンドポイント入力入力に配線します。
- 「ストリームから単一要素を読み取る」関数のエンドポイント出力出力を「ストリームエンドポイントを破棄」関数のエンドポイント入力入力に配線します。
フロントパネルにデータを表示する
RTターゲットのデータをUIに表示するには、波形チャートを使用します。
Windows Main.viのフロントパネルにRTターゲットからのデータを表示するには、以下の手順に従ってください。
- 「ストリームから単一要素を読み取る」機能のデータ出力出力を右クリックし、ショートカットメニューから作成→表示器を選択します。
- フロントパネルで、データ出力表示器を右クリックし、ショートカットメニューから置換→Silver→グラフ→波形チャートを選択します。
- ブロックダイアグラムで、イベントストラクチャのブールトンネルを右クリックし、ショートカットメニューから作成→定数を選択します。
- FALSE定数を指定します。
- VIを保存します。
- Real-Time Main.viを実行します。
- Windows Main.viを実行します。
フロントパネルが以下の画像と一致するはずです。