Soracom

IoT テンプレートギャラリー

  • Templates
  • GPS マルチユニットで位置情報を判定して通知

GPSマルチユニットで取得した位置情報をもとに指定した領域の内外を判定し、Google チャットで通知します。設定した中心座標と半径で定義される領域の内外の状況をデバイスの送信間隔に合わせて継続的に把握できます。

概要

このアプリテンプレートでは、GPS マルチユニット SORACOM Edition (以下、GPSマルチユニット) から取得した位置情報を利用します。SORACOM Flux による座標変換処理、設定した領域の内外判定、および Google チャットへの通知機能を提供します。デバイスの位置座標は SORACOM Harvest へ蓄積されます。SORACOM Harvest に蓄積されたデータは簡易的な可視化が可能で、さらに SORACOM Lagoon を利用することで自由にカスタマイズ可能なダッシュボードによる画像とデータの可視化も可能です。このアプリがあると以下のことに役立ちます。

  • 定期的な GPS 位置情報取得
  • 取得した位置情報が設定した領域内外かの判定
  • 位置情報が取得できない場合のエラー通知
  • Google チャットでの継続的な状況共有
  • 移動履歴の可視化

内外を判定する領域の中心座標と半径は、アプリ作成時および作成後にカスタマイズできます。通知先の Google チャット Webhook URL も設定により変更可能です。 ダッシュボードで可視化する場合は、このアプリテンプレートを実行したあとに、SORACOM Lagoon の設定が必要です。

Google チャット通知の例

デバイスの送信間隔ごとに最新の滞在状況が通知されます (例: 送信間隔を 10 分に設定した場合は 10 分ごと)。通知内容は次のとおりです:

  • 設定した領域内にいるとき: 「指定エリア内にいます 中心座標: 35.123456, 135.123456」のように中心座標を含めて通知します

  • 設定した領域外にいるとき: 「指定エリア外にいます 現在地へのルート案内: https:/…」のように現在地へのルート案内リンクを含めて通知します

  • GPS 情報取得エラー時: 「GPS位置情報を取得できません。屋外の見通しの良い場所に移動してください。」と通知します

概算費用

初期費用

以下のいずれかを準備してください。

品目
費用
備考
12,100 円

月額費用

品目
当アプリの概算費用
備考
SORACOM Flux
491.04 円/月(*1)
10 分間隔で実行した場合、4,464 イベント/月(*1)
SORACOM IoT SIM (plan-D D-300MB)
330円/月
(*2)
  • (*1) この Flux アプリでは、1日あたり 144回イベント数がカウントされ、1ヶ月間 (31日) の稼働で 4,464回のイベント数がカウントされます。
  • SORACOM Flux の Developer プランではアカウントあたり 10,000 イベント/月まで無料で利用いただけます。10,000 イベント/月を超過した場合はイベントあたり 0.11 円が発生します。
  • (*2) 月額基本料金の他に、データ通信料金が発生します。データ通信料金については日本カバレッジ IoT SIMを参照して下さい。
  • イベント数は、無料で利用いただけるバンドル分と同じ上限値が当初は設定されています。上限に達した場合はイベントによるアプリの起動やアクションの実行はされなくなります。これを超えて使用したい場合はあらかじめ上限を更新してください。月のバンドル分を超える上限を設定した場合、超過したイベント数やクレジットは従量課金でご利用いただけます。

本記載は概算であり、実際の利用状況によって変動します。 正確な料金は SORACOM のサービスページ および ユーザーコンソールから利用明細 をご確認ください。 ユーザードキュメント イベント数、クレジット使用料の上限を設定する も併せてご確認ください。

事前の準備

このテンプレートでアプリをデプロイする (テンプレートを実行する) 前に、以下を準備しましょう:

  • GPS マルチユニット設定: GPS マルチユニットデバイスを SORACOM Air for セルラーで接続し、適切な送信設定を行う

GPS マルチユニットの詳細設定

GPS マルチユニットでは以下の設定が必要です:

