Найти в Дзене
Электроника, ESP32, Arduino

Плата разработки ESP32-CAM своими руками

Китайцы не спят, выпускают новые версии ESP32-CAM. Я тоже решил не спать и сделал свою версию платы разработки (Development Boards) на базе отладочной платы ESP32-DEVKITC с установленным модулем ESP32-WROVER-B и отдельного модуля видеокамеры - вариантов которых на Ali можно найти великое множество. Обычно когда слышат ESP32-CAM то имеют в виду вот это: Но, по факту, разновидностей этих плат существует огромное множество. Программное обеспечение открытое, а значит ни что не мешает изучить документацию и собрать свой вариант такой платы самостоятельно. Например вот такой: На обратной стороне платы находится SD-READER для чтения карт памяти формата uSD. В нижнем уголке нарезана резьба для установки на стандартный штатив для фотоаппарата. В верхнем уголке просверлено отверстие для установки внешней Wi-Fi антенны (версия ESP32-WROVER-IB позволяет её подключение. Для питания платы установлено гнездо DC005 2.5*5.5 мм. Для внешнего питания используется БП от ТВ приставки, который все равно у

Китайцы не спят, выпускают новые версии ESP32-CAM. Я тоже решил не спать и сделал свою версию платы разработки (Development Boards) на базе отладочной платы ESP32-DEVKITC с установленным модулем ESP32-WROVER-B и отдельного модуля видеокамеры - вариантов которых на Ali можно найти великое множество.

Обычно когда слышат ESP32-CAM то имеют в виду вот это:

ESP32-CAM Ai-Thinker ESP32-CAM OV2640 Camera
ESP32-CAM Ai-Thinker ESP32-CAM OV2640 Camera

Но, по факту, разновидностей этих плат существует огромное множество.

Варианты ESP32 с установленной камерой
Варианты ESP32 с установленной камерой

Программное обеспечение открытое, а значит ни что не мешает изучить документацию и собрать свой вариант такой платы самостоятельно. Например вот такой:

-4

На обратной стороне платы находится SD-READER для чтения карт памяти формата uSD. В нижнем уголке нарезана резьба для установки на стандартный штатив для фотоаппарата. В верхнем уголке просверлено отверстие для установки внешней Wi-Fi антенны (версия ESP32-WROVER-IB позволяет её подключение.

-5

Для питания платы установлено гнездо DC005 2.5*5.5 мм. Для внешнего питания используется БП от ТВ приставки, который все равно у меня валялся без дела. Важно, при работе с камерой ESP32 потребляет достаточно большие токи (особенно в момент подключения к Wi-Fi и инициализации камеры) - на питание от USB рассчитывать не стоит. Внешний источник питания с напряжением 5V обязателен, иначе либо не будет запускаться камера, либо ESP32 будет уходить постоянно уходить в перезагрузку при подключении к Wi-FI. (это касается любых плат ESP32-CAM, да и не CAM тоже). Для экспериментов на плате установлена кнопка. Модуль RGB-светодиода, и дисплей съемные.

-6

Все порты ввода/вывода и питание выведены на отдельные гребенки и в случае необходимости могут быть использованы по своему усмотрению.

ESP32-CAM своими руками
ESP32-CAM своими руками

Принципиальная электрическая схема и особенности проектирования.

Принципиальная электрическая схема
Принципиальная электрическая схема

Самое простое было взять существующую схему подключения для какой-нибудь готовой платы - в среде Arduino IDE их огромный набор:

-9

однако получалось такое огромное количество пересечений дорожек, что сделать такую плату с помощью утюга становилось весьма проблематично даже если использовать двухстороннюю ЛУТ). Макроопределения пришлось вынести в отдельный файл и переписывать под себя с учетом того, что:

-10

GPIO: IO36, IO39, IO34, IO35 могут работать только на вход (туда повесил шину данных камеры);

GPIO: TX, RX UART0 (туда уже подключен USB-UART преобразователь через который в плату заливается прошивка);

GPIO: IO17, IO16 заняты внешней PSRAM памятью интегрированной в чип ESP32-WROVER-B;

GPIO: D1, D0, CLK, CMD, D3, D2 заняты SPI-Flash памятью интегрированной в чип ESP32-WROVER-B;

GPIO: IO2, IO15, IO14 аппаратная шина для чтения SD карт SD_MMC (для ESP32 с помощью коммутатора не переопределяется).

-11

В отличии от скрепной Arduino на AVR в ESP32 можно программно переназначить интерфейсы с помощью встроенного коммутатора на другие порты ввода/вывода, поэтому для дисплея 1.3" SH1106 OLED работающего по протоколу i2c было решено использовать GPIO 26, 27.

на GPIO12 подключается самодельный модуль адресного светодиода - писал про него тут

на GPIO13 подключена кнопка (если кнопкой не пользоваться - то можно порт забрать с гребенки под свои нужды).

На этой фотографии не модуль SD-READER (обвязки на этой плате нет), а разъем-переходник uSD на шаг 2.54 (DIP).

-12

Подключен он на аппаратную шину SD_MMC - подробнее в этой статье

Здесь только добавлю, что вместо подтягивающего резистора используется GPIO_0. Зачем так и почему читайте по ссылке выше.

-13

Картридер в проектах с ESP32 CAM требуется не часто, поэтому если он не нужен его и резисторы обвязки можно не припаивать, а разрезав дорожку между GPIO_2 и GPIO_0 появляются лишние дополнительные порты.

Все управляющие линии развел авто-трассировщик на нижем слое (синие линии). Питание разводил вручную - потребуется 2 перемычки (красный цвет).

-14

Плата была сделана с помощью утюга

-15
-16

Переходник для чтения карт памяти установлен на обратную сторону платы. По идее тут нужны втулки-заклепки для печатных плат - но поскольку картридер требуется не часто - я его просто подключил через угловую гребенку.

-17

На самом деле фотографии при работе с ESP32-CAM проще отправлять в сеть ("телега", сайт, файловый ресурс, электронная почта) - поэтому для разовой акции заморачиваться с двусторонним ЛУТ мне было лень, а если в готовую конструкцию потребуется плата без картридера - то можно вытравить туже самую плату, только не припаивать обвес и сам карт-ридер.

В отличии от стандартных плат ESP32-CAM - сюда можно подключать и другие модули камер попадающиеся на Ali:

-18

Набор получился не дешевый - все желающие могут посмотреть стоимость компонентов по ссылкам ниже:

ESP32-DevKitC Core Board ESP32
ESP32-DevKitC Core Board ESP32

https://alli.pub/72mxmy?erid=2SDnjcVqiAP

Модуль камеры Waveshare OV2640
Модуль камеры Waveshare OV2640

https://alii.pub/72mxsl?erid=2SDnjbukfeK

SH1106 1,3-дюймовый OLED-модуль белого/синего цвета 128X64
SH1106 1,3-дюймовый OLED-модуль белого/синего цвета 128X64

https://alli.pub/72my3o?erid=2SDnjcofExB

TF SD Держатель для карт Micro SD печатная плата модуля тестирования
TF SD Держатель для карт Micro SD печатная плата модуля тестирования

https://alli.pub/72my8x?erid=2SDnjcz3ptT

Реклама: ООО "АЛИБАБА.КОМ (РУ)" ИНН: 7703380158

но, этот самодельный девелопмент-кит и не предназначен для установки в готовые конструкции. Его цель, возможность комфортной разработки и отладки кода - без необходимости разводить кучу соплей из проводов на макетной плате, из-за плохих контактов которой, могут наблюдаться различные глюки. Перезалить хорошо оттестированный собственный код в дешевый ESP32-CAM для готовой конструкции никто ведь не мешает.

Да и вообще, приятно сделать своими руками вещь, которую до тебя еще никто не делал. Но это мое мнение, а свое оставляете в комментариях.

Оглавление канала тут:

Всем удачи!