Введение
Arduino Due — один из самых мощных микроконтроллеров в семействе Arduino. На базе 32-битного ARM Cortex-M3 с тактовой частотой 84 МГц, он предоставляет 54 цифровых пина, 12 аналоговых входов, два ЦАП и множество интерфейсов (UART, SPI, I2C, CAN). Это делает его идеальной платформой для прототипирования промышленных систем управления, робототехники и IoT-устройств.
Однако типичная работа с Arduino Due ограничивается локальным скетчем: вы загружаете программу, и она выполняется автономно. Если нужно изменить логику или получить данные удалённо — приходится писать дополнительный код для Serial-интерфейса, веб-сервера или MQTT-клиента. Это отнимает время и требует знаний в области сетевых протоколов.
ASI Biont — AI-агент, который умеет подключаться к Arduino Due напрямую через COM-порт (RS-232) и управлять им через диалог в чате. Вам больше не нужно писать код на стороне агента: просто опишите задачу, передайте параметры порта, и AI сам сгенерирует и выполнит Python-скрипт для чтения датчиков, управления светодиодами, моторами или сервоприводами.
В этой статье мы разберём конкретный сценарий: подключение Arduino Due к ASI Biont через COM-порт, чтение данных с аналогового датчика (потенциометр) и управление сервоприводом по командам из чата. Вы увидите, как за несколько минут превратить ваш микроконтроллер в управляемое AI-устройство.
Как ASI Biont подключается к Arduino Due?
ASI Biont использует execute_python — универсальный механизм, при котором AI пишет Python-скрипт и запускает его в изолированном sandbox-окружении. Для работы с COM-портом применяется библиотека pyserial. Пользователь указывает в чате:
- Имя порта (например, COM3 на Windows или /dev/ttyACM0 на Linux)
- Скорость (baud rate), которую использует скетч Arduino (например, 115200)
AI-агент сам создаёт скрипт, который открывает порт, отправляет команды и читает ответы. Никаких дополнительных панелей управления или кнопок «добавить устройство» — всё через диалог.
Сценарий: Управление сервоприводом и чтение потенциометра
Что нужно
- Arduino Due
- Потенциометр 10 кОм (подключён к аналоговому пину A0)
- Сервопривод (например, SG90), подключённый к пину 9 (PWM)
- USB-кабель для подключения к компьютеру
- ASI Biont (доступен на asibiont.com)
Схема подключения
| Компонент | Пин Arduino Due |
|---|---|
| Потенциометр (средний вывод) | A0 |
| Потенциометр (крайние) | 5V и GND |
| Сервопривод (сигнал) | Пин 9 |
| Сервопривод (питание) | 5V |
| Сервопривод (GND) | GND |
Скетч для Arduino Due
Загрузите на плату следующий скетч. Он ожидает команды через Serial: S<угол> для сервопривода (угол от 0 до 180) и отвечает значением с потенциометра (0–1023) при запросе R.
#include <Servo.h>
Servo myservo;
const int potPin = A0;
const int servoPin = 9;
void setup() {
Serial.begin(115200);
myservo.attach(servoPin);
myservo.write(90); // начальное положение
}
void loop() {
if (Serial.available() > 0) {
char cmd = Serial.read();
if (cmd == 'R') {
int val = analogRead(potPin);
Serial.println(val);
} else if (cmd == 'S') {
int angle = Serial.parseInt();
if (angle >= 0 && angle <= 180) {
myservo.write(angle);
Serial.print("OK:");
Serial.println(angle);
} else {
Serial.println("ERROR: angle out of range");
}
}
}
}
Интеграция с ASI Biont через чат
После загрузки скетча откройте чат с ASI Biont на asibiont.com. Напишите, например:
«Подключись к Arduino Due на COM3, скорость 115200. Каждые 5 секунд читай значение с потенциометра и выводи в чат. Если значение больше 800, отправь сервоприводу команду повернуться на 180 градусов, иначе на 0.»
AI-агент проанализирует запрос, сгенерирует Python-скрипт с использованием pyserial и выполнит его. Вы увидите в чате что-то вроде:
[ASI Biont] Подключаюсь к COM3 на скорости 115200...
[ASI Biont] Успешно подключено.
[ASI Biont] Чтение потенциометра: 512
[ASI Biont] Значение 512 < 800, серво установлено в 0 градусов.
[ASI Biont] Чтение потенциометра: 890
[ASI Biont] Значение 890 > 800, серво установлено в 180 градусов.
Пример сгенерированного AI-скрипта (Python)
import serial
import time
ser = serial.Serial('COM3', 115200, timeout=2)
time.sleep(2) # ждём инициализации Arduino
try:
while True:
ser.write(b'R')
response = ser.readline().decode().strip()
if response:
value = int(response)
print(f"Потенциометр: {value}")
if value > 800:
ser.write(f"S180\n".encode())
print("Серво: 180 градусов")
else:
ser.write(f"S0\n".encode())
print("Серво: 0 градусов")
time.sleep(5)
except KeyboardInterrupt:
ser.close()
Этот скрипт полностью создан AI-агентом. Вам не нужно писать ни строчки кода — только описать задачу.
Другие сценарии интеграции Arduino Due с ASI Biont
| Сценарий | Интерфейс | Что делает AI-агент |
|---|---|---|
| Мониторинг температуры | COM-порт | Читает данные с DS18B20, строит график, отправляет уведомления при превышении порога |
| Управление шаговым двигателем | COM-порт | По команде из чата вращает двигатель на заданный угол или скорость |
| Логирование данных с датчиков | COM-порт | Сохраняет показания в CSV-файл, анализирует тренды |
| Удалённое включение реле | COM-порт | Включает/выключает реле по расписанию или голосовой команде |
Почему это выгодно?
- Нет ручного кодирования: AI пишет интеграционный код за секунды.
- Гибкость: можно подключить любое устройство с любым протоколом — не нужно ждать обновлений платформы.
- Скорость: изменение логики управления занимает один запрос в чате.
- Доступность: не требуется знание Python или протоколов — достаточно описать задачу на естественном языке.
Как подключить любое устройство через execute_python
ASI Biont поддерживает подключение к любому устройству, даже если для него нет готового модуля. Просто опишите в чате:
- Какое устройство (Arduino Due, ESP32, Raspberry Pi, PLC и т.д.)
- Какой интерфейс (COM-порт, SSH, MQTT, Modbus, HTTP, OPC-UA)
- Параметры подключения (порт, IP, логин, API-ключ)
AI-агент самостоятельно выберет нужную библиотеку (pyserial, paramiko, paho-mqtt, pymodbus, aiohttp, opcua-asyncio) и сгенерирует работающий код.
Заключение
Интеграция Arduino Due с ASI Biont через COM-порт открывает новые возможности для быстрого прототипирования и удалённого управления. Вы можете за минуту настроить мониторинг датчиков, управление исполнительными механизмами или автоматизацию процессов — просто общаясь с AI-агентом в чате.
Не нужно писать сложные скрипты, настраивать веб-серверы или разбираться в протоколах. ASI Biont берёт на себя всю техническую часть, а вы сосредотачиваетесь на задаче.
Попробуйте интеграцию прямо сейчас на asibiont.com — подключите ваш Arduino Due и управляйте им через AI-чат.
Комментарии