次の方法で共有


Azure IoT Suite の事前構成済みソリューションとは

Azure IoT Suite の事前構成済みソリューションは、サブスクリプションを使用して Azure にデプロイできる一般的な IoT ソリューション パターンの実装です。 構成済みのソリューションを使用できます。

  • 独自の IoT ソリューションの開始点として。
  • IoT ソリューションの設計と開発における一般的なパターンについて説明します。

構成済みの各ソリューションは、シミュレートされたデバイスを使用してテレメトリを生成する、完全なエンドツーエンドの実装です。

完全なソース コードをダウンロードして、特定の IoT 要件を満たすようにソリューションをカスタマイズおよび拡張できます。

次の表は、ソリューションが特定の IoT 機能にどのようにマップされるかを示しています。

解決策 データ インジェスト デバイス ID デバイス管理 コマンドと制御 ルールとアクション 予測分析
リモート監視 イエス イエス イエス イエス イエス -
予測メンテナンス イエス イエス - イエス イエス イエス
コネクテッド ファクトリ イエス イエス イエス イエス イエス -
  • データ インジェスト: クラウドへの大規模なデータのイングレス。
  • デバイス ID: 一意のデバイス ID を管理し、ソリューションへのデバイス アクセスを制御します。
  • デバイス管理: デバイス メタデータを管理し、デバイスの再起動やファームウェアのアップグレードなどの操作を実行します。
  • コマンドと制御: デバイスがアクションを実行できるようにするには、クラウドからデバイスにメッセージを送信します。
  • ルールとアクション: 特定のデバイスからクラウドへのデータに対してアクションを実行するために、ソリューション バックエンドはルールを使用します。
  • 予測分析: ソリューション バックエンドは、デバイスからクラウドへのデータを分析して、特定のアクションがいつ行われるべきか予測します。 たとえば、航空機エンジンのテレメトリを分析して、エンジンのメンテナンスの期限を判断します。

リモート監視構成済みソリューションの概要

この記事では、リモート監視の構成済みソリューションについて説明することを選択しました。これは、他のソリューションが共有する多くの一般的な設計要素を示しているためです。

次の図は、リモート監視ソリューションの重要な要素を示しています。 以下のセクションでは、これらの要素の詳細について説明します。

リモート監視の構成済みソリューション アーキテクチャ

デバイス

リモート監視構成済みソリューションをデプロイすると、冷却デバイスをシミュレートする 4 つのシミュレートされたデバイスがソリューションに事前プロビジョニングされます。 これらのシミュレートされたデバイスには、テレメトリを出力する温度と湿度のモデルが組み込まれています。 これらのシミュレートされたデバイスは、次に含まれます。

  • ソリューションを介したデータのエンドツーエンドのフローを示します。
  • テレメトリの便利なソースを提供します。
  • カスタム実装の開始点としてソリューションを使用するバックエンド開発者の場合は、メソッドまたはコマンドのターゲットを指定します。

ソリューション内のシミュレートされたデバイスは、次のクラウドからデバイスへの通信に応答できます。

  • メソッド (ダイレクト メソッド): 接続されたデバイスが直ちに応答することが期待される双方向通信方法。
  • コマンド (クラウドからデバイスへのメッセージ):デバイスが永続的なキューからコマンドを取得する一方向の通信方法。

これらのさまざまな方法の比較については、 クラウドからデバイスへの通信のガイダンスを参照してください。

デバイスが事前構成済みソリューションの IoT Hub に初めて接続すると、デバイス情報メッセージがハブに送信されます。 このメッセージは、デバイスが応答できるメソッドを列挙します。 リモート監視構成済みソリューションでは、シミュレートされたデバイスで次の方法がサポートされています。

  • ファームウェア更新の開始: このメソッドは、ファームウェアの更新を実行する非同期タスクをデバイスで開始します。 非同期タスクでは、報告されたプロパティを使用して、状態の更新をソリューション ダッシュボードに配信します。
  • 再起動: この方法により、シミュレートされたデバイスが再起動されます。
  • FactoryReset: このメソッドは、シミュレートされたデバイスで出荷時の設定へのリセットをトリガーします。

デバイスが事前構成済みソリューションの IoT Hub に初めて接続すると、デバイス情報メッセージがハブに送信されます。 このメッセージは、デバイスが応答できるコマンドを列挙します。 リモート監視構成済みソリューションでは、シミュレートされたデバイスで次のコマンドがサポートされます。

  • Ping デバイス: デバイスは、受信確認を使用してこのコマンドに応答します。 このコマンドは、デバイスがまだアクティブでリッスンしていることを確認するのに役立ちます。
  • テレメトリの開始: テレメトリの送信を開始するようにデバイスに指示します。
  • テレメトリの停止: テレメトリの送信を停止するようにデバイスに指示します。
  • [Set Point Temperature の変更]: デバイスが送信するシミュレートされた温度テレメトリ値を制御します。 このコマンドは、バックエンド ロジックのテストに役立ちます。
  • 診断テレメトリ: デバイスが外部温度をテレメトリとして送信する必要があるかどうかを制御します。
  • デバイス状態の変更: デバイスが報告するデバイス状態メタデータ プロパティを設定します。 このコマンドは、バックエンド ロジックのテストに役立ちます。

同じテレメトリを出力し、同じメソッドとコマンドに応答するシミュレートされたデバイスをソリューションに追加できます。

