概要
Mac で XBee に入門してみました
とりあえず今回は X-CTU という XBee の設定をするアプリをインストールして 2 台のXBee にそれぞれ「COODINATOR」「ROOTER」の初期設定を行ってみました
環境
- XCTU v. 6.3.1
- MacOS X 10.11.4
- XBee USB アダプター(リセットスイッチ付き)
- XBee ZB(S2C) / ワイヤアンテナ型 x 2
- Arduino ワイヤレスプロトシールド ( 今回は使いません )
X-CTU のインストール
まずダウンロードサイトにアクセスします
「XCTU v. 6.3.1, MacOS X」をダウンロードしましょう
ダウンロード時にアカウント登録を求められますが、下の方に「No thanks, register later」があるのでアカウント登録しないでダウンロードできます
ダウンロードできたら Zip ファイルを解凍します
解凍してできた「xctu_6.3.0.8」はインストーラなのでまだインストールは完了していません
右クリックから「開く」でインストーラを起動しましょう
インストールするディレクトリなどを決まれますが基本は Next で OK です
最終的に以下のようになればインストール完了です
試しに起動してみてください
アプリケーション配下に「XCTU」というアプリがあるのでそれを起動すれば OK です
Java for OS X 2015-001 のインストール
どうやら Mac 版の XCTU を動作させるためには Mac Java が必要みたいです
インストールされていない場合は以下から dmg ファイルをダウンロードして pkg ファイルを実行して Mac Java をインストールしてください
https://support.apple.com/kb/DL1572?locale=ja_JP
XBee を Mac に接続する
XBee USB アダプター に XBee を乗せて USB をそのまま Mac に接続すれば OK です
そしてたら X-CTU 側にデバイスを認識させます
一番左上の「Add devices」アイコンをクリックします
デバイスを追加する画面になるので、XBee を USB で接続した COM ポートを選択して Finish で追加します
すると一覧画面に追加した XBee が表示されるので選択すると右ペインに XBee の詳細情報が表示されます
COODINATOR の初期設定を行う
1 台は COORDINATOR モードとして動作させるのでその設定をします
まず以下の情報を変更します
- ID PAN ID ・・・ 好きな 16進数 4 桁の数字に変更します
- CE Coordinator Enable ・・・ Enable [1] に変更します
- DH Destination Address High ・・・ 13A200 (XBee で固有です)
- DL Destination Address Low ・・・ もう一台 ( ROOTER ) の XBee の Serial Number Low を入力してください
「Serial Number Low」とは XBee のモジュール 1 つ 1 つに固有に与えられた値で XBee の裏側とかに記載してる番号です
でこれは最新の X-CTU であれば GUI 上で確認することもできます
この値を自分ではなく通信する相手の番号を入力してください
上記の項目を記載したら X-CTU 上「Write」ボタンを押して設定を XBee に書き込みましょう
設定の書き込みが完了すると X-CTU 上で変更した箇所が青三角になるので確認してください ( ちょっと嬉しい機能だと思った )
Tips (XBee ZB S2C でのデバイスモードの変更方法について)
XBee にはシリーズものがいろいろとあり今回使ったシリーズは ZB S2C というシリーズになります
これは割りと新しいシリーズで従来はデバイスのモードを書き換えるのにファームウェアの更新が必要だったのですが、それが不要になりました
既にファームフェア上にすべてのモードが実装されているため設定を変更するだけでモードの変更も行えるようになりました
- http://stackoverflow.com/questions/36671556/xbee-s2c-setting-as-a-coordinator-at-mode
- http://www.digi.com/pdf/xbee%20zigbee%20migration%20guide.pdf
の 6 ページ目あたりにも ZB S2C におけるモードとパラメータの組み合わせが記載してありました
- ZigBee Router AT -> Default Settings
- ZigBee Router API -> Set AP (API Enable) = API enabled [1]
- ZigBee Coordinator AT -> Set CE (Coordinator Enable) = Enabled [1]
- ZigBee Coordinator API -> Set CE (Coordinator Enable) = Enabled [1], Set AP (API Enable) = API enabled [1]
- ZigBee End Device AT -> Set SM (Sleep Mode) = Cyclic Sleep [4]
- ZigBee End Device API -> Set SM (Sleep Mode) = Cyclic Sleep [4], Set AP (API Enable) = API enabled [1]
ROOTER の初期設定を行う
同様にもう一台にも設定を行いましょう
- ID PAN ID ・・・ 好きな 16進数 4 桁の数字に変更します ( COODINATOR に設定した値と同じ値にしてください )
- DH Destination Address High ・・・ 13A200 (XBee で固有です)
- DL Destination Address Low ・・・ もう一台 ( COODINATOR ) の XBee の Serial Number Low を入力してください
Router の AT モードはデフォルトの状態なのでモードを変更する設定は特に行いません
上記の設定が記載できたら「Write」ボタンで設定を書き込みましょう
最後に
とりあえず今回は 2 台の XBee ZB S2C の初期設定だけを実施しました
見た目上は何も変わっていないのが残念ですが、初期設定は完了です
どっちが COODINATOR でどっちが ROOTER かというのが接続してみないとわからないという点があるので、メモしておくといいと思います
次回は Arduino を使って実際に無線上でデータのやり取りを試してみたいと思います
基本はシリアル通信がそのまま無線化できると思っているので Serial.write とかを使えばいいのかな
あと今回は予算の都合上で 2 台しか購入してないけど、もっと購入してホップ通信とか試してみると XBee の素晴らしさがわかるんだろうなと思います
0 件のコメント:
コメントを投稿