Raspberry Piでセンサネットワークを構築して実際に稼働してみます。今回は、AWS SORACOM編として通信モジュールにSORACOMの3G対応データ通信端末 AK-020を使用してAWSにデータを送信します。この構成で安定して稼働させるにはどういった課題があるか書いてみます。
(※今回はプログラム詳細については取り上げません。こういった構成で稼働試験をやってみますということが要点です。必要な場合はページ最後の関連リンク等を参照して下さい。)
今回の構成
SORACOMのスターターキットを利用しました。
今回はクラウドにAWSを利用します。実際にはセンサデータをS3のテキストファイルとDynamoDBのテーブルに蓄積します。
センサーは、Raspberry Piでセンサネットワーク稼働試験(基本編)構成・課題等と同じで、BME280(温度、湿度、気圧)とtsl2561(照度)です。
今回の構成の特徴
通信環境ですが、Raspberry Piと通信モジュールが一体になっているので電源を入れればそれで通信が可能になりデータ送信を始めます。これは利用者の方の負担が少なくなると思います。但し、通信料が別途必要になります。(もちろんですが、Wi-Fiの場合も一度設定すれば同じWi-Fiの環境では起動すれば通信は可能になります。)屋外での利用や移動しながらの利用等でメリットがあると思います。
クラウド環境はAWSですが、何と言っても総合的なクラウドの代表格です。Raspberry PiからはMQTTでデータを送信しています。データ収集の次の段階もいろいろと構築可能です。但し実際に利用するとなるといろいろな利用方法を習得する必要があります。(※AmbientはIoT専用なのでその意味では分かりやすいと思います。)
稼働状況
今現在で2週間程度ですが問題なく稼働しています。DynamoDBに以下のように蓄積されています。
S3には以下のように蓄積されています。1ファイルに1件のデータが保存されます。
実際にはこれらのデータをさらにAWSでどう利用するかというところですがとりあえずはこのまま稼働してみます。
2018/10/22追記
今現在も無事に動作しています。間違えて電源を切った以外は問題なく動作しています。
2019/12/29追記
稼働を終了しました。稼働しているのを忘れていた状況ですが問題なく稼働していました。今回のような用途では十分に実用性があると思います。
今回の構成での課題
今回の構成はなかなか安定性があると思います。課題となると、Raspberry Pi 1台ごとに通信端末が必要となってくるので複数台の場合はコストがかかるということでしょうか。AWSの方ですが今回の場合はDBとファイルにデータを蓄積するだけでグラフ表示はありません。実務ではこのグラフ等も含めて最終的なエンドユーザには利用が簡単で分かりやすくなるように構築する必要があると思います。
関連リンク
Raspberry Pi を AWS IoT に接続する
【AWS IoTルールの基本 その3】メッセージをS3に保存する
【AWS IoTルールの基本 その4】メッセージをDynamoDBに保存する①
Amazon関連リンク