Введение
Системы автоматизации зданий (BMS) на базе протокола BACnet управляют HVAC, освещением и вентиляцией в коммерческих и промышленных объектах. Однако их настройка обычно требует специализированного софта и ручного кодирования. AI-агент ASI Biont решает эту проблему: он подключается к BACnet-устройствам через библиотеку bac0, автоматически читает и пишет свойства, а также обрабатывает команды из чата. В этой статье разберём, как настроить интеграцию BACnet/IP с ASI Biont, какие сценарии она открывает и как экономить до 35% энергии без единой строки кода с вашей стороны.
Как ASI Biont подключается к BACnet-устройствам
ASI Biont использует industrial_command tool с протоколом BACnet. AI отправляет команды вида industrial_command(protocol='bacnet', command='read_property', device_instance=12345, object_type='analog-input', object_instance=1, property='present-value'). В ответ получает значение — например, текущую температуру. Для записи используется write_property. AI также может выполнить discover_devices для поиска всех BACnet-контроллеров в сети.
Все команды выполняются через облачный sandbox на серверах ASI Biont (Railway). Вам не нужно устанавливать дополнительное ПО — достаточно описать задачу в чате. Например: «Подключись к BACnet-контроллеру по IP 192.168.1.100, прочитай температуру из analog-input 1 и отправь в Telegram, если превышает 25°C». AI сам напишет код на Python с bac0, выполнит его и вернёт результат.
Конкретный сценарий: автоматическое регулирование температуры
Рассмотрим реальный пример: офисное здание с BACnet-контроллером, управляющим фанкойлами. AI-агент будет каждые 5 минут опрашивать датчик температуры (analog-input 1) и, если значение выходит за пределы 22–24°C, корректировать уставку клапана (analog-output 5).
Шаг 1. Пользователь даёт задачу в чате
«Подключись к BACnet/IP по адресу 192.168.1.10. Каждые 5 минут читай analog-input 1 (температура). Если температура меньше 22°C или больше 24°C, запиши новое значение в analog-output 5: 0.5 для охлаждения, 0.3 для нагрева. Отправляй отчёт в Telegram каждые 30 минут».
Шаг 2. AI генерирует и выполняет код
import bac0
import time
import requests
# Подключение к BACnet-устройству
bacnet = bac0.connect(ip='192.168.1.10')
def get_temp():
return bacnet.read('analog-input 1 present-value')
def set_valve(value):
bacnet.write('analog-output 5 present-value', value)
def send_telegram(message):
token = 'ВАШ_ТОКЕН'
chat_id = 'ВАШ_CHAT_ID'
url = f'https://api.telegram.org/bot{token}/sendMessage'
requests.post(url, json={'chat_id': chat_id, 'text': message})
# Основной цикл (ограничен таймаутом sandbox — 30 секунд, поэтому только 1 итерация)
temp = get_temp()
if temp < 22:
set_valve(0.3)
send_telegram(f'Температура {temp}°C — включён нагрев')
elif temp > 24:
set_valve(0.5)
send_telegram(f'Температура {temp}°C — включено охлаждение')
else:
send_telegram(f'Температура {temp}°C — норма')
bacnet.disconnect()
Код выполняется в sandbox. Для постоянного мониторинга AI может настроить cron-like триггер (например, через встроенный планировщик ASI Biont).
Шаг 3. Результат
AI отправляет в Telegram: «Температура 25.3°C — включено охлаждение. Уставка клапана установлена на 0.5». Пользователь может тут же написать: «Установи уставку 0.4», и AI выполнит write_property.
Почему это выгодно
- Экономия энергии: по данным исследований (ASHRAE, 2023), автоматическая корректировка HVAC на основе BACnet-данных снижает энергопотребление на 20–35%.
- Без программирования: не нужно писать BACnet-клиенты вручную — AI делает всё за секунды.
- Гибкость: можно подключать любые BACnet-объекты (аналоговые входы/выходы, бинарные, мультисостояния) и комбинировать с другими устройствами через execute_python.
Дополнительные сценарии
- Освещение: чтение lux-датчика (analog-input) и управление диммером (analog-output).
- Вентиляция: включение вытяжки (binary-output) при превышении CO2 (analog-input).
- Аварийные оповещения: отправка в Telegram при выходе температуры за пределы.
Заключение
Интеграция BACnet (BMS) с ASI Biont — это простой способ превратить ваше здание в умное без покупки дорогих SCADA-систем. Всё, что нужно — описать задачу в чате. AI сам подключается к BACnet-контроллеру, читает и пишет данные, а также отправляет уведомления. Попробуйте интеграцию на asibiont.com и начните экономить энергию уже сегодня.
Комментарии