AWS IoT の仕組み - AWS IoT Core

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

AWS IoT の仕組み

AWS IoT は、IoT ソリューションの実装に使用できるクラウドサービスとデバイスサポートを提供します。 AWS はIoTベースのアプリケーションをサポートする多くのクラウドサービスを提供します。どこから始めればよいかを理解できるように、このセクションでは、IoT ユニバースの概要を知るための重要な概念の図と定義を示します。

IoT ユニバース

一般に、モノのインターネット (IoT) は、この図に示す主要なコンポーネントで構成されています。

IoT ユニバース

アプリケーション

アプリケーションを使用すると、エンドユーザーは IoT デバイスと、それらのデバイスが接続されているクラウドサービスによって提供される機能にアクセスできます。

クラウドサービス

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

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

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

  • Amazon Elastic Compute Cloud や などのコンピューティングサービス AWS Lambda

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

通信

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

  • Wi-Fi/ブロードバンドインターネット

  • ブロードバンドセルラーデータ

  • 狭帯域セルラーデータ

  • 長距離広域ネットワーク (LoRaWAN)

  • 独自の RF 通信

デバイス

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

  • Raspberry Pi

  • Arduino

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

  • LoRaWAN とデバイス

  • Amazon Sidewalk デバイス

  • カスタム IoT デバイス

インターフェイス

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

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

    デバイスとユーザーが相互に通信することを可能にするコンポーネント。

    • 入力インターフェイス

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

      例: キーパッド、ボタン

    • 出力インターフェイス

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

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

  • センサー

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

    • 温度センサー (温度をアナログ信号またはデジタル信号に変換)

    • 湿度センサー (相対湿度をアナログ信号またはデジタル信号に変換)

    • アナログ-デジタル変換器 (アナログ電圧を数値に変換)

    • 超音波距離測定単位 (距離を数値に変換)

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

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

  • アクチュエータ

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

    • ステッピングモーター (電気信号を動きに変換)

    • リレー (高電圧と電流を制御)

AWS IoT サービスの概要

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

AWS IoT アーキテクチャ

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

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

AWS IoT デバイス SDKs

AWS IoT Device SDK と Mobile SDKsは、デバイスを に効率的に接続するのに役立ちます AWS IoT。 AWS IoT Device および Mobile SDKs には、オープンソースライブラリ、サンプルを含むデベロッパーガイド、移植ガイドが含まれており、選択したハードウェアプラットフォームで革新的な IoT 製品またはソリューションを構築できます。

AWS IoT Device Tester

AWS IoT Device Tester for FreeRTOS と AWS IoT Greengrass は、microcontrollers. AWS IoT Device Tester tests 用のテスト自動化ツールです。デバイスは FreeRTOS を実行するか、 AWS IoT サービスと AWS IoT Greengrass 相互運用するかを判断します。

AWS IoT ExpressLink

AWS IoT ExpressLink は、 AWS パートナー によって開発および提供されるさまざまなハードウェアモジュールを強化します。接続モジュールには AWS検証済みソフトウェアが含まれており、デバイスをクラウドに安全に接続し、さまざまな AWS サービスとシームレスに統合できます。詳細については、AWS IoT ExpressLink概要ページを参照するか、AWS IoT ExpressLink 「プログラマーガイド」を参照してください。

AWS IoT Greengrass

AWS IoT Greengrass はエッジデバイスに AWS IoT を拡張し、生成したデータに対してローカルに動作し、機械学習モデルに基づいて予測を実行し、デバイスデータをフィルタリングおよび集計できるようにします。 AWS IoT Greengrass は、デバイスがそのデータが生成される場所に近いデータを収集および分析し、ローカルイベントに自律的に反応し、ローカルネットワーク上の他のデバイスと安全に通信できるようにします。を使用して AWS IoT Greengrass 、エッジデバイスを AWS サービスまたはサードパーティーサービスに接続できるコンポーネントと呼ばれる構築済みのソフトウェアモジュールを使用してエッジアプリケーションを構築できます。

FreeRTOS

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

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

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

AWS IoT Core

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

AWS IoT Core Device Advisor

AWS IoT Core Device Advisor は、デバイスソフトウェア開発中に IoT デバイスを検証するためのクラウドベースのフルマネージドテスト機能です。Device Advisor は、デバイスを本番環境にデプロイする前に AWS IoT Core、IoT デバイスの信頼性と安全性を検証するために使用できる事前構築済みのテストを提供します。

AWS IoT Device Defender

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

AWS IoT デバイス管理

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

AWS IoT データサービス

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

Amazon Kinesis Video Streams

