LabVIEW通信入門 TCP通信

TCP/IP通信の基礎

TCP(Transmission Control Protocol)は IP ネットワーク上で信頼性のある双方向通信プロトコルです。
パケットの再送・順序保証・フロー制御が自動で行われます。

主な特徴

  • 高い信頼性:
    パケットの再送保証、順序保証、エラーチェックを自動で行います。
  • コネクション型:
    通信開始前に「3ウェイハンドシェイク」で接続を確立します。
  • ストリーム通信:
    データに明確な「区切り」がないため、受信側の解析が重要です。

通信形式

TCP/IPによる通信はサーバとクライアントの間で行われます。

役割説明
サーバー待ち受ける側
クライアント接続しに行く側

LabVIEWでTCP通信 

LabVIEWのTCP関数を使用してTCP通信を行うことができます。

LabVIEWでTCP通信
ステップ使用VI(関数)動作
1サーバー接続TCP Listenポートを開いて通信条件の設定
2クライアント接続TCP Open Connection指定した IP アドレス・ポートに接続する。クライアント側で使用。
3データ受信TCP Read接続 ID から指定バイト数を受信する。
4データ送信TCP Writeデータを受信接続 ID に対してバイト列(文字列)を送信する。
5切断TCP Close Connection接続を切断してリソースを解放する。

LabVIEWによるTCP通信(サーバー/クライアント)

LabVIEWによるTCP通信(サーバー/クライアント)

LabVIEWプログラム例

サーバー(Simple TCP – Server.vi)を実行後、クライアント(Simple TCP – Client.vi)を実行すると、2つのVIでデータの双方向通信が行われます。

サンプル:Simple TCP – Server.vi

サーバーとして、クライアントとTCP通信を行うことができます。

  1. 指定ポート(クライアント側と同じ値)を開いて待機。接続時にIDを取得
  2. クライアントに送信データのバイト数を送信
  3. クライアントにデータを送信
  4. 停止メッセージを受信
  5. 通信ポートを閉じる
サンプル:Simple TCP - Server.vi

サンプル:Simple TCP – Client.vi

クライアントとして、サーバーとTCP通信を行うことができます。

  1. 指定したIPアドレス(サーバーのIPアドレス)と指定ポートでサーバーに接続します。
  2. サーバーから送信データのバイト数を受信
  3. バイト数を指定してサーバーからデータを受信
  4. サーバーに停止メッセージを送信
  5. 通信ポートを閉じる
サンプル:Simple TCP - Client.vi