AWS IoT の仕組み - AWS IoT コア

「翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。」

AWS IoT の仕組み

AWS IoT は、IoT ソリューションの実装に使用できるクラウドサービスとデバイスサポートを提供します。AWS は、IoT ベースのアプリケーションをサポートするために多くのクラウドサービスを提供します。開始点を理解するのに役立つように、このセクションでは、IoT ユニバースを導入するための主要概念の図と定義を示します。

ユニバースIoT

一般的に、Internet of Things (IoT) は、この図に示す主要なコンポーネントで構成されています。


                    ユニバースIoT

Apps

アプリは、IoT デバイスとデバイスが接続されているクラウドサービスによって提供される機能にエンドユーザーがアクセスできるようにします。

クラウドサービス

クラウドサービスは、インターネットに接続された、分散型の大規模なデータストレージおよび処理サービスです。その例を以下に示します。

  • IoT 接続および管理サービス。

    は、AWS IoT 接続と管理サービスIoTの例です。

  • コンピューティングサービス (Amazon Elastic Compute Cloud、AWS Lambda など)。

  • などのデータベースサービスAmazon DynamoDB

Communications

デバイスは、さまざまなテクノロジーやプロトコルを使用してクラウドサービスと通信します。その例を以下に示します。

  • Wi-Fi/ブロードキャストインターネット

  • ブロードバンド携帯電話データ

  • 狭帯域の携帯電話データ

  • Long-range Wide Area Network (LoRaWAN)

  • 所有する RF 通信

Devices

デバイスは、インターフェイスと通信を管理するハードウェアの一種です。デバイスは通常、監視および制御する実際のインターフェイスの近くに配置されます。デバイスには、マイクロコントローラー、CPU、メモリなどのコンピューティングおよびストレージリソースを含めることができます。その例を以下に示します。

  • Raspberry Pi

  • アラビア語

  • 音声インターフェイスアシスタント

  • LoRaWAN とデバイス

  • Amazon Sidewalk デバイス

  • カスタム IoT デバイス

Interfaces

インターフェイスは、デバイスを物理世界に接続するコンポーネントです。

  • ユーザーインターフェイス

    デバイスおよびユーザーが相互に通信できるようにするコンポーネント。

    • 入力インターフェイス

      ユーザーがデバイスと通信できるようにする

      例: キーパッド、ボタン

    • 出力インターフェイス

      デバイスがユーザーと通信できるようにします

      例: 英数字表示、グラフィカルな表示、インジケータライト、アラームベル

  • センサー

    デバイスが理解する方法で、外部環境内の何かを測定または感知する入力コンポーネント。その例を以下に示します。

    • 温度センサー (温度をアナログ電圧に変換)

    • 湿度センサー (相対湿度をアナログ電圧に変換)

    • アナログからデジタルコンバータ (アナログ電圧を数値に変換)

    • 距離の測定単位 (距離を数値に変換)

    • 光センサー (光レベルを数値に変換)

    • カメラ (イメージデータをデジタルデータに変換)

  • アクチュエーター

    外部ワールドで何かを制御するためにデバイスを使用できる出力コンポーネント。その例を以下に示します。

    • Stepper モーター (電気信号を動作に変換)

    • リレー (高電圧および分力計を制御)

AWS IoT サービスの概要

では、世界とやり取りするデバイスをサポートするサービスと、それらが IoT とやり取りするデータをサポートしています。AWS IoT は、この図に示されているサービスで構成され、AWS IoT ソリューションをサポートします。AWS IoTIoT


                    AWS IoT アーキテクチャ

AWS IoT デバイスソフトウェア

AWS IoT は、IoT デバイスをサポートするためにこのソフトウェアを提供します。

AWS IoT Greengrass

GreengrassAWS IoT は、AWS をエッジデバイスに拡張するため、エッジデバイスは生成するデータに基づいてローカルで動作し、管理、分析、および耐久性のあるストレージにクラウドを使用できます。Greengrass を使用すると、接続されたデバイスは AWS IoTAWS Lambda 関数、Docker コンテナ、またはその両方を実行し、機械学習モデルに基づいて予測を実行し、デバイスデータを同期させ、他のデバイスと安全に通信できます。これはインターネットに接続されていない場合でも可能です。

AWS IoT デバイステスター

AWS IoT Device Tester for FreeRTOS および AWS IoT Greengrass は、マイクロコントローラー用のテスト自動化ツールです。AWS IoT Device Tester では、デバイスをテストして、FreeRTOS または AWS IoT Greengrass のどちらを実行し、AWS IoT サービスと相互運用するかを判断します。

