Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
6
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

@openwave-co-jp

LoRaにGPSを付けて、会社の周りを歩いてみた(Google Earthで位置情報をプロットする)

イントロダクション

これまでLoRaによるIoTLoRaWANによるIoTとご紹介してきました。

そして今、会社では「LoRaって実際どれくらい飛ぶの?」というのが一つの話題になっています。

「LoRaにGPS付けて歩き回ればいいんじゃない?」

ということで、LoRaとGPSをくっつけて、歩いた結果をGoogle Earthでプロットしてみるということを行ったので、ご紹介します。

使用するものは次になります。

全体像

全体像_GPS.PNG

  • 弊社のLoRa IoT スターターキット(Dragino社製)
    • Dragino LG01-JP:LoRaゲートウェイ
    • Dragino LoRa mini Dev:LoRaノード
  • AE-GYSFDMAXB:GPSセンサー
  • 抵抗とダイオード←こちらを購入したら入ってました。
    • 抵抗:10kΩ
    • ダイオード:1N4148
  • AE-XCL101C501BR-G:昇圧コンバータ(3.3V→5Vに変換できる)
  • USBバッテリー←1000円くらいで買えます。

使用ソフト

  • Arduino IDE(1.6.13)
  • Excel
  • Google Earth

使用プログラム

  • LoRaGPSExample/GPS_check/GPS_check.ino  →デバイス(LoRa mini)
  • LoRaGPSExample/GPS_check_GW/GPS_check_GW.ino   →ゲートウェイLoRa受信(LG01-JP)
  • LoRaGPSExample/GPS変換フォーマット_GoogleEarth.xlsx   →CSVの変換ツール
  • LoRaGPSExample/LoRa実験GoogleEarth.kml   →Google Earthで開くファイル

手順

ThingSpeakの設定

https://thingspeak.com/
ThingSpeakにアカウントを作成し、チャネル追加します。
Channel Settingで、フィールド2~フィールド5を有効にします。
(フィールド1は今回は実装しませんが、複数端末でID管理するために使わずに残しています)
すると、チャネルIDと書き込みキー(WriteAPIKey)が得られます。

LoRaゲートウェイのプログラミング

「使用プログラム」のGPS_check_GW.inoを、Arduino IDEで開きます。
チャンネルIDと書き込みキー(WriteAPIKey)を取得したものに書き換えます。

LG01-JP.PNG
注意)ゲートウェイ側のプログラムで、ThingSpeakのライブラリを使いますが、ThingSpeakのライブラリで、Console使っているので、プログラム上でConsoleを書くとデータがアップされないです。

LoRaMiniとGPSセンサーをつなぐ

IMG_20170519_120913.jpg
IMG_20170519_121032.jpg
GPS_配線.png

LoRa mini Dev 昇圧コンバータ GPSセンサー
3.3V(3V3) ce
3.3V(3V3) vbat
3.3V(3V3)→抵抗 抵抗→RXD
A2←ダイオード(カソード) ダイオード(アノード)←RXD
A1 TXD
GND VSS GND
vout 5V
A0 1PPS

デバイスのプログラミング

「使用プログラム」のGPS_check.inoを、Arduino IDEで開きます。
→LoRa mini Devに書き込み

接続確認

接続確認.PNG
→接続が確認できたら歩き回りましょう。

ThingSpeakからCSVダウンロード

ThingSpeakにログインして対象のチャネルの画面を開くと、「Data Export」というボタンがあるので、そこからCSV形式で取得できます。
「使用プログラム」のGPS変換フォーマット_GoogleEarth.xlsxの黄色のエリアにCSVを貼り付けると、赤いエリアにGoogle Earthで使用するタグが出力されます。
緯度経度変換.png

注意:GPSの高さの精度がそれほど良くなかったので、ツールは高さを強制的に1mにしています。

Google Earthにプロット

「使用プログラム」のLoRa実験GoogleEarth.kmlの57行目に先のツールの赤い列(タイトル行含まず)貼付けて保存します。
KML貼付け.PNG

LoRa実験GoogleEarth.kmlをダブルクリックするだけで起動できます。
GoogleEarth.PNG

最後に

今回使用したGPSの精度はもしかしたらあまりよくないかもしれませんが、割合簡単に作れたのでLoRaの実地実験にはもってこいかもしれません。
Google Earthで3Dで見た時に計測地点との間にどんな障害物があるのかも分かって、何かと考察しやすかったです。

そして実際に歩いてみると、LoRaの設定やノードとゲートウェイの位置関係でかなり届く範囲の違いがありました。(setupの中でLoRaの設定に関する記述もあります。)

今回の内容はLoRa環境を構築する際の、エリア設計/検証にお役立ていただけるのではないでしょうか。

注意

プログラミングにはArduino IDEを使用しますが、事前にArduino IDEに次の設定が必要です。

この記事で使用するソースは、使用するハードに依存している部分が大きいため、他のハードとの組み合わせでどうなるかは分かりません。

株式会社オープンウェーブ

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
6
Help us understand the problem. What are the problem?