IMU MPU6050 и ASI Biont: как подключить 6-осевой сенсор к AI-агенту и управлять роботом через чат

Введение

IMU (Inertial Measurement Unit) на базе MPU6050 — это один из самых популярных датчиков в робототехнике. Он измеряет ускорение по трём осям (акселерометр) и угловую скорость (гироскоп), позволяя определять ориентацию объекта в пространстве. Без AI-агента данные с такого сенсора обычно обрабатываются вручную: вы пишете код на Arduino или Raspberry Pi, настраиваете фильтры (например, комплементарный или Kalman), и вручную прописываете логику реакции на жесты. Это занимает часы, а иногда и дни.

ASI Biont меняет подход: вы просто описываете в чате, что хотите подключить MPU6050 к AI-агенту, передаёте параметры подключения (COM-порт, baud rate, или IP-адрес для MQTT), и AI сам пишет код интеграции, настраивает триггеры на жесты (наклон, встряхивание, вращение) и автоматизирует реакции — от управления сервоприводами до отправки уведомлений. В этой статье мы разберём конкретный сценарий: подключение MPU6050 через COM-порт к Hardware Bridge ASI Biont, считывание данных об ориентации и ускорении, и настройка автоматического отключения двигателя робота при опрокидывании.

Почему именно COM-порт и Hardware Bridge?

ASI Biont поддерживает несколько способов подключения к устройствам (MQTT, HTTP API, SSH, Modbus и другие), но для MPU6050, который чаще всего используется с микроконтроллерами (Arduino, ESP32, STM32), оптимальный вариант — COM-порт через Hardware Bridge.

Hardware Bridge — это приложение bridge.py, которое пользователь запускает на своём ПК (Windows, Linux, macOS). Bridge подключается к ASI Biont через WebSocket (единственный канал связи) и предоставляет AI-агенту доступ к локальным COM-портам. AI отправляет команды через industrial_command с протоколом serial://, bridge принимает их, отправляет данные в порт через pyserial и возвращает ответ.

Почему не MQTT? MQTT требует, чтобы микроконтроллер сам подключался к брокеру и публиковал данные. Это возможно (ESP32 с Wi-Fi), но для простых Arduino без сетевого модуля COM-порт — единственный вариант. Кроме того, COM-порт даёт низкую задержку (единицы миллисекунд) и не зависит от сети.

Как подключить MPU6050 к ASI Biont: пошаговый сценарий

Шаг 1. Подготовка устройства

Схема подключения MPU6050 к Arduino Nano:

Пин MPU6050 Пин Arduino
VCC 5V
GND GND
SCL A5 (SCL)
SDA A4 (SDA)

Загрузите на Arduino скетч, который считывает данные с MPU6050 и выводит их в COM-порт в формате JSON. Пример скетча (используется библиотека Adafruit_MPU6050):

#include <Adafruit_MPU6050.h>
#include <Wire.h>

Adafruit_MPU6050 mpu;

void setup() {
  Serial.begin(115200);
  if (!mpu.begin()) {
    Serial.println("{\\"error\\":\\"MPU6050 not found\\"}");
    while (1);
  }
  mpu.setAccelerometerRange(MPU6050_RANGE_8_G);
  mpu.setGyroRange(MPU6050_RANGE_500_DEG);
}

void loop() {
  sensors_event_t a, g, temp;
  mpu.getEvent(&a, &g, &temp);
  Serial.print("{\\"accel\\":{\\"x\\":");
  Serial.print(a.acceleration.x);
  Serial.print(",\\"y\\":");
  Serial.print(a.acceleration.y);
  Serial.print(",\\"z\\":");
  Serial.print(a.acceleration.z);
  Serial.print("},\\"gyro\\":{\\"x\\":");
  Serial.print(g.gyro.x);
  Serial.print(",\\"y\\":");
  Serial.print(g.gyro.y);
  Serial.print(",\\"z\\":");
  Serial.print(g.gyro.z);
  Serial.println("}}");
  delay(100);
}

Шаг 2. Запуск Hardware Bridge

Скачайте bridge.py из дашборда ASI Biont (Devices → Create API Key → Скачать bridge). Установите зависимости:

pip install pyserial requests websockets

Запустите bridge с указанием токена API и COM-порта:

python bridge.py --token=YOUR_API_TOKEN --ports=COM3 --baud=115200 --rate=10
  • --token — ваш API-ключ из дашборда
  • --ports — список портов (для Windows: COM3, для Linux: /dev/ttyUSB0)
  • --baud — скорость (должна совпадать с настройкой в скетче)
  • --rate — лимит запросов в секунду (10 — достаточно)

Bridge подключится к ASI Biont через WebSocket и начнёт слушать команды.

Шаг 3. Подключение в чате с AI-агентом

Теперь откройте чат с ASI Biont и опишите задачу. Например:

«Подключись к MPU6050 через COM3 на скорости 115200. Читай данные каждые 100 мс. Если ускорение по оси Z падает ниже 4 м/с² — значит робот опрокинулся. В этом случае отправь команду на Arduino:

← Все статьи

Комментарии

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

API Design (REST, GraphQL, gRPC): как выбрать протокол и проектировать API как Senior в 2026 году

21 июля 2026

RC522 + ASI Biont: Бескодовая интеграция RFID-считывателя с AI-агентом для автоматизации доступа и учёта

21 июля 2026

Arduino Uno / Nano / Mega + ASI Biont: как подключить микроконтроллер к AI-агенту без единой строчки кода

21 июля 2026

Как интеграция ASI Biont и SendGrid автоматизирует email-кампании: ИИ-агент без кода для транзакционных писем, триггеров и обработки отказов

21 июля 2026

Психология программных команд: как человеческий фактор определяет успех разработки

21 июля 2026

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

21 июля 2026

От SAP-силосов к автономным закупкам: как ИИ-агент подключается к вашей ERP через no-code API-интеграцию

21 июля 2026

Создание MCP-серверов: практическое руководство по предоставлению AI-агентам реальных инструментов

21 июля 2026

Ораторское искусство и харизма: как AI-обучение помогает выступать на конференциях и убеждать

21 июля 2026