このソリューションでは、コマンドとメソッドへの応答に加えて、 デバイス ツインを使用します。 デバイスはデバイス ツインを使用して、プロパティ値をソリューション バックエンドに報告します。 ソリューション ダッシュボードでは、デバイス ツインを使用して、デバイス上のプロパティを新しく設定された希望の値に変更します。 たとえば、ファームウェアの更新プロセス中に、シミュレートされたデバイスは、報告されたプロパティを使用して更新の状態を報告します。

IoT Hub

この構成済みソリューションでは、IoT Hub インスタンスは、一般的な IoT ソリューション アーキテクチャCloud Gateway に対応します。

IoT ハブは、1 つのエンドポイントでデバイスからテレメトリを受信します。 IoT ハブでは、デバイス固有のエンドポイントも保持されます。各デバイスは、デバイスに送信されたコマンドを取得できます。

IoT ハブは、受信したテレメトリをサービス側のテレメトリ読み取りエンドポイントを介して使用できるようにします。

IoT Hub のデバイス管理機能を使用すると、ソリューション ポータルからデバイスのプロパティを管理し、次のような操作を実行するジョブをスケジュールできます。

  • デバイスの再起動
  • デバイスの状態の変更
  • ファームウェアの更新

Azure Stream Analytics

構成済みソリューションでは、次の 3 つの Azure Stream Analytics (ASA) ジョブを使用して、デバイスからのテレメトリ ストリームをフィルター処理します。

  • DeviceInfo ジョブ - デバイス登録固有のメッセージをソリューション デバイス レジストリにルーティングするイベント ハブにデータを出力します。 このデバイス レジストリは、Azure Cosmos DB データベースです。 これらのメッセージは、デバイスが最初に接続したとき、または デバイス状態の変更 コマンドに応答して送信されます。
  • テレメトリ ジョブ - すべての生テレメトリをコールド ストレージ用の Azure BLOB ストレージに送信し、ソリューション ダッシュボードに表示されるテレメトリ集計を計算します。
  • ルール ジョブ - テレメトリ ストリームで、ルールのしきい値を超える値をフィルター処理し、データをイベント ハブに出力します。 ルールが発生すると、ソリューション ポータルのダッシュボード ビューに、アラーム履歴テーブルの新しい行としてこのイベントが表示されます。 これらのルールは、ソリューション ポータルの [ ルール ] ビューと [アクション] ビューで定義されている設定に基づいて アクション をトリガーすることもできます。

この構成済みソリューションでは、ASA ジョブは、一般的な IoT ソリューション アーキテクチャで IoT ソリューション バックエンド への一部を形成 します

イベントプロセッサ

この構成済みソリューションでは、イベント プロセッサは、一般的な IoT ソリューション アーキテクチャの IoT ソリューション バックエンド の一部 を形成します

DeviceInfo ジョブとルール ASA ジョブは、他のバックエンド サービスに配信するために、出力をイベント ハブに送信します。 このソリューションでは、Web ジョブで実行されている EventProcessorHost インスタンスを使用して、これらのイベント ハブからメッセージを読み取ります。 EventProcessorHost では、次のものが使用されます。

  • Cosmos DB データベース内のデバイス データを更新する DeviceInfo データ。
  • ロジック アプリを呼び出してアラートを更新するための ルール データが、ソリューション ポータルに表示されます。

デバイス ID レジストリ、デバイス ツイン、Cosmos DB

すべての IoT ハブには、デバイス キーを格納するデバイス ID レジストリ が含まれています。 IoT Hub はこの情報を使用してデバイスを認証します。デバイスをハブに接続するには、デバイスを登録し、有効なキーを持っている必要があります。

デバイス ツインは、IoT Hub によって管理される JSON ドキュメントです。 デバイスのツインには、次のものが含まれます。

  • デバイスによってハブに送信された報告されたプロパティ。 これらのプロパティは、ソリューション ポータルで表示できます。
  • デバイスに送信する必要なプロパティ。 これらのプロパティは、ソリューション ポータルで設定できます。
  • デバイス ツインにのみ存在し、デバイスには存在しないタグ。 これらのタグを使用して、ソリューション ポータルでデバイスの一覧をフィルター処理できます。

このソリューションでは、デバイス ツインを使用してデバイス メタデータを管理します。 また、このソリューションでは、Cosmos DB データベースを使用して、各デバイスでサポートされるコマンドやコマンド履歴など、ソリューション固有の追加のデバイス データを格納します。

また、ソリューションでは、デバイス ID レジストリ内の情報を Cosmos DB データベースの内容と同期させる必要があります。 EventProcessorHost、DeviceInfo ストリーム分析ジョブのデータを使用して同期を管理します。

ソリューション ポータル

ソリューション ポータル

ソリューション ポータルは、構成済みソリューションの一部としてクラウドにデプロイされる Web ベースの UI です。 これによって、次のことが可能になります:

  • ダッシュボードでテレメトリとアラームの履歴を表示します。
  • 新しいデバイスを設定します。
  • デバイスの管理と監視。
  • 特定のデバイスにコマンドを送信します。
  • 特定のデバイスでメソッドを呼び出します。
  • ルールとアクションを管理します。
  • 1 つ以上のデバイスでジョブを実行するようにスケジュールします。

この構成済みソリューションでは、ソリューション ポータルは IoT ソリューション バックエンドの一部を形成し、一般的な IoT ソリューション アーキテクチャ処理とビジネス接続の一部を形成します。

次のステップ

IoT ソリューション アーキテクチャの詳細については、「 Microsoft Azure IoT サービス: リファレンス アーキテクチャ」を参照してください。

構成済みソリューションの概要がわかったら、 リモート監視 構成済みソリューションのデプロイを開始できます。構成 済みソリューションの概要を説明します。