Azure IoT Central ソリューションで位置データを使用する
この記事では、IoT Central アプリケーションで位置データを使用する方法について説明します。 デバイスを IoT Central に接続すると、位置データをテレメトリ ストリームとして送信したり、デバイス プロパティを使用して位置データを報告したりできます。
次の場所データを使うことができます。
- 報告された位置をマップ上にプロットします。
- テレメトリ位置履歴をマップ上にプロットします。
- 特定の領域に対するデバイスの出入りのタイミングをオペレーターに通知するジオフェンシング規則を作成します。
デバイス テンプレートに位置機能を追加する
次のスクリーンショットに、デバイス テンプレートを示します。これには位置データを使用するデバイス プロパティおよびテレメトリの種類の例が含まれています。 定義には、location セマンティック型と geolocation スキーマ型が使用されています。
参考までに、これらの機能の Digital Twins Definition Language (DTDL) v2 定義は、次のスニペットのようになります。
{
"@type": [
"Property",
"Location"
],
"displayName": {
"en": "DeviceLocation"
},
"name": "DeviceLocation",
"schema": "geopoint",
"writable": false
},
{
"@type": [
"Telemetry",
"Location"
],
"displayName": {
"en": "Tracking"
},
"name": "Tracking",
"schema": "geopoint"
}
Note
geopoint スキーマ型は、DTDL 仕様に含まれていません。 IoT Central では現在、geopoint のスキーマ型と location のセマンティック型を下位互換性のためにサポートしています。IoT Central 拡張機能を参照してください。
デバイスから位置データを送信する
前のセクションに示されている DeviceLocation プロパティ用のデータをデバイスから送信する場合、ペイロードは次の JSON スニペットのようになります。
{
"DeviceLocation": {
"lat": 47.64263,
"lon": -122.13035,
"alt": 0
}
}
前のセクションに示されている Tracking テレメトリ用のデータをデバイスから送信する場合、ペイロードは次の JSON スニペットのようになります。
{
"Tracking": {
"lat": 47.64263,
"lon": -122.13035,
"alt": 0
}
}
デバイスの位置を表示する
ご利用の IoT Central アプリケーション内の複数の場所に位置データを表示することができます。 例として、個々のデバイスに関連付けられたビューや、ダッシュボードが挙げられます。
デバイスに関するビューを作成する場合は、マップ上に位置情報をプロットすることも、個々の値を表示することもできます。
ダッシュボードにマップ タイルを追加することで、1 台または複数台のデバイスの位置をプロットすることができます。 前のスクリーンショットに示すように、位置テレメトリを表示するマップ タイルを追加すると、一定期間にわたって位置をプロットできます。
ジオフェンシング規則を作成する
位置テレメトリを使用すれば、デバイスが四角形の領域に入ったとき、またはそこから出たときにアラートを生成するジオフェンシング規則を作成できます。 次のスクリーンショットに示す規則では、緯度および経度の値を使用して四角形の領域を定義するために 4 つの条件を使用しています。 デバイスが四角形の領域に移動すると、この規則に従って電子メールが生成されます。
次のステップ
Azure IoT Central アプリケーションでプロパティを使用する方法を習得したら、次は以下を参照してください。