AWS IoT デバイス SDKs

デバイスおよびモバイル AWS IoTSDKs は、デバイスを に効率的に接続するのに役立ちます。AWS IoTDevice および Mobile AWS IoT には、オープンソースライブラリ、サンプル付きの開発者ガイド、移植ガイドが含まれているため、選択したプラットフォーム上で革新的な SDKs 製品またはソリューションを構築できます。IoT

FreeRTOS

FreeRTOS は、マイクロコントローラー用のオープンソースのリアルタイムオペレーティングシステムで、 ソリューションに小型で低電力のエッジデバイスを含めることができます。IoTFreeRTOS には、多くのアプリケーションをサポートするカーネルと増え続けるソフトウェアライブラリのセットが含まれています。FreeRTOS システムは、小さい低電力デバイスを AWS IoT に安全に接続し、AWS IoT Greengrass を実行している、より強力なエッジデバイスをサポートできます。

AWS IoT コントロールサービス

以下の AWS IoT サービスに接続し、IoT ソリューションでデバイスを管理します。

AWS IoT Core

AWS IoT Core は、インターネットに接続されたデバイスがクラウドアプリケーションや他のデバイスと安全にやり取りできるようにするマネージド型クラウドサービスです。AWS IoT Core は多くのデバイスやメッセージをサポートでき、これらのメッセージを処理して AWS エンドポイントや他のデバイスにルーティングできます。を使用すると、アプリケーションはすべてのデバイスを操作できます。それらのデバイスは接続されていない場合でも動作します。AWS IoT Core

AWS IoT デバイスの管理

AWS IoT デバイス管理 サービスは、デバイスフリートを構成する接続されたデバイスの plethora の追跡、監視、管理に役立ちます。 AWS IoTデバイス管理サービスは、IoT デバイスがデプロイされた後に正しく安全に動作するために役立ちます。また、デバイスへのアクセス、デバイスの正常性のモニタリング、問題の検出とリモートトラブルシューティング、デバイスソフトウェアとファームウェアの更新を管理するためのサービスのためのセキュアなトンネリングも提供します。

AWS IoT Device Defender

AWS IoT Device Defender は、IoT デバイスのフリートを保護するのに役立ちます。AWS IoTDevice Defender は、IoT 設定を継続的に監査し、セキュリティのベストプラクティスから逸脱していないことを確認します。AWS IoTDevice Defender は、セキュリティリスクを引き起こす可能性がある IoT 設定のギャップを検出するとアラートを送信します。たとえば、複数のデバイス間で共有されている ID 証明書や、AWS IoT Core に接続しようと試みている ID 証明書が失効しているデバイスなどです。

モノグラフAWS IoT

AWS IoT Things Graph は、さまざまなデバイスとウェブサービスを視覚的に接続して IoT アプリケーションを構築できるサービスです。AWS IoTThings Graph は、デバイスとウェブサービス間のやり取りを接続し調整するための視覚的なドラッグアンドドロップインターフェイスを提供するので、IoT アプリケーションを効率的に構築できます。

AWS IoT データサービス

以下の IoT のサービスを使用して、AWS IoT ソリューションのデバイスのデータを分析し、適切なアクションを実行します。

AWS IoT Analytics

AWS IoT Analytics では、大量のボリュームの非構造化 IoT データに対して、高度な分析を効率的に実行および運用できます。AWS IoTAnalytics は、IoT デバイスのデータを分析するために必要な、難しいステップを自動化します。AWS IoT分析では、分析用の時系列データストアに保存する前に IoT データのフィルタリング、変換を行い、データを強化します。組み込み SQL クエリエンジンまたは機械学習を使用して 1 回限りのクエリまたはスケジュールされたクエリを実行することで、データを分析できます。

AWS IoT SiteWise

AWS IoT SiteWise 施設のゲートウェイで実行されるソフトウェアを提供することによって、MQTT メッセージまたは によって大規模に産業機器から渡されたデータを収集、保存、整理、監視します。APIsゲートウェイは、オンプレミスのデータサーバーに安全に接続し、データの収集と整理、AWS クラウドへの送信のプロセスを自動化します。

AWS IoT イベント

[ イベントAWS IoT] センサーやアプリケーションからのイベントを検出して応答します。IoTイベントは、動作信号を使用して照明や監視カメラを有効にするモーション検知器など、予想よりも複雑な状況を識別するデータのパターンです。AWS IoTイベントは継続的に複数の IoT センサーやアプリケーションからデータをモニタリングし、AWS IoT Core、IoT SiteWise、DynamoDB などの他のサービスと統合して、早期検出や独自のインサイトを可能にします。

