Заставить батарею долго работать в цепи микроконтроллера


26

Я надеюсь в течение долгого времени питать ATtiny85V от небольшой батареи, возможно, от батарейки.

Я посмотрел в сторону программного обеспечения, и мой код управляется сторожевым таймером, отключены неиспользуемые аналоговые и цифровые преобразователи, чип работает на частоте 1 МГц и т. Д. Конечно, будучи занятым и новым в этом, я не уверен точно сколько тока он потребляет, но я надеюсь, что я в основном свел его к минимуму.

Каждые несколько секунд он просыпается, проверяет уровень напряжения на АЦП, записывает его на ОЗУ и возвращается в режим сна. Если он обнаруживает, что последовательная линия подключена, он выбрасывает данные.

Тем не менее, теперь я смотрю на схему в целом и задаюсь вопросом, есть ли вещи, которые я должен сделать, чтобы сделать схему в целом более дружественной к батарее?

Каковы основные плюсы и минусы, когда речь идет о разработке долговечной (простой) схемы, в которой один компонент (микроконтроллер) имеет повторяющееся, но переменное потребление тока?

Например:

  • Является ли индикаторный индикатор большим делом? Разряжается ли аккумулятор, когда он яркий? Должен ли я поставить гигантский резистор на него, чтобы сделать его тусклым, или это просто заставляет резистор использовать батарею?
  • Должен ли я использовать конденсаторы байпаса / развязки, чтобы выровнять ток, потребляемый от батареи, или конденсатор просто теряет заряд батареи?
  • Микроконтроллеру нужно только 1,8 В, но у меня нет батарей 1,8 В. Должен ли я использовать две батарейки 1.x и подавать на него слишком большое напряжение? Могу ли я продлить срок службы батареи, «не используя столько вольт»? Как я могу это сделать?
  • Требуется ли дополнительная мощность, чтобы проверить, является ли вывод ВЫСОКИМ или НИЗКИМ? По сравнению с неработающей операцией или какой-либо арифметикой, много ли потребляется дополнительной энергии при проверке одного из выводов ввода-вывода GP на предмет его состояния?

Я смутно знаю, как вычислить (и более смутно, как измерить) ток, напряжение, мощность, но я не совсем уверен, какая из этих вещей соответствует времени автономной работы. Важное измерение времени автономной работы в кулонах?

У меня есть смутное представление о том, что батареи полны таких вещей, как:

  • зарядка, как в ампер-часах
  • энергия, как в ваттах
  • мощность, как в ваттах

но я не совсем понимаю, что моя схема "ест", когда она работает. Я прочитал достаточное количество EE101 и учебников по физике, но у меня нет никакого лабораторного опыта. Другими словами, я прочитал тонну о батареях, но я не совсем уверен, что большинство из них означает на практике.

Источники питания расходуют заряд батареи? Есть ли конденсаторы? Есть ли диоды? Я подозреваю, что они все делают, но какие из чисел те, которые имеют значение? Полное сопротивление? Рассеяние мощности? Ток? Напряжение?

Есть ли способ снизить напряжение без потери заряда батареи? Есть ли способ снизить напряжение при увеличении срока службы батареи?


6
Это очень очень широкий вопрос. Вам почти нужно задать несколько вопросов. Я мог бы дать полный вопрос по вопросу о мощности светодиодов.
Кортук

1
Круто, я разделю это после рабочего дня. Может быть, это просто широкие и не очень. Я думаю, что такие ответы были бы полезны для людей, которые просто пытаются получить больше от батареи, но я думаю, что дать какой-либо авторитетный или образовательный ответ требует более узкого вопроса.
Джек Шмидт,

Да, я понял, что мне придется разделить ответ на ваш вопрос, и это займет у меня час.
Кортук

Кстати, моя жена нашла makezine.com/makeitlast, который в конечном итоге может быть полезен, так как это в основном конкурс на создание подобных вещей. Я думаю, что это начинается сегодня, поэтому у них нет никаких советов о том, как это сделать. В любом случае, мой проект независим, и я сомневаюсь, что у меня все равно будет время для участия :) Не стесняйтесь ждать окончания конкурса, если вам не нравятся такие вещи.
Джек Шмидт

Ответы:


20

Просто случайный список, если вы разместите свою схему, вероятно, будет проще:

Ячейки литиевой монеты 1,8 В очень легко найти, но, скорее всего, вашему последовательному интерфейсу нужно 3,3 В? Если ваша принимающая сторона не будет иметь дело с 1.8V.

