
Handshake (Communication Handshake)
ハンドシェイク
ハンドシェイクとは、通信機器同士がデータ通信を開始する前に、互いの状態や通信条件を確認するために行う信号交換の手順のことです。
通信を安全かつ確実に行うためには、送信側と受信側の両方が通信可能な状態である必要があります。そのため 通信開始前に「送信準備」「受信準備」などの確認信号を交換し、通信が成立することを確認してからデータ転送を開始します。
この仕組みにより、通信エラーやデータ欠落を防ぎ、安定した通信を実現することができます。
■ハンドシェイクの基本的な仕組み
通信開始時の一般的な流れは次のようになります。
送信側 → 通信要求
受信側 → 受信準備OK
送信側 → データ送信開始
このように、通信相手の状態を確認しながらデータ通信を開始します。
■ハンドシェイクの種類
1. ソフトウェアハンドシェイク
通信データ内の制御コードを使用して通信制御を行う方式です。
代表的な制御コード
制御コード | 意味 |
XON | 送信再開 |
XOFF | 送信停止 |
主に低速シリアル通信で使用されます。
2. ハードウェアハンドシェイク
専用の制御信号線を使用して通信状態を管理する方式です。
RS-232C通信の例
信号 | 内容 |
RTS | 送信要求 |
CTS | 送信許可 |
DTR | 端末準備 |
DSR | 機器準備 |
この方式は、高速通信でも安定した通信制御が可能です。
■TCP通信のハンドシェイク(3ウェイハンドシェイク)
ネットワーク通信では、TCP接続時に3ウェイハンドシェイクが行われます。
通信確立の流れ
1. SYN(接続要求)
2. SYN-ACK(接続許可)
3. ACK(接続確認)
このプロセスにより、通信接続が確立されます。
■FA・産業機器でのハンドシェイク
工場の自動化設備では、ハンドシェイクは装置間の制御通信でもよく使用されます。
例
機器 | 用途 |
PLC | 装置制御 |
ロボット | 作業指示 |
搬送装置 | 動作同期 |
検査装置 | 処理完了通知 |
例えば、PLCとロボットの連携では次のような信号交換が行われます。
PLC → 作業開始信号 ロボット → 受信確認 PLC → データ送信 ロボット → 作業完了信号
このような制御信号のやり取りもハンドシェイク通信の一種です。
■ハンドシェイクのメリット
メリット | 内容 |
通信信頼性 | データ欠落を防止 |
状態確認 | 機器状態を確認 |
通信安定性 | タイミング制御 |
産業機器では、装置間インターロックや通信制御の基本技術として利用されています。
■まとめ
ハンドシェイクとは、通信機器同士が通信開始前に互いの状態を確認するために行う信号交換手順です。
シリアル通信やTCP/IP通信、PLCやロボットの装置間通信など、安定したデータ通信を実現するための重要な仕組みです。
お見積り・ご相談は今すぐ!
24時間365日受付




