はじめに
夏の工作のつもりだったのにいつの間にか春休みになりました。
時が流れるのが爆速すぎて困っちゃいますね。
ドローンを無線で操作するためにXbeeWiFiを購入して、XCTU(Xbeeの設定用ソフト)のダウンロードから動作確認までを行ったのでやり方を説明しておきます。
使ったもの
XbeeWiFiとPCの接続にXbee用のUSBシリアルアダプターを使いましたが、これはなくてもArduinoをシリアルアダプター代わりにすればPCと接続可能なようです。
- XbeeWiFi(S6B)
- Xbee用USBアダプター
- 配線用ケーブル
XbeeWiFi(S6B) Xbee用USBアダプター USB-miniUSBケーブル
XCTUのダウンロードとXbeeWiFiの接続
ここではXbeeの設定用のソフトウェアであるXCTUのダウンロードとXBeeWiFiを接続、XCTUに認識させるまでを行います。
XCTUのダウンロード
XbeeWiFiを設定するためにXCTUをこちらからダウンロードする。
次のページで「DOWNLOAD XCTU」をクリックする。

次のページで使っているOSに対応したものをダウンロードする。

インストールが完了してXCTUが起動できれば準備完了です。

XbeeWiFiの接続
XbeeWiFiをPCと接続したら左上の虫眼鏡マークをクリックしてXbeeWiFiを検出するポートを選択して「Next」をクリックします。
わからなかったら全て選択しても大丈夫です。

基本的にポート設定は初期設定のまま「Finish」をクリックして大丈夫です。

暫く検索した後に、XbeeWiFiが検出されたら「Add selected devices」をクリックしてください。


次のようにXbeeWiFiが追加されていれば接続完了です。

XbeeWiFiの設定
XbeeWiFiの利用目的がルーターに接続してArduinoと無線でシリアル通信することなので、ほとんど設定する項目はありません。
初期設定から変えた項目は次の通りです。
- ID(SSID):アクセスポイントのSSID(例:Buffalo-、aterm-)
- EE(EncryptionEnable):アクセスポイントのセキュリティ(画像ではWPA2を選択しています)
- PK(Passphrase):アクセスポイントのパスワード
- IP(IP Protocol):TCP
これらを全て入力し終えたら設定の上にある「Write」をクリックしてXbeeWiFiの設定を上書きします。

正しくできていれば「Addressing」の項目が次のように埋まっているはずです。
このうち「MY(Module IP Address)」がXbeeWiFiのアドレスになります。

動作確認
最後に動作確認です。二つの方法で動作確認をします。
一つ目は、コマンドプロンプトもしくはターミナルでpingを送信して返ってくることを確かめます。
pingの送信方法は次の通りです。
ping ***.***.***.***(先ほど確認したXbeeWiFiのアドレス)
二つ目はソケット通信をしてデータが受信されているかを確認します。
次にXCTUの右上のコンピューターアイコンをクリックしてXCTUのターミナルを開きます。

ターミナルの右上に「Open」というアイコンがあるのでクリックします。

これでXCTU側の準備は完了です。
後は何の言語でも構いませんが、ソケット通信で適当なデータを飛ばしてやれば良いです。
Pythonスクリプトが一番単純な気がするので載せておきます。
import socket so = socket.socket() so.connect(("***.***.***.***",9750)) #***にXbeeWiFiのアドレスを入れてください so.send(b'check')
このスクリプトを実行すると次のようにXCTUのターミナルに出力されます。

これで動作確認は終了です。
どちらかでも失敗していたらもう一度設定を見直してみてください。
コメント欄で質問いただければ可能な限り対応します。
最後に
XbeeWiFiが届いたのは11月だったのですが、3ヶ月ほど眠らせていました。
Arduinoとの通信確認はこの記事を書きながらほとんど終わっているので、すぐに更新できると思います。
コメント