2023年3月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

カテゴリー

ブログパーツ

無料ブログはココログ

« ジャイロ制御のレーシングカーをテストする(その2) | トップページ | シリアルJPEGカメラをテストする »

2010年12月13日 (月)

秋月のXBeeを使ってみる

先日秋月に寄ったらXBeeを見つけました。
今までは特に興味がなかったのですが、売ってるなら買ってみるか!ということで、衝動買いです。
カンタンに使い勝手を見てみようと言うわけですが、これが意外と大変だったのでレポートします。

テストの内容は「1対1でのデータ通信」です。
このページを参考にさせていただいて、トランスペアレントモードに設定し、まずは簡単なループバックのテストをします。なお、参考にさせていただいたサイトのトップはここです。ユニークなオリジナルキットには興味津々ですね。

実験を開始するには変換基板が必要です。スイッチサイエンスからPC接続用USBアダプタ変換基板を通販で購入しました。

設定は参考ページに従って行いますが、つまづいたことを列記します。

1・X-CTUは最新版を使うこと
秋月で売っているシリーズ2は最新型のようで、最新版でないとモデム情報の読み込みが出来ませんでした。それがわからず、接続を調べたりなんやらかんやらで時間を食ってしまいました。

2・MACアドレスは16進の文字列
通信のためには、End DeviceにCoodinatorになるXBeeのMACアドレスを設定します。
参考ページにはプロパティの設定について、次のような記述があります。

"DH Destination Address High   CoodinatorモジュールのMACアドレス(上位4バイト)
DL Destination Address Low  CoodinatorモジュールのMACアドレス(下位4バイト)"

4バイト=4文字と理解したため、???になってしまいました。MACアドレスはモジュール裏に8文字ずつ、2行にわたって16文字プリントしてあるからです。
しばらく考えて、MACアドレスは16進表記で、2文字で1バイトなのでは?と思い当たりました。
そこで、そのまま一行ずつ、上位・下位に設定してOKでした。

3・USBアダプタにリセットボタンは必ずつける
最初はそんなにリセットすることは無いだろうとタカをくくって、ジャンパー線を接続してリセットするつもりでしたが、実際にやってみると頻繁にリセットが必要で、リセットボタンを追加しました。

こんなとこですかねえ。

ということで設定は完了です。下記のように接続してループバックさせてみます。

Xbee1

で、結果は?
4・ルーブバックの調子が悪い
TeraTermからぽちぽちと入力すると、打ち込んだ文字が返ってきます。一見うまくいってるようですが… 数文字入力すると返ってこなくなります。あれれ?と思っていると、しばらくして思い出したように返ってきます。なんか変ですね。ここであきらめて英文マニュアルを読むことにします。

5・送信時CTSによるフロー制御が必要
マニュアルを読むと、送信時にフロー制御が必要とあります。まあ、当たり前ですが。
そこで、TeraTermでハードウェアフロー制御にしてみましたが、明らかな変化はありません。
これは、End Deviceの送信時にフロー制御をしてないためです。
そこでループバックをやめて、次の図のようにPICマイコンを使い、End DeviceからTeraTermに"A"を連続送信してみます。
CTSが0ならば送信し、1ならば0になるまで待つプログラムになっています。

Xbee2

これでうまく行きました。何バイトでも問題なく連続送信できます。115Kbpsで試しましたが、データのロストもありません。送ったバイト数だけ、キチンと受信しています。

それからマニュアルを見て気づいたことは…

6・XBeeは半二重通信
普段はあまり意識していませんが、普通のシリアルは全二重通信、つまり送りと受けのラインが独立しています。だからループバックで回線のテストが出来るわけです。
XBeeはトランシーバーなので送信と受信を同時には行いません。そのため、単純なループバック接続だと「何か」が起こり前述のような結果になるようです。
トランスペアレントモードで使うときには、このことを意識する必要があると思います。

« ジャイロ制御のレーシングカーをテストする(その2) | トップページ | シリアルJPEGカメラをテストする »

花岡ちゃんのウィークエンド」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 秋月のXBeeを使ってみる:

« ジャイロ制御のレーシングカーをテストする(その2) | トップページ | シリアルJPEGカメラをテストする »