Ток утечки, как правило, повышается при увеличении напряжения, поэтому обычно чем ниже, тем лучше. Также учтите момент затухания системы в зависимости от характеристик батареи. Характеристики «смерти» батареи будут зависеть от химического состава батареи, которую вы используете. Например, если ваш ОК выходит из строя при напряжении 1,7 В, вы, возможно, захотите использовать батарею с более высоким напряжением, так как с некоторыми батареями выходное напряжение будет медленно снижаться по мере ее разрядки. Вы получили бы больше жизни от батареи 3,3 В, так как, когда она начинает умирать, ее выход будет медленно падать, и вы сможете работать до 1,8 В. Если вы используете батарею на 1,8 В, вы собираетесь отключиться довольно быстро, когда батарея умирает. Все это предполагает, что ваш последовательный интерфейс или другие компоненты могут работать в широком диапазоне напряжений (я знаю, что AVR может).

Светодиоды потребляют много энергии, если вы не используете светодиод с очень низким энергопотреблением и не управляете его потреблением тока, вероятно, он потребляет намного больше тока, чем AVR. Если это просто для отладки, не заполняйте его для производства или только мигайте время от времени или что-то, чтобы свести его к минимуму вовремя, и определенно контролируйте его текущее использование.

Если вы можете выбрать полярность / состояние покоя вашего последовательного интерфейса, чтобы потреблять как можно меньше энергии, это состояние покоя не должно потреблять энергию. Если требуются подтяжки, используйте самый большой резистор, чтобы поддерживать целостность сигнала, но минимизируйте потребление тока. Если власть - огромная проблема, используйте сигнальную схему, которая одобряет биты, которые не потребляют власть. Например, если у вас есть подтягивания, использование протокола, который приводит к большому количеству единиц в сигнале, оставит последовательный интерфейс в состоянии, которое большую часть времени не потребляет столько энергии. Такая оптимизация имеет смысл только в том случае, если вы интенсивно используете последовательную шину. Если его очень легко использовать, просто убедитесь, что его состояние покоя не дает силы.

Вообще говоря, вы можете предположить, что все инструкции (чтение GPIO и т. Д.) Требуют одинакового количества энергии. Это не совсем так, но разница в мощности минимальна.

Энергопотребление в гораздо большей степени зависит от количества / типа периферийных устройств, на которые вы включили питание, и количества времени, которое микропроцессор проводит в активном режиме по сравнению со сном. Таким образом, АЦП использует больше энергии, записи EEPROM используют достаточное количество энергии. В частности, что-то вроде записи в EEPROM обычно выполняется довольно большими «порциями», поэтому вы должны накапливать как можно больше информации, прежде чем выполнять запись в EEPROM (если вы, конечно, даже используете ее). Для АЦП, который микро поддерживает выполнение чтения АЦП в течение двух состояний ожидания, поскольку преобразование АЦП занимает относительно много времени, это хорошее время для сна.

Вероятно, вам следует просто прочитать разделы об управлении питанием, состояниях сна и минимизации энергопотребления, используя таблицу данных микроконтроллера: linky page 35 on. Держите AVR в максимально глубоком состоянии сна как можно дольше. Единственным исключением является то, что вы должны учитывать время запуска и выключения. Не стоит спать в течение 10 циклов, если пробуждение занимает 25 и т. Д.

Источники питания расходуют заряд батареи? Есть ли конденсаторы? Есть ли диоды?

Все они в некоторой степени. Резисторы рассеивают больше всего в большинстве приложений:

P = V * I

P = V ^ 2 / R или P = I ^ 2 * R (где V - падение напряжения на резисторе)

Диоды имеют (относительно) фиксированное падение напряжения, поэтому рассеивание мощности почти исключительно связано с током, проходящим через диод. Например, диод с падением напряжения на 0,7 В, P = 0,7 * I, если ток протекает через диод. Это, конечно, упрощение, и вы должны проверить режим работы на основе характеристик IV диода.

Конденсаторы теоретически не должны рассеивать какую-либо мощность, но в действительности они имеют конечное последовательное сопротивление и ненулевой ток утечки, что означает, что они рассеивают некоторую мощность, как правило, не то, о чем вам следует беспокоиться при таких низких напряжениях. При этом выбор конденсаторов с минимальным током утечки и ESR - выигрыш в мощности.

Если их использовать для сглаживания уровня заряда батареи, это не очень помогает для энергопотребления, а скорее для фильтрации. Также в игру вступает химия батарей, некоторые химии будут счастливее с постоянным током, некоторые лучше справляются с колючими током.


1
важная часть P = V ^ 2 / R заключается в том, что при повышении R при фиксированном напряжении потребление энергии уменьшается.
Кортук

Круто, поэтому, чтобы использовать больше батареи, мне, вероятно, понадобится более высокое напряжение (возможно, с использованием регулятора, предложенного Эндрю). Я сделаю несколько экспериментов, чтобы увидеть, как низкое напряжение будет принимать последовательная линия. Я также обязательно установлю неиспользуемые контакты на вывод. Серийный номер используется только изредка, поэтому я просто проверю состояние покоя. Я определенно пытался отключить все периферийные устройства, которые я могу.
Джек Шмидт,

Для конденсаторов: так что, вероятно, мне не нужен конденсатор, чтобы вытащить аккумулятор. Проверьте химический состав батареи, но, предположив, что он может справиться со схемой утечки тока, которая у меня есть, нет необходимости пытаться отрегулировать ее, верно?
Джек Шмидт,

Спасибо за эту вещь. Я думаю, что теперь я понимаю. P = I * V, где V - падение напряжения, поэтому я могу измерить разряд батареи в P или I (или P-часах или I-часах), пока напряжение не может быть изменено. Я все еще не уверен, смогу ли я изменить V "бесплатно".
Джек Шмидт,

1
Бак-буст-регулятор и упомянутый Эндрю - действительно лучшее решение. Я не упоминал об этом, потому что расположение таких цепей обычно критично. Их сложно собрать без фанк-производительности или излучения электромагнитных помех. Внимательно прочитайте таблицу данных, обычно в нее включены рекомендации по компоновке и идентификации критических путей. Также будут более жесткие ограничения на некоторые из используемых частей. Конденсаторы с низким ЭПР и тому подобное.
Mark

12

Марк дал превосходный ответ и затронул многие моменты, которые я собирался сделать. Есть несколько, которые я хотел бы также внести свой вклад.

Используйте осциллограф с резистором низкого сопротивления последовательно с возвратом к общему аккумулятору для проведения измерений тока. Потребление тока с помощью микроконтроллера не является простым, и, как правило, метры слишком далеко, чтобы дать вам хорошее представление о том, что происходит. Что означает «низкий ом», зависит от ожидаемого тока потребления. резистор на 1 Ом развивает 100 мВ на каждые 100 мА, и это, вероятно, слишком много для вас. Я бы попробовал резистор 10 Ом 1% или 0,5%; вы увидите 100 мВ на каждые 10 мА потребления тока. 18 Ом дадут вам 100 мВ на каждые 5,5 мА. Если вы ДЕЙСТВИТЕЛЬНО едете на малой мощности, вам, возможно, удастся сойти с рук с 1k; I = V / R: вы увидите 100 мВ на каждые 100 мкА потребляемого тока. Осторожнее, хотя; если вы наберете достаточное количество тока, вы в конечном итоге сбросите слишком много через шунт, и ваши измерения будут отключены, не говоря уже о схеме, вероятно, не будет работать. :-)

При подключенном прицеле попробуйте несколько различных рабочих частот для микроконтроллера. Вы можете быть удивлены, узнав, что вы потребляете меньше энергии при более высокой тактовой частоте, потому что вы тратите гораздо меньше времени на пробуждение

Устраните подтягивания / падения как можно больше. Вы не должны иметь никаких выходных данных, поскольку в большинстве случаев вы можете перевести их в состояние ожидания. Входы должны быть привязаны к тому, что имеет смысл, используя как можно более высокое значение, как сказал Марк.

Убедитесь, что ваш микроконтроллер отключен как можно больше. Превратите неиспользуемые контакты в выходы и приведите их в состояние (высокое или низкое, не имеет значения). Не оставляйте светодиоды включенными. Если вы можете выключить другие компоненты или остановить их часы, сделайте это. Например, в памяти флэш-памяти SPI часто есть команда «выключить питание», которая берет уже низкое энергопотребление и еще больше снижает его.

Другие затронули аспект напряжения, и я хотел бы также прокомментировать это. Вы, вероятно, в конечном итоге получите намного лучшее использование батареи, если будете использовать высокоэффективный стабилизатор напряжения между батареей и вашей цепью. Регулятор будет в режиме пониженного напряжения (снижение напряжения), когда уровень заряда батареи превысит требуемый уровень 1,8 В, и переключится в режим повышения напряжения (повышение напряжения), когда уровень заряда батареи упадет ниже 1,8 В. Это позволит вам запускать цепь до тех пор, пока батарея не будет полностью и полностью разряжена, что вполне стоит тех нескольких процентов потери эффективности, которые вы получите при их использовании. Убедитесь, что регулятор выбран на основе его эффективности во всем диапазоне, который вы хотите использовать, и подберите регулятор соответствующим образом; регулятор, который может выдавать 1A с эффективностью 98%, вероятно, с эффективностью 60% и 50 мА. Внимательно прочитайте таблицы.


