Azure IoT Central のアーキテクチャ

IoT Central は、IoT シナリオをすばやく評価できる既製の環境です。 これはサービスとしてのアプリケーション プラットフォーム (aPaaS) IoT ソリューションであり、主なインターフェイスは Web UI です。 また、プログラムからアプリケーションを操作できるようにする REST API もあります。

この記事では、IoT Central ソリューションのアーキテクチャにおける重要な要素の概要について説明します。

I o T Central ソリューションのアーキテクチャの概要を示す図。

IoT Central アプリケーションの主な機能は次のとおりです。

デバイスの管理

IoT Central では、ソリューションにデータを送信する一連の IoT デバイスを管理できます。 たとえば、次のようなことができます。

  • アプリケーションに接続できるデバイスと、それらがどのように認証するかを制御します。
  • アプリケーションに接続できるデバイスの種類は、デバイス テンプレートを使用して定義します。
  • 接続されるデバイスに対してプロパティを設定するかコマンドを呼び出すことでデバイスを管理します。 たとえば、サーモスタット デバイスの目標温度プロパティを設定したり、デバイスをトリガーするコマンドを呼び出して、ファームウェアを更新したりします。 プロパティを設定して、以下でコマンドを呼び出すことができます。
    • 個々のデバイス (カスタマイズ可能な Web UI を通して)。
    • 複数のデバイス (スケジュールされたジョブまたはオンデマンド ジョブによって)。
  • 顧客の住所や最後のサービスの日付などのデバイス メタデータを管理します。

データを表示して分析する

IoT Central アプリケーションでは、個々のデバイスのデータや、複数のデバイスからの集計データを表示し、分析することができます。

  • マッピングを使用し、複雑なデバイス テレメトリを IoT Central 内部の構造化データに変換します。
  • "デバイス テンプレート" を使用して、特定の種類の個々のデバイスについてカスタム ビューを定義します。 たとえば、個々のサーモスタットの温度を長時間にわたってプロットしたり、配送トラックの実際の場所を表示したりできます。
  • 組み込みの分析を使用して、複数のデバイスの集計データを表示します。 たとえば、複数の小売店にわたる全体的混雑状況を表示したり、混雑率が最大の店舗や最小の店舗を識別したりすることができます。
  • カスタム ダッシュボードを作成して、デバイスの管理に役立てます。 たとえば、デバイス テレメトリを表示するためのマップ、タイル、グラフを追加できます。

ソリューションをセキュリティで保護する

IoT Central では、次の領域でセキュリティを構成および管理できます。

  • アプリケーションへのユーザー アクセス。
  • アプリケーションへのデバイス アクセス。
  • アプリケーションへのプログラムによるアクセス。
  • アプリケーションから他のサービスに対する認証。
  • 監査ログは、アプリケーションのアクティビティを追跡します。

詳細情報は、IoT Central セキュリティ ガイドを参照してください。

デバイス

デバイスはセンサーからデータを収集して、テレメトリのストリームとして IoT Central アプリケーションに送信します。 たとえば、冷却装置が温度値のストリームを送信したり、配送トラックがその場所をストリーミングしたりします。

デバイスでは、プロパティを使用して、その状態を報告できます。バルブが開いているか閉じているかなどです。 IoT Central アプリケーションでは、サーモスタットの目標温度を設定するなど、プロパティを使用してデバイスの状態を設定することもできます。

IoT Central では、デバイスに対してコマンドを呼び出してデバイスを制御することもできます。 たとえば、ファームウェア更新プログラムをダウンロードしてインストールするように、デバイスに指示します。

1 つのデバイスが実装する "テレメトリ"、"プロパティ"、"コマンド" は、集合的にデバイス機能と呼ばれます。 これらの機能は、デバイスと IoT Central アプリケーションとの間で共有されるモデル内で定義します。 IoT Central において、このモデルは、特定の種類のデバイスを定義するデバイス テンプレートの一部となります。 詳しくは、「デバイスをデバイス テンプレートに割り当てる」をご覧ください。

デバイスの実装は、IoT Central と確実に通信できるようにする IoT Plug and Play の規則に従っている必要があります。 詳細については、さまざまな言語の SDK とサンプルを参照してください。

デバイスは、サポートされているプロトコル MQTT、AMQP、HTTP のいずれかを使用して IoT Central に接続します。

ゲートウェイ

ローカル ゲートウェイ デバイスは、以下のようないくつかのシナリオで役に立ちます。

  • デバイスは、インターネットに接続できないと、IoT Central に直接接続できません。 たとえば、ゲートウェイ デバイス経由での接続が必要な Bluetooth 対応の混雑状況センサーのコレクションがあるかもしれません。
  • お使いのデバイスで、大量のデータが生成されているかもしれません。 コストを削減するには、ローカル ゲートウェイ内でデータを結合または集計してから、IoT Central アプリケーションへ送信します。
  • ソリューションでは、データの異常に迅速に対応することが必要です。 ゲートウェイ デバイスでは、IoT Central アプリケーションにデータを送信する必要なしに、ローカルで異常を特定してアクションを実行するルールを実行することができます。

一般的に、ゲートウェイ デバイスは、スタンドアロン デバイスよりも高い処理能力を必要とします。 ゲートウェイ デバイスを実装する 1 つの方法として、Azure IoT エッジを使用して、標準の IoT Edge ゲートウェイ パターンのいずれかを適用するという方法があります。 また、適切なデバイスで、独自のカスタム ゲートウェイ コードを実行することもできます。

データのエクスポート

IoT Central には組み込みの分析機能が用意されていますが、他のサービスやアプリケーションにデータをエクスポートできます。

IoT Central データ エクスポート定義の変換により、デバイス データを変換先にエクスポートする前に、その形式と構造を操作できます。

データをエクスポートする理由として、以下が挙げられます。

ストレージと分析

アーカイブと保有のポリシーに関して長期的な保存と制御を行う場合は、他の保存先ストレージにデータを継続的にエクスポートできます。 IoT Central の外部で個別のストレージ サービスを使用すると、他の分析ツールを使用して、ソリューション内のデータから分析情報を導き出すことができます。

ビジネスの自動化

IoT Central のルールを使用すると、IoT Central 内で条件に応答して、電子メールの送信やイベントの発生などの外部アクションをトリガーできます。 たとえば、デバイスの周辺温度がしきい値に達した場合にエンジニアに通知できます。

追加の計算

データを IoT Central や別のサービスで使用する前に、データに対して変換や計算を行う必要が生じる場合があります。 たとえば、配送トラックによって報告された場所データに、地域の気象情報を追加することができます。

REST API で拡張する

お使いのアプリケーションを、他のアプリケーションやサービスから管理できるようにする統合を構築します。 たとえば、プログラムによって、お使いのアプリケーションでデバイスを管理したり、ユーザー情報を外部システムと同期したりします。

次のステップ

ここでは、Azure IoT Central のアーキテクチャについて学習しました。推奨される次の手順は、Azure IoT Central でのデバイス接続の学習です。