AWS IoT Core サービス

AWS IoT Core は、他のクラウドサービスやアプリケーションがインターネットに接続されたデバイスとやり取りできるように、IoT デバイスを AWS クラウドに接続するサービスを提供します。


                    デバイスゲートウェイ、メッセージブローカー、ルールエンジン、デバイスシャドウ、およびデバイスで提供されるその他のサービスを示す AWS IoT Core の概要表示

次のセクションでは、図に示す各 AWS IoT Core サービスについて説明します。

AWS IoT Core メッセージングサービス

接続サービスは、AWS IoT Core デバイスとの安全な通信を提供し、デバイスおよび IoT の間でやり取りするメッセージを管理します。AWS IoT

デバイスゲートウェイ

デバイスから AWS IoT へのセキュアかつ効率的な通信を可能にします。デバイス通信は、X.509 証明書を使用する安全なプロトコルによって保護されます。

メッセージブローカー

デバイスと AWS IoT アプリケーションが相互にメッセージをパブリッシュおよび受信するためのセキュアなメカニズムを提供します。パブリッシュとサブスクライブには、MQTT を直接または WebSocket を介した MQTT を使用できます。がサポートするプロトコルの詳細については、「AWS IoT」を参照してください。デバイス通信プロトコルデバイスやクライアントは、HTTP REST インターフェイスを使用して、メッセージをブローカーにデータを発行することもできます。

メッセージブローカーは、デバイスデータを、そのブローカーをサブスクライブしたデバイス、および Device Shadow サービスやルールエンジンなどの他の AWS IoT Core サービスに配信します。

AWS IoT Core for LoRaWAN

を使用すると、AWS IoT Core for LoRaWAN ネットワークサーバー (LNS) を開発および運用することなく、LoRaWAN デバイスとゲートウェイを LoRaWAN に接続することによって、プライベート AWS ネットワークをセットアップできます。LoRaWANデバイスから受信したメッセージはルールエンジンに送信され、そこでフォーマットされて他の AWS サービスに送信されます。LoRaWAN

ルールエンジン

ルールエンジンは、ストレージおよび追加処理のために、メッセージブローカーから他の AWS サービスにデータを接続します。たとえば、DynamoDB テーブルを挿入、更新、またはクエリしたり、ルールエンジンで定義した式に基づいて Lambda 関数を呼び出したりできます。SQL ベースの言語を使用して、メッセージペイロードからデータを選択し、データを処理して、他のサービス (Amazon Simple Storage Service (Amazon S3)、Amazon DynamoDB、AWS Lambda など) にデータを送信できます。メッセージブローカーや他の受信者にメッセージを再パブリッシュするルールを作成することもできます。詳細については、「AWS IoT のルール」を参照してください。

AWS IoT Core コントロールサービス

コントロールサービスは、デバイスのセキュリティ、管理、登録機能を提供します。AWS IoT Core

カスタム認証サービス

カスタム認証サービスと Lambda 機能を使用して、独自の認証および認可戦略を管理できるカスタムオーソライザーを定義できます。カスタムオーソライザーにより、AWS IoT はデバイスを認証し、ベアラトークンの認証と認証戦略を使用してオペレーションを認証することができます。

カスタムオーソライザーは、JSON Web トークン検証や OAuth プロバイダー呼び出しなど、さまざまな認証方法を実装できます。MQTT オペレーションを承認するためにデバイスゲートウェイによって使用されるポリシードキュメントを返す必要があります。詳細については、「カスタム認証」を参照してください。

デバイスプロビジョニングサービス

デバイスに必要なリソース (モノのオブジェクト、証明書、1 つ以上のポリシー) を記述したテンプレートを使用して、デバイスをプロビジョニングできます。Thing オブジェクトは、デバイスを記述する属性を含むレジストリのエントリです。デバイスは AWS IoT で認証するために証明書を使用します。ポリシーは、デバイスが AWS IoT で実行できるオペレーションを決定します。

テンプレートには、ディクショナリ (マップ) の値で置き換えられる変数が含まれています。同じテンプレートを使用して、ディクショナリのテンプレート変数に異なる値を渡すだけで、複数のデバイスをプロビジョニングすることができます。詳細については、「デバイスプロビジョニング」を参照してください。

グループレジストリ

