リチウムイオン電池のコントローラ(IP5306)が搭載されているTTGO T-Cameraですが、回路図をみるとD4というダイオードが入っていて電池からIP5306に向かってしか電流が流れないので、一見充電できないように見えます。
しかし、よくみるとこれ、「2A FUSE」と書いてあります。つまり、フットプリント流用のためにダイオードのシンボルになっているようです。さらに、その右下を見ると分圧回路があり、電池の電圧がESP32で確認できるようです。そこで、電池の電圧をモニターしつつ、LiPOをつないでみることにしました。つないだのは手持ちのトイドローン用の500mAhのものをコネクタを付け替えたものです。
ソフトウェアは表示画面に3ページ目を追加してモニターするようにしてみました。
void drawFrame3(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t x, int16_t y) { #define AVE 32 static String Item1, Item2, Item3, Item4; static uint64_t lastMs; static unsigned int ms; static long rd[AVE] , sum; static int idx = 0; if (millis() - lastMs > 50) { lastMs = millis(); ms = millis(); rd[idx++] = (long)analogRead(35); if(idx==AVE) idx=0; sum = 0; for(int i=0;i<AVE;i++){ sum += rd[i]; } float volt = (long)sum/AVE * 3300. / 4096. * 2. ; Item1 = "TIME: " + String((float)ms/1000.) + "s"; Item2 = "BATT: " + String(volt/1000.) + "V"; Item3 = "Item3:" + String(0); Item4 = "Item4:" + String(0); } display->setFont(ArialMT_Plain_10); display->setTextAlignment(TEXT_ALIGN_LEFT); display->drawString(0 + x, 0 + y, Item1); display->drawString(0 + x, 10 + y, Item2); display->drawString(0 + x, 20 + y, Item3); display->drawString(0 + x, 30 + y, Item4); } FrameCallback frames[] = {drawFrame1, drawFrame2, drawFrame3}; #define FRAMES_SIZE (sizeof(frames) / sizeof(frames[0]))
単純にIO35の電圧を読んだだけでは高インピーダンスで外部/内部のノイズの影響を受けているのか、スッチングノイズを拾っているのかわかりませんが、かなりブレがあります。本来ならまずはR43にコンデンサを抱かせたいところですが、面倒なので50ms周期で32回の平均を取っています。(1005のコンデンサなんて手持ちにないし・・・。そもそもESP32のADCの入力インピーダンスってどのくらいなんでしょうね。100kΩでは大きすぎるのかも?)
一方、充電電流を見てみると、PCにつないだ場合には入力側で0.4Aくらいでしたので、電池への充電電流もせいぜい0.5Aくらいで1C程度ということで問題ない範囲(本当はもう少し減らしたい)かと思ったのですが、Ankerのモバイルバッテリーにつないだところ、0.8Aくらい流れていて2C近い電流が流れてしまうようです。IP5306の中国語のデータシート(こちらの通販サイト?にあるもの)を見ると、最大1Aで充電するようですので、ちょっとまずいかもしれません。データシートをみても充電電流を調整する方法はなさそうです。
バッテリーで動作するWiFi IPカメラというのも悪くないですし、どうしたもんでしょうね。
通りすがりにお邪魔します。
年始にT-CAMERAを入手し、PIRセンサを使ったセキュリティカメラやタイムラプスカメラにトライするために、ドローン用LiPO電池(750mah)をつないで電圧モニターの実装の参考を探していて、ここの記事を見つけました。
1年前の記事ですがいくつか質問させてください。
回路図はどこで手に入れられますか?
IP5306は充電制御をしてますが、放電制御はできてますか?
T-CAMERAでLiPO電池の過放電を防ぐにはどうしたらよいかアイデアはありますか?
通りすがりで沢山質問をしてしまい申し訳ないです。
よろしくお願いいたします。
#ケースはナイスですね。欲しくなります。
回路図は確か、
https://github.com/LilyGO/ESP32-Camera
にある、ov2640_v1.3.pdfだったかと思います。
中華な製品は「製品名 schematic」でググると結構見つかります。
放電制御はIP5306のデータシートの最後に2.5Vとか何か記載があるので、これかと今の今まで思ってたのですが、これはよく見ると推奨ICですね。なので特に何もしてなかったことになります。
数回しかテストしなかった(結局電池無しで使っている)のでよく覚えてないのですが、そんなに深いところまで放電せずに止まっていた気がします。