Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Контроль разряда батареи для Atmega8a
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
-=MISHA=-
Имеется контроллер Atmega8a с батарейным питанием (2 батарейки по 1.5В).
У контроллера используется АЦП и опорное напряжение установлено равное напряжению питания.
Подскажите пожалуйста простое решение для контроля питания.
Допустим, если напряжение упало ниже 2.8В, то выставить флаг.
МП41
Нужно опорное, которое не будет зависеть от напряжения питания, например использовать внутреннее на 2.56В или сформировать внешнее на TL431 (на 2.5В). Само питание через резистивный делитель мерить.

Но если питание опустится до уровня опорного и ниже, то измерение будет некорректным.
-=MISHA=-
Цитата(МП41 @ Jan 25 2011, 17:31) *
Нужно опорное, которое не будет зависеть от напряжения питания, например использовать внутреннее на 2.56В или сформировать внешнее на TL431 (на 2.5В). Само питание через резистивный делитель мерить.

Но если питание опустится до уровня опорного и ниже, то измерение будет некорректным.


В момент измерения напряжения питания нужно переключать опору в контроллере на 2.56В?
Считать поделенное значение напряжения питания и затем обратно установить опору = напряжению питания?
Я правильно понял?
МП41
Лучше даже остальные измерения адаптировать под общий опорник.
ukpyr
Цитата
Лучше даже остальные измерения адаптировать под общий опорник.
или сделать наоборот - завести внешний опорник на один из каналов АЦП и по нему калибровать измерения.
ILYAUL
Цитата(ukpyr @ Jan 25 2011, 19:05) *
или сделать наоборот - завести внешний опорник на один из каналов АЦП и по нему калибровать измерения.

Не понял ,это как. А что будет являться опорным для этого канала?
kovigor
Цитата(МП41 @ Jan 25 2011, 18:31) *
... на TL431 (на 2.5В).
Но если питание опустится до уровня опорного и ниже, то измерение будет некорректным.


У человека батарейное питание, посему лучше поставить микропотребляющий опорник типа LM185, 285 или 385. Они есть на 2.5 и на 1.235В. А еще есть TLV431. И еще, и еще ... Если взять низковольтную версию, то и напряжение ниже опорного не упадет ...
rezident
Цитата(ILYAUL @ Jan 25 2011, 21:48) *
Не понял ,это как. А что будет являться опорным для этого канала?
Любое измерение относительно. Измерить означает сравнить с чем-либо, с эталоном. Вы измеряете входное напряжение и получаете относительные "попугаи" - отношение значения внешнего напряжения, относительно напряжения внутренней опоры в дискретных отсчетах АЦП: Vin/VREF(int). Затем измеряете внешнюю опору относительно внутренней и опять получаете относительные "попугаи" в кодах АЦП: VREF(ext)/VREF(int). Теперь, если взять отношение первых "попугаев" относительно вторых "попугаев", то получится отношение внешнего напряжения относительно внешней опоры. Vin/VREF(int) / VREF(ext)/VREF(int) = Vin/VREF(ext). Как видите величина напряжения внутренней опоры в выражении отсутствует. Единственное требование при таком способе измерении, чтобы величина внутренней опоры между двумя измерениями (внешнего сигнала и внешней опоры) была стабильной.
rx3apf
Цитата(ukpyr @ Jan 25 2011, 19:05) *
или сделать наоборот - завести внешний опорник на один из каналов АЦП и по нему калибровать измерения.

Можно, впрочем, и внутренним опорником 1.23V воспользоваться, правда, он имеет весьма широкий заводской допуск. Поэтому да, если калибровка не предусмотрена, взять внешний, можно и не микропотребляющий (подключать на время измерения, кратковременно).
AndOr
Рекомендую не питать контроллер от батареек на прямую, а использовать dc-dc преобразователь на 3,3 или 5В.
Привожу пример схемки пульта на меге32, сделан был еще в 2004 году, возможно сейчас есть альтернатива MAX1675, хотя и они сейчас доступны по 100-150р.
Нажмите для просмотра прикрепленного файла
Из плюсов такого решения:
1. стабилизированное питание, т.е. можно брать за опору АЦП и обойтись без MAX6021 (по факту вместо нее на плату паяли 0,1мкФ для внутр. опоры МК).
2. "высасывает" батарейки аж до 0,7В (это с двух пальчиков), если конечно программно позволить.
3. в выключенном состоянии потребление ~25мкА и определяется, в основном, только резистором делителя, но без него нельзя.
4. можно спокойно использовать всякие разные микрухи требующие более-менее стабильное 2,7..3,3В или 4,5..5,5В.
5. вся схема потребляет не больше 20 мА (без подсветки ЖКД) - дешевые аккумуляторы 600мАч будут держать долго.
Вот в столе лежит такой пультик с дюраселями 2007г.в. - работает! и пишет, что батарейки в норме, правда я его не включал пару тройку лет...
Удачи!
-=MISHA=-
Опорное напряжение установил - AVCC.
На AREF повесил конденсатор.
В момент измерения напряжения питания выбираю внутренне опорное напряжение 2.56В
и измеряю напряжение питание поданное через делитель.
Затем опять возвращаю опорное - AVCC.
Всё работает.
Всем спасибо за помощь!
ukpyr
Цитата
возможно сейчас есть альтернатива MAX1675
например NCP1402 - работает от 0.3В
rx3apf
Цитата(-=MISHA=- @ Jan 26 2011, 14:53) *
Опорное напряжение установил - AVCC.
На AREF повесил конденсатор.
В момент измерения напряжения питания выбираю внутренне опорное напряжение 2.56В
и измеряю напряжение питание поданное через делитель.

