2011年4月29日金曜日

XBee 入門 (ATコマンド篇)

XBee をもう少し調べてみました。

買ったのはこちらのタイプ(だと思う)。
XBee Series 1(802.15.4)

Series 2(ZigBee) はこちら。

ZNet 2.5 とか DigiMesh などもあって良くわからない。
それぞれの製品カタログをみると、ZigBee 版の方が、シリアルインターフェイスの速度が速い(〜1Mbps)。
しかし、RF のデータレートは同じ(250kbps) なので、実際の転送能力は同じかもしれない。

XBee はシリアルを転送するだけではなく、プルアップレジスタ内蔵の GPIO や、AD コンバータ、PWM 出力までついているようです。


以下は Series 1 について。

設定用の AT コマンドなどがのっている 詳細なマニュアルはこちら
Product Manual: XBee / XBee-PRO 802.15.4 OEM RF Modules (→PDF直リンク)


XBee の AT コマンドについては、こちらのサイトを参考にしました。

通信ソフトはCoolTerm で。
(Raw Mode, Local Echo ON がお勧め。最初は 9600 bpsで接続。)

とりあえず、XBee のアドレス等はそのままに。シリアル通信の速度を 57.6kbps に変更します。


通信の様子はこんな感じです。


(必要なところだけ抜粋)
+++(リターンをおさず 1秒待つ):AT コマンドモードに入る
OK
ATBD(リターン):通信速度の読み出し
3
ATBD6(リターン):56.7kbps を設定
OK
ATWR(リターン):設定を書き込む
OK

AT コマンドは AT ではじまる4文字のコマンドと、データを続けて送ります。
コマンドのみの場合は現在の設定値を読み出します。
(最初のATVR はFirmware のバージョン、ATMY はXBee のID、ATID はネットワークのID です。)
設定値は保存されず、電源を切ると以前の値に戻ります。ATWR を送ると、値が記憶されます。
ATコマンドモードは、10秒間入力が無いとタイムアウトしてしまうので、
反応が無いときは再度 +++ でATコマンドモードにします。

2台のXBee モジュールを変更したら、Firmata との通信を試してみましょう。

このサンプルでは、シリアルの通信速度が57.6kbps になっているので、購入直後の XBee (9600bps) では駄目でしたが、動作するようになりました。

前述のマニュアルによれば、通信速度は 250kbps までの任意の値を設定できるようです。31.25kbps のMIDI などもそのまま送信出来るかもしれません。

0 件のコメント:

コメントを投稿