ブログパーツ レンタルCGI
TAKAさんの毎日が発見・ブログ
アマチュア無線の機器製作を中心にした日常の活動記録です (by Taka JA2GRC、このブログはFC2_BLOGを使わせていただいてます。)
≪09月   2017年10月   11月≫
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  
ESP8266・その9・省電力化
 IoT機器に必須の省電力化を試してみました。
 省電力化のポイントはESP8266本体のDeep Sleep Mode 移行と、外部接続機器(ここではBMP180気圧センサー)の測定時のみ通電という手法です。

 ESP8266本体は結構電力を食うので、定期的な測定時以外はDeep Sleep Mode に移行させると、消費電流が10μA程度まで下がるようです。 今まで、電池で駆動なんて事をやる必要がなかったので、余り気にしていなかったのですが、ESP8266となると通信が無線になり自由度が上がりますので、当然電池で駆動と言う事もあり得る訳です。 そんなんで、勉強がてら試してみました。

 また、今回使ったセンサーは、最大でも1mAも使わない物なんですが、究極の省電力と言う時には、この部分も対応する必要が有るでしょうから、こちらの測定時のみ通電するという方法も勉強の為試してみました。

 さて、まずはDeep Sleep Modeのテストです。 プログラムの方はサンプルスケッチを参考にそのままコーディングしてみました。 一方、ハードの方も追加が必要みたいで、Deep Sleep Mode から復帰する時にD16端子がLowに落ちるみたいで、このD16端子をRST端子に接続しておかなければならないみたいです。 パソコンみたいにチップの中でDeep Sleep Mode から復帰できる仕組みになっているのではないのですね。 要は外付けで、チップ自体をリセットしてしまう仕組みなんですね。 プロセッサに繋がっているIO機器も電源入れた時と同じ動作になってしまうみたいです。 履歴の必要な機器などは、その辺りを上手くプログラミングしておかないと駄目なようですね。 通常では上手く動くプログラムが、必ずしもDeep Sleep Mode deha動くとは限らないみたいです。

160906_esp8266_40.jpg

 Deep Sleep Mode から復帰する時のD16・RST端子と、たまたまセンサー電源として使っていたD13端子の信号レベルを見てみました。 D13端子は起動してから350mSほどONになっています。 これは下の方で試した、センサーの電源ON時間です。 ちょうど時間ゼロのところで、D16・RST端子に細いパルスが出ていますが、これが、Deep Sleep Mode から復帰する時のリセット信号みたいです。 それに先立つ430mSほど前にD13端子が中間レベルになっているのは、チップ内部でリセットが掛かって、D13端子が入力モード(リセット状態)になっているのだと思います。 このタイミングで内部的なリセットが掛かっているみたいですね。 そして、D16・RST端子に出ている信号は1.7μS程の細いパルスですね。 しかも完全にゼロまで落ちきって居ない信号ですね。

160906_esp8266_41.jpg

 今回のテストに使ったスケッチは、今までIoTクラウドサーバーへのアップローダーに使ったスケッチです。 1分周期で測定したBMP180の温度・気圧データを4つのサービスにアップロードする物です。 サーバー側のステータス確認などで、結構時間を食っているみたいで、センサー測定と、4つのサーバーへのアップロードを合わせて約35秒も掛かっています。 従ってスリープ期間は25秒で、この場合は42%程の削減効果で、それ程省エネ効果はありませんが、実際には、4つも同時にアップロードする事はないでしょうし、1分ごと計測というのもかなり希なケースかも知れません。 そう言う意味では、やはり、この方法は省エネ効果がありそうですね。

160906_esp8266_42.jpg

 続いて、センサーの電源を測定時のみONにする方法を試してみました。 通常の電源の替わりに、ESP8266の出力端子を電源替わりに使う方法みたいです。 小電流のセンサーなら、ESP8266の出力端子からの流れ出し電流でまかなえると言う事みたいです。 LEDなどの点灯が大丈夫ですので、CMOSタイプのセンサーなら大丈夫なんでしょう。 ESP8266のデータシートをざっと見てみましたが、この流れ出し電流に関する規定は見あたりませんでしたね。 一方、センサー側の電源投入からの立ち上がり時間ですが、これも、BMP180のデータシートには見あたりませんでした。 内部でマイコンを使っているでしょうから、通常は数十クロックぐらいで立ち上がるのでしょうかね? mSオーダーの時間を空ければ大丈夫なのかも知れません。

160906_esp8266_43.jpg

 実際の電源供給状況はこんな感じです。 もうちょっと短くても良いでしょうが、デバッグ用のシリアル出力ルーチンなどが入っているので結構時間が掛かっています。 まあ、それでも、60秒ごとに350mSですから、まあ、ほんの僅かですね。 元々、最大でも1mA以下の電流ですが、こちらの方はかなりの省エネ化が出来そうですね。

160906_esp8266_44.jpg
コメント
この記事へのコメント
URL :
コメント :
パスワード :
管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
Template designed by アクセラと+αな生活

Powered by まとめ .