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

Введение

Представьте: вы заходите в офис, датчик движения фиксирует ваше присутствие, AI-агент ASI Biont включает свет, настраивает температуру кондиционера и отправляет уведомление в Telegram: «Пользователь вошёл в переговорную №3». Всё это — без единой строки кода, написанной вами вручную. Интеграция PIR-датчика (Passive Infrared sensor) с AI-агентом ASI Biont превращает обычный сенсор движения в полноценный элемент умного офиса, способный автоматизировать освещение, климат-контроль, безопасность и энергосбережение.

PIR-датчик — это пассивный инфракрасный сенсор, который реагирует на тепловое излучение движущихся объектов (людей, животных). Он прост, дёшев и является стандартом для систем обнаружения присутствия. Однако сам по себе он лишь выдаёт сигнал «есть движение / нет движения». Подключив его к AI-агенту ASI Biont, вы получаете интеллектуальную систему, которая не просто регистрирует событие, но и принимает решения на основе контекста: время суток, день недели, показания других датчиков, историю перемещений. ASI Biont подключается к любому устройству через execute_python — AI сам пишет код интеграции под каждое устройство. Не нужно ждать, пока разработчики добавят поддержку — подключай что угодно прямо сейчас.

Почему AI-агент, а не традиционная логика?

Традиционные системы умного дома используют жёсткие сценарии: «если движение — включить свет». Это негибко и требует ручной настройки каждого правила. AI-агент ASI Biont анализирует данные в реальном времени, учитывает множество факторов и может изменять поведение без участия человека. Например:

  • Если движение обнаружено в ночное время в офисе — AI включает только дежурное освещение (10% яркости), чтобы не ослепить возможного охранника.
  • Если в комнате никого нет более 15 минут — AI отключает кондиционер и выключает свет, экономя до 30% электроэнергии.
  • Если датчик фиксирует движение в нерабочее время в зоне, где никого не должно быть — AI отправляет уведомление в Telegram и включает запись с камеры.

Способы подключения PIR-датчика к ASI Biont

PIR-датчик — это аналоговый или цифровой сенсор, который обычно подключается к микроконтроллеру (ESP32, Arduino, Raspberry Pi) или промышленному контроллеру (PLC). AI-агент ASI Biont поддерживает несколько протоколов для интеграции с такими устройствами:

Способ подключения Устройство Протокол Преимущества
COM-порт (Hardware Bridge) Arduino / ESP32 / ПК RS-232/RS-485 Простота, низкая задержка, подходит для проводных датчиков
MQTT ESP32 / Промышленные шлюзы MQTT 3.1.1 Стандарт IoT, асинхронная передача, облачная интеграция
SSH Raspberry Pi / Orange Pi SSH + Python Доступ к GPIO, камерам, сложная логика на одноплатнике
Modbus/TCP PLC Modbus TCP Промышленная надёжность, совместимость с SCADA
HTTP API Умные розетки, шлюзы REST Простота, широкое распространение

В этой статье мы рассмотрим два наиболее популярных сценария: подключение PIR-датчика через ESP32 по MQTT (для умного дома/офиса) и через Arduino по COM-порту (для локальных проектов).

Сценарий 1: ESP32 + PIR-датчик → MQTT → ASI Biont

Этот сценарий идеален для умного офиса. ESP32 — дешёвый Wi-Fi/Bluetooth микроконтроллер, который может подключаться к MQTT-брокеру (например, Mosquitto, HiveMQ Cloud) и передавать данные от PIR-датчика в облако. ASI Biont подписывается на топик с данными датчика и анализирует их.

Схема подключения ESP32 к PIR-датчику

  • PIR-датчик (HC-SR501): VCC → 3.3V ESP32, GND → GND, OUT → GPIO 4 (любой свободный пин).
  • Для питания ESP32: USB-кабель от компьютера или внешний блок питания 5V.

Прошивка ESP32 (MicroPython)

import network
import time
from machine import Pin
import ujson
from umqtt.simple import MQTTClient

# Настройки Wi-Fi
WIFI_SSID = "Office_WiFi"
WIFI_PASS = "password123"

