Гайд · Питание · Аккумуляторы
Какой аккумулятор выбрать для ESP32?
Как только проект отвязывается от USB-кабеля, нужен аккумулятор — и его тип определяет размер, время работы, безопасность и цену. Пять перезаряжаемых химий закрывают почти всё, что собирает мейкер: Li-Ion (18650), Li-Po, NiMH, LiFePO4 и свинцово-кислотные. Разберём, в чём каждый силён, как его заряжать и под какой проект он подходит.
Это «аккумуляторная» половина вопроса питания. Про общую картину — розетка, солнце + суперконденсатор, LDO против buck и злополучный brownout — см. как запитать ESP32 и как чинить brownout-перезагрузки.
| Тип | Напряжение | Ёмкость | Циклы | Зарядка | Лучше для |
|---|---|---|---|---|---|
| Li-Ion 18650 | 3.7 В | 2–3.5 А·ч | 300–500 | TP4056 (CC/CV) + BMS | роботы, портатив, IoT |
| Li-Po | 3.7 В | 0.15–10 А·ч | 300–500 | CC/CV + BMS | дроны, носимое, RC |
| NiMH AA/AAA | 1.2 В | 0.6–2.7 А·ч | 500–1000 | простое ЗУ для NiMH | обучение, датчики, пульты |
| LiFePO4 | 3.2 В | 1.5–100 А·ч | 2000–7000 | LiFePO4 CC/CV + баланс | 24/7, солнце, автономка |
| Свинцовый | 12 В | 1.3–100 А·ч | 200–500 | float 13.8–14.4 В | ИБП, солнце, крупные роботы |
1. Li-Ion 18650 — выбор по умолчанию
Ячейка 18650 — рабочая лошадка: 3.7 В номинал (4.2 В при полном заряде), 2000–3500 мА·ч, дёшево и доступно везде, в прочном металлическом корпусе. Лучший универсальный баланс ёмкости, размера и цены для роботов, портативных гаджетов и IoT-узлов. Заряжайте специальным CC/CV-модулем вроде TP4056 и ставьте плату защиты (BMS) от переразряда и КЗ.
2. Li-Po — тонкие, лёгкие, токовитые
Та же литиевая химия 3.7 В в мягком пакете: очень тонкие и лёгкие, от 150 мА·ч до 10 А·ч, отдают большой ток без просадки (20C и выше). Отсюда — дроны и квадрокоптеры, носимая электроника, RC-модели и тонкие корпуса. Минус — хрупкость: пакет можно проколоть или он вздувается, поэтому тоже нужны BMS, правильная CC/CV-зарядка и аккуратность.
3. NiMH (AA / AAA) — просто и безопасно
1.2 В на ячейку, AA около 2000–2700 мА·ч, AAA 600–1200 мА·ч, 500–1000 циклов. Прелесть в простоте: без платы защиты и танцев с зарядкой, куда терпимее к небрежности, чем литий — идеально новичкам, учебным наборам, датчикам, пультам и игрушкам. Нюанс — напряжение: для 5 В-платы берите 4×AA (4.8 В) + повышающий преобразователь (boost); для шины 3.3 В — понижающий (buck).
4. LiFePO4 — химия «спит годами»
Литий-железо-фосфат работает на 3.2 В (заряд до 3.6 В, разряд до 2.5 В) и это самая безопасная литиевая химия — термически стабильная, крайне трудно поджигаемая — с огромным ресурсом 2000–7000+ циклов и широким диапазоном −20…+60 °C. Выбор для всего, что должно работать 24/7 и годами: солнечные станции, автономные датчики, ИБП, удалённые трекеры. Заряжать только «умеющим» LiFePO4 CC/CV-зарядником с балансировкой и никогда выше 3.65 В на ячейку. Бонус: 3.2 В близко к шине 3.3 В ESP, так что одна ячейка + LDO — аккуратное питание.
5. Свинцово-кислотные (SLA, 12 В) — дёшево, тяжело, проверено
Старая классика: 12 В, 1.3–100 А·ч, копеечные и крайне живучие, но тяжёлые и всего 200–500 циклов. Уместны там, где вес не важен, а важна ёмкость — солнечные накопители, ИБП/резерв, крупные роботы и машины, мобильные энергостанции. Заряжать напряжением подзаряда 13.8–14.4 В и избегать глубокого разряда (ниже ~10.5 В) ради ресурса. 12 В понижать до 5/3.3 В buck-преобразователем.
Одно правило, которое спасёт плату
Литиевая ячейка — это 3.7–4.2 В; пин ESP32 — 3.3 В. Никогда не подключайте литиевый аккумулятор напрямую к пину 3.3 В или 5 В. Заряжайте через TP4056 (или BMS-модуль), а плату питайте через регулятор/преобразователь — buck/LDO вниз до 3.3 В или boost вверх от NiMH. Ошибётесь — спалите плату; сделаете правильно — даже проект на одной ячейке работает чисто.
Мониторинг с дашборда
Считать напряжение ячейки — это один ADC-пин и резисторный делитель, а дальше показать шкалой или живым веб-дашбордом:
// Read a Li-Ion cell through a 2:1 divider (two equal resistors) on an ADC pin
const int BAT_PIN = 34; // ADC1 — keeps working with Wi-Fi on
const float DIVIDER = 2.0; // 100k / 100k halves the cell voltage
float readBattery() {
int raw = analogRead(BAT_PIN); // 0..4095
return (raw / 4095.0) * 3.3 * DIVIDER; // pin volts -> cell volts (~4.2 full, ~3.3 empty)
}
int percent(float v) { // rough Li-Ion curve
int p = (v - 3.3) / (4.2 - 3.3) * 100;
return p < 0 ? 0 : (p > 100 ? 100 : p);
} Прокиньте readBattery() и percent() в виджет — и получите тот самый вывод
«Battery: 87% · 3.74 В», который хочет любой автономный проект. (На ESP32 берите пин ADC1
— GPIO32–39: ADC2 недоступен при включённом Wi-Fi.)
Выбор за 30 секунд
ESP32, мобильное или IoT → Li-Ion 18650 или Li-Po. Arduino Nano/Uno, стационарное или учебное → 4×AA NiMH (+ boost) или 18650 + boost. Роботы и всё движущееся → Li-Po, за лёгкость и большой ток. Улица, солнце или «работать годами» → LiFePO4. Большое, дешёвое, вес не важен → свинец. Подгоняйте ёмкость, ток и условия под задачу — правильная ячейка и делает сборку надёжной.
Показывайте заряд %, напряжение и все датчики на живом экране, который отдаёт сам ESP.