M5StickCバッテリーライフ検証 その4

現時点の情報です。最新情報はM5StickC非公式日本語リファレンスを確認してみてください。

概要

前回に引き続き、バッテリー駆動時間の計測をしてみました。

ディープスリープ

#include <M5StickC.h>
void setup() {
  setCpuFrequencyMhz(240);
  M5.begin();
  M5.Axp.ScreenBreath(12);
  M5.Lcd.fillScreen(WHITE);
  Serial2.begin(115200, SERIAL_8N1, 0, 26);
  Serial2.println(M5.Axp.GetBatVoltage());
  // 画面を消す
  M5.Axp.ScreenBreath(0);
  // 60000000us = 60sのタイマー設定
  esp_sleep_enable_timer_wakeup(60000000);
 
  // ディープスリープ
  esp_deep_sleep_start();
}
void loop() {
}
条件動作時間
1分間隔タイマー10.5
5分間隔タイマー12.3117%

上記のコードだと半日しかバッテリーが持ちませんでした。1分と5分であまり動作時間に変わりがないのでCPU動作よりも、他の要因でバッテリーがなくなっていると推測することができます。

おそらく画面だけ一番暗くしていますが、AXP192が動いたままなのが原因な気がしますが未検証です。

AXP192側の条件を変えた検証を今後したいと思いますが、現状のバージョンだとAXP192クラスの動きがおかしいので、そこから検証しないといけない気もします。。。

まとめ

予想以上に長期稼働は難しそうに思えました。

ただ「M5StickCの消費電流 その2」で電源オフと、タイマーでのディープスリープで4.5mAの差があったので、80mAhのバッテリーだと長くても17時間程度しか動かないことになります。

タイマー起動だと、ESP32には電源供給せずにAXP192上のタイマーだけで管理したほうが省電力になりそうです。ちょっとAXP192のデータシート見直して、実験計画を組み直したいと思います。

これとは別に自然放電も測定していますが、一時間で0.02ボルトぐらい低下していますので、数日はもちそうです。

ただ、実験時間が長くなりすぎたので、データの取りまとめはしたいと思いますが、中国から取寄中の電流計を使った、消費電流測定を今後行っていきたいと思います。

続編

コメント