# Настройки MQTT
MQTT_BROKER = "test.mosquitto.org"
MQTT_PORT = 1883
TOPIC_PUB = "office/pir/room3"
CLIENT_ID = "esp32_pir_room3"

# Подключение к Wi-Fi
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect(WIFI_SSID, WIFI_PASS)
while not wlan.isconnected():
    time.sleep(0.5)
print("WiFi connected")

# Инициализация PIR-датчика
pir = Pin(4, Pin.IN, Pin.PULL_DOWN)

# Подключение к MQTT
client = MQTTClient(CLIENT_ID, MQTT_BROKER, port=MQTT_PORT)
client.connect()
print("MQTT connected")

# Основной цикл
prev_state = 0
while True:
    current_state = pir.value()
    if current_state != prev_state:
        data = {
            "motion": bool(current_state),
            "room": "room3",
            "timestamp": time.time()
        }
        client.publish(TOPIC_PUB, ujson.dumps(data))
        print("Published:", data)
        prev_state = current_state
    time.sleep(0.1)

Подключение ASI Biont к MQTT

Пользователь описывает в чате с AI-агентом:

«Подключись к MQTT-брокеру test.mosquitto.org, подпишись на топик office/pir/room3, получай данные с PIR-датчика. Если движение обнаружено и время между 9:00 и 18:00 (рабочее время), то отправь команду на включение света в комнате 3 через HTTP API умного освещения по адресу http://192.168.1.100/api/light/room3 с телом {"state": "on"}. Если движения нет более 10 минут — выключи свет.»

AI-агент ASI Biont генерирует и выполняет Python-скрипт в sandbox-окружении (execute_python):

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

# Конфигурация
MQTT_BROKER = "test.mosquitto.org"
MQTT_TOPIC = "office/pir/room3"
LIGHT_API_URL = "http://192.168.1.100/api/light/room3"
WORK_START = 9  # 9:00
WORK_END = 18   # 18:00

# Состояние
last_motion_time = 0
light_on = False

def on_message(client, userdata, msg):
    global last_motion_time, light_on
    try:
        data = json.loads(msg.payload.decode())
        motion = data.get("motion", False)
        now = datetime.now()
        current_hour = now.hour

        if motion:
            last_motion_time = time.time()
            # Рабочее время?
            if WORK_START <= current_hour < WORK_END:
                if not light_on:
                    # Включаем свет
                    requests.post(LIGHT_API_URL, json={"state": "on"}, timeout=5)
                    light_on = True
                    print("Light ON")
            else:
                print("Motion detected but outside working hours")
        else:
            # Проверяем, прошло ли 10 минут без движения
            if light_on and (time.time() - last_motion_time > 600):
                requests.post(LIGHT_API_URL, json={"state": "off"}, timeout=5)
                light_on = False
                print("Light OFF (no motion 10 min)")
    except Exception as e:
        print(f"Error: {e}")

# Подключение к MQTT
client = mqtt.Client()
client.on_message = on_message
client.connect(MQTT_BROKER, 1883, 60)
client.subscribe(MQTT_TOPIC)
client.loop_start()

# Держим соединение 20 секунд (в реальном сценарии — бесконечно, но sandbox имеет таймаут)
time.sleep(20)
client.loop_stop()

Этот код выполняется в облаке ASI Biont, подключается к MQTT-брокеру, получает данные с датчика и управляет освещением через HTTP API. Пользователь не писал ни строчки кода — только описал задачу на естественном языке.

Сценарий 2: Arduino + PIR-датчик → COM-порт → Hardware Bridge → ASI Biont

Этот сценарий подходит, если у вас нет Wi-Fi или вы хотите использовать проводное подключение с минимальной задержкой. Arduino подключается к компьютеру через USB (COM-порт), а Hardware Bridge (bridge.py) передаёт данные в ASI Biont.

Схема подключения Arduino к PIR-датчику

  • PIR-датчик (HC-SR501): VCC → 5V Arduino, GND → GND, OUT → Digital Pin 2.
  • Arduino → ПК через USB-кабель.

Прошивка Arduino (C++)

