Допустим, нам нужно разработать БП для какого-либо устройства на одном литий-ионном аккумуляторе. Аккумуляторы имеют две основные формы - прямоугольные (плоские) и цилиндрические. Для того, чтобы разработать БП, нам нужно учесть кучу всего:
- Напряжение питания устройства;
- Потребляемый ток;
- Тип зарядного устройства;
- Падение напряжения на стабилизаторе;
- Стабильность напряжения на выходе стабилизатора;
- Пульсации на выходе БП.
Напряжение питания устройства и падение напряжения.
Здесь есть несколько нюансов. Питание МК и периферии может быть от 2.0 до 3.6 вольт, обычно берётся что-то среднее - 2.8 В или 3.3 В. Теперь нужно решить, какое напряжение нам нужно: ровно 3.3 В или, допустим, диапазон 2.8 - 3.3 В. Для каждого из вариантов нам нужны разные стабилизаторы напряжения.
Пусть нам подходит диапазон 2.8 - 3.3 В. Мы можем использовать LDO стабилизатор на 3.3 вольта, LDO - это стабилизаторы с малым падением напряжения, например, LD3985-3.3. Основные параметры, которые нас интересуют:
- Входное напряжение Vin: 2.5-6 В
- Выходное напряжение Vout: 3.3 В
- Максимальный ток: 150 мА
- Падение напряжения Vdo: 0.1 В при максимальной нагрузке.
Есть такие регуляторы, которые тянут при практически тех же параметрах до 1.5 А. Есть ли выше, я не интересовался. Теперь смотрим аккумулятор. Для него 2.8 В - практически полный разряд, полный заряд 4.2 В. Разброс большой, особенно верхняя граница, можно пожечь наш МК.
Подключим на вход стабилизатора аккумулятор, а на выход МК. В этом случае питание на МК при вышеуказанных диапазонах выходного напряжения аккумулятора будет 3.3 В при полном заряде и Vin - Vdo = 2.8 - 0.1 = 2.7 В при полном разряде аккумулятор, что достаточно для работы МК. Ниже 2.8 В аккумулятор уйдёт в защиту, если она на нём предусмотрена.
Если же нам нужно стабильное напряжение 3.3 В, есть два выхода:
- Не доводить разряд аккумулятора до напряжений ниже Vout + Vdo = 3.3 + 0.1 = 3.4 В, чего в некоторых случаях нам хватает, так как аккумулятор считается разряженным при напряжении менее 3.7 В.
- Собрать схему, которая решит эту проблему - будет рассмотрена позже.
Потребляемый ток.
Здесь у нас диапазон от нуля до гигаампер, но для небольших устройств гигаамперы не нужны, поэтому рассматривать этот случай не будем.
При токах от 0 до 300 мА подойдут миниатюрные стабилизаторы, при более высоком токе начинается увеличение размеров корпуса и нагрев. Да и не каждый стабилизатор подойдёт. Например, всеми любимый стабилизатор AMS1117-3.3 имеет следующие характеристики:
- Входное напряжение Vin: 0-15 В
- Выходное напряжение Vout: 3.3 В
- Максимальный ток: 0.8 А
- Падение напряжения Vdo: 1.3 В
В итоге имеем Vout + Vdo = 3.3 + 1.3 = 4.6 В. Так что извините, ардуинщики, любители втыкать эти стабилизаторы, куда не попадя. При максимальном питании STM32 3.6 вольта, от аккумулятора вы его с этой микросхемой не запитаете.
Есть ещё небольшая хитрость. Если управляемая периферия имеет питающее напряжение от 2 до 6 В, чтобы не нагружать стабилизатор, МК можно питать от него, а периферию питать напрямую от аккумулятора. Есть только один момент. Не все устройства, запитанные от напряжения выше, чем МК, будут понимать логические сигналы вашего контроллера. Такое решение обычно подходит для управления обычными светодиодами (через транзистор) и некоторыми адресными светодиодами. Всякие датчики и разная мелочь не так много и жрут, чтобы отделять их питание в отдельную ветку. Сможет ли ваша периферия работать так, как описано, нужно или читать даташиты, или курить мануалы.
Тип зарядного устройства.
Здесь всё просто, если у вас один цилиндрический аккумулятор типоразмера 18650 или плоский, имеющий не более 6000 мА/ч, то возможно простое решение - применить микросхему LTC4054. Она хороша своими мелкими размерами, характеристики и особенности:
- максимальный зарядный ток 600 мА, зарядный ток регулируется резистором;
- выход, замеряя напряжение на котором, мы можем узнать, на каком шаге находится процесс заряда аккумулятора;
- выход на светодиод для индикации окончания заряда;
- сама соблюдает алгоритм заряда.
- Питание от USB или от БП на 5 В, 1 А.
- R2 - задаёт ток заряда.
- CHRG_Test - этот выход можно подключить к АЦП. Чем полнее аккумулятор, тем меньше напряжение на этом выводе.
Далее начинаются некоторые сложности. Есть несколько вариантов включения (цепь заряда не отделена от цепи питания):
Хороша своей простотой и малым количеством деталей. Недостаток - при одновременном заряде и работе устройства, при большом потреблении тока, может нарушиться алгоритм заряда. Придётся менять схему, разделяем цепь заряда и питания:
Если зарядник не подключен, транзистор VT1 открыт и напряжение по цепи VIN поступает на стабилизатор. Если подать напряжение заряда, транзистор VT1 закрывается и на аккумулятор подаётся напряжение заряда, а на стабилизатор у нас подаётся напряжение с зарядного устройства через диод VD1. И у нас опять всё в порядке. Сигналы:
- CHRG_Test - контроль процесса заряда;
- Vbat_Test - контроль разряда аккумулятора. Не стоит применять его как контроль заряда, придётся алгоритм просчитывать. А оно нам надо?
Но есть ещё одна засада. На плоских аккумуляторах всегда стоят контроллеры перезаряда и переразряда, я других не встречал. А вот на цилиндрических не всегда. Говорят, что аккумуляторы с контроллером чуть длиннее, буквально меньше миллиметра, и на плюсовом выводе имеют дырки или отверстия. Кому как нравится. Так что нужно ещё предусматривать контроллер перезаряда/переразряда:
Он стандартный, собран на микросхеме DW01-P и транзисторах FS8205. Точно такие же контроллеры стоят в плоских аккумуляторах. Для круглых она работает так же, независимо от того, стоит внутри у него защита или нет. Так что для плоских аккумуляторов эта надстройка не нужна, для круглых - сами решайте.
Пункты 5 и 6 из списка в начале статьи можно посмотреть в даташите на микросхему, которую хотите использовать. Остались ещё несколько приёмов, от которых зависит мощность и выходное напряжение.
Случай 1. Пусть вам нужно стабильное напряжение 3.3 В, разряжать аккумулятор ниже 3.7 В вы не собираетесь. Выходной ток большой, следовательно линейный стабилизатор может перегреться. В этом случае используем импульсный понижающий преобразователь:
Таких микросхем очень много. Например, фирма XLSEMI выпускает широкий спектр микросхем для повышающих/понижающих стабилизаторов и стабилизаторов тока для светодиодов, цена вполне вменяемая. Если нужны большие токи, можно обратиться к Texas Instruments, но цена уже будет на порядки выше.
Случай 2. Вам нужно стабильное напряжение 3.3 В, но вы хотите высосать аккумулятор досуха. Вот тут нам уже поможет микросхема TPS63001, которая держит 3.3 В при выходном токе 1.8 А. При этом, если использовать рекомендованный дроссель, сам БП получится очень маленьким:
При напряжении на аккумуляторе 4.2 В она работает на понижение до 3.3 В. При напряжении 3.3 В на входе, она просто пропускает их через себя, а при значениях ниже 3.3 В повышает до 3.3 В.
Также есть микросхемы типа UPS, например, IP5108 (ардуинщики, налетай). В неё встроен БП на 5 вольт и контроллер заряда/разряда. Но у неё есть недостаток - при подключении/отключении зарядного устройства на 0.5 секунды пропадает выходное напряжение, так как это время ей нужно для переключения режимов. Пробовал избавиться от этого с помощью ёмких конденсаторов, не получилось, нужно ионисторы попробовать. Имеет I2C интерфейс, по которому можно контролировать состояние аккумулятора, менять алгоритм заряда. Также имеет светодиодную индикацию режима.
И таких микросхем великое множество, я перепробовал штук 20, так что эти варианты схем не единственные.
Спасибо за статью, хорошо написана. Она стала стартовой точкой в построении схемы питания от батареи. По подключению мосфета возникли вопросы и я стал искать другие источники.
Мне кажется, что в схеме переключение питания мосфетом у вас допущена ошибка - в таких схемах батарея подключается к стоку, чтобы внутренний диод был встречным к диоду от которого идёт питание. А при включении как указано здесь через защитный диод мосфета к батарее пойдёт ток от USB.
Этот вопрос обратного подключения мосфета обсуждается здесь:
https://electronix.ru/forum/topic/86696-resheno-shema-pereklyucheniya-quotbatareya-vneshniy-istochnikquot/
и здесь
https://habr.com/ru/articles/724334/
Поправьте меня, если ошибаюсь.
По первой ссылке, что Вы привели, на схеме неправильно нарисован транзистор.
Почему то не могу сюда вставить картинку.
Найдите даташит на него и посмотрите, что получится, если изображение транзистора будет правильно нарисовано. А если схему перевернуть транзистором вниз, получится та же схема,что и у меня. Только на этой схеме нет подтяжки к земле, как у меня. Из за этого она может работать неустойчиво.
По второй ссылке транзистор стоит правильно, но задача у этого БП немного другая, работать как UPS и автор сразу сказал, что у данной схемы есть недостатки.
Спасибо за ответы, буду разбираться.
Но всё же безотносительно тех решений - на вашей схеме ток от VCC 5в разве не пойдет через диод VD1 и защитный диод в VT1 на плюсовой вывод батареи 3.7в в обход зарядной микросхемы?
Здесь Вы правы. Но как писали в статье по второй ссылке, падение напряжения на этом диоде очень велико. Он не должен на это влиять.
И Вы ввели меня в смущение. У меня работает и изменение алгоритма зарядки я не заметил.
Значит нужно провести более полное исследование схемы.
Скорее в ней нужно использовать транзисторы, где этот диод как можно более голимый.
Значит эта схема может работать не со всеми транзисторами и поэтому нужно быть осторожным.
Век живи, век учись.
Большое спасибо за ответы и за статью ещё раз!
Ремарка про упомянутое интегрированное зарядно-повышающее решение IP5108:
Важный подводный камень этой микросхемы(и подобных ей) на мой взгляд - встроенное отключение нагрузки от питания при токе отдаваемом батареей меньше 45мА. Для power-банков, для которых она разработана - это нормально, но для других применений - надо тщательно проверять, как с этим алгоритмом жить. Возможно для низкопотребляющих устройств придётся стравливать заряд чисто чтобы она не заснула.
У этих микросхем есть ещё одно неприятное свойство.
После отключения они на выходе держат напряжение 0.7-1.2 вольта.
Но при этом питаемое устройство перестаёт работать и уходит в сон, пока питание не восстановится. Аккумулятор при этом разряжается очень долго. У меня держался месяца два.
Так что они подходят только для тех устройств, которыми пользуешься постоянно.
И такой алгоритм устраивает.