今回はロボットの「通信」についてお話しします。
ロボカップでは、無線LANによるロボット間通信を行うことが出来ます。
主にIEEE802.11aと11bが使われています。11nを使ってるチームはまだ見たことがありません。
Hibikino-Musashiは電波干渉の少ない11aを使っています。
Bluetoothも時々使いますね。Wiiリモコンで動かすデモを行う時とかに。試合中は使ってはいけないことになっていますので、エキシビションマッチの時にこっそりやっています(笑)
さて、ロボット間通信のプロトコルには、よく耳にするTCPではなく、UDP(User Datagram Protocol)を使っています。

TCPが通信の信頼性を重視しているのに対し、UDPは通信速度を重視しています。
ロボット達は、お互いに自己位置やボール情報を共有し、「誰が一番ボールに近いのか」や「誰がディフェンスに回るか」といった事を自分で考えます。
UDP通信の実装はWinSock2で行っていますが、コードを簡略化するために、一連の処理をまとめたオリジナルライブラリを今回新たに作成しました。
このライブラリについては、また今度紹介します。
次回は「シミュレータ」についてお送りします。
0 件のコメント:
コメントを投稿