С равным успехом можно было бы обойтись без делителя (который, к тому же, добавляет и свою ошибку), измеряя встроенный опорник 1.23V (по каналу 14). Но без индивидуальной калибровки ошибка такого измерения весьма высока.

Цитата(ukpyr @ Jan 26 2011, 15:13) *
например NCP1402 - работает от 0.3В

Все это хорошо, когда уже работает. Для запуска нужно не меньше 0.8V, а если под нагрузкой - все еще хуже...
AndOr
У NCP1402 приятная цена и габариты - хорошая альтернатива, а Low Battery компаратор не так уж и нужен в большинстве случаев с МК.
Цитата
Затем опять возвращаю опорное - AVCC.

Зачем? Внутренний 2,56 конечно говенненький, но AVCC от батареек - сомнительная опора, даже если она измерена относительно 2,56 ошибка будет только расти при пересчетах и округлениях...
В AVR и так с точностью АЦП швах. Пока не усреднишь хотя бы из 8 выборок о 10 битах можно не говорить...
rx3apf
Цитата(AndOr @ Jan 26 2011, 16:13) *
Зачем? Внутренний 2,56 конечно говенненький, но AVCC от батареек - сомнительная опора,

Нет никакой принципиальной разницы, измерять фиксированный опорник относительно батарейного питания либо наоборот, делитель от батареи с фиксированным опорником (добавляя погрешность делителя).

Цитата
В AVR и так с точностью АЦП швах. Пока не усреднишь хотя бы из 8 выборок о 10 битах можно не говорить...

Мда ? А вот у меня почему-то все получается с погрешностью до мерцания одного младшего бита. А при оверсемплинге с дополнительным смещением и 12 битов стабильно выходят. "Доктор, что я делаю не так ?" ©
ILYAUL
Не могу понять , есть компаратор. Итог всех этих "рыданий" - менять её ( батарейку) или ещё чуток подождать - выставляется порогом. И вот оно надо , такое впечатление , что измерение с АЦП , продлит ее жизнь. Пока измеряете, вычисляете она "садится". Лучше поспите подольше, больше толку будет
rezident
Цитата(ILYAUL @ Jan 26 2011, 23:10) *
Не могу понять , есть компаратор. Итог всех этих "рыданий" - менять её ( батарейку) или ещё чуток подождать - выставляется порогом.
А к компаратору еще подстроечный резистор, чтобы менять порог в случае перехода с пальчиковых батарей на такие же пальчиковые аккумуляторы или обратно, так? wink.gif
AndOr
На счет компаратора никто и не "рыдал", просто в доступной тогда MAX он на борту оказался, вот я его и использовал, хотя он больше нужен когда "мозгов" с АЦП не предусматривается, а высушивать аккумуляторы не хорошо, все знают laughing.gif
Зачем-то же его туда поставили, видимо кто-то их об этом просил, типа добавить до кучи дропаут питания, а может чиста маркетинг...
Цитата
Мда ? А вот у меня почему-то все получается с погрешностью до мерцания одного младшего бита. А при оверсемплинге с дополнительным смещением и 12 битов стабильно выходят. "Доктор, что я делаю не так ?" ©

Не знаю как у Вас, а у нас точность лучше 5% + младший разряд в серии не получается, хотя и засыпаем при измерении и усредняем из 8-ми и резисторы 1% и питание 2%.
В основном конечно вина внутренней опоры 2,56, т.к. когда ставим внешнюю типа MAX6021 сильно лучче с повторяемостью.
Вообще давно сделал вывод - если нужна точность - пользуй спецуху с ухищрениями по землям, с опторазвязками и т.д.

Тема собсно уже пустая, т.к. автор похоже остыл, а мы опилки пилим. 05.gif
ILYAUL
Цитата(rezident @ Jan 26 2011, 21:33) *
А к компаратору еще подстроечный резистор, чтобы менять порог в случае перехода с пальчиковых батарей на такие же пальчиковые аккумуляторы или обратно, так? wink.gif

При всём моём глубоком уважении rezident
Зачем чего-то менять. Или что нужна такая точность , что бы до секунд предсказать , когда батарейка сдохнет окончательно. Тогда и вправду спец микрухи , можно ШИМ стабилизатор заюзать.
Стабилитрон , резистивный делитель и полевик - вполне достаточно для предсказаний.
Но если уж этого покажется много , то можно оставить только резистивный делитель, заюзать Uref АЦП , дождаться прерывание компаратора ~ 2В и уж тогда развернуть в полную мощь сам АЦП

AndOr
Цитата
На счет компаратора никто и не "рыдал"
Я не адресовал свой пост лично Вам , просто высказывал своё мнение.

Таких тем , с батарейкой , уже проскакивало не мало и снова обсуждаем тоже самое .

Цитата
Тема собсно уже пустая, т.к. автор похоже остыл, а мы опилки пилим.
beer.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.