2012年10月11日木曜日

SAAP用 "XBee" WiFi 設定 (ATコマンド版)

Back


 先日、SAAP WEBコントローラ、「XBee Maintenance」セクションのみにて、XBeeの設定をいたしました。「Access Point」での設定ができないケースが発生したためです。

 ルータとの手順をコマンド設定する前に、SAAPからXBeeに対する通信を確立します。図のような赤い文字の「Successfully」と[ResponseOKが表示されれば完了なのですが、ちょっとテクニックを要しました。

 最新の00.33F(現在)では、Baud Rateは「115200」です。 もし、以前の「57600」からのアップデートならば、一旦「57600」を選択し、[Set][Default Set]と押すと、自動的に「115200」に変更されます。つまり、以前の状態から変更される手順を踏まねばなりません。この時点ではまだ[Response]にOKは表示されません。もう一度[Default Set]を押すと・・・たぶん、「OK」と「Successfully」が同時に表示されます。

 コマンドは、マニュアルによると10秒以内に、続くコマンドを打たなければ無効になるとあります。しかし、テストの結果どうも5秒くらいではと思うほど短いと感じました。無効になった場合、あらたに[+++]+[send]すれば引き続き入力できます。次の例は、毎回時間がかかったとしての手順です
  1. +++ [send]
  2. ATAH 2 [send]
  3. ルータ設定画面でSSIDをクリップボードにコピー
  4. +++ [send]
  5. ATID ルータのSSIDをペースト [send]
  6. +++ [send]
  7. ATEE 1(数字のイチ) [send]
  8. ルータ設定画面でセキュリティ・キーをコピー
  9. +++ [send]
  10. ATPK ルータのセキュリティ・キーをペースト [send]
  11. +++ [send]
  12. ATMA 0(数字のゼロ) [send]
  13. +++ [send]
  14. ATAI [send]---> レスポンス欄 0 (ゼロ=接続成功)
  15. +++ [send]
  16. ATWR [send]---書き込み
手早くできれば、本来 1.の「+++」だけで、毎回「+++」を入力する必要はありません。 [send]を押すとATAI のゼロを除きすべて[OK]がレスポンス欄に表示されます。 ここまで来ると、ダイアログ下部のイベント行にも 「joined」(上図参照)と表示されます。

もしも、もう一度すっきりやり直したいときは
  1. +++ [send]
  2. ATNR [send]
でリセットされます。

参照させていただきました。 http://arduino.sugakoubou.com/xbee_wi-fi#xbee_wi-fi

73
Back


J E 3 H C Z @REF047 C

4 件のコメント:

  1. Day after dayさん

    はじめまして。鈴木と申します。
    BLOG拝見させていただいております。
    今回、xbee-wifiに関してお伺いしたいことがあり、コメントさせていただきました。

    僕は現在、ネットワークに対応した時計を制作しようとしておりまして、それにxbee-wifiを使おうと試みています。しかし、なかなかうまくいきません。iPhone等のアプリからサーバーにデータを送り、そのデータをルーターを介してxbee-wifi へつなげ、遠隔にある時計のアラームを鳴らそうと考えているのですが、今のところ自分の家のローカルエリアネットワーク内でしか成功していません。学校や外のwifi-spotからxbee-wifiにデータを送信しようとすると突然うまく行かなくなります。

    そこで質問なのですが,xbee-wifiで外部からの信号をキャッチすることは可能なのでしょうか。MACアドレスやネットワークセキュリティを解除することはもう試したのですが、なかなか成功しません。また、ほかにも良い方法やモジュール等をご存知でしたらご教授お願いします。

    よろしくお願いします。

    鈴木

    返信削除
  2. 鈴木さん、はじめまして。
     私は大先輩の作られたファームウェアとハードで遊ばせていただいて、備忘録としてブログを書いておりまして決して技術的に詳しいものではありません。
     しかし鈴木さんのコメントを読ませていただいた範囲ではLANでは成功されておられるとのこと。外部Wi-Fiや携帯キャリアのデータ通信ではいろんな制限がかかっているのも事実と思います。そこで外部から接続したときに、あたかも内部接続しているのと同じ環境(内部LANアドレスをとる)を得られれば可能なのではないでしょうか。
     これは、私が以前事務所のサーバーへ外部からドコモ回線でVPN接続していたときの例ですが、ソフトイーサ(株) www.softether.co.jp という筑波大学のベンチャー企業が開発したPacketiX VPNというものをご紹介したいと思います。1年ほど前にはLAN内のPacketiX serverへ接続するのにTCP443などほとんどのキャリアが通してくれるポートを経由して、スマートフォン(ただしAndroid)から通信できていたと思います。無償版の提供やオープンソース版の「UT-VPN」などもあり勉強されるには最適かと思います。成功されることをお祈りしております。

    返信削除
  3. 横から失礼します。

    まず、学校やWi-FiスポットはIPアドレス枯渇問題を解消するためにプライベートアドレスを設定しています。プライベートアドレスはLAN内からインターネットにはアクセスできますが、インターネットからLAN内にはデフォルトではアクセスできず、LANからインターネットに出るためのルーターにIPマスカレード(シスコだとPAT)を設定します。つまり、IPアドレスがルータのWAN側ポートであるポート番号が来たら、LAN内のZigbeeに転送するという設定を粉う必要があります。

    ですので、そもそもWi-Fiスポットではできません。ルーターは通信事業者が行っているためです。

    学内も大学のルータで設定しているので難しいでしょう。

    あとはソフトイーサでやる方法もありますが、Zigbeeにソフトイーサを実装することができません。

    全く別のアプローチが必要です。例えばネット上のサーバーを借りてそのサーバー経由で行うなどですが、ネットワークの初歩が理解できていないのであればかなり難しいと思います。

    返信削除
    返信
    1. 貴重なコメント有り難うございます。

      削除