これまでのお話
- LoRaでIoTプラットフォーム(ThingSpeak)にデータを上げる方法
- LoRaWANでIoTプラットフォーム(The Things Network)にデータを上げる方法
- LoRaにGPSを付けて、会社の周りを歩いてみた(Google Earthで位置情報をプロットする)
- 複数のLoRaノードをゲートウェイにアクセスさせるときに気を付けること
イントロダクション
今回は受信強度について、記載しようかと思います。
受信強度とは
受信信号強度検出、または電界強度検出。受信している電波信号の強さを数値化したもの。
参考:http://www.wdic.org/w/WDIC/RSSI
これまでLoRaのプログラミングをする上で何度も見てきた値なのですが、受信側の強さを表す値です。
受信強度が検出できるタイミングは、「信号を受信した時」のようです。(逆に言うと、何も受信していないときには受信強度は分かりません)
LoRaのライブラリは、RSSIを取得しようとすると、最後に受信した信号の値を返すようです。
以降に、RSSIの取得方法を説明します。
使用ソフト
- Arduino IDE(1.6.13)
使用プログラム
LoRaでIoTプラットフォーム(ThingSpeak)にデータを上げる方法で使用したプログラムを使います。
以降の「手順」では、上記のプログラムが各機器に書き込まれた状態を前提とします。
手順
LoRa miniのプログラミング
LoRa miniに書き込んだソースに、RSSIを取得するための記述がコメントアウトされています。
下記キャプチャの個所のコメントを戻します。
再度プロラムを書き込みます。
動作確認
シリアルモニタを開くとRSSIが表示されます。
最後に
RSSIは、電波の送信側との距離や障害物の有無で値が大きく変化します。
RSSIの値を見ることで、だいたいどの距離まで安定して電波が届くかの判断ができるかと思います。
(経験即では、-130手前が当たりが通信できる限界でした)
LoRa設置場所の最も参考になる指標と言えるかもしれません。
注意
プログラミングにはArduino IDEを使用しますが、事前にArduino IDEに次の設定が必要です。
- Dragino向けの設定をしておく必要があります。
http://www.ibeacondo.com/download/LG01_LoRa_Gateway_Manual_JP.pdf - RadioHeadライブラリをインターネットから取得して、インクルードしておく必要があります。
http://www.airspayce.com/mikem/arduino/RadioHead/RadioHead-1.63.zip
この記事で使用するソースは、使用するハードに依存している部分が大きいため、他のハードとの組み合わせでどうなるかは分かりません。