int pirPin = 2;
int ledPin = 13;
int pirState = LOW;
int val = 0;

void setup() {
  pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(115200);
}

void loop() {
  val = digitalRead(pirPin);
  if (val == HIGH) {
    digitalWrite(ledPin, HIGH);
    if (pirState == LOW) {
      Serial.println("MOTION_DETECTED");
      pirState = HIGH;
    }
  } else {
    digitalWrite(ledPin, LOW);
    if (pirState == HIGH) {
      Serial.println("MOTION_CLEAR");
      pirState = LOW;
    }
  }
  delay(100);
}

Запуск Hardware Bridge

Пользователь скачивает bridge.py из дашборда ASI Biont (Devices → Create API Key → Скачать bridge) и запускает его на своём ПК:

pip install pyserial requests websockets
python bridge.py --token=YOUR_API_TOKEN --ports=COM3 --baud 115200 --rate=10

Hardware Bridge подключается к ASI Biont через WebSocket (единственный канал связи) и слушает указанный COM-порт.

Команда AI-агенту

Пользователь пишет в чате:

«Подключись к моему Arduino через Hardware Bridge, порт COM3, скорость 115200. Прочитай все строки, которые приходят от датчика PIR. Каждые 5 минут анализируй лог: если было более 3 срабатываний за 5 минут — значит, в комнате кто-то есть. Отправь статус в Telegram: „В комнате есть люди“ или „Комната пуста“. Используй бота с токеном 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11 и chat_id 987654321.»

AI-агент ASI Biont отправляет команду через industrial_command(protocol='serial', command='serial_write_and_read', data='...') для проверки связи, затем запускает скрипт execute_python, который подключается к Telegram API и анализирует данные.

Результаты и выгода

После настройки интеграции пользователь получает:

  1. Автоматическое управление освещением — свет включается только когда в комнате есть люди, и только в рабочее время. Экономия электроэнергии до 40% (источник: исследование Energy Star, 2023).
  2. Уведомления в Telegram — AI отправляет сообщения о необычной активности в нерабочее время, повышая безопасность офиса.
  3. Гибкость без программирования — чтобы изменить логику (например, добавить учёт выходных), достаточно написать AI-агенту: «Не включай свет в выходные». AI сам модифицирует код.
  4. Масштабируемость — можно добавить десятки датчиков по всему офису, AI будет обрабатывать данные со всех и принимать согласованные решения.

Заключение

Интеграция PIR-датчика с AI-агентом ASI Biont — это не просто подключение сенсора к облаку. Это переход от жёстких скриптов к интеллектуальному управлению, где AI анализирует контекст, учится на данных и адаптируется к изменениям. Вам не нужно писать код вручную — достаточно описать задачу на естественном языке, и ASI Biont сам создаст и выполнит интеграцию. Попробуйте прямо сейчас на asibiont.com и превратите свой офис в умное пространство за считанные минуты.

← Все статьи

Комментарии

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

Почему платформы Low-Code / No-Code — это будущее автоматизации бизнеса (гид 2026 года)

17 июля 2026

Как управлять несколькими проектами с Vibe Coding без хаоса: пошаговый гайд

17 июля 2026

Full-Stack AI Engineer в 2026: Как стать востребованным специалистом и построить карьеру в AI-разработке

17 июля 2026

Преобразуйте свои встречи: Как интеграция Zoom с ASI Biont автоматизирует расшифровки, задачи и последующие действия

17 июля 2026

Как подключить Modbus RTU (RS-485) к AI-агенту ASI Biont: пошаговое руководство по интеграции

17 июля 2026

Интеграция Home Assistant с AI-агентом ASI Biont: пошаговое руководство по голосовому управлению и автоматизации умного дома

17 июля 2026

12 промтов для Claude Code: от рефакторинга до архитектуры

17 июля 2026

Тонкая настройка LLM в 2026 году: почему кастомные модели — ваше конкурентное преимущество

17 июля 2026

Сократите накладные расходы DevOps на 70%: автоматизация управления контейнерами Docker с помощью интеграции AI-агента ASI Biont

17 июля 2026