農業・養殖用にXBeeを使用する設定方法
農作物や養殖の管理をマイコンで行うには複数のマイコンを設置する必要があります。
WiFiやLTE-M通信がありますが、WiFiはWiFi端末の設置とサービスエリア外だったりで面度です。
LTE-Mは各マイコンにモジュール設置となると単価が高くなり業者との契約も面倒でコストもかかります。
それでXBeeを使用して一か所にて管理することにしました。
マイコンにはセンサーやリレーを搭載して、農地の水管理、温度の管理を行なってもらいます。
自分で管理と操作の手間を省けます。
その複数のマイコンの管理を行う為にはパソコンなどが必要です、、またパソコンからインターネットを通じてクラウドにデータをアップすることが可能となります。
それで、パソコンと複数のマイコンの通信にXBeeを利用することにしました。
ここでは、XBeeの親機(コーディネータ)と複数の子機(エンドデバイス)の設定を説明します。
親機と複数の子機の通信チェックを行いますので、最低XBeeを3セット用意してください。
XBee S2C 802.15.4モジュール (XBeeは色々ありますが、今回はこれを使用します。)
秋月電子 [XB24CAWIT-001] 通販コード M-14651
XBee USBインターフェースボードキット
秋月電子 [AE-XBEE-USB] 通販コード K-06188
マイクロBコネクタ用のUSBケーブル
XBee USBインターフェースボードは、"FTDI社製FT232R"が搭載していますので、
FTDIドライバ FTDI Chip VCP Drivers をインストールしてください。
(XCTUをインストールすると、FTDIドライバーもインストールされるらしいが未確認)
XBee設定ソフト(XCTU)とテラタームを入手してください。
’XCTU'’を検索するとすぐ出てきます。
ついでにXCTUを使ったXBeeの設定は他の方も説明していますので、
ついでに読んでください。ただし説明している設定ソフトが古い場合がありますので注意してください。
↑これが今の基本!、私だけ頼られてもね ;^_^
XBee設定ソフトとテラタームをインストールしてください。
(XCTUのバージョンは、Version 6.5.6)
テラタームで使用しているシリアルポート番号の確認を行います。
一つずつ XBee USBインターフェースボードキットをPCに接続してCOMポート番号を確認してください。
XBeeが使用使用しているCOM番号をメモしておきます。
XBeeはマイコン同士のシリアル通信を無線通信で行なう為のデバイスとして使用しますのでシリアル通信機能以外は使用しません。
I/O、センサーなどの操作はマイコンで行ないます。(APIモードのATコマンドは一切使用しない。)
そのため、透過モード(ATモード)で使用します。
子機(エンドデバイス)は親機(コーディネータ)とのみ通信を行い、親機はすべての子機にデータを送る設定を行います。
通信速度は9600bps です。
まずコーディネータの設定から行います。
シリアルのCOMポート番号が19のXBeeをコーディネータにします。
XCTUを起動して赤い矢印の所をクリックします。
COM19を選んで「Finish」を押します。
青い部分を押します。
XBeeの設定が読み込まれて、設定変更画面が表示されます。
赤い矢印の部分の変更と確認を行います。
設定画面ではマウスのホイール操作は行わないでください、気付かないうちに設定が変わっている事があります。
移動はスクロールバーを使ってください。
ID PAND ID:同じネットワーク内のXBeeは同じ値にする必要があります。
0と1以外の適当な値を入れてください、ここでは100にしています。
CE Coordinator Enable: コーディネータかエンドデバイスの切り替え(ルーターモードは無い)
親機にしたいので、「Coordinator[1]」に設定する。
BD Interface Data Rate:「9600[3]」に設定します。
AP API Enable :ATモードかAPIモードの切り替え
ATモードにしますので、「API disabled[0]」に設定します。
親機のアドレス(SH・SL Serial Number)をメモしてくださ。
(コピーペーストできます)
「Write」を押して、設定を書き込みます。
左側を見ると’E’からコーディネータの’C’に変わっている事が分かります。
子機(エンドデバイス)も同じように設定画面を開きます。
ID PAND ID: 親機と同じ値を入れてください。
DH Destination Address High: 親機のSH Serial Number High
DL Destination Address Low: 親機のSL Serial Number LOW をいれてください。
CE Coordinator Enable: 子機にしたいので、「End Device [0]」に設定する。
BD Interface Data Rate:「9600[3]」に設定します。
AP API Enable :ATモードかAPIモードの切り替え
ATモードにしますので、「API disabled[0]」に設定します。
設定が終わったら、「Write」を押して設定を書き込んでください。
子機の台数分同じ事を繰り返し同じ設定を書き込みます。
通信確認を行います。
接続しているXBeeを操作しますので、接続しているXBeeの数だけテラタームを起動させてください。
端末の設定で、
改行コードの受信・送信とも”LF”に変更します。
ローカルエコーにチェックを入れておきます。
COM19が親機で、COM20とCOM21が子機となります。
各端末をアクティブにして適当な文字を入力して、
親機がすべての子機に文字を送信して、子機は親機のみに文字を送信している事を確認してください。
確認出来れば終了です。
ちなみにXBeeの発売が開始された頃、この動作確認でデータの取りこぼしが多く原因も解らなかったのでXBeeを使うのを止めました。
大量のデータのやり取りテストは行っていませんが、一応今は初期の頃のようなデータの取りこぼしは無いようです。
農業・養殖用として使用する場合、子機のアドレスはマイコンにIDを付けて判断する予定です。