Интеграция датчика дождя и влажности почвы с AI-агентом ASI Biont: автоматизация полива без кода

Введение

Ручной полив — это не только трудозатраты, но и огромный риск для растений. Перелив приводит к загниванию корней, недолив — к увяданию. По данным Продовольственной и сельскохозяйственной организации ООН (FAO), до 60% воды при традиционном поливе тратится впустую из-за неэффективных графиков. Датчик дождя и влажности почвы (Rain / soil moisture sensor) позволяет измерять реальную влажность грунта и осадки в реальном времени, но без умной автоматизации данные остаются просто цифрами.

AI-агент ASI Biont решает эту проблему: он подключается к датчику, анализирует показания и автоматически управляет клапаном полива. В этой статье я расскажу, как настроить такую интеграцию через MQTT, используя ESP32 и ASI Biont, без единой строчки кода, написанной вручную.

Что такое Rain / soil moisture sensor и зачем подключать его к AI-агенту

Rain / soil moisture sensor — это комбинированное устройство, которое измеряет:
- Влажность почвы (емкостным или резистивным методом)
- Наличие дождя (через проводимость между контактами)

Подключив такой сенсор к AI-агенту ASI Biont, вы получаете:
- Автоматическое управление поливом — AI включает клапан только когда почва сухая и нет дождя.
- Удалённый мониторинг — данные доступны в чате с AI в реальном времени.
- Адаптивные сценарии — AI учитывает прогноз погоды (через HTTP API), время суток и историю поливов.

Как ASI Biont подключается к датчику: выбор способа

ASI Biont поддерживает несколько способов подключения к устройствам. Для датчика дождя и влажности почвы оптимальный вариант — MQTT через ESP32. Почему именно MQTT?

  1. Простота — ESP32 легко программируется в Arduino IDE, а библиотека PubSubClient для MQTT стандартна.
  2. Надёжность — MQTT работает поверх TCP, поддерживает QoS (гарантию доставки).
  3. Удалённость — датчик может находиться в саду, а AI-агент — в облаке.

Вот как это работает:
- ESP32 с датчиком публикует данные в топик sensor/soil.
- ASI Biont подписывается на этот топик через execute_python с библиотекой paho-mqtt.
- AI анализирует данные и при необходимости публикует команду в топик actuator/valve.

Конкретный сценарий использования: умный полив теплицы

Представьте: у вас теплица с томатами. Датчик установлен в грунте на глубине 10 см. ESP32 питается от батареи и раз в 10 минут отправляет показания влажности. ASI Biont анализирует тренд: если влажность падает ниже 40% и за последние 6 часов не было дождя, AI отправляет команду на открытие электромагнитного клапана на 5 минут.

Пример кода для ESP32 (прошивка)

#include <WiFi.h>
#include <PubSubClient.h>

const char* ssid = "YourWiFi";
const char* password = "YourPass";
const char* mqtt_server = "broker.hivemq.com";

WiFiClient espClient;
PubSubClient client(espClient);

int moisturePin = 34;
int rainPin = 35;

void setup() {
  Serial.begin(115200);
  WiFi.begin(ssid, password);
  client.setServer(mqtt_server, 1883);
  client.setCallback(callback);
}

void loop() {
  if (!client.connected()) reconnect();
  client.loop();

  int moisture = analogRead(moisturePin);
  int rain = analogRead(rainPin);

  String payload = "{\"moisture\":" + String(moisture) + ",\"rain\":" + String(rain) + "}";
  client.publish("sensor/soil", payload.c_str());

  delay(600000); // 10 минут
}

void callback(char* topic, byte* message, unsigned int length) {
  // Команда на клапан
  if (strcmp(topic, "actuator/valve") == 0) {
    String msg;
    for (int i = 0; i < length; i++) msg += (char)message[i];
    if (msg == "ON") {
      digitalWrite(5, HIGH); // Включаем клапан
    } else {
      digitalWrite(5, LOW);
    }
  }
}

Как AI подключается к MQTT-брокеру

Пользователь просто пишет в чате ASI Biont:

«Подключись к MQTT-брокеру broker.hivemq.com, подпишись на топик sensor/soil, анализируй влажность и при падении ниже 40% публикуй команду ON в топик actuator/valve, если за последние 6 часов не было дождя. Данные о дожде бери из того же топика.»

AI генерирует и выполняет следующий Python-скрипт через execute_python:

import paho.mqtt.client as mqtt
import json
import time
from datetime import datetime, timedelta

BROKER = "broker.hivemq.com"
TOPIC_SENSOR = "sensor/soil"
TOPIC_VALVE = "actuator/valve"

moisture_history = []
rain_last_6h = False

