前回
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)がちかちかしたら成功
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)がちかちかしたら成功