Использование датчика рН 5В с узлом 3,3В

Я пытаюсь использовать датчик pH с NodeMCU, проблема в том, что NodeMCU составляет 3,3 V и РН аналогового датчика требует 5В. Сначала я думал, используя VIN контакта PIN, но не работал, затем я использовал Ву Пин от NodeMCU v3 с (по Lolin), но это не дает мне правильные значения, как если бы он пропустил большую мощность. Есть ли какой-нибудь другой способ? Или любая плата esp8266, которая поддерживает 5В аналоговый вход?

, 👍3

Обсуждение

Попробуйте получить плату АЦП 5 В, с которой вы можете разговаривать через I2C, и преобразователь логического уровня 5 В->3,3 В для шины I2C., @Code Gorilla

в конце концов, ваш разделитель, вероятно, был в порядке - некоторые платы NodeMCU не выдают 5 В на VIN. На платах разработчиков NodeMCU нет тонны согласованности, но я обнаружил, что все с CH340 в этом отношении недостаточны, а все CP2102 хороши, ищите "amica" на обороте и избегайте тех, на которых написано "lolin". Все мини-устройства Wemos D1, которые я пробовал (около 20 единиц в 3 вариантах), работают и имеют 3,3 АЦП и 5 В VIN, как и ожидалось., @dandavis


4 ответа


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

4

В зависимости от вашего конкретного датчика и настройки источника питания у вас есть следующие опции:

  1. Изменение напряжения питания
    Большинству резистивных датчиков не нужно ничего питать, и они будут нормально функционировать при напряжении менее 5 В. Изучите техническое описание и проведите тестовые измерения, чтобы выяснить, подходит ли это.

  2. Используйте делитель напряжения
    Подайте на датчик напряжение 5 В и используйте простой делитель напряжения перед подключением к вашему микроконтроллеру, поэтому измерьте 0-3,3 В.

  3. Интерфейс другой микросхемы
    Приобретите небольшой внешний АЦП, который может обрабатывать показания 5 В и может быть подключен по любому последовательному протоколу, поддерживаемому вашим esp8266 (а именно UART и I2C).

,

Я бы также рекомендовал использовать внешний АЦП, например: [ссылка](https://www.adafruit.com/product/856), @Denis Vitez

Внешний АЦП является наименее выгодным вариантом, поскольку ему требуется больше аппаратной работы (возможно, даже в другом корпусе), ГОРАЗДО больше кода и, как правило, менее эффективен., @mystery

@mistery Спасибо за ваш ответ! Ну, на самом деле я уже пробовал с делителем напряжения от 5 В до 3,3 В и работал, но только в некоторых случаях; Я использую вывод NodeMCU VU, который предположительно дает 5 В, но, например, когда pH ниже, датчику требуется больше мощности, чтобы выдавать точное значение, и когда это происходит, NodeMCU перестает получать эти показания, скажем, ниже 4,80 (в масштабе 0-14) он перестает считывать изменения аналогового значения, поэтому я думаю, что, вероятно, NodeMCU не может обеспечить 5 В. Мой делитель напряжения с 1K и 2K, я думаю, возможно, использовать плату Wemos, у нее контакт 5 В, как вы думаете?, @Javier Guerrero

Я все еще не знаю, какая именно плата у вас есть. Моя идея заключалась в том, чтобы включить датчик от вашего источника питания, а не через чип. Вам действительно следует изучить технический паспорт датчика, чтобы получить представление о его поведении, @mystery


5

Самый простой метод - это просто делитель напряжения-так же, как если бы вы соединяли выходной логический сигнал 5 В с входом 3,3 В. Однако это может и не сработать.

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

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

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

schematic

В качестве альтернативы, как предлагали другие, используйте внешний АЦП 5 В и преобразование логического уровня для связи с ESP8266.

,

3

Старая тема, но на случай, если она появится в поисках, как та, которую я только что делал ... Я запускаю 5 В ультразвуковой SR04 от нодема Lolin, и если вы подключитесь к "VU" на нодеме Lolin, вы получите 5 В.

,

Проверено здесь с помощью вольтметра, и действительно " VU` дает 5 В. Молодец!, @brasofilo

Частью проблемы также было считывание 5 В с датчика, @Alex G


0

Вы, ребята, проверили спецификацию ESP-12 Aithinker'а? В документе китайского издания есть описание, в котором говорится, что если вы подключаете другие устройства, работающие в 5 В, вы должны использовать промежуточную схему преобразователя уровня.

,

вопрос в питании, а не в последовательной связи, @Juraj