ESP32C3をバッテリーをつないで何かをしようと思ったのですが、つないだときの扱い?がよく判らないので、充放電の状況を確認してみました。
(注意)バッテリーは扱いを間違えると危険ですので真似をしないでください。本内容はメーカー推奨でない接続で状況を確認しています。本内容を参照して実行することは全て自己責任となります。
目次(クリック)
充放電の確認方法
ESP32C3の裏面にあるバッテリーの+ー端子にバッテリーを接続する際に、+側に1Ωの抵抗を直列に入れました。その1Ωの抵抗の両端を分圧抵抗を介してESP32C3のD0,D1端子のADC入力で電圧測定しました。D0とD1の電位差から電流を計算しました。環境としてはArdiuno IDEを使用して、analogReadMilliVolts()関数で読み取り16回平均しました。なおザックリと動作を知りたいだけなので、誤差は結構あります(1Ωは±5%を使用)。
ESP32C3で測定した電圧と電流を、Bluetooth LE経由で送信しました。スマホ(Android)ではSerial Bluetooth Terminal というアプリで受信してログファイルに保存しました。測定周期は0.1秒としました。
なお、使用したバッテリーは、EEMBリチウムポリマー電池3.7 V 1050 mAh 553454です。speed studioのwikiに掲載されているlitterの750mAは探しましたが見つかりませんでした。
充電を確認した結果
充電を確認した結果は、グラフのとおり。ESP32C3の端子電圧が4.08vになるまでは300数十mAの電流で充電され、それから電圧が上がるにつれ電流が減り、4.1V辺りで20mAまで下がり、それを超えると充電が停止することが判りました。先にも書きましたが誤差は、それなりにあると思います。
放電を確認した結果
充電で使用した電流測定のための1Ωを削除し、放電電圧を測定しました。ここでも測定はESP32C3のADCを使用しています。4.1Vから始まり、3.3Vまでは徐々に下がり、その後は一気に2.9Vまで低下してBluetoothが切断されていました。
なお、測定時間短縮のため、3.3Vと0Vの間に抵抗を入れ、数時間で測定した結果です。
以上ですが、ESP32C3でバッテリーの充放電する様子が、おおよそ判ったので、これからバッテリーを使用したものを作成していきます。