Skip to content

競技会場におけるPCと走行体間の通信を実現するためのネットワーク環境構築手法

YuyaKimura edited this page Aug 12, 2024 · 1 revision

モバイルホットスポットを利用する場合

前提条件

  • Windows10以降のOSを利用していること
  • 既存のネットワークに接続していること
  • PCに無線LAN機能(Wi-Fi)が搭載されていること

Warning
モバイルホットスポットにを有効化するには、PCが有線・無線を問わず何らかのネットワークに接続している必要がある。 競技会場に接続可能なWi-Fiアクセスポイントが無い場合は、スマートフォンのテザリング機能を利用する必要があると考える。

Warning
ETロボコンの規約上、スマートフォンのテザリング機能を利用する場合は、長さ40cm以下のUSBケーブル等を用いてPCと有線接続する必要がある。
競技規約 1.0.3 版 8.2節」参考

モバイルホットスポットの設定

1. モバイルホットスポットの設定画面を開く

タスクバーに表示されているネットワークアイコンをクリックし、以下の画像を参考にモバイルホットスポットの設定画面を開く。

tempsnip

Note
「設定」画面ホーム→「ネットワークとインターネット」→「モバイルホットスポット」の順でも同じ画面を開くことができます。

2. 「ネットワーク情報の編集」画面を表示する

tempsnip

3. ネットワーク名(SSID)とパスワードを設定し保存する

Slackのetrobocon2022-資料チャンネルを参考に設定し保存する。

image

4. モバイルホットスポットを有効化した後、走行体を起動する

Note
SSID中に2桁の走行体番号が記載された各走行体専用のSSIDを用いる場合は、モバイルホットスポットを有効化する前に走行体を起動していても問題ありません。

5. 走行体のIPアドレスを確認する

走行体がモバイルホットスポットに接続している場合、モバイルホットスポットの設定画面にホスト名やIPアドレスが表示される。 このIPアドレスを用いることで、走行体へのSSH接続やコマンドファイルの転送等を行うことができる。

tempsnip

Warning
モバイルホットスポットを無効化した後に再度有効化した場合、ネットワークアドレスを含め走行体に割り当てられるIPアドレスは変化することが多いことに注意。

Warning
ノートPCの場合、画面を閉じた際にモバイルホットスポットは自動的に無効化されることに注意。

Note
走行体を先に起動した後にモバイルホットスポットを有効化した場合、走行体がモバイルホットスポットに接続するまでに20秒~60秒程度を要します。 2分を過ぎても接続を確認できない場合は、何らかの異常が発生したものと判断してください。

Note
モバイルホットスポットを終了した後、再度有効化すると1分以上経過しても再接続されないという事象が発生することがあります。 この場合、優先度のより高いSSIDを設定すると解消されることがあります。

解消されなかった場合、走行体のラズパイの電源ケーブルを抜き差しすることで強制的に再起動する必要があります。 ただし、緑色のLEDが5秒以上点滅していないことを確認してから実行してください。 さもないと、SDカードが論理的に破損しOSの再インストールをする羽目になるリスクが高まります

ちなみに、緑色のLEDが点滅していなくても強制的な再起動を行うと、SDカードが論理的に破損するリスクはあると思われます。 強制的な再起動は極力避けることが望ましいです。

小型Wi-Fiルータを利用する場合

前提条件

  • MicroUSBケーブルを用いて小型Wi-Fiルータへ電源供給を行えること
  • PCにWi-Fiインターフェースが搭載されていること

本体情報

2.4GHz/5GHz切替スイッチ

本体側面にスライド式の周波数切替スイッチがある。 なお、使用する周波数に応じてSSIDが異なる。

image

接続情報

本体裏面に接続情報が記載されている。

image

セットアップ方法

microUSBケーブルとPC等を用いて給電を開始すると、20秒~60秒程度で接続できるようになる。

Warning
走行体(RasPike)の電源を入れるよりも先にWi-Fiルータを起動しないと、走行体が他のアクセスポイントへ接続してしまい、アクセス走行体へアクセスできないという事象が発生する可能性がある。

このような事象が発生した場合は、モバイルホットスポットを利用して走行体に接続すると解決する。

Note
走行体ではSSH接続が無い場合、モバイルホットスポットで設定するSSIDが存在しないか常に確認を行い、モバイルホットスポットで設定するSSIDが存在する場合は当該APに接続しなおすKatLab独自のサービスが動作しています。

走行体のIPアドレスの特定方法

小型Wi-Fiルータを用いる場合、IPアドレスはWi-Fiルータ内のDHCPサーバによって接続してきた順に192.168.13.2192.168.13.3...のように割り当てられます(192.168.13.1はルータ本体のIPアドレス)。

ただし、DHCPサーバによって割り当てられたIPアドレスは24時間ほどのリース期間があるため、過去に接続していた機器に割り当てられたIPアドレスのリース期間が過ぎていない場合、当該IPアドレスは新たに接続してきた機器には割り当てられません。

そのため、総当たりでSSH接続を試すという方法はあまり効率が良いとは言えないかもしれません。

そこで、現在Wi-Fiルータに接続している機器のIPアドレスを列挙できれば少し効率が良くなるかもしれません。 具体的には、以下のようなコマンドを実行すると確認できます(ネットワーク部が24bitの場合、環境にもよりますが2秒以内に終了します)。

echo 192.168.13.{1..254} | xargs -P256 -n1 ping -s1 -c1 -W1 | grep ttl