Soracom

Users

ドキュメント

LoRa Arduino 開発シールドを使用して LoRa Space に接続ポイントを登録する

はじめに

SORACOM LoRa Space では、ソラコムの提供する共有サービスモデルの LoRa ゲートウェイを使用できるエリアを確認できます。また、お持ちの LoRa Arduino 開発シールド (以降、LoRaWAN デバイス) を使用して、接続ポイントを登録し、他のユーザーとも共有できます。

LoRaSpaceの画像 LoRaSpaceの画像

当ガイドでは、LoRaWAN デバイス(AL-050) を使用して、LoRa Space に接続ポイントを登録する手順を紹介します。 USB バッテリーなどを使用して、以下のようなデバイスを持ち歩くだけで、LoRa ゲートウェイの接続ポイントを確認し、位置情報を登録できます。

本ドキュメントには Arduino、GPS モジュールを使用した操作ガイドを掲載しますが、あくまでもサンプルとしてのご紹介となります。ソラコムのサービス以外についてはサポート対象外となりますので、あらかじめご了承ください。GPS モジュールの使い方等はメーカーにお問い合わせください。

Device Device

接続履歴の参照

接続エリア 接続エリア

前提事項

このガイドでは、以下のデバイスの使用を前提としています。

「NEO-6M NEO-6M-0-001」 は、以下のような GPS モジュールです。Amazon.co.jp でも入手できます。

NEO-6M-0-001 NEO-6M-0-001

スルーホール用テストワイヤは、Arduino と GPS モジュールの接続用に使用します。当ガイドでは 4 本必要です。 こちらも Amazon.co.jp などで購入可能です。

スルーホール用テストワイヤ スルーホール用テストワイヤ

デバイスの初期設定

ここでは、LoRaWAN デバイスと Arduino、GPS モジュールを取り付けます。 まず、LoRaWAN デバイスと Arduino を接続します。 以下のように接続します。

Arduino と LoRaWAN デバイス Arduino と LoRaWAN デバイス

Arduino と LoRaWAN デバイス Arduino と LoRaWAN デバイス

次に、スルーホール用テストワイヤを使用して、Arduino と GPS モジュールを取り付けます。

  • Arduino の GND - GPS モジュールの GND
  • Arduino の 3.3V - GPS モジュールの VCC
  • Arduino の 8 ピン - GPS モジュールの TX
  • Arduino の 9 ピン - GPS モジュールの RX

Arduino と LoRaWAN デバイス Arduino と LoRaWAN デバイス Arduino と LoRaWAN デバイス Arduino と LoRaWAN デバイス

ユーザーコンソールを使用した LoRaWAN デバイスの設定

LoRaWAN デバイスの確認

LoRaWAN デバイスは、ソラコムのユーザーコンソールから購入できます。購入方法は、SORACOM Air for LoRaWAN の利用方法 をご確認ください。

以下の手順に沿って、ユーザーコンソール上で購入したデバイスが表示されていることを確認してください。

  • ユーザーコンソール にログインする
  • ユーザーコンソール左上のメニューから「LoRa デバイス管理」を開きます。
  • デバイス一覧に自分が所有している デバイスが表示されていることを確認します。

デバイスの受け入れ処理を行っていない場合、ユーザーコンソールに LoRaWAN デバイスが表示されません。ユーザーコンソールの「発注」画面で「受け取り確認」ボタンをクリックしてください。

LoRa グループを作成する

データ送信先などの設定をするために LoRa グループを作成します。詳しくは、グループを作成する を参照してください。

LoRa グループを設定する

続けて LoRa グループの設定を変更します。

  1. LoRa グループ画面で [SORACOM Air for LoRaWAN 設定] をクリックします。

    LoRa グループ画面を表示する操作について詳しくは、グループの設定を変更する を参照してください。

  2. 以下の設定を行います。

    • LoRa Space を利用するかどうか: 共有サービスモデルのゲートウェイをグループ内の LoRaWAN デバイスに利用させるには、ここで「利用する」を選択します。

    overview overview

  3. [保存] をクリックします。

    次に、Beam の設定を行います。これにより LoRa Space に位置情報を送信できます。

  4. LoRa グループ画面で [SORACOM Beam 設定] をクリックします。

  5. [+設定を追加する][LoRaWAN → HTTP/HTTPS エントリポイント] の順にクリックします。

  6. 以下の項目を設定します。

    項目設定内容
    設定名任意です
    ON/OFFON に設定
    プロトコルHTTPS
    ホスト名lora-space.soracom.io
    ポート番号443
    パス/api/v1/logs

    Beam Beam

  7. [保存] をクリックします。

デバイスを LoRa グループに登録する

通信を行うために、設定した LoRa グループに LoRaWAN デバイスを所属させます。

詳しくは、IoT SIM、LoRaWAN デバイス、Sigfox デバイスが所属するグループを切り替える を参照してください。

以上で、ユーザーコンソールを使用した LoRaWAN デバイスの設定は完了です。

GPS データを送信する

GitHub で公開されている Arduino のライブラリを使用して GPS データを送信します。

Arduino IDE のインストール

Arduino IDE (以下、IDE) は、オフラインでも利用可能な Arduino スケッチ開発環境です。Arduino 公式 Web サイトの Getting Started Guide の「Install the Arduino Desktop IDE」の中にあるリンクから自分の PC の OS をクリックします。各 OS での操作方法が表示されますので、手順を見ながらインストールを進めてください。

