パート5: RTデータをホストコンピュータに送信する
- 更新日2025-02-20
- 5分で読める
このチュートリアルでは、「ネットワークストリーム」関数を使用して、ネットワーク経由でストリーミングデータを送信します。その他のデータ転送方法については、LabVIEWヘルプの「LabVIEWでのデータ通信方法」を参照してください。
ネットワークストリーム書き込みを構成する
データを送信するネットワークストリームを構成するには、書き込みアプリケーション名、データタイプ、および書き込みバッファサイズを指定する必要があります。これらのプロパティは、データを送信するエンドポイント、送信するデータのタイプ、送信するデータ量を指定します。
「ネットワークストリーム書き込みエンドポイント」関数を構成するには、以下の手順に従ってください。
- Real-Time Main.viのブロック図に「ネットワークストリーム書き込みエンドポイントを作成」関数を追加します。
- 「RT FIFO作成」関数と「RT FIFO読み取り」関数の間のエラーワイヤを削除します。
- 「RT FIFO作成」関数、「ネットワークストリーム書き込みエンドポイントを作成」関数、および「RT FIFO読み取り」関数の間で、エラーワイヤを順番に接続します。
- 「ネットワークストリーム書き込みエンドポイントを作成」関数の書き込み名入力を右クリックし、ショートカットメニューから作成→定数を選択します。
- 定数として「RTAcqData」と入力し、書き込みエンドポイントに名前を付けます。
- DBL数値定数を「ネットワークストリーム書き込みエンドポイントを作成」関数のデータタイプ入力に配線します。
- 「ネットワークストリーム書き込みエンドポイントを作成」関数の書き込みバッファサイズ入力を右クリックし、ショートカットメニューから作成→定数を選択します。メモ 設定するバッファサイズは、ストリームする必要があるデータに対応できる大きさを備えている必要があります。不適切なバッファサイズを使用すると、エラーが発生します。
- 定数を4096に設定します。
RT FIFO関数からネットワークストリームへデータを転送する
RT FIFOと同様、ネットワークストリームはバッファされたデータを転送します。ただし、ネットワークストリームはRTターゲット内ではなくネットワーク経由でデータを転送するため、確定的な通信は保証されません。ネットワーク上の実行時間と転送レートは反復ごとに異なるため、すべてのネットワーク通信は本質的に非確定的です。
ネットワークにデータをストリーミングするネットワークストリーム書き込みを設定するには、以下の手順に従ってください。
- ケースストラクチャセレクタラベルからFalseを選択します。
- ケースストラクチャ内に「ストリームに単一要素を書き込む」関数を追加します。
- ケースストラクチャを通るエラーワイヤを削除します。
- 「RT FIFO読み取り」関数、「ストリームに単一要素を書き込む」関数、およびActive?変数の間で、エラーワイヤを連続的に接続します。
- 「ネットワークストリーム書き込みエンドポイントを作成」関数の書き込みエンドポイント出力を「ストリームに単一要素を書き込む」関数のエンドポイント入力入力に配線します。
- エラー出力表示器を削除します。
- 「RT FIFO読み取り」関数の出力要素出力を、「ストリームに単一要素を書き込む」関数のデータ入力入力に配線します。
- ループの外側と右側に「ストリームエンドポイントを破棄」関数を追加します。この関数はネットワークストリームを安全に閉じます。
- 「エラー結合」関数と「RT FIFO削除」関数の間のエラーワイヤを削除します。
- エラーワイヤを、「エラー結合」関数、「ストリームエンドポイントを破棄」関数、および「RT FIFO削除」関数の間で順次接続します。
- 「ストリームに単一要素を書き込む」関数のエンドポイント出力出力を「ストリームエンドポイントを破棄」関数のエンドポイント入力入力に配線します。
- ケースストラクチャセレクタラベルからTrueを選択します。
- ケースストラクチャを介してエラーワイヤを接続します。
- ケースストラクチャを介してエンドポイントワイヤを接続します。
- VIを保存します。
結果
この時点ではVIを実行しないでください。ネットワークストリームは、書き込みエンドポイントを使用してデータを送信できますが、読み取りエンドポイントを追加するまでデータを受信できません。このチュートリアルでは、次に読み取りエンドポイントを追加し、その後、VIをテストできます。