ホーム > カテゴリ > ロボット・電子工作・マイコン >

Deep-Sleepを使用して消費電力を「10uA」に抑える [ESP-WROOM-02]

ESP-WROOM-02の消費電力は最大で170mAぐらいですが、Deep Sleepモードにすると消費電力が「10uA」に抑える事が可能です。

一定時間毎にセンサーで何かしらの値を読み取って、WifiのWeb経由(HTTP)でその値を送信する際などに有効です。

ESP-WROOM-02が初めての方はESP-WROOM-02にArduinoのスケッチを書き込む [配線図/GPIO]をご覧ください。

配線図

実行用配線の「IO16」と「RST」をジャンパーワイヤーで接続します。

スケッチ(プログラム)

#include <ESP8266WiFi.h>

void setup() {
  Serial.begin(115200);
    
  Serial.println("");
  Serial.println("Start : Deep Sleep");
  // 10秒間、ディープスリープを実行する
  ESP.deepSleep(10 * 1000 * 1000 , WAKE_RF_DEFAULT);
  // ※このdelayがないと、発動しない場合があります。
  delay(1000);
}

void loop() {

}

※Deep-Sleepの待機後は、必ず再起動されてsetup()から開始する。

ESP.deepSleep(uint32_t, WakeMode)

引数内容
第一Deep-Sleepで待機する時間を指定する。(μ秒単位)
※最大待機時間は71.5分(4294967295/1000/1000/60)
第二WakeModeを指定する。(省略した場合はWAKE_RF_DEFAULT)

WAKE_RF_DEFAULT = RF_DEFAULTRF_CAL or not after deep-sleep wake up, depends on init data byte 108.
WAKE_RFCAL = RF_CALRF_CAL after deep-sleep wake up, there will be large current.
WAKE_NO_RFCAL = RF_NO_CALno RF_CAL after deep-sleep wake up, there will only be small current.
WAKE_RF_DISABLED = RF_DISABLEDdisable RF after deep-sleep wake up, just like modem sleep, there will be the smallest current.

実行例

※文字化けの部分は、ESP-WROOM-02固有(デフォルト)のゴミです。

以上です。





掲示板

ArduinoやRaspberry Piなどの電子工作の掲示板を作成しました。質問やわからない事は電子工作 (Arduino・ラズパイ等)でユーザー同士で情報を共有して下さい。

関連記事



公開日:2017年04月24日 最終更新日:2017年05月05日
記事NO:02336


この記事を書いた人

💻 ITスキル・経験
サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。

画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ
プチモンテ代表、アーティスト名:プチモンテ
🎵 音楽制作
BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は叙情詩、叙情的な楽曲が多い。楽曲制作は2023年12月中旬 ~

オリジナル曲を始めました✨

YouTubeで各楽曲を公開しています🌈
https://www.youtube.com/@petitmonte

【男性ボーカル】DA・KA・RA | 新たな明日が風と共に訪れる

【男性、女性ボーカル】時空を超越する先に | 時空と風の交響曲

【女性、男性ボーカル】絆 | 穏やかな心に奏でる旋律