ここでは実際にXBeeを使って1対1のペア通信を行うまでを記録する.
私の持ち物
- iMac (OS X El Capitan)
- XBee S2 ホイップアンテナ 2台 (スイッチサイエンスへ)
- XBeeアダプタ (XBee Explorer USB | SparkFun)
- XBeeシールド (XBee Shield | Seeed Studio)
XBeeをコンピュータに繋ぐ
XBeeは買ったばっかりではピクリとも動いてくれない. コンピュータに繋いでファームウェアを入れることで動き出す(もちろん+3.3V電源を忘れずに). ここではコンピュータにUSBで接続する方法を2つ記す.
その1 専用アダプタを使う
XBeeとコンピュータの仲介人,それがアダプタである. アダプタにXBeeを取り付け,USBケーブルでコンピュータと接続すればOK. これが一番手っ取り早く便利. 私はSparkFunの"XBee Explorer USB"という商品を愛用している. 他にも様々な種類のアダプタが販売されているので,あなたのニーズに合った品を探してみては如何だろう. ヒント:リセットボタンがあると便利!その2 Arduinoをアダプタとして使う
Arduinoの拡張基板,それがシールドである. XBeeシールドを使うことでArduinoをアダプタ代わりに使用できる. 私はSeeed Studioの"XBee Shield"を愛用している. この商品の場合,シールド上に並ぶ3列のヘッダピンを,右図のようにジャンパピンでショートさせればOKだ. これで下の回路図と同じ配線になる. ピンの名前で書くならば,XB_RXとDIGITALの0ピン,XB_TXとDIGITALの1ピンを接続させる. こうすることでArduinoのRxとXBeeのRx(DIN)が,ArduinoのTxとXBeeのTx(DOUT)が繋がり,USBのシリアル通信がArduinoを素通りしてXBeeに入るようになる. つまりはシールドが無くとも下のように配線できれば,同様にArduinoをアダプタとして使用できるのだ.Arduinoをアダプタとして使う際の注意点をいくつか
- XBeeには3.3Vを使用する(5Vだと故障の危険有り).
- Arduinoには事前に下記の空スケッチを書き込んでおく.
- ブレッドボードで回路を組む場合はXBeeの端子ピッチがブレッドボードよりも小さいので,端子幅を調整する基板が別途必要になること(このような基板が必要かも).
void setup() {} void loop() {}
ファームウェアを入れる
- コーディネータ: ZigBee Coordinator AT
- ルータ: ZigBee Router AT
- エンドデバイス: ZigBee End Device AT
もし...
右の警告が表示されたら,それは接続不良を意味する. アダプタなどのリセットボタンを押してから10秒待ってもこの画面が消えなければ,XCTUとXBeeが上手く通信できていない. 次の項目をチェックしてみよう.- XCTUを一旦終了し,もう一度立ち上げる
- USBケーブルを一旦抜いて挿し直す
- 正しいポートを選択したかどうか?
- どこかがショートしていないか?
- XBeeに5Vを入力していないか?
- XBeeとArduinoの配線が正しいか?
- XBeeが正しい向きに差し込まれているか?
- XBeeのピンがずれて差し込まれていないか?
パケットをやりとりする
今2匹のXBeeがコンピュータに接続され,XCTUに表示されている. これからはペア通信に必要な設定を行う. 設定項目は次の3つだ.
ここでXBeeの通信内容を閲覧/作成できる. "Open"と書かれたプラグアイコンをクリックしよう. 回線が接続(Close)される. これでXBeeを通過する通信内容がこのコンソールへ表示されるようになった. 両方ともXBeeの回線をCloseにしたら,どちらか一方の"Send Packets"欄にあるプラス"+"マークをクリックして送信したいパケット(贈り物)を作成しよう.
上の例では"Hello"という文字列を入力しているが,英数字ならば何でも良い. もう一方のXBeeに送りたい文字列を入力しよう. 入力を終えたら"Add packet"をクリックする. さて,いよいよパケットを送信する時がやって来た. "Send selected packet(選択されたパケットの送信)"ボタンを押してみよう. 上手く行くと下のようになるはずだ.
送信されたパケットは青色で,受信したパケットは赤色で表示される. 青色で"Hello"と表示されているということは,先ほどのパケット"Hello"が無事送信されたことを意味する. 送信先はもちろんDHとDLに設定してある宛先,すなわちもう一方のXBeeである. そのもう一方のXBeeを選択すると,赤色の"Hello"を確認出来るはず.
赤色の"Hello"があればパケットの送受信は大成功だ! いろいろなパケットを追加/送受信して遊んでみよう.
- PAN ID: 好きな数字をひとつ入力.
- DH: 宛先アドレスの上位32ビットを入力.
- DL: 宛先アドレスの下位32ビットを入力.
もし...
通信が上手く行かない場合は設定が正しく行われているかをもう一度チェックしてみよう. アドレスが間違ってないか良く見てみよう. またPAN IDが同じ数値になっているか,もう一度確認してみよう. それでもダメなら前の項目にある"もし..."のチェックリストを確認してみよう.
1280489816103615522
https://www.storange.jp/2016/02/xbee.html
https://www.storange.jp/2016/02/xbee.html
XBeeに触る
2016-02-15T21:24:00+09:00
https://www.storange.jp/2016/02/xbee.html
Hideyuki Tabata
Hideyuki Tabata
200
200
72
72