Эта статья посвящена разбору решений по запитке 3,3-вольтовых контроллеров (и их периферии) от литиевых аккумуляторов, напряжение которых меняется в процессе работы от 4,2 В до 3 В и даже ниже, в случае глубокого разряда.
Получить стабильные 3,3 В в этом случае не так-то просто и, кроме этого, задача питания подобной аппаратуры от аккумуляторов выдвигает множество специфических требований, удовлетворить которые тоже непростая задача.
Обо всём этом мы и поговорим далее (решение есть!).
❯ Постановка задачи
Для начала давайте определим требования, которым должно удовлетворять подобное решение. Требования довольно противоречивые, поэтому их трудно учесть в каком-то одном решении (но компании Texas Instruments, похоже, удалось это сделать).
Стабильное напряжение 3,3 В при колебании входного от 4,2 до 3 В (и даже до 2,5 В). Основная сложность тут состоит в том, что входное напряжение может быть как больше, так и меньше выходного и типовые решения UP или DOWN конвертеров не подходят, нужен BUCK-BOOST конвертер.
Энергоэффективность. Поскольку речь идёт о питании от аккумулятора, то решение должно быть энергоэффективным, то есть КПД должен быть более 90% (допускается небольшая просадка в некоторых режимах).
Низкий ток покоя (холостого хода). Конвертер должен обеспечивать низкий ток собственного потребления при отсутствии нагрузки. На мой взгляд, приемлемыми можно считать значения до 50 мкА (судя по даташиту на серию TPS63xxx, инженеры TI тут со мной полностью согласны).
Приличная нагрузочная способность. Конвертер должен обеспечивать приличный ток нагрузки. Мои требования — максимальный ток до 300-400 мА, решения TI обеспечивают токи до 1-3 А.
Это основные требования, кроме них есть ещё множество специфических, наподобие уровня шумов в выходном сигнале, возможность отключения конвертера программным путём, индикация режимов работы и т. п.
❯ Сценарии работы
Меня лично интересуют два сценария работы подобной аппаратуры (у вас могут быть свои требования) и именно по отношению к этим двум сценариям я и буду рассматривать решения TI.
1. Микропотребляющая нода. Это может быть беспроводной датчик, который в основном режиме сна потребляет 5-10 мкА и периодически выходит в эфир, (очень) кратковременно поднимая потребление до 100 мА (например, ATmega328 + nRF24/LoRa). Для этого сценария определяющим является низкий ток покоя конвертера.
2. Функциональная нода. Это может быть модуль ESP8266/ESP32 с передачей данных по Wi-Fi и какими-то дополнительными функциями, или датчик/актуатор, периферия которого может потреблять значительный ток. Здесь на первый план выходит сочетание низкого тока покоя конвертера с его возможностью беспроблемно обеспечивать большой выходной ток в моменты активации периферии (или работы по Wi-Fi).
(Вообще, на этом принципе можно делать какие-то переносные девайсы, наподобие дозиметров или подобного, но эта тема меня пока не особо интересует.)
❯ Серия TPS63xxx
Вообще, существует множество вариантов решения этой проблемы от различных компаний, работающих на различных принципах: UP+DOWN, SEPIC, различные варианты BUCK-BOOST и т. д. В этом смысле серия TPS63xxx от Texas Instruments — это всего лишь один из доступных на рынке вариантов. Возможно не лучший, но после тестирования и практических экспериментов, искать что-то лучшее я не вижу особого смысла — всё, что мне надо там отлично работает.
С практической точки зрения, можно купить сами чипы и развести под них специальные платы (для конечных устройств так и нужно сделать), но для экспериментов и DIY устройств можно сэкономить время и силы и воспользоваться готовыми модулями, которые уже давно разработали и продают наши китайские друзья.
(По принципу: если ты что-то изобрёл, не спеши радоваться — зайди на Али — китайцы это уже придумали, сделали и давно продают.)
На Алиэкспресс доступны модули на основе чипов TPS63000, TPS63020, TPS63030, TPS63070, TPS63802, которые китайцы именуют либо по названию чипа, либо с приставкой «XL»:
XL63000
XL63020
XL63030
XL63070
TPS63802
Это всё вариации на одну тему, с некоторыми различиями как в свойствах микросхем TI, так и в свойствах самих модулей (где-то отдельно выведены контакты включения/выключения чипа, изменения режимов работы, качества выходного напряжения и т. д., а где-то — нет).
Пожалуй, из всего этого стройного ряда выделяется только вариант TPS63070 с входным напряжением до 16 В и напряжением старта 3 В — это может пригодиться в каких-то специфических случаях. Остальные отлично подходят для моих (наших) целей. Для моих уж точно — я не планирую нагружать аккумулятор более, чем на 300-400 мА, даже кратковременно, а ток покоя 50 мкА меня тоже, в принципе, устраивает.
Самым интересным тут выглядит вариант TPS63802 с его 11 мкА тока покоя — насколько грамотно это удалось воплотить китайцам в реальном модуле мы и посмотрим далее.
❯ Модуль TPS63802
Вообще, все эти модули производят неоднозначное впечатление — они сделаны (как бы) в одном дизайне, но при этом имеют разные габариты и разный набор выведенных пинов. То ли разработчики склонны к экспериментированию, то ли эти модули делают разные компании и похожи они только внешне.
Сходу можно сказать, что в реализации модуля TPS63802 допущены как минимум пять косяков:
1. Несовместимость с макетными платами. Прочие модули XL63xxx нормально вставляются в макетные платы, а в TPS63802 приходится НЕ распаивать по одному пину на площадках (чтобы можно было вставить в макетную плату).
2. Отсутствует пин EN. В модуле TPS63802 не выведен пин EN управления его включением/выключением. Для меня это не проблема — я вообще не очень представляю сценарий, когда с контроллеру нужно совершать суицид и самому себе отрубать питание. Но кому-то это может понадобиться.
3. Дорожка EN под микросхемой. Если вы захотите самостоятельно управлять включением TPS63802, то просто так вам не удастся это сделать — придётся отпаять микросхему и уже под ней перерезать дорожку, замыкающую EN на VCC.
4. Светодиод индикации питания. Воистину, дизайн модуля делала ключница — на модуле с 11 мкА тока покоя залудить светодиод индикации питания (!). Это нужно быть совсем «не алё» и похоже, что разработчик вообще был не очень в курсе, что он разрабатывает.
5. Резистор 3К на землю. Светодиода китайскому затейнику показалось мало и он добавил ещё резистор 3К на землю, который постоянно сливает энергию аккумулятора.
Оригинал или подделка?
Всё это неприятные, но несущественные недостатки — при помощи паяльника и прямых рук решаются за несколько минут. За исключением перемычки под микросхемой — чтобы провернуть такую операцию, — нужно иметь хорошую квалификацию в пайке, острый взгляд, твёрдую руку и стальные нервы (смайл). Благо мне лично пин управления включением не нужен.
Итак, удаляем светодиод и резистор (можно выпаять, а можно и выломать — кому как удобнее), замыкаем перемычку PS (Power Saving, те самые вожделенные 11 мкА без нагрузки) и приступаем к практическому тестированию. Теория теорией, но кто знает что там китайские товарищи напаяли?
❯ Ток покоя (холостого хода, без нагрузки)
С током покоя всё просто: замеряем выходное напряжение без нагрузки, которое ожидаемо оказывается 3,32 В и потребляемый модулем ток, который оказывается 35 мкА (по тестеру UNI-T UT61E+). Это конечно не 11 мкА микросхемы TPS63802 из даташита, но довольно неплохо и более чем приемлемо для наших (моих) целей.
Почему 35, а не 11 мкА? Скорее всего лишнюю утечку дают дополнительные элементы на плате, плюс возможна какая-то погрешность при измерении моим тестером (интересно, а сам чип оригинальный?). Но в целом можно сказать, что этот тест модуль прошёл успешно — 35 мкА это не феноменальный, но более, чем приемлемый результат.
❯ Нагрузочный тест
Теперь посмотрим как модуль справляется со своей основной задачей — поддержанием стабильного выходного напряжения при различных нагрузках и с какой эффективностью он это делает.
Сделаем замеры и построим графики зависимости выходного напряжения и эффективности преобразования в зависимости от тока нагрузки. Тестировать я буду на наиболее востребованном и наиболее интересном мне диапазоне токов от 0 до 0,5 A.
А сами серии тестов проведём для (наиболее актуальных и информативных с точки зрения работы с литиевыми аккумуляторами) диапазонов 4,2/3,6/3,0 вольт входного напряжения.
Нагружаем модуль и проводим замеры входных и выходных напряжений и токов и вычисляем реальную эффективность преобразования.
По численному представлению информации трудно понять как ведёт себя модуль. Для наглядности сведём все эти данные и построим график зависимости выходного напряжения модуля TPS63802 от нагрузки при различных уровнях входного напряжения (характерных для литиевых аккумуляторов).
Из этого графика можно сделать вывод, что модулю вообще без разницы какое напряжение у него на входе — графики линий для 4,2/3,6/3,0 В практически слились в одну. Причём для 4,2 и 3,6 В модуль работает как понижающий, а для 3,0 — как повышающий. Это хорошо, но хуже то, что линия имеет явный наклон и пересекает «психологическую» черту в 3,0 В где-то в районе 500 мА нагрузки и уходит в «маргинальную» область напряжений менее 3 В.
Кстати, TI по какой-то причине не указывает в своих даташитах на серию TPS63xxx графики зависимости выходного напряжения от выходных токов, одни из самых важных, на мой взгляд (стесняется?).
Единственный подобный график от производителя, который мне удалось раскопать — это график для модели TPS63031 и он существенно отличается от полученного мной в реальности.
Чего стесняется TI и почему угол наклона в реальности значительно больше «теоретического» я сказать не могу — возможно дело в методике измерений и используемых инструментах, возможно дело в схемотехнике модуля TPS63802, а возможно в модуле стоит китайский клон TPS63802. И совсем крамольная мысль: поскольку в официальном даташите на TPS63802 нет этого графика — то может он такой кривой и должен быть? (смайл)
Но в любом случае, поскольку лично меня интересуют интервалы от нуля до 400 мА нагрузки при выходном напряжении от 3,3 до 3,0 вольт, то лично меня этот модуль устраивает, а тем, кому нужно больше, можно поглубже покопать эту тему (и сообщить нам о результатах своих изысканий).
Эффективность
Ок, теперь переходим к анализу энергоэффективности модуля TPS63802. Для начала график от производителя, видимо полученный на рефренсном дизайне платы, с рефренсной обвязкой чипа TPS63802, измеренный на рефренсной измерительной аппаратуре инженером TI высшей квалификации.
График из даташита — одно загляденье, но в реальности я наблюдаю несколько иную картину: с ростом нагрузки эффективность падает, но в заветном диапазоне 0-300 мА всё ещё «телепается» в районе более-менее приличных 80%. Причём тут уже видно расслоение графиков в зависимости от входного напряжения — чем ниже входное напряжение тем «труднее» модулю работать и тем меньшую эффективность он демонстрирует.
Аберрации и аномалии в районе нуля — это следствие погрешности измерений. Кстати, в процессе работы с модулем TPS63802 я заметил ещё одну его неприятную особенность: он демонстрирует своего рода «нереентерабельность» — в зависимости от внешних воздействий может впадать в некие устойчивые состояния, которые не нормализуются без полного его обесточивания и ожидания разрядки подключённых ёмкостей — это может сыграть злую шутку, например, когда выходной ток кратковременно превысит допустимый предел, а после этого модуль уже не восстановит нормальную работу. Этот момент нужно учитывать при проектировании устройств на модуле TPS63802 (а возможно и на чипе TPS63802).
❯ Уровень шумов
Уровень шумов в выходном напряжении — это тоже важный параметр, поэтому проведём замеры его в разных режимах работы модуля. Без нагрузки модуль выдаёт шумы в виде пилы амплитудой около 40 мВ. Не сказать, что мало, но и не сказать, что уж очень много.
При добавлении выходного электролитического конденсатора положение значительно улучшается и основная масса шумов укладывается в 20 мВ (с небольшими всплесками до 30 мВ).
Под нагрузкой пульсации возрастают аж до 90 мВ, что явно многовато (хотя на практике, я протестировал, — контроллеры работают с таким питанием без проблем).
Добавление электролитического конденсатора на выход модуля снижает уровень шумов до более-менее приемлемых 40 мВ (если при уровне шумов 90 мВ всё работает нормально, то при 40 мВ уж подавно проблем не будет).
Из этого можно сделать вывод, что и по этому параметру модуль TPS63802 проходит тест, рекомендуется только добавить конденсатор на его выход.
❯ Итого
Из всего вышеизложенного можно сделать вывод, что модуль TPS63802, несмотря на некоторые недостатки, вполне подходит для создания энергоэффективных устройств на микроконтроллерах, работающих от литиевых аккумуляторов. Это могут быть беспроводные датчики, устройства на ESP8266/ESP32, а также различные носимые девайсы, наподобие дозиметров и прочего подобного.
Мне лично модуль понравился — он (легко и просто) закрывает целый пласт проблем по питанию от литиевых аккумуляторов. Но совершенство недостижимо и если вы знаете лучшие решения — делитесь ими в комментах — это всем будет полезно.