Эта статья расскажет вам, как применять датчик протечки и дождя Arduino. Устройство имеет несколько названий: датчик протечки, влаги, капель, утечки. Но называют его в основном датчик дождя. Хотя речь идет об одном и том же приборе, выполненном в виде готового блока. Датчик легко подключается к Arduino, схема подсоединения довольно проста, стоимость устройства невысокая.

Характеристика датчика

В проектах Arduino датчик дает возможность обнаружить появление влаги и своевременно оповестить об этом, включив сигнализацию. Системы Arduino широко применяются в сельском хозяйстве, в автомобилестроении, также в иных областях. Принцип действия основан на изменении сопротивления. Когда датчик сухой то сопротивление его равно бесконечности, а когда между электродами появляется влага то его сопротивление меняется — все крайне просто.

Модуль состоит из двух частей.

  • Сенсорная панель распознавания — обычный резистор переменного тока. Вода, попадая на плату, замыкает контакты, из-за чего изменяется значение сопротивления.
  • Двойной компаратор. Его задача состоит в преобразовании показателей с сенсора в аналоговый сигнал от 0 до 5 вольт. В разных видах датчиков сенсор и компаратор либо объединены, либо располагаются отдельно друг от друга.

Для питания датчика необходимо напряжение 5 В.

Модуль имеет два выхода:

  • Аналоговый. Величина, получаемая датчиком, будет изменяться в промежутке от 0 до 1023, где 0 – это означает ливень, и все затоплено водой, а 1023 – осадков нет, и сенсор полностью сухой. Ест приборы, в которых значения противоположные (0 – это максимально сухо, 1023 — максимально влажно).
  • Цифровой. Прибор выдает высокое(5В) или низкое значение в случае, если условная граница превышается. Уровень превышения регулируется подстрочным резистором.

Включение в работу датчика дождя

Чтобы подключит датчик к Arduino, нужна плата и собственно, сам прибор. Если есть необходимость проверить плотность осадков, то устройство рекомендуют располагать под углом, чтобы дать возможность влаге стекать вниз. Аналоговый вход подсоединяется к пину контроллера. Цифровой вход подсоединяется к цифровому пину. Напряжение подается от источника 5В платы Arduino, заземление соединяется между собой. При проектировании в обязательном порядке предусматривается защита электрической части от попадания воды.

Проект с дождевой сигнализацией.

Существует вариант, когда взамен сигнализации подключается реле, и тогда выполняются различные действия по размыканию цепи. В данном примере мы будем пересылать полученную информацию в монитор ячейки по UART-интерфейсу.

Пример скетча для проекта с применением сигнализации


#define PIN_RAIN_SENSOR A1  // Аналоговый вход для сигнала датчика протечки и дождя
#define PIN_ALERT 6         // Цифровой выход для сигнализации
#define MAX_COUNTER 30      // Пороговое значение для счетчика
#define ALERT_LEVEL 300     // Пороговое значение для счетчика
int curCounter= 0; // Счётчик для сбора "статистики", который увеличивается на 1 каждую секунду после срабатывания датчика
 
void setup(){
   Serial.begin(9600);
   pinMode(PIN_ALERT, OUTPUT);
   pinMode(PIN_RAIN_SENSOR, INPUT); // Можно не указывать, т.к. это значение по умолчанию
}
void loop(){
   int sensorValue = analogRead(PIN_RAIN_SENSOR);
   Serial.println(sensorValue); // Выводим значение в монитр порта
   delay(300); // короткая задержка
   // Если накопили достаточно оснований для включения сигнализации
   if (curCounter >= MAX_COUNTER){
      digitalWrite(PIN_ALERT, HIGH);  // Срабатывание сигнализации
      curCounter = MAX_COUNTER;       // Защита от переполнения переменной
   }
 
   // Определяем уровень влажности
   if (sensorValue < ALERT_LEVEL){
      // В очередной раз убедились, что все влажно, увеличиваем счетчик
      curCounter++;                 
   }else { 
      // Интенсивность дождя не превышает порога
      digitalWrite(PIN_ALERT, LOW); // Выключаем сигнализацию
      curCounter = 0; // Обнуляем счетчик
   }
   
   delay(1000); // Задержка между измерениями
}

В скетче представлен текстовый шифр, активирующий звуковой сигнал на цифровом разъеме 6, с временной выдержкой для исключения фальшивых включений при внезапном попадании влаги на поверхность сенсора. Функционирует устройство с помощью переменной, которая каждую секунду преобразовывается и выступает в качестве порога — curCounter.

Далее представлен код, активирующий звуковой сигнал на цифровом разъеме 6, с задержкой времени, для того, чтобы исключить ложные включения при нечаянном попадании водяных капель на сенсор. Сигнализация срабатывает в случае, если величина, пересылаемая с сенсора, будет менее 300. Интервал между выявлением влажность и включением звукового оповещения составляет около 30 секунд.

Схема подключения датчика дождя к Arduino

Подведем итоги

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

Автор
Staticvoid

Администратор сайта http://www.radiodetector.ru

Добавить комментарий

Популярные записи

Датчики атмосферного давления bmp180, bmp280

Довольно часто в некоторых проектах на Arduino или проектах на основе микроконтроллеров, применяют такие...

Подключение и настройка LCD модуля 1602 к Arduino

Жидкокристаллический дисплей (Liquid Crystal Display) LCD 1602 - очень популярен в последнее время ввиду простоты его...

Arduino Uno: распиновка, назначение выводов, принципиальная схема

Arduino Uno:— платформа для разработки на базе микроконтроллера ATmega328P...

Детектор электромагнитного поля на микроконтроллере ATTiny85V

Представляем довольно интересную схемку детектора электромагнитного поля на микроконтроллере ATTiny85V. При...