def on_message(client, userdata, msg):
    global rain_last_6h
    data = json.loads(msg.payload)
    moisture = data.get("moisture", 0)
    rain = data.get("rain", 0)

    # Если датчик дождя показывает > 500 (сухо) — дождя нет
    if rain > 500:
        rain_last_6h = False
    else:
        rain_last_6h = True

    # Сохраняем историю влажности
    moisture_history.append((datetime.now(), moisture))
    # Удаляем записи старше 1 часа
    moisture_history[:] = [(t, v) for t, v in moisture_history if datetime.now() - t < timedelta(hours=1)]

    # Если влажность < 40% и нет дождя — включаем клапан
    if moisture < 40 and not rain_last_6h:
        client.publish(TOPIC_VALVE, "ON")
        print("Valve ON - moisture low, no rain")
    else:
        print(f"No action: moisture={moisture}, rain={rain}")

client = mqtt.Client()
client.on_message = on_message
client.connect(BROKER, 1883, 60)
client.subscribe(TOPIC_SENSOR)
client.loop_start()

# Держим соединение 30 секунд (максимум таймаута sandbox)
time.sleep(30)
client.loop_stop()

Важно: sandbox ASI Biont имеет таймаут 30 секунд, поэтому скрипт не может работать бесконечно. Для постоянного мониторинга используется industrial_command с подпиской на топик, либо запуск скрипта по расписанию (через cron на сервере).

Как подключить датчик к ASI Biont: пошаговая инструкция

  1. Подготовьте оборудование:
  2. ESP32 (например, NodeMCU-32S)
  3. Датчик дождя и влажности почвы (например, FC-28 или аналог)
  4. Электромагнитный клапан 12V с реле

  5. Запрограммируйте ESP32:

  6. В Arduino IDE установите библиотеки WiFi и PubSubClient.
  7. Загрузите скетч из примера выше, указав свои SSID и пароль Wi-Fi.

  8. Запустите ASI Biont и откройте чат.

  9. Опишите задачу:

  10. „Подключись к MQTT-брокеру broker.hivemq.com, подпишись на топик sensor/soil, анализируй влажность и управляй клапаном через топик actuator/valve. Если влажность меньше 40% и нет дождя — включи клапан на 5 минут, если больше 70% — выключи.“

  11. AI выполнит интеграцию:

  12. Сгенерирует Python-скрипт, выполнит его в sandbox и начнёт мониторинг.

Почему это выгодно: экономия времени и ресурсов

  • Экономия воды до 40% — полив только когда действительно нужно. По данным исследования Университета Флориды (2019), автоматизация полива на основе датчиков влажности снижает водопотребление на 30–50%.
  • Снижение времени на уход за растениями на 70% — не нужно ежедневно проверять почву вручную.
  • Удалённый мониторинг — вы видите данные в чате с AI в реальном времени.
  • Адаптивные сценарии — AI учитывает дождь, время суток и историю.

Заключение

Интеграция датчика дождя и влажности почвы с AI-агентом ASI Biont превращает обычный сенсор в интеллектуальную систему управления поливом. Вам не нужно писать сложный код — просто опишите задачу в чате, и AI сам создаст и выполнит интеграцию. Подключайте любые устройства через MQTT, SSH, COM-порт или Modbus — ASI Biont поддерживает всё.

Попробуйте интеграцию уже сегодня на asibiont.com и автоматизируйте свой сад или теплицу без лишних усилий.

← Все статьи

Комментарии

Читайте также

Как автоматизировать LiveChat с помощью AI-агента ASI Biont: руководство по интеграции без кода для более умной поддержки клиентов

10 июля 2026

10 промтов для FastAPI: эндпоинты, Pydantic, фоновая обработка

10 июля 2026

Как перестать бояться консоли: обзор курса «Linux для начинающих» на Asibiont с AI-тьютором

10 июля 2026

10 промтов для UI/UX дизайна в Figma: от компонентов до прототипов

10 июля 2026

Вайб кодинг на Asibiont: как AI-генерация кода превращает новичков в создателей приложений за 4 недели

10 июля 2026

Mobile Security — безопасность мобильных приложений (iOS и Android): как стать востребованным специалистом в 2026 году

10 июля 2026

Курс «AI-тестировщик (авто-тесты AI)»: как автоматизировать тестирование с помощью нейросетей и ускорить релизы на 40%

10 июля 2026

10 промтов для машинного обучения: Scikit-learn, XGBoost, CatBoost — от препроцессинга до обучения моделей

10 июля 2026

Vibe Coding в 2026 году: полное руководство разработчика по созданию AI-First приложений

10 июля 2026