====== Модуль датчика дождя ======
===== Описание =====
Датчик дождя используется для получении данных о попадании на датчик влаги любого типа: воды, пара или других жидкостей. Никелерованная поверхность датчика продлевает срок службы, защищая датчик от вредных воздействий жидкости (коррозия). Датчик может использоваться в системах сигнализации протечек жидкости, погодных станциях и прочих проектах связанных с обнаружением влаги. Аналого - цифровой модуль позволяет как получать данные о влаге, присутствующей на датчике, так и работать напрямую с устройствами, выдавая цифровой сигнал о превышении/уменьшении порогового значения. Имеет регулятор, что позволяет подстраивать датчик под нужды конкретного проекта. Модуль имеет два светодиода: первый (красный) - индикация питания, второй (зеленый) - индикация превышения/уменьшения порогового значения.

//Примечание: Датчики уровня жидкости Keyestudio также можно использовать как датчик дождя, но модули имеют только аналоговый вывод.//

==== Технические характеристики ====
  * Напряжение питания 3,3 - 5 В
  * Потребляемый ток 15 мА

==== Физические размеры ====
  * Модуль (Д х Ш х В): 41 х 14 х 8 мм
  * Датчик (Д х Ш х В): 50 х 40 х 8 мм

==== Плюсы использования ====
  * Недорогое решение для проектов обнаружения влаги
  * Просты в подключении
  * Регулировка чувствительности
  * Имеют как аналоговый так и цифровой выводы

==== Минусы использования ====
  * После окончания дождя, нужно время чтобы датчик высох (что может быть неудобным для погодных станций)

===== Примеры подключения и использования =====
**Пример 1**

В примере демонстрируется получение данных с датчика и вывод их в монитор Serial - порта. (Пример тестировался на контроллере Smart UNO)

^ Что нужно                                                                                                                          ^ Кол-во, шт  ^
| [[http://smartelements.ru/collection/kontrollery/product/kontroller-smart-uno|Контроллер Smart UNO]]                                       | 1           |
| [[http://smartelements.ru/collection/datchiki-i-sensory/product/modul-datchika-dozhdya|Модуль датчика дождя]]  | 1           |
| [[http://smartelements.ru/collection/provoda-i-kabeli/product/nabor-provodov-20-sht-20sm-papa-mama|Провода папа-мама]]             | 4           |

**Схема подключения:**
{{ главная:датчики:rain_sensor.jpg?nolink |}}

**Скетч для загрузки:**
<file Arduino>
const int analogSignal = A0; //подключение аналогового сигналоьного пина
const int digitalSignal = 8; //подключение цифрового сигнального пина
boolean noRain; //переменная для хранения значения о присутствии влаги
int humidity = 0; //переменная для хранения степени влажности

void setup() {
  pinMode(digitalSignal, INPUT); //установка режима пина
  Serial.begin(9600); //инициализация Serial порта

}

void loop() {
  noRain = digitalRead(digitalSignal); //считываем значение о присутствии влаги
  humidity = analogRead(analogSignal); // и о степени влажности

  //вывод сообщения
  Serial.print("There is ");
  if (noRain) Serial.print("no rain");
  else Serial.print("rain");
  Serial.print(", the humidity value is ");
  Serial.println(humidity);
  
  delay(1000); //задержка 1 с
}
</file>

**Пример 2 (Для датчика Keyestudio)**

В примере демонстрируется получение данных с датчика уровня жидкости и вывод их в монитор Serial - порта. (Пример тестировался на контроллере Smart UNO)

^ Что нужно                                                                                                                          ^ Кол-во, шт  ^
| [[http://smartelements.ru/collection/kontrollery/product/kontroller-smart-uno|Контроллер Smart UNO]]                                       | 1           |
| [[http://smartelements.ru/collection/datchiki-i-sensory/product/datchik-urovnya-zhidkosti-keyestudio|Модуль датчика дождя Keyestudio]]  | 1           |
| [[http://smartelements.ru/collection/provoda-i-kabeli/product/nabor-provodov-20-sht-20sm-papa-mama|Провода папа-мама]]             | 3           |

**Схема подключения:**
{{ :главная:датчики:rain_sensor_keyestudio.jpg?nolink |}}

**Скетч для загрузки:**
<file Arduino>
const int analogSignal = A0; //подключение аналогового сигналоьного пина
int humidity = 0; //переменная для хранения количества влаги

void setup() {
  Serial.begin(9600); //инициализация Serial порта
}

void loop() {
  humidity = analogRead(analogSignal); // чтение информации о количестве влаги

  //вывод сообщения
  Serial.print("The humidity value is ");
  Serial.println(humidity);
  
  delay(1000); //задержка 1 сек
}
</file>