2012年5月5日土曜日

Scratchから無線でモータを動かす(3)〜MacでXBee ZBの設定完了

前回までにだいぶ苦労をしたので、今回は確実な方法で行くことにします。敷居が高いと敬遠される可能性もありますが、ターミナルソフトを使ってATコマンドを叩くという地味な作業です。X-CTUでできると良いのですが、FirmwareのUpdateは無事にできるようになったものの、細部の設定がうまくいっていない様子が見られてそれ以上は使わないことにしました。この状態でmoltosenso Network Manager™ IRONで設定の続きをしようと思ったのですが、何だかうまく繋がらず、再びX-CTUでFirmwareが正しく更新されていることだけを確認して、ATコマンドでの作業を開始することにしました。

使ったのは、「CoolTerm」というフリーソフトです。書籍「XBeeで作るワイヤレスセンサーネットワーク」でも紹介されていたもので、今回のXBee ZBの設定を進めるにあたって、「きっといつか使うだろう」と考えてインストールしておいたものです。さまざまなサイトで見つけた情報も含めて何を設定しなければならないのかを検討し、最低でも以下の項目について設定をしなければならないことがわかりました。

  • PAN ID…1234 [※0001以外の任意]←送受信とも同じにする
  • 宛先アドレス(上)…0013A200
  • 宛先アドレス(下)…[送受信とも相手のユニークなアドレス]
  • Baud rate…57,600(for ATmega328)

これらの設定をするためには、まずXBeeエクスプローラUSBにXBee ZBを載せてMacに挿します。次に、CoolTermを起動して「Options」を押し、「Terminal」の「Local Echo」にチェックを入れます。こうすることによって、自分が打ったATコマンドなどが、画面上に表示されるようになります。そして、次のような手順でATコマンドを打ち込みます。

  1. (1秒間何もしない)+++(1秒間何もしない)
  2. 「OK」と表示される…コマンドモードになった
  3. 「ATID 1234」と打ってenterキーを押す
  4. 「OK」と表示される…PAN IDが「1234」に設定された
  5. 「ATDH 0013A200」と打ってenterキーを押す
  6. 「OK」と表示される…宛先アドレス(上)が「0013A200」に設定された
  7. 「ATDL(XBeeモジュールの裏側下段に書いてあるアドレス)」 と打ってenterキーを押す
  8. 「OK」と表示される…宛先アドレス(下)がそれぞれ通信相手のアドレスに設定された
  9. 「ATBD 6」と打ってenterキーを押す
  10. 「OK」と表示される…Baud rate(データ速度)が57,600に設定された
  11. 「ATWR」と打ってenterキーを押す
  12. 「OK」と表示される…すべての設定がXBeeモジュールに書き込まれた

数値なしでATコマンドを打ち込むと、どんな設定になっているのかを確認することができます。問題は、もたもたしていると10秒間でコマンドモードから抜けてしまうことです。特にATDLの設定は、何度か失敗してコマンドモードに入り直しました。1回ですべての設定をしようとすると、焦って間違えることが多くなるので、何度かに分けて作業をすると良いと思います。

ここまで来たので、次回はいよいよScratchでMBeeDuinoを動かす実験に入ります。

【追記】関連記事は以下のとおりです。

0 件のコメント: