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 件のコメント:
コメントを投稿