本 Howto では、Armadillo-IoT G4 で物体認識プログラムを動作させ、AWS の各サービスを利用し物体認識結果を分析する方法を紹介します。
AWS IoT Core への接続には、Armadillo-IoT G4 に搭載されたセキュアエレメントである SE050 にプリインストールされた X.509証明書を使用します。SE050 は ハードウェア Root of Trust による高いセキュリティを実現でき、使用する証明書やリファレンスキーは SE050チップと紐づくので、漏洩が脆弱性につながるリスクは小さくなります。また、アットマークテクノが提供するパッケージを用いることで、SE050 から証明書やリファレンスキーを取得することも可能です。
Armadillo-IoT G4 で実行した物体認識結果は AWS のデータベースサービス (本 Howto では Amazon RDS) に格納されます。今回は格納した物体認識結果を、BIサービスである Amazon QuickSight を用いて可視化し、分析を行います。このように、Armadillo-IoT G4 で取得したデータをクラウドと連携することにより、データの収集・管理・分析を行い、データに価値を持たせることができます。また、本 Howto で紹介しているもの以外の AWSサービスとも連携し、様々なサービスを構築することが可能となります。
本 Howto の構成は以下です。
設定する項目が多いため、各章で詳細を説明します。
システム構成
以下にシステム構成図を示します。
Armadillo-IoT G4 では Podman を使用して物体認識プログラムが動作するコンテナを作成します。作成したコンテナ上で物体認識プログラムを動かします。物体認識プログラムの役割は3つあります。
- 物体認識結果のうち、指定した物体を検出した場合は検出された物体名とスコアのデバイスシャドウを更新する。
- 指定した物体を検出した場合はパトランプを点灯する。
- 指定した物体を検出した場合はそのときの画像を S3 にアップロードする。
物体認識時は Amazon SNS を使用してユーザに通知されます。また、物体認識結果は Amazon RDS に格納され、Amazon QuickSight を利用して分析します。以下に今回使用する AWS サービスの一覧を記載します。
-
Amazon S3
物体認識プログラムからの画像のアップロードに使用します。 -
Amazon VPC
Amazon RDS の配置に使用します。 -
Amazon RDS
物体認識プログラムの物体認識結果の格納に使用します。 -
Amazon RDS Proxy
Amazon RDS のプロキシとして設定します。 -
Amazon SNS
物体認識時のユーザへの通知に使用します。 -
AWS Lambda
物体認識結果格納用の lambda 関数と、ユーザ通知用の lambda 関数の実装に使用します。 -
Amazon QuickSight(エンタープライズ版)
物体認識結果の分析に使用します。
AWS サービスの個々の設定はAWS サービスセットアップ編で詳しく説明します。
デバイス登録編
SE050 を使用した AWS IoT Core への接続方法について説明します。Armadillo-IoT G4 を用いた物体認識プログラムの動作確認と AWS 各サービスの利用による分析方法 (デバイス登録編)をご確認ください。
G4 セットアップ編
Armadillo-IoT G4 上の物体認識プログラムが動作するコンテナの作成方法について説明します。Armadillo-IoT G4 を用いた物体認識プログラムの動作確認と AWS 各サービスの利用による分析方法 (G4 セットアップ編)をご確認ください。
AWS サービスセットアップ編
各 AWS サービスの設定内容について説明します。 Armadillo-IoT G4 を用いた物体認識プログラムの動作確認と AWS 各サービスの利用による分析方法 (AWS サービスセットアップ編) をご確認ください。
物体認識プログラム動作確認編
物体認識プログラムの起動方法や、分析用の Amazon QuickSight の設定を行います。 Armadillo-IoT G4 を用いた物体認識プログラムの動作確認と AWS 各サービスの利用による分析方法 (物体認識プログラム動作確認編)をご確認ください。