Погодная станция + ASI Biont: интеграция метеостанции с AI-агентом для умного мониторинга и автоматизации

Метеостанции на базе Arduino или ESP32 — отличный способ собирать данные о температуре, влажности, давлении и осадках. Но что, если эти данные начнёт анализировать AI? ASI Biont — это AI-агент, который подключается к вашей погодной станции, обрабатывает показания в реальном времени, отправляет уведомления в Telegram, ведёт историю в базу данных и интегрируется с умным домом. В этой статье — практический гайд по интеграции метеостанции с ASI Biont без сложного кода.

Как AI-агент подключается к метеостанции

ASI Biont поддерживает несколько способов подключения, но для погодной станции на ESP32 с датчиком DHT22 (температура/влажность) и BMP280 (давление) оптимальны два варианта:

  1. MQTT — ESP32 публикует данные в MQTT-брокер (например, Mosquitto), а ASI Biont подписывается на топик и анализирует их.
  2. Hardware Bridge + COM-порт — если метеостанция подключена к ПК через USB (Arduino/ESP32), AI подключается через bridge.py, читает данные с порта и управляет устройством.

Почему MQTT? Этот протокол лёгкий, надёжный и идеально подходит для IoT-устройств с ограниченными ресурсами. ESP32 с MQTT может работать годами без сбоев.

Сценарий: мониторинг погоды с уведомлениями в Telegram

Допустим, у вас есть ESP32 с датчиками DHT22 (температура, влажность) и BMP280 (давление). Данные публикуются в топик weather/sensor. Вы хотите:
- Получать уведомление в Telegram, если температура выходит за пределы 18–25 °C.
- Логировать все данные в PostgreSQL.
- Отправлять ежедневную сводку погоды.

Шаг 1. Настройка ESP32 на публикацию MQTT

На ESP32 загружается прошивка на MicroPython или Arduino. Пример на MicroPython:

import network
import time
from umqtt.simple import MQTTClient
from machine import Pin, I2C
import dht
import bmp280

# Подключение к Wi-Fi
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect('SSID', 'PASSWORD')

# Инициализация датчиков
i2c = I2C(scl=Pin(22), sda=Pin(21))
dht_sensor = dht.DHT22(Pin(4))
bmp = bmp280.BMP280(i2c)

# MQTT-клиент
client = MQTTClient('esp32_weather', 'mqtt_broker_ip', port=1883)
client.connect()

while True:
    dht_sensor.measure()
    temp = dht_sensor.temperature()
    hum = dht_sensor.humidity()
    pres = bmp.pressure()
    payload = '{{"temp":{},"hum":{},"pres":{}}}'.format(temp, hum, pres)
    client.publish('weather/sensor', payload)
    time.sleep(60)

Этот код отправляет JSON с показаниями раз в минуту.

Шаг 2. Подключение ASI Biont к MQTT-брокеру

В чате с ASI Biont вы пишете:

«Подключись к MQTT-брокеру по адресу mqtt://192.168.1.100:1883, подпишись на топик weather/sensor, получай данные с датчиков температуры, влажности и давления. Если температура выходит за 18–25°C — отправь уведомление в Telegram на мой канал @my_channel. Также запиши все данные в PostgreSQL на localhost:5432, база weather, таблица sensor_log, с полями temp, hum, pres, timestamp.»

ASI Biont автоматически генерирует и выполняет Python-скрипт. Выглядит он примерно так:

import paho.mqtt.client as mqtt
import json
import psycopg2
import requests
from datetime import datetime

# Настройки
telegram_token = 'YOUR_BOT_TOKEN'
telegram_chat = '@my_channel'
db_config = {
    'host': 'localhost',
    'port': 5432,
    'database': 'weather',
    'user': 'user',
    'password': 'pass'
}

def on_message(client, userdata, msg):
    data = json.loads(msg.payload)
    temp = data['temp']
    hum = data['hum']
    pres = data['pres']
    timestamp = datetime.now()

    # Логирование в БД
    conn = psycopg2.connect(**db_config)
    cur = conn.cursor()
    cur.execute(
        'INSERT INTO sensor_log (temp, hum, pres, timestamp) VALUES (%s, %s, %s, %s)',
        (temp, hum, pres, timestamp)
    )
    conn.commit()
    cur.close()
    conn.close()

    # Проверка температуры
    if temp < 18 or temp > 25:
        message = f'⚠️ Внимание! Температура вышла за норму: {temp}°C'
        requests.post(
            f'https://api.telegram.org/bot{telegram_token}/sendMessage',
            json={'chat_id': telegram_chat, 'text': message}
        )

