Интеграция Energy Meters с AI-агентом ASI Biont: сбор данных, аналитика и автоматизация без кода

Введение

Современные предприятия и умные дома всё чаще оснащаются счётчиками электроэнергии (Energy meters), которые передают данные о потреблении, напряжении, токе и мощности. Однако просто установить счётчик — мало. Чтобы превратить сырые цифры в actionable insights, нужна интеграция с системой, способной анализировать тренды, выявлять аномалии и автоматически отправлять уведомления. Здесь на помощь приходит AI-агент ASI Biont. В этой статье мы разберём, как подключить Energy meters к ASI Biont через MQTT и Modbus/TCP, настроить сбор данных и реализовать сценарии автоматизации без единой строки кода со стороны пользователя.

Почему стоит подключать Energy meters к AI-агенту?

Energy meters — это не просто устройства учёта. Современные модели поддерживают цифровые протоколы: Modbus RTU/ TCP, MQTT, Pulse-выходы. Подключив их к AI-агенту, вы получаете:
- Автоматический мониторинг энергопотребления в реальном времени.
- Прогнозирование пиковых нагрузок и аномалий.
- Уведомления в Telegram, Slack или email при превышении порогов.
- Интеграцию с другими устройствами (например, отключение не критичных нагрузок при перегрузке).

Как ASI Biont подключается к Energy meters?

ASI Biont — это AI-агент, который сам пишет код интеграции под ваше устройство. Пользователю достаточно описать в чате: «Подключись к счётчику энергии на 192.168.1.100 по Modbus TCP, slave ID 1, читай регистры напряжения и тока каждые 5 минут, отправляй в Telegram при превышении 250 В». AI анализирует задачу, выбирает подходящий протокол из своего арсенала и генерирует Python-скрипт, который выполняется в облачном sandbox ASI Biont.

Доступные способы подключения для Energy meters:

Протокол Когда использовать Инструмент ASI Biont
Modbus RTU (RS-485) Счётчики с последовательным портом Hardware Bridge (bridge.py) + industrial_command с serial://
Modbus/TCP Счётчики с Ethernet-интерфейсом industrial_command с protocol='modbus'
MQTT Счётчики, публикующие данные в MQTT-брокер execute_python с paho-mqtt
HTTP API Счётчики с REST API (например, Shelly EM) execute_python с requests/aiohttp

В этой статье мы рассмотрим два самых популярных сценария: Modbus/TCP и MQTT.

Сценарий 1: Сбор данных со счётчика через Modbus/TCP

Допустим, у вас есть счётчик электроэнергии с поддержкой Modbus TCP (например, SDM630Modbus или Eastron SDM120). IP-адрес 192.168.1.100, порт 502, slave ID 1. Вы хотите каждые 10 минут читать напряжение (регистр 0x0000), ток (0x0006) и мощность (0x000C), и при превышении мощности > 5000 Вт получать уведомление в Telegram.

Как это работает в ASI Biont

Вы пишете в чат:

Подключись к Modbus TCP счётчику по адресу 192.168.1.100:502, slave 1. Читай регистры: напряжение (0x0000), ток (0x0006), мощность (0x000C) каждые 10 минут. Если мощность > 5000 Вт, отправь мне сообщение в Telegram. Мой токен Telegram: 123456:ABC…

AI-агент выполняет следующие шаги:
1. Использует industrial_command с protocol='modbus' и command='read_registers' для проверки связи.
2. Пишет Python-скрипт с pymodbus, который запускается через execute_python в sandbox.
3. Скрипт циклически (с таймаутами) читает регистры, парсит значения (32-bit float) и сравнивает с порогом.
4. При превышении отправляет HTTP-запрос к Telegram Bot API.

Пример кода, который генерирует AI

import asyncio
from pymodbus.client import AsyncModbusTcpClient
import requests
import time

TELEGRAM_TOKEN = '123456:ABC...'
CHAT_ID = '123456789'

def send_telegram(message):
    url = f'https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage'
    requests.post(url, json={'chat_id': CHAT_ID, 'text': message})

async def read_energy_meter():
    client = AsyncModbusTcpClient('192.168.1.100', port=502)
    await client.connect()

    while True:
        # Чтение регистров (адреса: 0x0000, 0x0006, 0x000C)
        voltage_reg = await client.read_holding_registers(0x0000, 2, slave=1)
        current_reg = await client.read_holding_registers(0x0006, 2, slave=1)
        power_reg = await client.read_holding_registers(0x000C, 2, slave=1)

        # Преобразование в 32-bit float (Modbus order: big-endian)
        voltage = (voltage_reg.registers[0] << 16 | voltage_reg.registers[1]) / 10000.0
        current = (current_reg.registers[0] << 16 | current_reg.registers[1]) / 1000.0
        power = (power_reg.registers[0] << 16 | power_reg.registers[1]) / 10.0

        print(f'Voltage: {voltage} V, Current: {current} A, Power: {power} W')

        if power > 5000:
            send_telegram(f'⚠️ Превышение мощности: {power} Вт!')

        await asyncio.sleep(600)  # 10 минут

