Датчики уровня воды являются важным компонентом для мониторинга уровня жидкости в различных ситуациях, будь то в системах автоматического полива, датчиках утечки воды или уровня воды в резервуарах.
Датчик уровня воды представляет собой простое устройство с тремя контактами, которое легко интегрируется в различные системы автоматизации и проекты Умного дома. Его рабочее напряжение составляет 5 вольт, и его выходное напряжение зависит от того, насколько датчик погружен в жидкость. Чем больше погружение, тем выше выходное напряжение. Это напряжение, в свою очередь, отображается на аналоговом входе микроконтроллера.
Когда датчик находится полностью вне воды, его выходное напряжение и показания на аналоговом входе будут минимальными, близкими к нулю. По мере погружения датчика в воду значения будут увеличиваться, достигая максимума в условиях полного погружения. Это обеспечивает возможность получать разнообразные данные о уровне жидкости в системе и использовать их для соответствующих задач автоматизации.
Компоненты, используемые в этом примере:
Схема подключения
Для взаимодействия с датчиком уровня воды необходимо провести его подключение к аналоговому входу на плате Arduino. Поскольку данный датчик передает информацию в аналоговом формате, он должен быть подключен к соответствующему аналоговому входу на плате микроконтроллера.
Датчик уровня воды | Arduino |
---|---|
VCC | 5V |
GND | GND |
Signal | Аналоговый порт (например, A0) |
Пример кода
Данный код представляет собой программу для Arduino, предназначенную для мониторинга уровня воды с использованием аналогового датчика. Программа осуществляет считывание значений с датчика, подключенного к плате Arduino, и в зависимости от полученных данных управляет светодиодом, отображая информацию о текущем уровне воды. Код предоставляет возможность простого контроля и визуального оповещения о состоянии уровня жидкости.
Как работает датчик уровня воды и как его подключить к Arduino
Переполнение различных контейнеров/емкостей для хранения воды является достаточно частой проблемой для многих домохозяйств. Конечно, существуют специальные шаровые клапаны, которые автоматически перекрывают поток воды при достижении уровнем воды определенного уровня, но в ряде случаев применение электронного устройства для решения этой задачи выглядит более предпочтительным.
Поэтому в данной статье мы рассмотрим принципы работы датчика уровня воды (water level sensor) и его подключение к плате Arduino. Ранее на нашем сайте мы рассматривали следующие проекты, связанные с определением уровня воды:
- индикатор уровня воды на Arduino Uno;
- интеллектуальный индикатор сточных вод на ESP8266 NodeMCU;
- измерение уровня воды с помощью Arduino и водонепроницаемого датчика JSN SR-40T.
Необходимые компоненты
- Плата Arduino Uno (купить на Aliexpress).
- Датчик уровня воды (купить на Aliexpress).
- Резистор (купить на Aliexpress).
- Светодиод (купить на Aliexpress).
- Макетная плата.
- Соединительные провода.
Как работает датчик уровня воды
Распиновка датчика уровня воды
Датчик уровня воды имеет 3 контакта, работает от 5V и передает на свой выход аналоговые данные. Его распиновка показана на следующем рисунке.
VCC – через данный контакт на датчик подается питающее напряжение 5V.
GND – общий провод (земля). Его необходимо подключить к общему проводу платы Arduino.
OUT – аналоговый выход датчика, на котором формируется аналоговый сигнал с уровнем в диапазоне от GND до VCC.
Принципы работы датчика уровня воды
На печатной плате датчика расположены длинные проводящие пластины и при достижении водой определенного уровня проводимость между двумя пластинами изменяется. Измеряя величину этих изменений мы можем определить уровень воды.
На представленной Gif картинке наглядно показан принцип работы датчика уровня воды. Как вы можете видеть из представленного рисунка, капли воды падают в стакан, уровень воды поднимается, а вместе с ним пропорционально повышается и уровень напряжения на выходном каскаде датчика. Это происходит из-за того, что на печатной плате датчика расположено 10 проводящих пластинок, 5 из которых являются питающими, а другие 5 – сенсорными.
Компоненты датчика уровня воды
Датчик, по своей сути, очень простой, поэтому и компонентов в нем немного. Компоненты датчика показаны на следующем рисунке.
Датчик содержит 3 контакта, 2 из которых используются для подачи питания на датчик, а третий является выходным контактом датчика. Также датчик содержит встроенный светодиод, который загорается при подаче питания на датчик, транзистор и несколько резисторов.
Наиболее часто задаваемые вопросы про датчик уровня воды
Какие основные типы датчиков уровня воды существуют: Существуют 6 основных типов подобных датчиков: резистивные, емкостные, ультразвуковые, частотные, на основе поверхностных волн (GWR) и на основе датчиков давления. Каждый из этих типов датчиков имеет свои достоинства и недостатки.
Для чего используются датчики уровня воды? Подобные датчики используются для измерения уровня жидкостей и текучих сред, а также псевдосжиженных твердых тел, включая гидросмеси, зернистые (гранулированные) материалы, порошки и т.д.
Можно ли сделать датчик уровня воды самому? Если у вас есть в наличии светодиоды, зуммер и чувствительные провода, то данный датчик можно изготовить самому.
Можно ли уровень воды определять с помощью ультразвукового датчика? Да, можно. С помощью ультразвукового датчика мы можем определять расстояние между источником ультразвукового сигнала и поверхностью воды. Подобный проект на основе платы Arduino мы уже рассматривали на нашем сайте.
Схема модуля датчика уровня воды
Схема модуля датчика уровня воды представлена на следующем рисунке.
В представленной схеме коллектор транзистора подключен к источнику напряжения 5V, а эмиттер транзистора подключен к земле через резистор 100 Ом. В модуле датчика 5 проводящих пластин подключены к контакту Vcc через резистор 100 Ом, а остальные 5 пластин подключены к базе NPN транзистора. Теперь, если вода будет достигать этих проводящих пластин, ток начнет протекать от источника 5V на базу транзистора и транзистор будет открываться. И чем больше датчик будет погружен в воду, тем большее напряжение будет на его выходе.
Схема проекта
Схема подключения датчика уровня воды к плате Arduino Uno представлена на следующем рисунке.
В данной схеме мы подключили выходной контакт датчика уровня воды к контакту A0 платы Arduino, а светодиод – к ШИМ контакту 6 платы Arduino. Программу нашего проекта мы напишем таким образом, чтобы яркость свечения светодиода изменялась в зависимости от уровня воды, измеряемого датчиком.
Объяснение программы для Arduino
Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.
В программе мы будем считывать аналоговое значение напряжения с выхода датчика и на основе его значения определять уровень воды.
Код программы мы начнем с указания осмысленных имен для используемых контактов – к которым подключены датчик уровня воды и светодиод.