
Интернет-магазин «Неглупый Дом»
Датчик YL-69 измеряет влажность почвы по проводимости между электродами, а Arduino включает реле насоса, когда земля пересыхает — простая автоматика без постоянного участия человека.
YL-69 — это просто два металлических электрода-щупа, которые втыкаются в землю. Между ними измеряется электрическое сопротивление почвы: влажная земля хорошо проводит ток (сопротивление ниже), сухая — плохо (сопротивление выше). Плата-компаратор, которая обычно идёт в комплекте с щупом, преобразует это сопротивление в аналоговое напряжение на выходе AO — чем суше почва, тем выше значение, которое считывает Arduino через `analogRead()`.
Модуль реле в этой связке работает как электронный выключатель: слаботочный сигнал с Arduino (5В, миллиамперы) переключает контакты реле, которые уже коммутируют цепь питания насоса — насос запитан от ОТДЕЛЬНОГО источника (например, блока питания 12В), Arduino им напрямую не управляет, только даёт команду через реле.
Так как реализации данного модуля бывают разные, если у вас на плате нет тех контактов, что указаны ниже — сориентируйтесь по названиям контактов на своей плате.
// ВНИМАНИЕ: рекомендую отладить код через монитор порта, так как я языковая
// модель, а не специализированный кодер, и могу что-то упустить.
const int soilPin = A0; // аналоговый выход датчика влажности почвы
const int relayPin = 7; // сигнальный пин модуля реле
const int dryThreshold = 600; // порог "сухо" — подберите под свою почву опытным путём
const unsigned long wateringTime = 3000; // сколько миллисекунд льём воду за один полив
const unsigned long checkInterval = 60000; // как часто проверяем влажность (мс)
void setup() {
pinMode(relayPin, OUTPUT);
digitalWrite(relayPin, LOW); // реле выключено при старте
Serial.begin(9600);
}
void loop() {
int value = analogRead(soilPin); // считываем текущее значение влажности
Serial.print("Влажность (сырое значение): ");
Serial.println(value);
if (value > dryThreshold) { // чем суше почва, тем выше значение на этом датчике
Serial.println("Почва сухая, включаю полив");
digitalWrite(relayPin, HIGH); // включаем насос через реле
delay(wateringTime);
digitalWrite(relayPin, LOW); // выключаем насос
}
delay(checkInterval); // ждём перед следующей проверкой
}
Порог `dryThreshold` подбирается под конкретную почву — воткните датчик в сухую и во влажную землю и посмотрите значения через Serial-монитор (Инструменты → Монитор порта в Arduino IDE).
Ещё модули для Arduino: Электронные модули.
🎁 Купить весь комплект со скидкой 10%
Все 2 товара сразу в корзину: 233 ₽ 210 ₽ (экономия 23 ₽)
Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.
Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.