Speaker / Buzzer + AI-агент: как подключить звуковое оповещение через ASI Biont и управлять им из чата
Звуковые оповещения — один из самых простых и эффективных способов привлечь внимание человека. В промышленности это сигналы аварии, в умном доме — напоминания о таймере, в лаборатории — завершение эксперимента. Но что, если динамик или зуммер подключить к AI-агенту и управлять им голосом, текстом или по триггерам из IoT-сети?
В этой статье я покажу, как интегрировать Speaker / buzzer с AI-агентом ASI Biont. Никаких сложных панелей управления — просто описываете задачу в чате, AI пишет код, подключается к устройству и начинает им управлять. Разберём три реальных сценария: зуммер на ESP32 через MQTT, динамик на Raspberry Pi через SSH и зуммер через COM-порт (Arduino + Hardware Bridge).
Какой способ подключения использовать?
ASI Biont поддерживает более 12 протоколов интеграции. Для Speaker / buzzer оптимальны три варианта:
| Устройство | Способ подключения | Когда выбирать |
|---|---|---|
| ESP32 / Arduino с Wi-Fi | MQTT (paho-mqtt) | Есть брокер, устройство в локальной сети |
| Raspberry Pi / Orange Pi | SSH (paramiko) | Есть одноплатник с GPIO и Python |
| Arduino / любой микроконтроллер через USB | Hardware Bridge (COM-порт) | Устройство подключено к ПК по USB, нет сети |
Все интеграции инициируются из чата: пользователь пишет «подключись к ESP32 по MQTT, включи зуммер при превышении температуры 50°C», AI сам генерирует и выполняет код.
Сценарий 1: ESP32 + зуммер + MQTT — аварийный сигнал
Что нужно:
- ESP32 с прошивкой, публикующей данные с датчика температуры (например, DHT22) в MQTT-топик sensor/temperature
- Зуммер на GPIO 4
- MQTT-брокер (можно Mosquitto на Raspberry Pi или облачный HiveMQ)
- AI-агент ASI Biont
Как AI подключается:
1. Пользователь в чате ASI Biont передаёт параметры: брокер test.mosquitto.org, порт 1883, топик подписки sensor/temperature, топик управления actuator/buzzer
2. AI пишет скрипт на Python с paho-mqtt, подписывается на sensor/temperature, анализирует значение, и если температура > 50°C — публикует команду ON в топик actuator/buzzer
3. ESP32 подписан на actuator/buzzer и при получении ON включает зуммер
Пример кода, который AI выполняет в sandbox (execute_python):
import paho.mqtt.client as mqtt
import json
BROKER = "test.mosquitto.org"
PORT = 1883
TOPIC_TEMP = "sensor/temperature"
TOPIC_BUZZER = "actuator/buzzer"
def on_message(client, userdata, msg):
try:
data = json.loads(msg.payload)
temp = data.get("temperature", 0)
if temp > 50:
client.publish(TOPIC_BUZZER, "ON")
print(f"Температура {temp}°C — включаю зуммер")
else:
client.publish(TOPIC_BUZZER, "OFF")
except Exception as e:
print(f"Ошибка: {e}")
client = mqtt.Client()
client.on_message = on_message
client.connect(BROKER, PORT, 60)
client.subscribe(TOPIC_TEMP)
client.loop_start()
# Держим соединение 30 секунд (таймаут sandbox)
import time
time.sleep(30)
client.loop_stop()
Подводный камень: sandbox ASI Biont имеет таймаут 30 секунд. Для постоянного мониторинга AI может запустить скрипт как фоновую задачу через industrial_command с протоколом MQTT или настроить периодический вызов через расписание. Но для теста и одноразовых оповещений этого достаточно.
Сценарий 2: Raspberry Pi + динамик + SSH — голосовые подсказки
Что нужно:
- Raspberry Pi с динамиком, подключённым к аудиовыходу (3.5 мм jack или USB-колонка)
- Пакет espeak или mpg123 для синтеза речи
- SSH-доступ к Raspberry Pi
Как AI подключается:
1. Пользователь передаёт в чат IP, логин, пароль или SSH-ключ
2. AI использует industrial_command(protocol='ssh', command='execute', ...) — фактически это вызов paramiko внутри execute_python
3. AI отправляет команду echo "Внимание, авария!" | espeak или воспроизводит mp3-файл через mpg123 alarm.mp3
Пример команды из чата:
industrial_command(
protocol='ssh',
command='execute',
params={
'host': '192.168.1.100',
'username': 'pi',
'password': 'raspberry',
'command': 'echo "Температура превышена" | espeak'
}
)
AI также может написать полноценный скрипт мониторинга, который по SSH проверяет температуру CPU и при превышении 70°C воспроизводит звуковой сигнал.
Сценарий 3: Arduino + зуммер + COM-порт — промышленный сигнал
Что нужно:
- Arduino Uno (или Nano) с зуммером на пине 9
- USB-кабель для подключения к ПК
- Hardware Bridge (bridge.py), скачанный из дашборда ASI Biont
Как AI подключается:
1. Пользователь запускает bridge.py на своём ПК с токеном из дашборда: python bridge.py --token=XXX --ports=COM3 --baud=115200
2. В чате ASI Biont пользователь пишет: «подключись к Arduino на COM3, включи зуммер на 2 секунды»
3. AI отправляет industrial_command(protocol='serial', command='serial_write_and_read', data='BUZZER_ON\n') — bridge передаёт команду в COM-порт, Arduino принимает и включает зуммер
Прошивка Arduino (загружается один раз через Arduino IDE):
void setup() {
Serial.begin(115200);
pinMode(9, OUTPUT);
}
void loop() {
if (Serial.available()) {
String cmd = Serial.readStringUntil('\n');
cmd.trim();
if (cmd == "BUZZER_ON") {
tone(9, 1000); // 1 кГц
} else if (cmd == "BUZZER_OFF") {
noTone(9);
}
}
}
Пример команды AI:
industrial_command(
protocol='serial',
command='serial_write_and_read',
data='BUZZER_ON\n'
)
Bridge автоматически отправляет строку в порт и возвращает ответ. Для отключения — BUZZER_OFF.
Почему это выгодно?
- Ноль ручного кода интеграции. Вы не пишете парсеры, не настраиваете очереди — просто описываете задачу на естественном языке.
- Универсальность. Один AI-агент работает с ESP32, Arduino, Raspberry Pi, промышленными контроллерами — любой протокол из коробки.
- Быстрое прототипирование. Запустить звуковое оповещение по триггеру можно за 2 минуты вместо 2 часов.
- Гибкость. Можно комбинировать: температура с ESP32 → AI → звук на Raspberry Pi через SSH, всё в одном чате.
Заключение
Speaker / buzzer — простое устройство, но в связке с AI-агентом оно превращается в интеллектуальную систему оповещения. Неважно, работаете ли вы с Arduino через COM-порт, ESP32 по MQTT или Raspberry Pi по SSH — ASI Biont подключается к любому устройству через диалог в чате.
Попробуйте сами: зайдите на asibiont.com, создайте API-ключ, скачайте bridge (если нужно), и напишите в чат: «Подключи зуммер к ESP32, включи при температуре выше 50°C». AI сделает всё за секунды.
Комментарии