Введение
Разработка встраиваемых систем и Интернета вещей (IoT) — это область, где каждый день приходится решать сотни типовых задач: от калибровки сенсоров до настройки MQTT-брокеров. В 2026 году использование AI-ассистентов, таких как ChatGPT, Claude или Gemini, стало стандартом для embedded-инженеров. Однако ключ к эффективной работе — правильно составленный промт (запрос). Плохой промт выдаёт шаблонный код, который не учитывает особенности вашего микроконтроллера. Хороший промт — экономит часы отладки.
В этой статье мы собрали 7 конкретных, готовых к копипасту промтов для самых частых сценариев: чтение данных с датчиков (DHT22, BMP280), передача данных по MQTT, управление GPIO на ESP32, работа с Raspberry Pi и автоматизация уведомлений. Каждый промт сопровождается пояснением, примером использования и практическим советом.
1. Промт: Чтение температуры и влажности с DHT22 на Arduino
Для чего: Быстро получить рабочий скетч для считывания данных с цифрового датчика DHT22 (или DHT11) на Arduino Uno/Nano.
Промт:
Напиши код для Arduino на C++ для чтения температуры и влажности с датчика DHT22. Используй библиотеку DHT.h (автор Adafruit). Выводи данные в Serial Monitor каждые 2 секунды. Добавь обработку ошибок: если датчик не отвечает, выводи сообщение "Ошибка DHT". Пин датчика — D2.
Пример использования:
Скопируйте промт в ChatGPT. Через 10 секунд вы получите готовый скетч с подключением библиотеки, инициализацией и циклом. Такой подход избавляет от необходимости искать примеры в документации Adafruit (ссылка: Adafruit DHT sensor library).
Совет: Если используете ESP8266 или ESP32, просто укажите это в промте — AI подставит правильные пины и тактовую частоту.
2. Промт: Отправка данных с ESP32 на MQTT-брокер
Для чего: Настроить ESP32 для публикации показаний датчика в топик MQTT. Это основа любой IoT-архитектуры.
Промт:
Создай скетч для ESP32 на Arduino Framework, который подключается к Wi-Fi (SSID: MyHome, пароль: 12345678) и отправляет значение случайного числа от 0 до 100 в топик "sensor/temperature" каждые 5 секунд. Используй библиотеку PubSubClient. Адрес MQTT-брокера: 192.168.1.100, порт 1883. Добавь callback-функцию для подписки на топик "sensor/command" и выводи в Serial полученные сообщения.
Пример использования:
Промт генерирует полный код с WiFi-клиентом, MQTT-клиентом и циклической публикацией. Вы можете заменить случайное число на реальные данные с ADC или датчика.
Совет: Для продакшена используйте MQTT через TLS (порт 8883). Укажите в промте "добавь поддержку SSL с сертификатом" — AI сгенерирует код с WiFiClientSecure. ASI Biont поддерживает подключение к MQTT-брокерам через API — подробнее на asibiont.com/courses.
3. Промт: Управление светодиодом через веб-интерфейс на ESP32
Для чего: Быстро создать простую веб-панель для включения/выключения GPIO.
Промт:
Напиши код для ESP32, который создаёт точку доступа Wi-Fi (SSID: ESP_Control, пароль: 12345678) и запускает веб-сервер на порту 80. На главной странице размести две кнопки: "Включить светодиод" и "Выключить светодиод". При нажатии меняй состояние на пине GPIO2. Используй библиотеку WebServer.h. Добавь CSS-стили для кнопок (зелёный/красный).
Пример использования:
Этот промт идеален для прототипирования. Вы получаете работающий веб-интерфейс за 5 минут. Вместо светодиода можно подключить реле.
Техническая заметка: По данным Espressif (официальная документация ESP32, 2024), встроенный светодиод на большинстве ESP32 DevKit подключён к GPIO2, но уточните по вашей плате.
4. Промт: Чтение аналогового сигнала с датчика газа MQ-135 на Raspberry Pi
Для чего: Получить скрипт на Python для считывания данных с аналогового датчика через GPIO (с использованием MCP3008 АЦП).
Промт:
Напиши Python-скрипт для Raspberry Pi 4, который читает аналоговое значение с канала 0 АЦП MCP3008 (подключён по SPI). Датчик MQ-135 подключён к MCP3008. Выводи сырое значение (0-1023) и оценку качества воздуха (хорошее/плохое) на консоль каждую секунду. Используй библиотеку spidev. Добавь комментарии к каждой строке.
Пример использования:
Промт генерирует скрипт с настройкой SPI, чтением данных и логикой порогов. Это готовый модуль для системы умного дома.
Совет: Для калибровки MQ-135 потребуется резистор нагрузки и 24-часовой прогрев. Укажите это в промте для более точного кода.
5. Промт: Автоматическое уведомление в Telegram при превышении порога температуры
Для чего: Интегрировать IoT-устройство с Telegram Bot API для аварийных оповещений.
Промт:
Создай скетч для ESP8266, который: 1) читает температуру с DS18B20 (пин D4), 2) если температура превышает 30°C, отправляет HTTP-запрос к Telegram Bot API (токен: 123456:ABC-DEF, chat_id: 987654321) с текстом "Авария! Температура: {value}°C". Используй библиотеку OneWire и DallasTemperature. Добавь защиту от флуда: не чаще одного сообщения в 60 секунд.
Пример использования:
Промт даёт полный код с обработкой ошибок сети и ограничением частоты сообщений. Вы можете заменить Telegram на любой другой мессенджер через API.
Важно: Telegram Bot API требует HTTPS. ESP8266 поддерживает его через WiFiClientSecure. Укажите в промте, если нужно.
6. Промт: Чтение данных с GPS-модуля (NEO-6M) на Arduino и вывод координат
Для чего: Быстро получить парсер NMEA-строк для определения широты и долготы.
Промт:
Напиши код для Arduino Uno, который читает данные с GPS-модуля NEO-6M через SoftwareSerial (пины RX=3, TX=4). Используй библиотеку TinyGPS++. Выводи в Serial Monitor широту и долготу в формате DD.DDDD каждые 5 секунд. Если GPS не нашёл спутники, выводи "Ожидание спутников...".
Пример использования:
Промт генерирует рабочий код с фильтрацией невалидных данных. Это основа для трекера или геозоны.
Совет: Для улучшения точности используйте внешнюю активную антенну. В промте можно добавить "используй библиотеку NeoGPS для более быстрого парсинга".
7. Промт: Логирование данных с датчиков на microSD-карту через SPI
Для чего: Организовать запись показаний на SD-карту в формате CSV для последующего анализа.
Промт:
Создай скетч для Arduino Mega, который каждые 10 секунд записывает на microSD-карту (CS-пин 4) строку в формате CSV: timestamp (миллисекунды с запуска), значение с A0, значение с A1. Используй библиотеку SD.h. При ошибке инициализации SD выводи сообщение в Serial. Файл: data.csv. Если файл существует — дописывай в конец.
Пример использования:
Этот промт идеален для систем мониторинга, где нет постоянного интернета. Данные можно позже выгрузить и построить графики.
Совет: Для точного времени используйте RTC-модуль (DS3231). Добавьте в промт "подключи RTC через I2C и используй его время вместо millis()".
Заключение
Представленные 7 промтов покрывают 80% типовых задач при работе с Arduino, ESP32 и Raspberry Pi: от считывания сенсоров до облачной передачи данных и локального логирования. Главное преимущество использования AI-промтов — скорость. Вместо того чтобы часами искать примеры на форумах и адаптировать их под свой проект, вы получаете рабочий код за минуту. Однако помните: AI-модели могут ошибаться в выборе пинов или версий библиотек. Всегда проверяйте сгенерированный код на соответствие вашей схеме подключения.
Советую сохранить эти промты в отдельный файл и адаптировать под свои проекты. Со временем вы научитесь формулировать запросы так, что AI будет выдавать код, почти не требующий правок. Удачной разработки!
Комментарии