Amazon Kinesis Video Streams では、デバイスから AWS クラウドにライブビデオをストリーミングできます。このビデオは永続的に保存、暗号化、インデックス作成され、APIsを介して easy-to-useデータにアクセスできます。Amazon Kinesis Video Streams を使用すると、スマートフォン、セキュリティカメラ、ウェブカメラ、車、ドローンやその他のソースに設置されるカメラのような何百万ものソースからライブ動画データの膨大な量を取得できます。Amazon Kinesis Video Streams を使用すると、ライブおよびオンデマンド視聴のために動画を再生し、Amazon Rekognition Video と ML フレームワーク用のライブラリとの統合を通じて、コンピュータービジョンと動画分析を活用するアプリケーションをすばやく構築できます。また、オーディオデータ、熱画像、深度データ、RADAR データなどの多くの時刻シリアル化された非ビデオデータも送信できます。

Amazon Kinesis Video Streams with WebRTC

Amazon Kinesis Video Streams with WebRTC は、標準に準拠した WebRTC をフルマネージド機能として実装しています。Amazon Kinesis Video Streams with WebRTC を使用して、メディアを安全にライブストリーミングしたり、カメラ IoT デバイスと WebRTC 準拠のモバイルプレーヤーやウェブプレーヤー間で、双方向のオーディオ対話やビデオ対話を実行したりできます。フルマネージド機能を実装しているため、アプリケーションとデバイス間でメディアを安全にストリーミングするために、シグナリングサーバーやメディアリレーサーバーなど、WebRTC 関連のクラウドインフラストラクチャを構築、運用、または拡張する必要はありません。Amazon Kinesis Video Streams with WebRTC を使用すると、ライブ peer-to-peer メディアストリーミング、またはカメラ IoT デバイス、ウェブブラウザ、モバイルデバイス間のリアルタイムのオーディオまたはビデオインタラクティブのためのアプリケーションを、さまざまなユースケースで簡単に構築できます。

AWS IoT 分析

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

AWS IoT イベント

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

AWS IoT FleetWise

AWS IoT FleetWise は、車両データを収集してほぼリアルタイムでクラウドに転送するために使用できるマネージドサービスです。を使用すると AWS IoT FleetWise、さまざまなプロトコルやデータ形式を使用する車両から簡単にデータを収集して整理できます。 AWS IoT FleetWise は、低レベルのメッセージを人間が読める値に変換し、データ分析のためにクラウド内のデータ形式を標準化するのに役立ちます。また、データ収集スキームを定義して、車両で収集するデータとクラウドに転送するタイミングを制御することもできます。

AWS IoT SiteWise

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

AWS IoT TwinMaker

AWS IoT TwinMaker は、物理システムとデジタルシステムの運用上のデジタルツインを構築します。 は、さまざまな実世界のセンサー、カメラ、エンタープライズアプリケーションの測定値と分析を使用してデジタルビジュアライゼーション AWS IoT TwinMaker を作成し、物理的な工場、建物、または産業プラントを追跡するのに役立ちます。実際のデータを使用して、オペレーションのモニタリング、エラーの診断と修正、およびオペレーションの最適化を行うことができます。

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 プロトコルを直接使用するか、MQTT over WebSocket を使用してパブリッシュおよびサブスクライブできます。 AWS IoT がサポートするプロトコルの詳細については、デバイス通信プロトコル を参照してください。デバイスおよびクライアントは、HTTP REST インターフェイスを使用して、メッセージをブローカーにデータを発行することもできます。

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

AWS IoT Core for LoRaWAN

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

ルールエンジン

ルールエンジンは、ストレージと追加処理のために、メッセージブローカーから他の AWS IoT サービスにデータを接続します。例えば、DynamoDB テーブルを挿入、更新、または照会したり、Rules エンジンで定義した式に基づいて 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 Token の検証や OAuth プロバイダーのコールアウトなど、さまざまな認証戦略を実装できます。MQTT オペレーションを認証するためにデバイスゲートウェイが使用するポリシー文書を戻す必要があります。詳細については、「カスタム認証と認可」を参照してください。

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

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

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

グループレジストリ

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

ジョブサービス

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

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

[Registry]

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

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

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

AWS IoT Core データサービス

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

デバイスシャドウ

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

Device Shadow サービス

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

AWS IoT Core サポートサービス

の Amazon Sidewalk 統合 AWS IoT Core

Amazon Sidewalk は、接続オプションを改善してデバイスの連携を改善する共有ネットワークです。Amazon Sidewalk は、ペットや貴重品を探すデバイス、スマートホームセキュリティと照明制御を提供するデバイス、家電製品やツールのリモート診断を提供するデバイスなど、お客様のさまざまなデバイスをサポートしています。の Amazon Sidewalk 統合 AWS IoT Core により、デバイスメーカーは Sidewalk デバイスフリートを AWS IoT クラウドに追加できます。

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