「RPZ-IR-Sensor」を用いてAWS IoT Coreでセンサデータの可視化

<h5>説明</h5>

RPZ-IR-Sensorはなかなか優秀なので、今回はRPZ-IR-Sensorを使用して、AWS IoT Coreでセンサデータの可視化を構築しました。
細かい説明を書いておりませんが、イメージを理解いただかなければと思います。

文章

<h5>必要な知識</h5>

１、IoT Core モノリソースの作成方法
２、IoT Core  ポリシーの作成方法
３、IoT Core ルール設定の方法
４、IoT SQLリファレンス
５、IoT Device Shadow
６、DynamDBテーブルの作成方法
７、Amazon SNSトピックの作成方法


<h5>アーキテクチャ</h5>

![IoT_AWS-Architecture.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/63747764-13e2-a1fd-dd41-0b3da5564ce3.jpeg)

<h5>（１）環境センサ「RPZ-IR-Sensor」のセットアップ</h5>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/2b3d4521-88eb-d777-72ae-f19451eac1f6.png)


<h5>（２）AWS IoT ポリシーの作成<h5>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/67a3e99a-cf41-997b-e4f8-7bd16996859f.png)

<h5>（３）AWS IoT モノの作成<h5>

<h6>１、モノの登録</h6>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/46e8ce05-fe95-a13c-32e6-152c3f986a8d.png)


<h6>２、証明書の作成</h6>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/5e723d05-fb27-ae48-3535-2c58a21af259.png)


Raspberry PiにルートCA証明書のダウンロード

```
cd ~/{your folder}/certs/
wget https://www.amazontrust.com/repository/AmazonRootCA1.pem -O AmazonRootCA1.pem

```


<h5>（４）Device SDKを使ったセンサ記録の起動</h5>

```
#エンドポイントの取得するには、以下のコマンドで実行します。
aws iot describe-endpoint --endpoint-type iot:Data-ATS
```

ターミナルで以下のコマンドでを実行し、デバイスを起動します。
コマンドのうち {thingname} と {your-endpoint} は事前にメモした内容に置き換えます。

```
cd ~/{your folder}/python3 device_main.py --device_name {thingname} --endpoint {your-endpoint}
```

上記コマンドを実行すると、以下のような結果が返ってきます。 この一番下のは topicです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/d0b58e49-0e76-083e-996f-1dbfdcda4b2c.png)


このトピック "data/temp_humi_press_bruce_20230626" は、デバイスから送信されるセンサーデータとアクチュエーターの制御情報に関連するトピックです。デバイスがセンサーデータや制御情報をパブリッシュする際に、このトピックを使用してメッセージを送信します。他のアプリケーションやクラウドサービスは、このトピックをサブスクライブすることでデバイスからのデータや制御情報を受け取ることが 

<h5>（５）Amazon OpenSearch Service を利用してデータを可視化する</h5>

<h6>１、CloudFormationの作成</h6>

Amazon OpenSearch Service を利用してデータを可視化するため、OpenSearch Service のドメインの作成を行います。 また、AWS IoT Core から Amazon OpenSearch Service にデータを転送するためのルールを作成します。 リソースの作成は AWS CloudFormation を用いて行います。


<h6>２、OpenSearch ダッシュボード の設定</h6>

デバイスからのデータを可視化するために OpenSearch ダッシュボード を用います。 OpenSearch ダッシュボード上でグラフを作成していきます。

OpenSearch Dashboards の URL を開きます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/62916b36-8a03-299e-d90c-5a075a5b5afa.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/43efbf03-b1d7-0e2b-cdde-70af6abfa644.png)


Index pattern の設定

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/1894db37-79bf-626c-2962-11d8fdd26985.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/ffa93251-8881-4cb4-1c03-a0cdf437826a.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/193b0ee8-3994-b3ad-5afa-3941ef241262.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/0dcc0158-b375-49f4-093b-27c1aeab20e1.png)

Index Pattern の確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/2696fb8c-b67c-45a7-917e-8195eefcbe72.png)

データの確認

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/bb5e2354-9c14-a8f7-9305-6afc418f3ef7.png)

グラフの作成

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/d04b587a-5436-2773-fdb2-2e76b2bbe0b8.png)

グラフの設定

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/ea850704-1318-edab-28d0-8100d825631d.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/2693689a-fc79-8d80-8bc9-460b1da3baab.png)

グラフの表示

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3007201/6517a4af-6e78-08d7-cd7b-e4a931288650.png)




参考資料

BME280センサーとRaspberry Piで気温、湿度、気圧を測定する
https://www.indoorcorgielec.com/resources/raspberry-pi/cgsensor-bme280/