今日はローカルの温度や湿度などの環境データをGoogle Cloud Platform(cloud)へ保存して、そのデータを集計や可視化を行いましたのでその内容を書いていきます。

データの収集

僕の作業机の上で、温度や湿度などのデータを10分毎に収集しています。

M5stickというデバイスでcloudへデータをhttp通信で送信を行います。センサーはm5stackの「M5Stack用BME688搭載環境センサユニット」というデバイスを利用しています。

動画では定期起動テスト用に約10秒毎に自動的に起動して、データを収集している状況を撮影しています。

cloudでの収集と描画

デバイスから集めたデータをGCPのCloud Runで、データの検証とBigQueryへ保存を行っています。

ローカルデバイスからCloud Runへ通信する際は、最低限のセキュリティを考慮してCloud Armorを利用してアクセス制御を行っています。ただ、現在は最低限のセキュリティ対策なだけで実運用を行う場合にはグループを作成し通信を行うデバイスはグループの中から代表デバイス1台で行う方が良さそうでした。

こちらはBigQueryに実際にデータが入ってきたのを確認しているときの画像です。

僕の作業台はあまり環境の変化はありませんが、それでも少しづつの変化を確認できます。

こちらはLooker Studioでデータを可視化しスマホで確認したときの画像です。まだデータが少ないですがローカルからデータを読み取り、cloudに通信で飛ばして可視化するところまでを行ったのは初めてだったので良い体験でした。

今後はセンサーの種類をもっと増加させたり、センサー値の閾値超過を検知してロボットアームの自動制御など行っていきます。