Круто. Я раньше не использовал прицел, но я подозреваю, что наша местная лаборатория будет рада показать мне это (сейчас я на самом деле использую мультиметр для измерения тока; не очень хорошо). - Кроме того, вы бы порекомендовали регулятор, даже если я использую только 1-10 мА, при условии, что я могу найти подходящую часть? Достаточно ли эффективен 90% (я помню, как нашел дешевый в этом диапазоне), или он использует больше тока, чем спасает меня?
Джек Шмидт,

1
очень хороший момент при воспроизведении с частотой, напоминает мне о том, что радио Wi-Fi в моем мобильном телефоне потребляет больше энергии, чем сотовый модем, но Wi-Fi намного быстрее, он может спать дольше и в итоге из-за этого лучше в целом по мощности.
Mark

2
Еще один прием для оценки среднего по времени использования тока микроконтроллера в сценариях, где потребление тока будет «взрывным», - это зарядить действительно большой конденсатор и заставить его питать стабилизатор тока низкого напряжения для имитации напряжения батареи. Конденсатор на 100 000 мкФ будет падать на 0,01 В на миллиампер-секунду. Если он падает на 0,3 В за пять минут (300 секунд), ваше среднее потребление тока составляет 100 мкА.
суперкат

Точка эффективности регуляторов очень важна. Таким образом, вы должны оценить свой диапазон потребления тока, чтобы выбрать соответствующий регулятор в этом диапазоне
gustavovelascoh

4

С вашей схемой я бы рекомендовал использовать мультиметр в диапазоне микроампер для измерения потребления тока. Затем, учитывая характеристики батареи, вы можете рассчитать долговечность. Это не обязательно ампер-часы / ток, поскольку батарея будет иметь разные характеристики разряда для разных нагрузок. Но это может быть полезно в качестве приближения.

Я думаю, что при частоте 1 МГц вы будете потреблять немного энергии - по крайней мере, 100 мкА, если PIC-микро сравнивать. Но это будет подавлено 5–20 мА, проходящими через ваш светодиод, поэтому вам следует сначала избавиться от этого.


Круто, светодиод стирается. Трудно получить точное измерение. Похоже, сейчас 0,9 мА, так что, возможно, мое программное обеспечение отключается не так сильно, как я думал. С включенным Arduino (и светодиодом сердцебиения) он больше похож на 8-9 мА, так что, по крайней мере, крошечный помогает.
Джек Шмидт,

1

В наши дни имеются готовые комплекты для разработки и коммутационные платы, которые чрезвычайно удобны для точных измерений тока, в некоторых случаях вплоть до диапазона нА. Если вы еще не определились, попробуйте µCurrent Gold . Это хорошо для статических измерений, но меньше для регистрации измерений во времени.

Один из способов, которым вы все еще можете использовать µCurrent, это подключить разностный усилитель к выходу. Затем вы можете подать это на осциллограф или логический анализатор с аналоговыми входами. Я написал полный урок о нем, и я чувствую, что он может помочь людям с ограниченным бюджетом, которые не совсем имеют нужные инструменты.

Удивительно, что вы можете узнать не только о том, что напряжение внутри вашей цепи, но также и о том, как оно реагирует на каждый небольшой скачок тока. Это несколько раз спасло меня при выборе технологий батарей и проверочных испытаний. 😎


0

Все ответы уже имеют важные моменты. Я добавлю один из моего опыта.

Когда я разрабатывал устройства с потреблением менее 10 мкА, даже менее 1 мкА в режиме глубокого сна, чистка платы имела значение. Когда-то у меня было 7 из 10 плат с ожидаемым потреблением тока. Все были одинаковыми и все работало нормально. После очистки их в ультразвуковом очистителе все доски пошли к ожидаемому результату.

И, наконец, оцените ожидаемое / целевое потребление, проверяя таблицы всех ваших элементов. Если вы справитесь с ними хорошо, вы достигнете своей оценки. Это включает в себя все неиспользуемые контакты в микроконтроллере. Даже если вы выключите АЦП, убедитесь, что конфигурация контактов в выключенном состоянии является наилучшей в зависимости от внешнего подключения.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.