Измерение напряжения батареи и экономия энергии [дубликат]

У нас есть плата с Atmega (MCU), которая большую часть времени находится в спящем режиме, потребляя 50-100 uA.

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

Я рассматривал несколько вариантов и задавался вопросом, какой из них «правильный», если мы не хотим терять ток.

Напряжение будет 3.6-4.2V, когда оно заполнится через регулятор 3,6 В.

  1. подключение батареи с последовательным резистором (> 50k??) непосредственно к АЦП.
  2. возьмите 2 больших резистора (100k?) и создайте делитель напряжения батареи, и подключите точку между ними к АЦП.
  3. подключение батареи напрямую к АЦП?

--- мы должны измерять после или до регулятора ??

Резистор на 100 кОм будет пропускать 50uAток, что не очень хорошо, потому что сама Atmega должна быть единственным и основным потребителем в режиме сна 50-100uA.

Согласно техническому описанию AVR, вы не должны управлять входами АЦП с импедансом > 10 кОм (в первую очередь). Проверка главы технического описания, посвященной АЦП, является хорошей практикой в ​​такого рода приложениях. Вы проверили существующие вопросы по этой теме, потому что я абсолютно уверен, что по этой теме были даны хорошие ответы. Кажется, Олин однажды объяснил, как использовать транзистор для включения делителя напряжения только во время измерений.
спасибо, да, я проверил, но наши потребности очень слабый ток..
Попробуйте эти ответы: electronics.stackexchange.com/questions/97856/…
спасибо, прочитал это, это полезно, но сейчас мы не можем добавить еще один МОП-транзистор ... почему мы не можем просто поставить 2 резистора по 100 кОм? почему MCU не может это терпеть?
@Curnelious - Вероятно, потому, что АЦП, как правило, немного дерьмовые внутри микроконтроллеров и не предлагают много излишеств по сравнению с отдельными АЦП - внутри них нет буфера, возможно, потому, что они не могут разработать технологию операционных усилителей для работы с рельсами. от источника питания 1V8 (или от чего он может идти), поэтому они оставляют это вам, чтобы исправить.
большое спасибо. а при чем тут большие резисторы? Почему вы не можете поставить резисторы 100k на входе, чтобы разделить напряжение? или даже подключить его напрямую с одним резистором?
Входной ток смещения может быть значительным и вызвать ошибку, если сопротивление источника слишком велико из-за падения напряжения на резисторе. Это может не иметь значения, если вы не ищете точной точности и достаточно предсказуемого относительного показания. Вы не можете измерять после регулятора, так как он больше не будет измерять батарею, а будет измерять стабилизированное напряжение.
@KalleMP о, это здорово, да, мне нужно только более или менее знать, какова ситуация с батареей. Я не уверен, что понимаю, в чем проблема с резисторами 100k? Чем они больше, тем меньше ток поступает в микроконтроллер, так не лучше ли?
Подумайте об этом так: вы можете рассматривать входное сопротивление АЦП как еще один резистор, включенный параллельно нижнему резистору в делителе напряжения. Если у вас есть два резистора 100K в вашем делителе, и АЦП также 100K (предполагаю, я не читал техническое описание), у вас фактически вместо этого есть резисторы 100K и 50K.
@DoxyLover, понял. Но если вы знаете, что импеданс можно компенсировать, вы также можете откалибровать его, когда батарея полностью заряжена, так что вам все равно, каков окончательный результат, а только то, как он изменится. Я ошибаюсь? Могут ли резисторы номиналом 100 кОм вызвать некоторые другие опасные вещи, которые следует учитывать при массовом производстве?
Установка последовательного резистора на практике безопаснее, установка заземленного резистора в делителе приведет к потере емкости батареи и на самом деле не нужна. Если вы охарактеризуете полученные показания и сравните их с хорошим цифровым мультиметром, вы можете составить справочную таблицу с точностью 10%, подходящую для мониторинга состояния батареи.
Этот вопрос задавали полдюжины раз на EE.SE. Только некоторые из этого предшествующего уровня техники: это , это , это .

Ответы (1)

Я делал это раньше, я использовал PFET для отключения тока через делитель напряжения 10k-10k. АЦП на Atmega не должен иметь импеданс на входе более ~ 10 кОм, или вам нужен конденсатор или что-то еще, чтобы буферизовать количество заряда, доступного для чтения АЦП. В основном PFET всегда был выключен, и только после пробуждения делитель напряжения включался на короткий промежуток времени.

Большое спасибо, но я написал, что FET невозможен. В любом случае задержка между чтением и установкой мультиплексора может решить эту проблему. Задержка 1u на каждые 10k выше 10k.