Всё чаще говорят о переносе вычислений “на край” — в устройства, которые работают рядом с физическим миром: сенсоры, контроллеры, мобильные модули. Это и есть Edge AI — способность анализировать, классифицировать, реагировать без постоянной связи с сервером.
Но прежде чем запускать модели и скармливать нейросетям данные, нужно ответить на простой, но ключевой вопрос: на чём это всё должно работать?
В этой статье я сравниваю три популярные и доступные платформы среди DIY-инженеров: Arduino (Uno, Mega), STM32 и ESP32 (ESP32 devkit и ESP32-S3) — с точки зрения практического применения в задачах Edge AI.

Моя маленькая «армия»
Я не претендую на полное раскрытие темы. Это не обзор всех возможных плат и не рейтинг “лучших”. Моя цель — практически показать, где проходит граница между возможным и удобным, без маркетинга и пафоса — только реальные ограничения, архитектура и здравый смысл.
🔹 Почему вообще нужно Edge AI
Когда мы говорим об искусственном интеллекте, чаще всего представляется облако, сервер, сложные модели, большой объём данных и мощные видеокарты. Но реальный мир — не дата-центр, и не у всех устройств есть стабильный интернет, бесперебойное питание и киловатты мощности. Если быть ближе к миру нефтегаза, некоторые скважины находятся на большом отдалении от населенных пунктов и их обслуживание и мониторинг состояния могут быть сильно затруднены.
Edge AI нужен там, где:
- решения должны приниматься на месте и с минимальной задержкой
- нет времени или возможности “спросить сервер”
- важны автономность, надёжность и приватность
Edge AI — это не альтернатива “настоящему ИИ”, а его практическое продолжение в реальных условиях. Это прежде всего компактность (грамотное понимание ограничений по памяти), хорошая оптимизация (трезвая оценка доступной энергии и скорости), точный выбор модели. То, что “работает на ноутбуке”, может не запуститься в микроконтроллере вообще. Или работать, но настолько медленно, что всё преимущество исчезнет. Поэтому выбор железа — это первая инженерная задача, от которой зависит весь стек решений.
🔹 Где это применим Edge AI:
- Индустриальные сенсоры
Обнаружение вибраций, утечек, перегрева — прямо в узле, а не на SCADA-сервере через 10 секунд - Робототехника и дроны
Реакция на препятствие, распознавание жестов, планирование маршрута — всё это должно работать без связи с сервером - Умные камеры и микрофоны
Распознавание команд, активности, шумов — на месте, без облака - Энергосистемы, автономные объекты
Где нельзя полагаться на постоянную связь, а решение должно приниматься на месте
🔹 Платы, которые я сравниваю:
- Arduino Uno — классика, с неё всё начинается
- Arduino Mega 2560 — больше пинов, памяти, но тот же AVR
- STM32H503CBT6 — ARM Cortex-M33, производительный, промышленный класс
- ESP32 DevKit v1 — двухъядерный Wi-Fi/BLE зверёк для IoT
- ESP32-S3 — c поддержкой SIMD и встроенной инструкции AI acceleration
Также планирую протестировать Arduino Nano 33 BLE Sense — эта плата интересна тем, что позиционируется именно как AI-ready, с сенсорами и поддержкой TensorFlow Lite прямо “из коробки”. Но пока её нет под рукой — в этой статье она будет за рамками практического сравнения, только в теории.
🔹 Критерии оценки
Прежде чем сравнивать конкретные платы, нужно понять, по каким параметрам вообще стоит их оценивать, если речь идёт об использовании в задачах Edge AI — то есть в условиях ограниченных ресурсов, низкой задержки и без постоянной связи с облаком.
Я выделяю шесть основных критериев:
- Производительность — важна для обработки сигналов и расчетов
— Тактовая частота, архитектура ядра, наличие аппаратного ускорения - Поддержка библиотек и инструментов для AI — на сколько удобно собирать на этом МК модели, какие есть ограничения
— Наличие портов TinyML, TensorFlow Lite, CMSIS-NN - Коммуникации — как будет осуществляться связь с «большой землей»
— Встроенный Wi-Fi, Bluetooth, UART, CAN, USB - Энергопотребление — критично при батарейном или аккумуляторном питании
— Режимы сна, энергопрофили, возможности автономной работы - Простота работы и документация — фактов времени для разработки
— Насколько легко стартовать, какие есть IDE, туториалы, отладочные средства - Физические возможности: размер, порты, окружение — иногда вопрос не в чипе, а в том, влезет ли плата в корпус и переживёт ли -20°C или 20 бар давления.
И сразу приведу мою оценку, а уже после обсудим детали:
Arduino Uno / Mega
- Производительность: ❌
8-бит, 16 МГц - AI-ready: ❌
- Связь: UART, SPI, I2C
- Простота: ✅✅✅ (Arduino IDE)
- Энергия: ⚠️ высокое
- Форма: ⚠️ большая
STM32 (H503CBT6)
- Производительность: ✅✅✅
Cortex-M33, 250 МГц - AI-ready: ✅✅ CMSIS-NN, STM32Cube.AI
- Связь: UART, SPI, I2C, CAN, USB
- Простота: ⚠️⚠️ хардкор
- Энергия: ✅✅ настраиваемое
- Форма: ✅ гибкая разводка
ESP32 DevKit
- Производительность: ✅
2 ядра, 240 МГц - AI-ready: ⚠️ TinyML (ограниченно)
- Связь: Wi-Fi, BLE, UART, SPI, I2C
- Простота: ✅ Arduino IDE, PlatformIO, ESP-IDF
- Энергия: ⚠️ умеренное
- Форма: ✅ компакт
ESP32-S3
- Производительность: ✅✅
AI SIMD, 240 МГц - AI-ready: ✅✅ ESP-DL, TFLite Micro
- Связь: Wi-Fi, BLE, USB, UART, SPI
- Простота: ✅ Arduino IDE, PlatformIO, ESP-IDF
- Энергия: ✅ настраиваемое
- Форма: ✅ компакт
🔹 Arduino Uno и Mega — достойные ветераны, но не для Edge AI
Arduino Uno и Mega — это платы, с которых начинают путь миллионы инженеров и студентов. Простые, надёжные, с понятным API и огромной поддержкой сообщества. Но если смотреть с позиции реального применения в Edge AI, их возможности оказываются резко ограничены.
Uno и Mega построены на 8-битных AVR-контроллерах с тактовой частотой до 16 МГц и весьма ограниченной оперативной памятью (2 КБ для Uno, 8 КБ для Mega). Этого недостаточно даже для базовой предобработки сигналов, не говоря уже о нейросетях. Также отсутствует поддержка современных AI-фреймворков, нет аппаратного ускорения, работа с бинарными моделями невозможна даже на уровне inference.
Из реально классных вещей это среда Arduino IDE, которая на первом этапе позволяет скрыть массу деталей и тем самым облегчить вход в мир микроконтроллеров.
На этих платах хорошо начинать, изучать основы работы с периферией, но это не про “обнаружить аномалию в вибрации” или “распознать голосовую команду”. Не смотря на это, для них остается место в комплексных распределенных системах в виде устройства для сбора логов с датчиков и передачи на обработчик.
🔹 Arduino Nano 33 BLE Sense — AI-исключение в семействе
Отдельно стоит упомянуть Arduino Nano 33 BLE Sense — единственную плату в линейке, которая проектировалась с прицелом на Edge AI.
Она построена на nRF52840 (Cortex-M4, 64 МГц) и уже из коробки поддерживает:
- TensorFlow Lite for Microcontrollers
- встроенные сенсоры (IMU, микрофон, температура, давление)
- BLE-коммуникацию
- полноценные примеры TinyML
Для небольших задач вроде распознавания жестов, анализа звуков, вибрации и снятия показаний с датчиков в поле может быть вполне рабочим решением.
Arduino Nano 33 BLE Sense
⚠️Теоретическая оценка⚠️- Производительность: ✅
Cortex-M4, 64 МГц - AI-ready: ✅ TinyML, TFLite Micro
- Связь: BLE
- Простота: ✅ Arduino IDE + ML ресурсы
- Энергия: ✅ низкое
- Форма: ✅ компакт
🔹 STM32 — мощный потенциал для промышленного применения
STM32 — это не просто микроконтроллер, это семейство инженерных платформ с богатой периферией и реальной вычислительной мощностью. В отличие от Arduino и ESP32, STM32 заточен не под удобство, а под жёсткие требования встраиваемых систем.
В этом сравнении я использую STM32H503CBT6 — мощную, современную плату на ядре Cortex-M33, с тактовой частотой до 250 МГц, 128 КБ RAM и широкими возможностями по работе с цифровыми сигналами.
Сильные стороны:
- Доступность и цена (мой модуль обошелся в $5 за модуль)
- Производительность
Cortex-M33 позволяет выполнять DSP-операции, работать с библиотеками типа CMSIS-DSP, CMSIS-NN — а значит, реально запускать модели, построенные под TinyML. - Периферия
У STM32 — богатый набор: CAN, UART, USB, SPI, I2C, DAC, ADC, DMA, внешние прерывания, компараторы и таймеры. - Интеграция с STM32Cube.AI
Можно импортировать нейросетевую модель (Keras, TensorFlow) и сгенерировать на её основе C-код для выполнения прямо на МК.
🔹 Как я запускал STM32
Для тестов я использовал плату STM32H503CBT6 на Cortex-M33. Это довольно производительный микроконтроллер, особенно если задача требует предобработки сигналов, FFT или распознавания простых паттернов в потоке данных.
Я уже заранее знал, что потребуется время на освоение, но в итоге его потребовалось в 5 раз больше: началось с конфигурации проекта в STM32CubeMX, потом импорт модели из TensorFlow в CubeAI и конвертация в С-код, настройка DMA для потокового чтения, и потом еще это все было отполировано процессом компиляции через STM32CubeIDE и отладку по ST-Link. Многие шаги были совсем не интуитивны и потребовалось время копания в мануалах, просмотра индийских обучалок на Youtube и сотни прочитанных страниц форумов самодельщиков. До сих пор в шоке от того, что RAM нужно очень точно оценивать заранее чтобы не получить сюрприз уже на этапе работы автономного устройства.
⚠️ А теперь честно: где сложно
STM32 — это не “включил и заработало”, как в Arduino IDE. Работа через STM32CubeIDE, HAL/LL библиотеки, отладку через ST-Link требует времени, знаний и терпения. Даже запуск простого UART требует ручной настройки половины регистра и включения нужных пинов в CubeMX. Это инженерный уровень свободы, который требует подготовки и погружения. Но новичка это может отпугнуть.
STM32 — это не микроконтроллер для старта, но отличный выбор для архитекторов промышленных систем и тех, кто хочет контролировать каждый бит на низком уровне. TinyML, DSP, надёжная периферия, возможность глубокого тюнинга — всё это есть, но за ценой вхождения и времени на изучение.
🔹 ESP32 и ESP32-S3 — «универсальные солдаты» для мира IoT и Edge AI
Платформы на ESP32 — это своего рода компромисс между простотой Arduino плат и возможностями STM32. Особенно если задача связана с проведением расчетов, а потом еще нужно подключиться по Wi-Fi или BLE, а то и вообще поднять свою сеть где-то в поле, для чего прекрасно подходит ESP-NOW и ESP-MESH. И, что не мало важно, это цена, по сравнению с конкурентами нафаршированный ESP32-S3 стоит и в разы дешевле.
Что такое ESP32?
ESP32 DevKit (обычно на чипе ESP32-WROOM-32) — это двухъядерный микроконтроллер (240 МГц), с:
- встроенным Wi-Fi + BLE
- 520 КБ SRAM + внешняя PSRAM (в некоторых версиях)
- поддержкой FreeRTOS, Arduino-совместимых библиотек
- активным сообществом и кучей туториалов
А что делает ESP32-S3 особенной?
ESP32-S3 — это следующее поколение, оптимизированное для:
- SIMD-инструкций
- интеграции с TinyML / TensorFlow Lite что говорится «из коробки»
- Обработки изображений и аудио (в том числе через внешние сенсоры)
- Имеет встроенный USB, работает в режиме USB-Host / Device
Также доступны модели с внешней PSRAM на 8 МБ, что важно для загрузки и выполнения даже упрощённых нейросетей.
Плюсы ESP32/ESP32-S3:
- Доступность и цена (от $5-10 за модуль)
- Библиотека ESP-DL от Espressif — поддержка AI-инференса на борту
- Хорошая совместимость с Arduino, PlatformIO, ESP-IDF, можно начать в привычной среде, а по мере освоения перейти на что-то более крутое
- Отладка проще, чем у STM32, особенно с Arduino-фреймворком
Что запускал:
- Распознавание ключевых слов (TinyML keyword spotting)
- Пробовал модель со скрытым слоем для распознавания жестов — работает, но в упор к лимитам SRAM
- Плюс простые задачки: классификация температуры, управление LED/реле на основе модели
- Детекция аномалий датчиков вибрации и давления на урезанном автоэнкодере
⚠️ Ограничения для использования под Edge AI:
- Многое работает “на костылях” — особенно в области AI
- Для TensorFlow Lite нужен ручной экспорт в С-файл и адаптация модели
- Нет полноценного DSP-ускорения, как у STM32
- Модели нужно жёстко оптимизировать по памяти и latency
ESP32 и особенно ESP32-S3 — это реальный шанс запустить AI на борту, не уходя в сложные IDE. Ограничений по сравнению с STM32 много и “в продакшен” на нём пойдёт не всё. Но как платформа для прототипа, эксперимента или научной работы вполне решает свои задачи.
Вывод
Если задача — просто собрать данные и передать их, то подойдёт почти любой микроконтроллер. Но если нужно обрабатывать данные прямо на устройстве, фильтровать, интерпретировать, классифицировать — всё меняется.
Arduino Uno и Mega — не для AI. Простые задачки на “подмигнуть диодом”, “проверить сигнал”, “отправить по UART”.
Arduino Nano 33 BLE Sense — Хорошая отправная точка, если хочется попробовать TinyML на живом железе.
STM32 — промышленный выбор для задач с контролем и DSP, продвинутых embedded-проектов. Может много, но есть требования по скиллу специалиста.
ESP32 — универсальный инженерный “швейцарский нож” с потенциалом, но не везде стабильный. Идеален для быстрых прототипов с Wi-Fi/BLE.Можно попробовать TinyML, если задача лёгкая.
ESP32-S3 — Лучший кандидат из DIY-сегмента, особенно хорошо зайдут проекты с TFLite Micro и ESP-DL.
Edge AI — это не просто “запустить нейросеть на плате”, а найти баланс между возможным и надёжным. Стоит начинать проект с вопросов «Что хотим достичь?», «Какой мой уровень?», «Какой стэк?», «Хочу ли залазить в low-level кодинг?».
Надеюсь, этот обзор поможет сориентироваться. А в следующих заметках — больше кода, тестов и живых экспериментов.