Эта статья расскажет вам, как применять датчик протечки и дождя 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. С помощью полученных данных можно включать в работу оповещение или другие устройства, используя для этого реле.

Похожие записи

  • Справочник по полевым транзисторам КП731 — КП771

    Тип S1-S2/I(U) Мсим/А(В)  I01-I02/U       А/В  Iз/Uз  нА/В  C11  пф  C12  пф  C22  пф Uзи/Iс(U0 В/mА(В) Uзс  В Uзи  В Uси  В  Iс  А P/Pт  вт Тип Кан Цок КП731А КП731Б КП731В   Rc=3.6 Ом Rc=3.6 Ом Rc=5.0 Ом         (2.0-4)  (2.0-4)  (2.0-4)     20  20  20 400 350 400  2.0  2.0 […]

  • Технические характеристики импортных микрофонов

    Технические характеристики импортных микрофонов WM — 034, WM — 52, WM — 54, WM — 60, WM — 62, WM — 66, WM — 55, WM — 56 . Таблица Наименование Чувствительность Диапазон частот Уровень шумов U>пит. I>потр. К>гарм. Неравномерность АЧХ Марка мВ / Па Гц дБ В мА % дБ PANASONIC РАЗМЕР WM — 034 CY […]

  • Программирование на Arduino. Функция setup

    Функция setup() вызывается первой когда запускается скетч. Эта функция необходима для инициализации переменных, настройки режимов работы портов (выводов), для старта каких либо функций библиотек. Эта функция стартует только 1 раз, после того как было подано напряжение либо рестарта платы Arduino. int buttonPin = 3; void setup() {   Serial.begin(9600);   pinMode(buttonPin, INPUT); } void loop() {   // […]

  • GSM модуль и Arduino

    При помощи Arduino GSM модулей можно подключатся к удаленным устройства использую сотовую связь. Передача данных или команд осуществляется при помощи SMS команд или же через подключение через интернет, которое открыто через GPRS.

Только полноправные пользователи могут оставлять комментарии. Войдите , пожалуйста.

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

Справочник по полевым транзисторам КП731 — КП771

Тип S1-S2/I(U) Мсим/А(В)  I01-I02/U      ...

Технические характеристики импортных микрофонов
Технические характеристики импортных микрофонов

Технические характеристики импортных микрофонов WM - 034, WM - 52, WM - 54, WM - 60, WM - 62, WM - 66, WM - 55, WM - 56 ....

Программирование на Arduino. Функция setup

Функция setup() вызывается первой когда запускается скетч. Эта функция необходима для инициализации...

GSM модуль и Arduino
GSM модуль и Arduino

При помощи Arduino GSM модулей можно подключатся к удаленным устройства использую сотовую связь. Передача данных...