Arduino:Примеры/Гайд по использованию датчика влажности YL-69 или HL-69 с Arduino
Поддержать проект | Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
![]() |
Черновик |
Содержание
Гайд по использованию датчика влажности YL-69 или HL-69 с Arduino[1]
Датчик влажности почвы (или гигрометр) используется, как правило, для определения влажности почвы. Он пригодится для проектирования автоматической системы полива или отслеживания влаги в почве, где растут ваши растения.
Датчик влажности почвы состоит из двух частей: электронной платы (на картинке ниже расположена справа) и измерительной части с двумя пластинами, которая определяет наличие воды (на картинке расположена слева).
Чувствительность датчика влажности почвы настраивается встроенным потенциометром. Кроме того, датчик оснащен двумя светодиодами: первый загорается, когда на плату подается питание, а второй – при выводе цифровых данных. Подробнее смотрите на рисунке ниже.
Как это работает
Выходное напряжение датчика варьируется в зависимости от количества воды, содержащейся в почве.
- Если почва влажна – выходное напряжение уменьшается
- Если почва суха – выходное напряжение увеличивается
На выходе будет цифровой сигнал (D0) – LOW или HIGH, в зависимости от содержания воды в почве. То есть, если влажность почвы превысит определенное пороговое значение, модуль вернет значение LOW, а если нет – HIGH. Пороговое значение для цифрового сигнала настраивается при помощи потенциометра.
На выходе может быть и аналоговый сигнал, что позволяет измерять влажность значениями в диапазоне от «0» до «1023».
Скетч: Использование датчика влажности почвы с Arduino
Это скетч-пример, демонстрирующий, как использовать датчик влажности почвы в проектах с Arduino.
В этом скетче мы, используя Arduino, прочтем с датчика аналоговые данные, а затем покажем эти данные в мониторе порта IDE Arduino.
Необходимые компоненты
Для этого проекта нам понадобятся следующие компоненты:
- Один датчик влажности YL-69 (см. на eBay)
- Одна плата Arduino (см. на eBay)
- Одна макетная плата
- Два резистора на 220 Ом
- Один красный светодиод
- Один зеленый светодиод
- Провода-перемычки
Подключение контактов
В подключении датчика и Arduino друг к другу нет ничего сложного:
- Контакт A0 на датчике – к аналоговому контакту на Arduino
- Контакт D0 – к цифровому контакту
- Контакт GND – к контакту GND
- Контакт VCC – к контакту 5V
Схема
Ниже – схематическое изображение проекта:
Код
Загрузите скетч, показанный ниже, в плату Arduino.
1 /*
2
3 Более подробно о проекте на:
4 http://randomnerdtutorials.com/
5
6 */
7
8 int rainPin = A0;
9 int greenLED = 6;
10 int redLED = 7;
11 // пороговое значение указывается тут:
12 int thresholdValue = 800;
13
14 void setup(){
15 pinMode(rainPin, INPUT);
16 pinMode(greenLED, OUTPUT);
17 pinMode(redLED, OUTPUT);
18 digitalWrite(greenLED, LOW);
19 digitalWrite(redLED, LOW);
20 Serial.begin(9600);
21 }
22
23 void loop() {
24 // считываем входные данные с аналогового контакта 0:
25 int sensorValue = analogRead(rainPin);
26 Serial.print(sensorValue);
27 if(sensorValue < thresholdValue){
28 Serial.println(" - Doesn't need watering");
29 // " – Полив не нужен"
30 digitalWrite(redLED, LOW);
31 digitalWrite(greenLED, HIGH);
32 }
33 else {
34 Serial.println(" - Time to water your plant");
35 // " – Пора поливать!"
36 digitalWrite(redLED, HIGH);
37 digitalWrite(greenLED, LOW);
38 }
39 delay(500);
40 }
Откройте монитор порта IDE Arduino, а потом опробуйте датчик на влажной и сухой почве. В мониторе порта должны появиться данные, соответствующие тому или иному состоянию почвы.
Если аналоговое значение превысит заданный порог, включится красный светодиод (это будет значить, что растения пора поливать), а если оно будет ниже порогового значения, должен включиться зеленый светодиод (это будет значить, что с влажностью почвы все в порядке).
См.также
Внешние ссылки