ESP32の電源をどうするか、それが問題だ(リポバッテリー1s案)
そろそろフィールドテストを行う段階が近くなって来ましたので、ESP32を持ち歩いて使う準備をしなければなりません。
出来れば小型薄型で、安定して長持ちであって欲しい訳ですが、、
一応要件をまとめておきます。
・ウェアラブルくらいに超薄型、若しくは超小型の電源
・BLE-MESHとGPS、WiFiの併用に十分に耐えられる電流量
・丸一日程度の連続動作
・コストが安い事
身に着ける感覚で動作させたいので、電池の類は多分難しい。
小型で出力と容量が大きく安価な電源となるとやはりリポバッテリーが良いと思います。
取り扱いには気を付けなくてはいけない様ですが、、
小さなリポバッテリーのパッケージがどのくらいの強度かは、ちょっと怖くて検証できませんが、箱で囲ってしまえばそれほど危険は無い気がします。
ESP32でリポバッテリー(LiPo)を使うには
さてリポバッテリーですが、3.7Vという事で広く知られておりますが、充電すると4Vを軽く超えてきます。
また、過放電でもバッテリー自体が終わってしまうので、ESP32に1セルで給電する場合、電池が空にならない様にする工夫も必要でしょう。
ESP32に1セルで供給する場合、満充電では電圧が高すぎますし、過放電で簡単にバッテリーがダメになってしまう。
そういう点でいえば乾電池の様なパッケージの方が余計な事を考えなくて済むので使い易そうですねぇ
しかし電池ではちと重いし嵩張ります。
とりあえずリポバッテリーを使ってみる計画で行こうと思います。
リポバッテリーをESP32に供給できる電圧にする
まずは高い電圧をどうするか、という課題です。
もっと大容量で、且つ高電圧のバッテリーであれば、降圧型の電源モジュールなりを挟めば良い気がします。
しかしリポバッテリーは3.2V~4.2V辺り。
安価な降圧型の電源モジュールの多くは入力に5V程度が必要で、リポバッテリー1セルだけではこの様な電源モジュールを上手く動かせません。
電気ってやっかいですね・・・
じゃあどうするかというと、LDOというものを使うらしいです。
LDOとは、Low DropOutレギュレータの事の様で、、
よく小さい電気仕掛けのオモチャで見かける三端子レギュレータというやつです多分。
NodeMCU-32Sにも搭載されているLDOはUSB5Vからの給電用で、AMS1117 3.3V用という代物。
これによってESP32に3.3Vを給電している様ですが、このAMS1117は電圧のドロップアウトが1.1V~1.3Vもあるらしく
・・・低ドロップアウト・・・?
うん、このAMS1117を使ってリポバッテリーを接続したら、ESP32の動作電圧を軽く下回ってしまいます。
どうしても使うというのであれば、リポバッテリーを直列にして2セル7.4Vとして使うのが正解でしょうか。
しかし2セルは2セルで取り扱いが面倒ですしおすし
というわけでリポ1セルで使えそうな代替のLDOを探しますと、、
■NJM2845(電流800mA ドロップ0.18V)
■NJM2396(電流1.5A ドロップ0.2V)
■ADP3338(電流1A ドロップ0.19V)
■TA48033S(電流1A ドロップ0.3V)
■LM2940T(電流1A ドロップ0.4V)
可変LDOは部品点数が増えそうなので今回は外してあります。
ドロップ電圧で見ると上から3個までが良さそうですね。
ヒートシンク容量を稼ぐためか、表面実装でもこれらのLDOは比較的大きいので、スルーホール型にこだわる必要はなさそうです。
なるべく小さくしたいですので、表面実装のNJM2845かADP3338に絞られて来るのかな。
お値段はNJM2845の方がかなり安いので、ESP32へ電流が足りるのであればNJM2845で良さそうです。
wifi併用時、リセットがかかってしまう様ならADP3338でしょうか。
どちらもとても使いやすそうですので、秋月に行った時にでも調達してみようと思います。
尚、この手のLDOを使う時には、前後にコンデンサを入れるだけで良いみたいです。
部品点数が少なく済みそうで助かりますね
リポバッテリーを過放電から守る
さて次に、リポバッテリーの過放電をどうにかしないといけません。
直ぐに思い浮かぶのは、先日使ってみたESP32のADCによる電圧測定。
リポバッテリーの1セルを想定しているなら分圧するだけでざっくりとバッテリー電圧が計れそうです。
もっとこう自動的な仕組みは無いか考えてみたのですが、、、
例えばLDOが規定電圧以下になったら回路を迂回せず、直結になる様な設計であったら、コンパレータで検知するとか出来そうな気もしますが、多分それは無い気がします。
大体、コンパレータを使った事すら無いですし
というわけでやはり電源を分圧してESP32のADCで計測させ、規定電圧を下回ったら電源を落とす様な回路を組むのがいいかもしれません。
そうすると測定用の分圧抵抗と、電源カット用に電源電圧に耐えるトランジスタかFETが要りますね
自爆回路みたいなものは考えた事がありませんでしたので、ちょっとお勉強が必要かもしれまい
まとめるとわっく
なんかこう、バッテリーとESP32の間に挟むだけでこれらの動作をしてくれる様な、安価なモジュールって無いかしらとふと思う。
仮にあったとしても、一度くらいは自分で組み立てた方が良い気もしますし、なんだか難しいですね
このプロセスこそが電子工作の醍醐味なのでしょう。
勉強する事が山積みで、これは長く楽しめそうです。
ディスカッション
コメント一覧
通りすがりの者です。BLE-Mesh ESP32を検索していて拝見いたしました。当方も BLE-Meshを試してみようと思っていますので 参考になります。
ところで、ESP32のバッテリーを探すのなら、いっそ M5StickCにしたらいかがでしょうか?バッテリー込みでESP32が使用できます。値段も スイッチサイエンスで1500円。(ただし、今見てみたら在庫0みたいですね)当方も3個ほど所有しています。もっとも現在は M5ATOM にハマっています。なんせ小さくて安いので。
M5StickCよさげですよね。
ただ電波をゴリゴリに使いたいので電池容量に不安が、、
プロトタイプはまだバラでもいいかなと思っています。
シングルセンサーならATOMよさげですよね。
なんか色々選択肢があって目移りしてしまうま^^;
DC-DCコンバータ使えばいいだけじゃん?