Blynkで環境ログ(データの蓄積利用)Blynkの使用例では、IoTデバイスを対話的に操作する例が多いですが、ここではThingSpeakを利用するアプリケーションと同様に、計測データをIoTプラットフォーム(この場合はBlynkサーバー)に蓄積して、現時点のIoTデバイスの計測値ではなく、サーバーに蓄積された計測値の継時変化を表示するためのスケッチを示します。この方法では、IoTデバイスはBlynkサーバーにデータを送る時だけ稼働していればいいので、BlynkでもIoTデバイスをスリープさせて継続的に稼働状態にしておく必要はなくなります。このような方法を利用すると、IoTデバイスの電力使用量を抑えて、電池等での運用期間を延ばしたり、IoTデバイスの発熱による計測値の誤差の増大を防ぐことができます。IoTデバイスがほとんどの期間眠りこけているので、スマートフォンからIoTデバイスの対話的な操作はできなくなりますが。スマートフォンのBlynkアプリスマートフォンの画面は上記の通り。夏の暑さに体が慣れて、この程度ではまあ大丈夫。動くと汗がうっすらと出ますね。明るさのグラフが、朝の夜明けから順調に上がっていますが、一時ガクンと落ちました。グラフを見てどうしたんだろうと思って確認すると、一時的に空に雲がかかって心もち暗くなっていました。人間はあまり意識していなくても、明るさの数値的なものとかは時々刻々と大きく変化しているんですね。環境センサーBME280の利用法は以下のページをご参照ください。Graphでサーバーからデータを取得して時間的な変化をグラフ化します。;}このスケッチは、PUSH型のIoTデバイスとなっており、スマートフォンのBlynkアプリの実行の有無にかかわらず、指定した間隔で環境データをBlynkサーバーに送信します。このため、スマートフォンBlynkアプリが実行されていなかった機関の計測データも含めていつでも参照することができます。上記の例では、ESP-WROOM-02が継続稼働するため、発熱による温度等の計測エラーが問題になります。ESP-WROOM-02の発熱を抑えて温度等の計測精度を向上させたり、IoTデバイスの使用電力を削減するために、DeepSleapを使用して、間欠的に動作して計測データをBlynkサーバーに送ります。このため、スマートフォンのBlynkアプリから見ると、基本的にIoTデバイスはスリープによってオフラインとなります。このスケッチを実行する際には、DeepSleepから復帰できるように、ESP8266-LEAF-R5のD16端子とRST端子を1KΩ程度の抵抗で接続してください。