Quantcast
Channel: コンピューターの勉強会・研修ネタ
Viewing all articles
Browse latest Browse all 66

XBeeでつなげてみます-その3-1 

$
0
0
前回

XBeeでつなげてみます-その2-4 Cygwin
http://ameblo.jp/smeokano/entry-12162946637.html

で環境を作り終わったので、いよいよ開発です・・・が、
Arduinoにいきなりは難しいので、

・XBee+USBドングルをCygwinがはいったWindowsPCにつなげて
  (=ドングルをUSBに挿して)親機とし
・XBeeの子機で受けます。

親機から、子機のRSSIのランプを点滅させることをしてみます。




●手順

1.USBドングルにXBeeをつける
2.X-CTUでファームウェアを書きこむ
  親機:コーディネーターAPI
  子機:ルーターAT
3.プログラミング
4.子機の設置
5.親機の設置・実行




●1.USBドングルにXBeeをつける
 XBeeエクスプローラUSBドングルにXBeeを取りつけます。
 赤いボードに白く、XBeeの形が書いてありますが、その形に合うようにXBeeをはめます
 (つまり、USBの口のほうが、XBeeのお尻のほうになります)

●2.X-CTUでファームウェアを書きこむ
親機にコーディネーターAPI(ZIGBEE COORDINATOR API)
子機にルーターAT(ZIGBEE ROUTER AT)
のファームウェアを書きこみます。書き込み方は同じ
(ファームウェアの選択が違うだけ)なので、親機のほうを説明します。

2-1.「親機のXBeeをつけたXBeeエクスプローラUSBドングル」を
 PCのUSBに挿します

2-2.X-CTUを立ち上げます。

2-3.左上のXBeeの形をした上に+があるアイコンをクリック



2-4.以下のダイアログがでてきます。COMいくつかのUSBを選択してFinish


2-5.みつかると、こんな風に表示されます。


2-6 このように表示されます。
  子機の場合は、Radio Configurationをメモ(プログラムの中にIEEEアドレスとして記入)
  UPDATEをクリック



ここまでは、子機と親機おなじ。以下のステップが違う

2-7.出てきたダイアログで、親機のファームウェアを選んで UPDATE


※なお、USBドングルを2つ挿してしまった時など、正しくUSBが読み取れない
 ときがあります。
 そのときは、USBドングルをはずし、X-CTUも終了して、再起動し、USBドングルをつけ
 X-CTUを実行すると、正しく表示されることもある


●3.プログラミング
Arduinoプログラム全集に書かれているサポートページ
(本を買った人しか知らないということになっているらしいので
 ここではかきません。8ページ)にいって
パソコン版のxbeeCoordを落としてきます。

それを解凍してできたファイルの中に、libsとかcqpubとか入っていますので、
それらを、C:\cygwin64\home\自分のアカウント名 の下にコピーします。

そうしたらcqpubの下のexample02_led_at.cを以下のように直します
(赤字が修正箇所)

/***************************************************************************************
LEDをリモート制御する①改 リモートATコマンド:リモート子機のDIO10(RSSI)のLEDを点滅。

Copyright (c) 2013 Wataru KUNINO
もでぃふぁいしました
***************************************************************************************/

#include "../libs/xbee.c"

// お手持ちのXBeeモジュール子機のIEEEアドレスに変更する↓
byte dev[] = {0x00,0x13,0xA2,0x00,0x40,0xE9,0xA1,0xB7};

int main(int argc,char **argv){

byte com=0; // シリアルCOMポート番号

if(argc==2) com=(byte)atoi(argv[1]);// 引数があれば変数comに代入する
xbee_init( com ); // XBee用COMポートの初期化
xbee_atnj( 0xFF ); // 親機XBeeを常にジョイン許可状態にする

while(1){ // 繰り返し処理
xbee_rat(dev,"ATP005"); // リモートATコマンドRSSI(DIO10設定)=05(出力'H')
delay( 1000 ); // 1000ms(1秒間)の待ち
xbee_rat(dev,"ATP004"); // リモートATコマンドRSSI(DIO10設定)=04(出力'L')
delay( 1000 ); // 1000ms(1秒間)の待ち
}
}



●4.子機の設置
セルフ型のUSBハブをコンセントにつなぎ、
そのUSBハブに「子機のXBeeをつけたXBeeエクスプローラUSBドングル」を
付けます(USBハブは電源用で、他に何もしません)

●5.親機の設置・実行
・PCのUSBに「親機のXBeeをつけたXBeeエクスプローラUSBドングル」
 を取りつけます
・Cygwinを立ち上げます
・cd C:¥cygwin64¥home¥自分のアカウント名¥cqpubをして
 自分のアカウントのcqpubにいき、先ほど修正したexample02_led_at.cを
 以下のようにコンパイルします。
   gcc example02_led_at.c
・ソースコードに間違いがなければ、a.exeという実行ファイルができているはずです。
 それを実行
   ./a.exe
・子機のRSSI(緑色のLED)がちかちかしたら成功

Viewing all articles
Browse latest Browse all 66

Trending Articles