Измерение 12 В через делитель напряжения: правильный выбор резисторов
Я хочу измерить 9-вольтовую батарею через один из аналоговых входных портов моего Arduino Nano. Из всех схем этого отличного ответа я выбираю самую простую, делитель напряжения. Предполагая, что максимальное входное напряжение составляет 12 В (просто на всякий случай), а максимальное выходное напряжение делителя составляет 5 В, я решил это относительно пропорции R₂: R₁. Получается, что R₂:R₁ = 5:7.
При указанных выше значениях на входе контакта A0 будет ровно 5 В.
Проблема в том, что это могут быть любые значения. 5 Ом и 7 Ом или 5 МОм и 7 МОм!
Я понимаю, что нужно принять во внимание еще одно уравнение, которое даст мне значения этих двух резисторов. Еще один блестящий ответ демонстрирует, что значения зависят от тока, который я хочу пропустить через ветви:
Итак, суть в том, что при определении сопротивления резисторов мы должны учитывать входное сопротивление нагрузки, а два резистора делителя напряжения должны быть как можно меньше.
С другой стороны, давайте сравним ток, проходящий через делитель в цепи с большими резисторами на делителе и в цепи с маленькими резисторами на делителе. Как видите, через большие резисторы проходит ток всего 2,5 мкА, а через маленькие резисторы — 25 мА. Дело в том, что делитель напряжения тратит ток впустую, и если бы он был, например, частью устройства с батарейным питанием, это негативно повлияло бы на срок службы батареи. Поэтому резисторы должны быть как можно большего размера, чтобы снизить потери тока.
Известно, что 9-вольтовые аккумуляторы имеют небольшой запас энергии, а самый популярный аккумулятор 6LR61 имеет емкость всего около 550 мА·ч. Я не хочу тратить его на нагрев резисторов, поэтому, наверное, нужно использовать большие резисторы. Но насколько большой? Слишком большой R₁ будет пропускать только небольшой ток на контакт A0, и я где-то читал, что малые токи могут привести к ошибкам измерения analogRead
(занижение?) из-за внутреннего конденсатора АЦП.
Пытаясь найти правильный ответ, я читал на форуме Arduino. что:
В техническом описании ATmega328P есть следующая информация: Таблица 28-16 (стр. 328). Сопротивление аналогового входа заявлено как 100 МОм.
Во время реальной выборки входное сопротивление временно намного ниже, так как конденсатор выборки заряжается, поэтому рекомендуется, чтобы все, что вы подключаете к аналого-цифровому преобразователю, имело выходное сопротивление 10 кОм или меньше для лучшей точности. .
И тут я застрял. Я понимаю, что я подключаю делитель напряжения к аналого-цифровому преобразователю, но что такое "выходной импеданс"? Он должен каким-то образом зависеть от R₁ и R₂, и решение этого уравнения (F( R₁, R₂) == 10 000
) даст мне точное значение…
PS Я видел в Интернете несколько хитрых схем с конденсаторами, диодами и операционными усилителями (все говорят, что их очень просто и безопасно использовать для этой задачи), но, пожалуйста:
- Я просто пытаюсь понять основы и делаю первые шаги в области электроники.
- Устройство, которое я делаю, должно быть легким и компактным (хотя я должен быть в состоянии собрать его без магии печатной платы). Два резистора, кажется, в порядке.
- Я собираюсь считывать напряжение только один раз, когда устройство включено, поэтому мне на самом деле не нужна сверхбыстрая скорость операционного усилителя.
- Я постараюсь не подключать отрицательное напряжение, поэтому мне не нужна защита. Тем не менее.
@madhead, 👍4
Обсуждение1 ответ
Лучший ответ:
То, что вы ищете, называется эквивалентом Тевенина. Для схемы, которую вы показываете, и предполагая, что вы можете пренебречь выходное сопротивление самой батареи, выходное сопротивление Делитель напряжения такой же, как два резистора, включенных параллельно. Если вы хотите максимально допустимое сопротивление (минимальный ток), который вы должны затем решить:
1/R1 + 1/R2 = 1/(10 кОм)
R2 / (R1 + R2) = 5/12
что дает:
R1 = 12/5 × 10 кОм = 24 кОм
R2 = 12/7 × 10 кОм ≈ 17,1 кОм
Затем можно округлить значения до ближайших стандартных значений, следя за тем, чтобы округление не налагало более 5 В на аналоговый пин. Например, если вы ограничитесь серией E6, вы мог выбрать
R1 = 22 кОм
R2 = 15 кОм
что даст эквивалентное по Тевенину выходное сопротивление 8,9 кОм и максимальное выходное напряжение 4,86 В.
Спасибо. Так что, по сути, мне нужно вычеркнуть батареи и рассчитать сопротивление делителя между точками, которые я использовал для подключения Arduino (земля и между резисторами)?, @madhead
@madhead: Да. Это в основном то, что говорит вам теорема Тевенина., @Edgar Bonet
- Самый эффективный делитель напряжения для Arduino?
- Считанное значение не меняется при вращении потенциометра в Arduino?
- Будет ли резистор сопротивлением 100 кОм, подключенный к земле, понизить сопротивление открытой аналоговой линии до 0?
- Измерение 600 В постоянного тока с помощью Arduino (делитель напряжения)
- Зуммер мешает показаниям термистора
- Отправка значения с одного Arduino на другой
- Использование аналогового входа для чтения кнопки
- Как работать с аналоговыми контактами в цикле?
Вау, это длинный вопрос. Я сделал быстрый поиск, и «шума» там нет. Итак, вот еще одно соображение: если сопротивления слишком велики, а окружающая среда достаточно шумная, нос может просочиться в ваши измерения и вызвать ложные показания. Вы можете смягчить это, используя более низкие сопротивления. Вы также можете уменьшить это в своей прошивке. Вы также можете смягчить это, контролируя источник шума. Да, и есть вероятность, что вы всегда будете делать несколько измерений, чтобы уменьшить шум. Обычно 12-битный АЦП не имеет 12-битного (возможно, только 8-битного) разрешения, если не выполняется усреднение., @st2000
Спасибо, @st2000! Я действительно читал о больших резисторах, "ловящих" шум. Я думал смягчить это, прочитав значение, скажем, 10 раз и усредняя его. Как я уже сказал, это делается только один раз и не обязательно очень быстро., @madhead
И, да, я попытался поместить в вопрос все, что я узнал до сих пор, потому что в Интернете так много информации и так много параметров. Как и ваше соображение о шуме., @madhead
Еще один совет, который я видел, - это просто использовать ~ 10 кОм в качестве R₂ и никогда не беспокоиться, но я хочу понять математику., @madhead
Еще одно общее соображение: никогда не подавайте напряжение на какой-либо вывод логической микросхемы (включая микропроцессоры), превышающее напряжение питания. Так что, если микро на самом деле является устройством 3V3, вы не должны подавать сигнал 5V ни на один из его контактов. На самом деле, во многих конструкциях есть схемы фиксации, чтобы избежать случайного высокого напряжения., @st2000
@ st2000, но у Nano, похоже, рабочее напряжение 5 В. И я собираюсь подать 9 В (12 В) через делитель напряжения, который снизит его до уровня менее 5 В, так что я в безопасности?, @madhead
Некоторые процессоры Arduino работают на 3v3, другие на 5v. Выборочная проверка, я вижу схемы, где контакты VCC процессора Nano подключены к 5 В. Свежие аккумуляторы иногда немного выше заявленного напряжения. Кроме того, могут быть ошибки. Подключение батареи 12В к делителю напряжения, предназначенному для преобразования 9В в 5В., @st2000
Поэтому и рассчитываю делитель на 12 В для 9 В батареи :), @madhead