client = mqtt.Client()
client.on_message = on_message
client.connect('192.168.1.100', 1883, 60)
client.subscribe('weather/sensor')
client.loop_forever()

Этот скрипт выполняется в sandbox-окружении ASI Biont (с таймаутом 30 секунд, поэтому loop_forever нужно заменить на loop_start() и использовать time.sleep(30) — AI сам подбирает корректный вариант).

Шаг 3. Получение ежедневной сводки

Вы также можете попросить AI отправлять сводку раз в сутки. Для этого ASI Biont использует execute_python с запросом к PostgreSQL:

import psycopg2
import requests
from datetime import datetime, timedelta

# Подключение к БД
conn = psycopg2.connect(host='localhost', port=5432, database='weather', user='user', password='pass')
cur = conn.cursor()

# Средние за последние 24 часа
cur.execute(
    'SELECT AVG(temp), AVG(hum), AVG(pres) FROM sensor_log WHERE timestamp > %s',
    (datetime.now() - timedelta(hours=24),)
)
avg_temp, avg_hum, avg_pres = cur.fetchone()

# Отправка в Telegram
message = f'📊 Сводка погоды за сутки:\nСредняя температура: {avg_temp:.1f}°C\nСредняя влажность: {avg_hum:.1f}%\nСреднее давление: {avg_pres:.1f} гПа'
requests.post(
    f'https://api.telegram.org/bot{telegram_token}/sendMessage',
    json={'chat_id': telegram_chat, 'text': message}
)

cur.close()
conn.close()

Альтернативный сценарий: подключение через Hardware Bridge

Если ваша метеостанция подключена к ПК через USB (например, Arduino Uno с датчиками), используйте bridge.py:

  1. Скачайте bridge.py из дашборда ASI Biont (Devices → Create API Key → Скачать bridge).
  2. Запустите на своём компьютере: python bridge.py --token=ВАШ_ТОКЕН --ports=COM3 --default-baud=9600
  3. В чате напишите: «Подключись к порту COM3 через bridge, прочитай данные с метеостанции, если температура выше 30°C — включи светодиод на пине 13.»

AI использует industrial_command с протоколом serial://:

industrial_command(protocol='serial://COM3', command='read', params={'baud': 9600, 'timeout': 1})

Bridge передаёт команду на COM-порт, считывает ответ и возвращает его AI.

Почему это выгодно

  • Не нужно писать код вручную. Вы просто описываете задачу на естественном языке, AI генерирует и выполняет скрипт.
  • Гибкость. Подключайте любые датчики, базы данных, мессенджеры — AI сам подберёт библиотеки.
  • Скорость. Интеграция занимает минуты, а не дни.
  • Поддержка любых протоколов. MQTT, Modbus, OPC UA, HTTP API, COM-порт — ASI Biont умеет всё это из коробки.

Заключение

Интеграция погодной станции с AI-агентом ASI Biont превращает обычный сбор данных в интеллектуальную систему мониторинга. AI не только собирает показания, но и анализирует их, отправляет уведомления, ведёт историю и управляет устройствами по заданным правилам. Попробуйте сами: опишите свою задачу в чате на asibiont.com, и AI подключит вашу метеостанцию за секунды.

← Все статьи

Комментарии

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

Защита общественного здоровья: Освоение 323-ФЗ, прав пациентов и обучение с ИИ на Asibiont

16 июля 2026

Как освоить Telegram Bot Development в 2026 году: обзор курса на asibiont.com и почему aiogram 3 стал стандартом

16 июля 2026

Преобразуйте управление вашим магазином Etsy с помощью интеграции AI-агента ASI Biont

16 июля 2026

Мастер производственных промптов: Курс профессионального промпт-инжиниринга на Asibiont

16 июля 2026

Подключение PIR-датчика движения к AI-агенту: пошаговое руководство и автоматизация умного дома с ASI Biont

16 июля 2026

Маршрутизация моделей: просто, пока не станет сложно

16 июля 2026

Интеграция WordPress с AI-агентом ASI Biont: автоматизация контента, SEO и управления сайтом через чат

16 июля 2026

Inside Ode с Anthropic: как стартап ставит на то, что будущее enterprise за AI-сервисами

16 июля 2026

Стандарты кибербезопасности: ISO 27001, NIST, PCI DSS – ваш карьерный ускоритель в 2026 году

16 июля 2026