グループはこれらをグループに分類することで、複数のデバイスを一度に管理できるようにします。グループ内にもグループが含まれているので、—グループ階層を構築することもできます。親グループで行った操作は、子グループに適用されます。同じアクションは、親グループ内のすべてのデバイスと子グループ内のすべてのデバイスにも適用されます。グループに付与されたアクセス許可は、グループ内のすべてのデバイスとそのすべての子グループに適用されます。詳細については、「AWS IoT によるデバイスの管理」を参照してください。

ジョブサービス

に接続された 1 つ以上のデバイスに送信され実行される一連のリモート操作を定義できます。AWS IoTたとえば、一連のデバイスに対して、アプリケーションやファームウェア更新のダウンロードとインストール、再起動、証明書のローテーション、またはリモートトラブルシューティングオペレーションの実行を指示するジョブを定義できます。

ジョブを作成するには、実行するリモートオペレーションの説明と、それを実行するターゲットのリストを指定します。ターゲットは個々のデバイス、グループ、またはその両方にすることができます。詳細については、「Jobs」を参照してください。

レジストリ

クラウドで各デバイスに関連付けられたリソースを整理します。AWSデバイスを登録し、各デバイスに最大 3 つのカスタム属性を関連付けることができます。また、証明書と MQTT クライアント IDs を各デバイスに関連付けて、それらの管理およびトラブルシューティングの機能を強化することもできます。詳細については、「AWS IoT によるデバイスの管理」を参照してください。

セキュリティとアイデンティティサービス

クラウド内のセキュリティの責任分担を提供します。AWSデバイスは、メッセージブローカーにデータを安全に送信するために、認証情報を安全な場所に保管する必要があります。メッセージブローカーとルールエンジンは、AWS セキュリティ機能を使用して、デバイスまたは他の AWS サービスにデータをセキュアに送信します。詳細については、「Authentication」を参照してください。

AWS IoT Core データサービス

データサービスは、常に接続されていないデバイスでも、AWS IoT Core ソリューションが信頼性の高いアプリケーションエクスペリエンスを提供するのに役立ちます。IoT

デバイスシャドウ

デバイスの現在の状態情報の保存と取得に使用される JSON ドキュメントです。

Device Shadow サービス

Device Shadow サービスはデバイスの状態を維持し、デバイスがオンラインであるかどうかにかかわらず、アプリケーションがデバイスと通信できるようにします。デバイスがオフラインになると、Device Shadow サービスは接続されたアプリケーションのデータを管理します。デバイスは再接続すると、Device Shadow サービスのシャドウと状態を同期させます。また、デバイスは現在の状態をシャドウにパブリッシュして、常時接続されていないアプリケーションやその他のデバイスで使用できるようにすることもできます。詳細については、「AWS IoT Device Shadow サービス」を参照してください。

AWS IoT Core サポートサービス

AWS IoT の Alexa Voice Service (AVS) の統合

Alexa Voiceを接続されたデバイスにもたらします。AWS IoT の AVS は Alexa を統合するコストと複雑さを軽減します。この機能は、大量の計算処理およびメモリのオーディオタスクをデバイスからクラウドにオフロードするために AWS IoT を使用します。その結果、エンジニアリング部品表 (EBOM) コストが削減されるため、デバイスメーカーは、費用対効果の高い方法で Alexa をリソースに制約のある IoT デバイスに持ってくることができ、消費者は自宅、オフィス、ホテルの部屋の一部で Alexa と直接話をしてアンビエントエクスペリエンスを体験することができます。

AWS IoT の AVS は、1 MB 未満の組み込み RAM を搭載した ARM Cortex Mクラスなど、MCUs で Alexa の組み込み機能を有効にします。これを行うには、AVS は、クラウド内の仮想 Alexa 組み込みデバイスにメモリと計算タスクをオフロードします。これにより、EBOM コストを最大 50% 削減できます。詳細については、「AWS IoT の Alexa Voice Service (AVS) の統合」を参照してください。

AWS IoT Core の Amazon Sidewalk の統合

Amazon Sidewalk は、デバイスとの連携を向上するための接続オプションを強化する共有ネットワークです。Amazon Sidewalk は、ペットや数値を見つけるデバイス、スマートホームのセキュリティおよび照明制御を提供するデバイス、アプライアンスやツールのリモート診断を提供するデバイスなど、幅広いカスタマーデバイスをサポートしています。向けの Amazon Sidewalk の統合により、デバイスの製造元は Sidewalk デバイスフリートを AWS クラウドに追加することができます。AWS IoT Core

詳細については、「の Amazon Sidewalk の統合AWS IoT Core」を参照してください。