ライブラリのセットアップ

IDE のインストールが完了したら、以下の 2 つのライブラリをインストールします。

  • Arduino library for LoRaWAN Device
  • TinyGPS

Arduino library for LoRaWAN Device

ライブラリは GitHub で公開しています。ZIP 形式でファイルをダウンロードし、IDE でインストールを行ってください。

  • GitHub リポジトリ にアクセスし、画面上の「Source code (zip)」リンクをクリックして、ZIP ファイルをダウンロードします。

  • IDE を起動し、メニューバー > スケッチ > ライブラリをインクルード > .ZIP 形式のライブラリをインストール を選択します。

    IDE menu IDE menu

  • ファイル選択画面が表示されたら、先に GitHub からダウンロードした ZIP ファイルを指定し「選択」ボタンをクリックします。

  • IDE の画面下部に「ライブラリが追加されました。「ライブラリをインクルード」メニューを確認してください」とメッセージが表示されたらインストール完了です。

TinyGPS

TinyGPS は、GPS モジュールの情報の読み込みに使用します。 GitHub で公開されていますので、同様に ZIP 形式でファイルをダウンロードし、IDE にインストールします。

  • GitHub リポジトリ にアクセスし、画面上の「Source code (zip)」リンクをクリックして、ZIP ファイルをダウンロードします。
  • IDE を起動し、メニューバー > スケッチ > ライブラリをインクルード > .ZIP 形式のライブラリをインストール を選択します。
  • ファイル選択画面が表示されたら、先に GitHub からダウンロードした ZIP ファイルを指定し「選択」ボタンをクリックします。
  • IDE の画面下部に「ライブラリが追加されました。「ライブラリをインクルード」メニューを確認してください」とメッセージが表示されたらインストール完了です。

IDE のメニューバー > Arduino > Quit Arduino をクリックして IDE をいったん終了し、再起動してください。

PC と Arduino の接続

以下のように PC と Arduino を USB ケーブルで接続してください。

PC と Arduino の接続 PC と Arduino の接続

次に、IDE を設定します。

  • メニューバー>ツール>ボード> Arduino Genuino Uno を選択し、書き込み対象のボードを指定します。
  • メニューバー>ツール>シリアルポート を選択し、Arduino が接続されているポートを選択します。

スケッチの実行

いよいよスケッチを実行します。

  • IDE を起動し、メニューバー > ファイル > スケッチ例 > SORACOM-LoRaWAN-1.0.5SLS_GPS_LoRa を選択します。

    ライブラリのバージョンによって SORACOM-LoRaWAN-1.0.5 の末尾の数字が変わることがあります。

  • IDE の画面上にサンプルスケッチが表示されます。

  • ボードとシリアルポートの選択ができたら、サンプルスケッチをコンパイルします。IDE のウィンドウ左上にあるチェックマークのボタンをクリックし、しばらくしてコンパイル完了のメッセージが画面下部に表示されることを確認してください。

  • コンパイルができたら、Arduino にスケッチを書き込みます。IDE のウィンドウ左上にある矢印マークのボタンをクリックし、書き込み完了のメッセージが表示されたことを確認してください。

  • 書き込み完了すると Arduino 上で自動的にスケッチが実行されます。IDE のウィンドウ右上にある虫眼鏡マークのボタンをクリックし、シリアルモニタを開くとスケッチの実行状況とデータ送信ログを確認できます。

SORACOM Beam を使用していますので、サービス利用料が課金されます。

  • 1 リクエストごとに料金が発生します。
  • エントリーポイント (Beam) へのリクエスト、Beam から転送先へのリクエスト、それぞれを個別に 1 リクエストとカウントします。
  • 新規のお客様を対象として無料利用枠をご提供しています。
  • 詳細は、SORACOM Beam のご利用料金 をご確認ください。

GPS モジュールが位置情報を取得するまで時間がかかる場合があります。また、屋内では位置情報を取得できない場合があります。位置情報を取得した場合は、GPS モジュールが青く点滅しますので、ご確認ください。

LoRa Space LoRa Space

LoRa Space に送信されたデータを確認する

LoRa Space に送信された位置情報を確認します。

SORACOM LoRa Space にアクセスし、左上の「接続エリアを登録する」をクリックします。

LoRa Space LoRa Space

ログイン画面が表示されますので、ソラコムのアカウントでログインします。

LoRa Space LoRa Space

以下の画面で、対象の LoRaWAN デバイスを選択し、「設定を確認」をクリックします。

LoRa Space LoRa Space

画面の下部に送信された GPS 情報と地図にマッピングされた位置情報を確認できます。

LoRa Space にデータ登録する際のデータ・フォーマット

LoRa Space に位置情報を登録する際のデータ・フォーマットは以下のとおりです。

バイトオフセット内容
0 (先頭)ヘッダー。0x21 固定
1-4 (signed 32 bit) (*1)latitude (緯度) を 100 万倍したもの。
例) 北緯 35.669465 度の場合、35669465。南緯はマイナス
5-8 (signed 32 bit) (*1)longitude (経度) を 100 万倍したもの。
例) 東経 139.744276 度の場合、139744276。西経はマイナス
9-10 (signed 16 bit) (*1)altitude (高度) 単位はメートル。
例) 高度 3776 メートルの場合は 3776。地下、水面下の場合はマイナス
  • (*1) 整数値はすべてリトルエンディアンです。