В эпоху «умного земледелия» и домашних оранжерей всё больше людей стремятся автоматизировать уход за растениями. Один из ключевых инструментов для этого — датчик влажности почвы. Среди доступных решений особое место занимает датчик влажности почвы TZT — практичный и недорогой сенсор, легко интегрируемый с Arduino.
Как устроен и как работает датчик влажности почвы TZT для Arduino
Датчик состоит из двух основных частей:
- чувствительного щупа (металлические электроды, погружаемые в почву);
-
электронного модуля с обработкой сигнала и интерфейсами подключения.
Принцип действия основан на измерении электрического сопротивления между электродами:
- в сухой почве сопротивление высокое;
-
во влажной почве сопротивление снижается из‑за проводимости воды.
Электронный модуль преобразует аналоговый сигнал в:
- аналоговый выход (A0) — плавное значение влажности (удобно для точного мониторинга);
-
цифровой выход (D0) — логический сигнал «сухо/влажно» по заданному порогу (удобно для управления реле).
Ключевые характеристики датчика влажности почвы TZT для Arduino
- Напряжение питания: 3,3–5 В (типично для Arduino).
-
Токи: около 35 мА в рабочем режиме.
-
Выходы: аналоговый (A0) и цифровой (D0).
-
Регулировка порога: встроенный потенциометр для настройки чувствительности.
-
Индикация: светодиоды питания и срабатывания (на некоторых моделях).
-
Размеры: модуль — ~16 × 30 мм; щуп — ~20 × 60 мм.
-
Вес: около 7,5 г.
Важно:
- Щуп погружайте в почву на нужную глубину, избегая контакта электроники с грунтом.
-
Для длинных линий (более 20 см) рекомендуется экранирование или использование буферных усилителей.
-
Периодически очищайте электроды от налёта и коррозии.
Как настроить чувствительность
Подключите датчик к Arduino и загрузите простой скетч для чтения A0.
Вращая потенциометр на модуле, наблюдайте за значениями в Serial Monitor.
Установите порог так, чтобы:
- при сухой почве D0 давал HIGH;
-
при влажной почве D0 давал LOW (или наоборот, в зависимости от логики проекта).
Для аналогового режима зафиксируйте диапазоны значений «сухо» — «влажно» и используйте их в коде.
Типичные проекты и сценарии
1.
Автополив комнатных растений
- датчик следит за влажностью;
-
при достижении порога включается реле, управляющее насосом или клапаном;
-
полив останавливается, когда почва достаточно увлажнена.
2.
Умная теплица
- несколько датчиков в разных зонах;
-
сбор данных на центральный контроллер (Arduino + Ethernet/Wi‑Fi);
-
визуализация на веб‑панели и уведомления при критических значениях.
3.
Учебный эксперимент
- изучение зависимости проводимости от типа почвы и её влажности;
-
построение графиков в реальном времени (например, через Serial Plotter в Arduino IDE).
4.
Садовый мониторинг
- автономная станция с логгером данных (SD‑карта);
-
периодическая запись влажности для анализа сезонных изменений.
Плюсы и ограничения датчика влажности почвы TZT для Arduino
Преимущества:
- низкая стоимость и доступность;
-
простое подключение к Arduino;
-
два выхода (аналоговый и цифровой) для разных задач;
-
регулировка порога чувствительности;
-
компактные размеры.
Ограничения:
- электроды со временем могут окисляться и требовать очистки;
-
точность зависит от типа почвы (солевой состав, плотность);
-
не предназначен для постоянного погружения в воду;
-
для промышленных систем может потребоваться калибровка и защита от агрессивных сред.
Советы по эксплуатации
- Калибруйте датчик на реальной почве из вашего проекта.
-
Защищайте электронный модуль от влаги и механических повреждений.
-
Используйте реле для управления мощными нагрузками (насосы, клапаны).
-
Добавляйте задержку в код (например, 10–30 с между замерами), чтобы избежать «дребезга» и ложных срабатываний.
-
Комбинируйте с датчиками температуры и освещённости для более точной картины.
Скетч для датчика влажности почвы TZT на Arduino
Необходимые компоненты:
- Плата Arduino (Uno, Nano, Mega и др.)
-
Датчик влажности почвы TZT
-
Соединительные провода
Схема подключения:
- VCC датчика → 5 V Arduino
-
GND датчика → GND Arduino
-
SIG (аналоговый выход) → A0 Arduino
Особенности датчика TZT
Работает от напряжения 3,3–5,5 В.
Аналоговый выход выдаёт значение в диапазоне 0–1023 (при питании 5 В).
Чем выше значение — тем суше почва; чем ниже — тем влажнее.
Базовый скетч (вывод значений в монитор порта)
const int SENSOR_PIN = A0; // Пин подключения датчика
void setup() {
Serial.begin(9600); // Инициализация Serial-порта
pinMode(SENSOR_PIN, INPUT);
}
void loop() {
int sensorValue = analogRead(SENSOR_PIN); // Считываем значение
Serial.print("Сырое значение: ");
Serial.println(sensorValue);
delay(1000); // Задержка 1 с между измерениями
}
|
Расширенный скетч (с переводом в проценты и калибровкой)
const int SENSOR_PIN = A0; // Пин датчика
const int DRY_VALUE = 700; // Значение для сухой почвы (калибровать!)
const int WET_VALUE = 200; // Значение для влажной почвы (калибровать!)
void setup() {
Serial.begin(9600);
pinMode(SENSOR_PIN, INPUT);
}
void loop() {
int sensorValue = analogRead(SENSOR_PIN);
// Переводим в проценты (0 % — максимально влажно, 100 % — максимально сухо)
int moisturePercent = map(sensorValue, WET_VALUE, DRY_VALUE, 0, 100);
moisturePercent = constrain(moisturePercent, 0, 100); // Ограничиваем диапазон 0–100 %
Serial.print("Влажность: ");
Serial.print(moisturePercent);
Serial.println(" %");
delay(1000);
}
|
Пояснения к расширенному скетчу
1. Калибровка (DRY_VALUE и WET_VALUE)
DRY_VALUE — значение датчика в сухой почве (измерьте и подставьте своё).
WET_VALUE — значение датчика в полностью влажной почве (измерьте и подставьте своё).
Для калибровки:
Погрузите датчик в воду — запишите значение (WET_VALUE).
Оставьте датчик на воздухе — запишите значение (DRY_VALUE).
2. Функция map()
Преобразует сырые значения датчика (например, 200–700) в проценты (0–100 %).
Формула: map(значение, min_сырое, max_сырое, min_проценты, max_проценты).
3. Функция constrain()
Ограничивает результат в диапазоне 0–100 %, чтобы избежать некорректных значений.
Рекомендации по использованию
1. Калибровка
- Проводите калибровку в реальных условиях (тип почвы, температура, глубина установки).
-
Повторяйте калибровку при изменении условий (сезон, состав почвы).
2. Размещение датчика
- Вставляйте вертикально в почву на глубину корневой системы растений.
-
Избегайте контакта с камнями и воздухом (датчик должен быть полностью в почве).
3. Защита от коррозии
- Датчик TZT имеет защитное покрытие, но не оставляйте его в воде надолго.
-
Периодически очищайте контакты от грязи.
4. Питание
- Используйте стабильное напряжение 5 В (или 3,3 В, если датчик поддерживает).
-
При нестабильном питании добавьте конденсатор 10 мкФ между VCC и GND.
Дополнительные возможности
- Управление поливом — добавьте реле и насос, включайте полив при влажности < 30 %.
-
Логгирование данных — записывайте значения на SD‑карту или передавайте в облако.
-
Визуализация — подключите LCD‑дисплей для отображения влажности.
-
Оповещение — добавьте зуммер или светодиод для индикации критического уровня влажности.