Arduinoを使ってロボットを作成しているとやりたくなるのが、無線による操作
今回解説するのはXBee ZB(S2C)によるArduino同士の無線通信の仕方
PC⇔Arduinoでの無線通信をしたいのであれば、BluetoothMateでのBluetooth通信の方が断然楽なのでそちらをお勧めする。
(Arduino同士のBluetoothになるとペアリングが少し面倒、というか知識がない)
いちおう、Arduino同士の無線通信が出来たら、PC⇔Arduinoでの無線通信もできます。
〇準備するもの
・PC 1台
・Arduino 2個(今回はArduino Nano(互換機)を準備)
・XBee ZB(S2C) 2個(Xbeeシリーズは種類が多いので購入時は注意する。)
・XBee USB アダプター 1台
・XBee 5V インターフェース 2台
・USBマイクロB
今回、Arduino 1でAD変換した値を、Arduino2でLEDの光の大きさに変換する
・LED(抵抗入り) 1個
・半固定抵抗 1個
・USBミニB
・ジャンパーワイヤー
②XBee ZB(S2C) とXBee USB アダプター を接続
向きに注意して、XBee ZB(S2C)を差し込み、USBマイクロBケーブルでPCと接続
接続できたらデバイスマネージャーでCOMナンバーを確認
今回はCOM9
③X-CTUの立ち上げ
・スタートアップ→「Digi」→「XCTU」でアプリケーションを立ち上げる
・虫眼鏡をクリック
④COMポートの選択
・COM9を選択 → 「Next>」
⑤デバイス検出条件の選択
始めはどういう設定になっているかわからないため、「Select All」→「Finish」
(大体、9600bpsが初期値)
⑥デバイスの選択
1個しかつながっていない場合は1個だけしかないが、いちおうXBeeの裏面にあるMACアドレスが一致すればOK→ 「Add selected devices」
⑦デバイス情報の確認
ポート番号、バンドレート、MACアドレスなどが表示されているのでダブルクリック
この時MACアドレスをメモしておくと後々楽
⑧デバイス情報のリスト
右側にリストが表示され、多くあるが、変更するのは4か所
⑨デバイス情報の更新
1.ID PAN ID → 任意の数字(今回は1002)
認証IDみたいなもの、このIDが一致するXBeeとしか通信を行わないので、2個目も同じIDに設定することを忘れない。
2.相手のMACアドレスの登録
対になるXBeeのMACアドレスを確認し、その前半8桁をDH、後半8桁をDLに書き込む
今回の場合
DH → 0013A200
DL→ 417D4F23
3.バンドレートの変更(任意)
送信バンドレートを変更したい場合、BDで変更可能
115200に変更
⑩ ⑨の内容の書き込み
「Write」のボタンで更新を行う。このとき絶対にXBeeを抜かない!!
⑪相手のXBeeも③~⑩で設定を行う。
また追加で、CEを「Enabled[1]」に変更
下記のことに注意
・IDは同じIDにする
・登録するMACは通信相手のMACアドレス
・BDは同じ値にする