基本設定

  • 送信内容: 位置情報 (GPS)
  • 送信先: SORACOM Harvest Data (SORACOM Lagoon)
  • 送信モード: 定期送信 - 手動モード
  • 加速度割り込み: オフ
  • 設定取得モード: オフ

詳細設定項目

  • 送信間隔: 10 分
  • 期間: 常に送信する
  • 曜日: 常に送信する
  • 時刻: 常に送信する

設定手順

  1. デバイスの初期設定: GPS マルチユニット SORACOM Edition ユーザーガイド STEP1 から STEP4 を参照
  2. グループ設定: デバイスを適切なグループに所属させる
  3. Harvest Data の有効化: グループ設定で SORACOM Harvest Data を有効にする
  4. 送信モード設定: STEP4 の動作モードで「定期送信 - 手動モード」を選択
  5. 送信間隔設定: 詳細設定で送信間隔を 10 分に設定

詳細はソラコムのドキュメント SORACOM Air の設定方法GPS マルチユニット SORACOM Edition ユーザーガイド を参照してください。

  • Google チャット Webhook URL: 通知先となる Google チャットスペースの着信 Webhook URL を取得する

詳細は Google のドキュメント Google チャット の Webhook 設定方法 を参照してください。Business または Enterprise の Google Workspace アカウントが必要になります。

アプリの作成

設定のカスタマイズ

アプリ作成時点では以下のパラメータを設定できます:

パラメータ設定

パラメータ名
説明
グループ ID
GPS マルチユニットが所属するグループの ID
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Google チャット Webhook URL
通知先 Google チャットの着信 Webhook URL
中心経度 (cen_lon)
設定する領域の中心となる経度
135.123456
中心緯度 (cen_lat)
設定する領域の中心となる緯度
35.123456
半径 (radius)
設定する領域の中心からの半径(メートル単位)
500

Google マップで目的地付近を開き、地図上で右クリックすると表示されるメニューの最上段に「35.123456, 135.123456」のような緯度・経度が表示されます。値をクリックするとクリップボードにコピーできるので、ジオフェンス設定時の参考になります。

アプリの作成後に行うこと

手動でアプリをテスト実行し、Google チャットの通知や Harvest Data へのデータ保存が確認できたら、GPS マルチユニットの電源を入れて経緯度が正しく送信されていることを確かめてください。

アプリのカスタマイズ

ジオフェンスエリアの変更

Fluxアプリ内の局所平面座標系変換(Republishアクション)の設定で、[CONFIG] グループ > [Content]欄の以下の変数を変更することで、ジオフェンスエリアをカスタマイズできます:

  • cen_lon: 中心経度
  • cen_lat: 中心緯度
  • radius: 半径(メートル)

中心座標が数 km 程度の変更であれば cen_loncen_lat の値を直接編集して運用できますが、数百 km 以上離れた地点に変更する場合は局所平面座標系の誤差が大きくなるため、このテンプレートからアプリを作り直してください。

通知メッセージの変更

Webhook アクションの body 部分を変更することで、通知メッセージをカスタマイズできます。

座標変換の調整

局所平面座標系の変換では、設定したジオフェンス中心を原点として座標を計算します。中心座標を大きく変更する場合はテンプレートからアプリを作り直してください。

トラブルシューティング

うまく動かない場合は以下を確認してください:

位置情報が取得できない場合

  • GPS マルチユニットが屋外の空が見える場所にあることを確認
  • デバイスの電源と通信状況を確認 詳細はソラコムのドキュメント GPS マルチユニット SORACOM Edition ユーザーガイド の「電源をオンにする / オフにする」を参照してください。

通知が届かない場合

  • Google チャット Webhook URL が正しく設定されているかを確認
  • Webhook URL のアクセス権限を確認

設定した領域の内外判定が正しくない場合

  • 中心座標と半径の設定値を確認してください。

詳細な実行履歴は 実行履歴/メッセージ履歴 (ログ) を確認する を参照してください。