asyncio.run(read_energy_meter())

Важно: В sandbox ASI Biont код выполняется с таймаутом 30 секунд, поэтому в реальности AI использует industrial_command для периодического опроса, а не бесконечный цикл. Но для демонстрации логики пример корректен.

Сценарий 2: Подключение через MQTT (например, Shelly EM или ESP32 с счётчиком)

Если ваш Energy meter публикует данные в MQTT-брокер (например, Shelly EM публикует топик shellyem/status), вы можете подписаться на эти топики и анализировать данные.

Как это работает

Вы пишете в чат:

Подпишись на MQTT-брокер по адресу mqtt.example.com:1883, топик shellyem/status. Парси JSON-сообщения, извлекай поля total_power и current. Если total_power > 3000 Вт, отправь уведомление в Slack.

AI генерирует скрипт с paho-mqtt, который подписывается на топик, парсит JSON и вызывает Slack API.

Пример кода

import paho.mqtt.client as mqtt
import json
import requests

SLACK_WEBHOOK = 'https://hooks.slack.com/services/...'

def on_message(client, userdata, msg):
    payload = json.loads(msg.payload)
    total_power = payload.get('total_power', 0)
    current = payload.get('current', 0)

    print(f'Power: {total_power} W, Current: {current} A')

    if total_power > 3000:
        requests.post(SLACK_WEBHOOK, json={'text': f'⚠️ Высокое потребление: {total_power} Вт!'})

client = mqtt.Client()
client.on_message = on_message
client.connect('mqtt.example.com', 1883, 60)
client.subscribe('shellyem/status')
client.loop_forever()

Примечание: В ASI Biont для быстрого тестирования можно использовать industrial_command с protocol='mqtt' и command='publish' или 'subscribe', но для длительного мониторинга AI использует execute_python с paho-mqtt.

Преимущества интеграции с ASI Biont

  1. Нет необходимости писать код вручную. Вы описываете задачу естественным языком, AI генерирует рабочий скрипт.
  2. Поддержка десятков протоколов. Modbus, MQTT, OPC-UA, BACnet, HTTP API — AI сам выбирает нужный.
  3. Гибкость. Можно комбинировать данные с разных счётчиков, отправлять уведомления в любые мессенджеры, сохранять историю в базы данных (PostgreSQL, MongoDB).
  4. Мгновенная интеграция. Не нужно ждать, пока разработчики добавят поддержку конкретной модели — подключайте любое устройство прямо сейчас.

Заключение

Energy meters — это источник ценных данных, но их потенциал раскрывается только при интеграции с интеллектуальной системой. ASI Biont позволяет подключить любой счётчик за считанные минуты через диалог в чате, настроить сбор данных, аналитику и автоматические уведомления. Вы экономите недели разработки и получаете готовое решение под ключ.

Попробуйте интеграцию уже сегодня: перейдите на asibiont.com, создайте API-ключ, скачайте bridge.py и опишите в чате ваше устройство. AI сделает всё остальное.

← Все статьи

Комментарии

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

Better and Cheaper Than IPTV: Как Vibe Coding меняет рынок контента и развлечений в 2026 году

19 июля 2026

Raspberry Pi 4/5 и ASI Biont: автоматизация умного дома через Telegram без программирования

19 июля 2026

Better and Cheaper Than IPTV: Как Vibe Coding меняет рынок развлечений в 2026 году

19 июля 2026

Как подключить датчик температуры DS18B20 к AI-агенту ASI Biont: пошаговый гайд по интеграции и автоматизации

19 июля 2026

Мастер-класс по спортивному и киберспортивному праву: WADA, CAS, FIFA, UEFA – курс на Asibiont.com

19 июля 2026

От электронных таблиц к осмысленной автоматизации: как ИИ-агент трансформирует интеграцию Odoo и автоматизацию ERP

19 июля 2026

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

19 июля 2026

Transcribe.cpp: Легковесная библиотека для локального распознавания речи на C++ в 2026 году

19 июля 2026

Освоение соответствия ИИ: Глубокое погружение в курс «Регулирование ИИ: Закон ЕС об ИИ и мировые стандарты» на платформе Asibiont

19 июля 2026