Как считывать напряжение с помощью ADS1115

c++ voltage-divider

Я очень новичок в этом. Я нашел это руководство.

Но это не объясняет, как считывать напряжения выше, чем Arduino 5V. Я подключил резистор 100 кОм к плюсу и 10 кОм к минусу моего источника питания 24 В.

Пожалуйста, мне нужно руководство по написанию кода для этого конкретного ADC.

, 👍1

Обсуждение

Итак, вы хотите измерить напряжение вашего источника питания?, @chrisl

Да, я хочу измерить напряжение выше 5 В., @BIGsmall

Вы не можете измерить намного больше, чем 5В с этим устройством. (ВДД +0,3 В) Вы и этот «учебник») используете библиотеку adafruit и должны получать информацию от них. Если эти 2 резистора (100 кОм + 10 кОм) создают делитель напряжения, а минус подключен к GND, 24 В уменьшается до 24 В / 11 ~ 2,18 В между двумя резисторами., @DataFiddler

Я знаю, что Datafiddler, но я не знаю, как я могу преобразовать и прочитать эти 2,18 В в 24 В!, @BIGsmall

Это называется "математика". Например: Arduino имеет 10-битную точность и обычно опорное напряжение 5 В. Это означает, что один шаг равен 5 В / 1024 = 0,004883 В. И если вы разделите входное напряжение на 11, это означает, что вы должны также умножить предыдущий результат на 11., @KIIV

Я сделал то, что вы сказали: напряжение = напряжение * 11, но оно показывает более низкое напряжение, чем фактическое напряжение., @BIGsmall

Если вы что-то попробуете, и это не сработает должным образом, напишите эту информацию в вопросе (а не в комментариях). Вы написали, что попробовали расчет и получили более низкие напряжения. Так что напишите в своем вопросе: код, который вы использовали для расчета со всеми соответствующими значениями, какие напряжения он выдает и какие напряжения вы измеряли, как внешне., @chrisl


1 ответ


Лучший ответ:

0

Как упомянул KIIV, вам нужно сделать математику:

Используйте этот онлайн-калькулятор делителя напряжения, чтобы рассчитать максимальное входное напряжение.

  • Имейте в виду, что напряжение Arduino не должно превышать 5 В.
  • Используйте мультиметр для измерения фактического сопротивления резисторов.
  • Посчитайте для своего примера, предполагая, что R1 равно 100 К, а R2 – 10 К, вам нужно умножить напряжение на 11.
  • помните, что любая ошибка также будет умножаться на 11, поэтому убедитесь, что первое показание является точным/стабильным.

ADS1115 на самом деле 15-битный, что даст вам разрешение 32768, с настройкой PGA по умолчанию вы получите: 6,144/32768 = 0,0001875 В на бит.

Voltage = (your ADC reading) * 0.0001875V;
Voltage = Voltage * 11;

Посмотрите на этот вопрос/ответ, чтобы увидеть, как я уменьшил шум АЦП Arduino. Некоторые шаги можно выполнить и для ADS1115.

,