温度センサーの値をDynamoDBへ [2015/10/22]

先日(2015年10月8日)発表されたAWS IoTで実践的な使い方を試してみました。

テストケースとしては、
(1)RaspberryPIに温度センサーを設置し、定期的に観測する。
(2)観測したデータを AWS IoTに送信し、DynamoDBに格納する。

-------
■AWS準備
・AWS IoT用のロールを作成。
・DynamoDBのテーブルを作成。
・DynamoDBに格納するルールを作成。
※Hash Key Value と Range Key Valueに「$」をつけないとデータが出ませんでした。

■センサー側準備
・RaspberriPIは「1」のモデルB+。
温度センサー(DS18B20+)は秋葉原の秋月電子通商で買ってきたものです。350円くらいでした。
配線はこちらを参考にさせていただきました。ありがとうございます。
http://deviceplus.jp/hobby/raspberrypi_entry_018/



・python用ライブラリインストール
sudo pip3.5 install boto3
sudo pip3.5 install awscli
aws configure で設定値を入力

■実践
10秒間隔で/sys/bus/w1/devices/28-0000074483f6/w1_slave を参照し値を取得するプログラムをpythonで作成。
測定値をboto3でpublishしていく。


実際にDynamoDBのテーブルに格納されていることを確認


おお!OKそうです。
デバッグがなかなか大変でしたが、CloudWatchにログを出すようにすればスムーズに進みました。
このケースが出来てしまえば他はその応用でいけるかなと思ってます。
後はグラフ表示したり、データ解析したり、PDF出力したりとデータを可視化する部分を作ればよいのですし、そこは依頼者様と相談して画面設計し、HTML5やFlexで作るという流れになるかと思います。