Введение
Робототехника и автоматизация требуют точных данных об окружающем пространстве. LiDAR-датчики — например, RPLIDAR A1/A2 от Slamtec или TFmini от Benewake — позволяют строить карты помещений, обнаруживать препятствия и управлять движением робота. Но традиционная интеграция таких устройств требует написания кода на C++, Python, настройки ROS и прочих сложностей.
С AI-агентом ASI Biont всё иначе. Вы просто описываете в чате, какой у вас LiDAR, к какому порту он подключён, и какую задачу нужно решить — AI сам пишет скрипты, подключается к оборудованию и начинает собирать данные. Никаких панелей управления, кнопок «добавить устройство» или ожидания обновлений — только диалог. В этой статье я покажу, как подключить RPLIDAR или TFmini к ASI Biont через Hardware Bridge, построить карту помещения и управлять роботом через Telegram.
Как ASI Biont подключается к LiDAR
LiDAR-датчики чаще всего работают через последовательный порт (UART, USB-to-UART). RPLIDAR использует протокол Slamtec на скорости 115200 бод, TFmini — собственный протокол на 115200 бод. Для подключения к ASI Biont мы используем Hardware Bridge — это приложение bridge.py, которое вы запускаете на своём компьютере (Windows, Linux или macOS). Bridge подключается к облаку ASI Biont через HTTP long polling, а AI отправляет команды через industrial_command tool с протоколом serial://.
Почему именно Hardware Bridge? Потому что execute_python (sandbox в облаке) не имеет доступа к COM-портам вашего ПК. Bridge решает эту проблему: он работает локально, читает/пишет в порт через pyserial и передаёт данные AI-агенту.
Настройка bridge:
python bridge.py --token=ВАШ_ТОКЕН --ports=COM3 --default-baud=115200
Если у вас Linux, порт будет /dev/ttyUSB0.
Конкретный сценарий: ESP32 + TFmini + ASI Biont: мониторинг расстояния через Telegram
Представьте: у вас есть мобильный робот на базе ESP32, к которому подключён TFmini LiDAR (UART, пин TX/RX). Вы хотите, чтобы AI-агент каждые 5 секунд считывал расстояние до препятствия и отправлял уведомление в Telegram, если расстояние меньше 20 см.
Вот как это работает:
-
Вы пишете в чате ASI Biont:
«Подключись к моему ESP32 через Hardware Bridge. Устройство на COM3, скорость 115200. Я использую TFmini LiDAR. Напиши скрипт, который каждые 5 секунд читает данные с датчика и отправляет мне в Telegram сообщение, если расстояние меньше 20 см.»
-
AI генерирует Python-скрипт для отправки через
industrial_command:
# Этот код будет выполнен в sandbox ASI Biont с помощью execute_python
import time
import requests
TELEGRAM_TOKEN = "ВАШ_ТОКЕН"
CHAT_ID = "ВАШ_CHAT_ID"
def send_telegram(message):
url = f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage"
requests.post(url, json={"chat_id": CHAT_ID, "text": message})
# Читаем данные с TFmini через bridge
# Команда отправляется через industrial_command (это tool call, не Python-функция)
# Здесь мы просто показываем логику чтения
for i in range(10):
# industrial_command(protocol='serial', command='read', port='COM3', baud=115200, bytes=9)
# Парсим 9 байт: 0x59 0x59 dist_low dist_high strength_low strength_high temp_low temp_high checksum
data = [0x59, 0x59, 0x2C, 0x01, 0x00, 0x00, 0x1E, 0x00, 0x00] # пример
if data[0] == 0x59 and data[1] == 0x59:
distance = data[2] + data[3] * 256 # в см
if distance < 20:
send_telegram(f"⚠️ Препятствие на {distance} см!")
time.sleep(5)
-
AI выполняет скрипт в sandbox (sandbox имеет таймаут 30 секунд, поэтому цикл ограничен). Bridge получает команду
serial://read, отправляет запрос на ESP32, ESP32 отвечает, и данные возвращаются в AI. -
Результат: Вы получаете уведомления в Telegram каждый раз, когда робот приближается к препятствию.
Как построить карту помещения с RPLIDAR
Для RPLIDAR (например, A1M8) сценарий сложнее, но ASI Biont справляется. Вы можете попросить AI:
«Прочитай данные с RPLIDAR на COM4, 115200 бод. Построй карту комнаты на основе 360-градусного сканирования. Сохрани карту в файл map.png и отправь мне ссылку.»
AI сгенерирует код, который через industrial_command отправляет команду start_scan (байт 0xA5 0x60), затем читает пакеты с расстояниями и углами, преобразует их в координаты (x = distance * cos(angle), y = distance * sin(angle)) и строит изображение с помощью matplotlib. Готовый график сохраняется в sandbox, и AI отдаёт вам ссылку на скачивание.
Обратите внимание: RPLIDAR требует отправки команды для начала сканирования. Вот пример последовательности через bridge:
- industrial_command(protocol='serial', command='write', port='COM4', baud=115200, data='A5 60') — запуск сканирования
- industrial_command(protocol='serial', command='read', port='COM4', baud=115200, bytes=200) — чтение данных
Почему это выгодно
- Не нужно писать код вручную. AI-агент делает всю интеграцию за секунды. Вы просто описываете задачу на естественном языке.
- Подключается к любому устройству. ASI Biont поддерживает COM-порты, SSH, MQTT, Modbus TCP, OPC UA, HTTP API — через execute_python вы можете интегрировать что угодно: от GPS-трекеров до промышленных PLC.
- Работает из чата. Никаких панелей управления, кнопок «добавить устройство» — только диалог. Это ускоряет разработку в разы.
- Гибкость. Если ваш LiDAR использует нестандартный протокол (например, YDLIDAR), вы просто описываете его в чате, и AI адаптирует код.
Заключение
Подключение LiDAR к AI-агенту ASI Biont открывает новые возможности для робототехники и автоматизации. Вы можете строить карты, обнаруживать препятствия, управлять движением робота и получать уведомления в Telegram — и всё это без написания кода вручную.
Попробуйте сами: перейдите на asibiont.com, запустите bridge.py на своём компьютере, подключите RPLIDAR или TFmini и напишите в чат: «Подключись к моему LiDAR на COM3, скорость 115200, строй карту каждые 10 секунд». AI сделает всё остальное.
Статья написана на основе официальной документации Slamtec RPLIDAR (slamtec.com/en/Support) и Benewake TFmini (benewake.com).
Комментарии