Эта статья представляет собой краткое руководство по началу работы для платы ESP32-CAM. Я расскажу как настроить веб-сервер потокового видео менее, чем за 5 минут с помощью Arduino IDE.
Примечание:
в этой статье я использую пример из
библиотеки arduino-esp32, но не рассматриваю
как его изменить.
ESP32-камера - это очень маленький модуль камеры с чипом ESP32-S, который стоит около $ 10. Помимо камеры OV2640 и нескольких GPIO для подключения периферийных устройств, он имеет слот для карт microSD, который может быть полезен для хранения изображений, сделанных с помощью камеры, или хранения файлов.
Основные характеристики ESP32-CAM:
Беспроводной модуль - ESP32-S WiFi 802.11 b/g/n + модуль Bluetooth;
Внешнее хранилище - слот для карт micro- SD ёмкостью до 4 ГБ;
Поддержка камер OV2640 (продаётся с платой) или OV7670;
Формат изображения - JPEG (только OV2640), BMP, оттенки серого;
Светодиодная вспышка.
Контакты – 16 с интерфейсами UART, SPI, I2C, PWM
Напряжение питания - 5 В;
Потребляемая мощность:
Размеры - 40,5 х 27 х 4,5 мм
Температурный диапазон:
Карты памяти на 4 Гб не было под рукой, поэтому проверить не получилось. Ставил на 16 Гб. Не сохраняет.
На
следующем рисунке показаны выводы
ESP32-CAM.
Есть
три вывода GND и два вывода для питания:
3.3 V, либо 5V.
GPIO 1 и GPIO 3 - это последовательные контакты. Вам нужны эти контакты, чтобы загрузить код на вашу плату. Кроме того, GPIO 0 играет важную роль, поскольку он определяет, находится ли ESP32 в режиме программирования или нет. Когда GPIO 0 подключен к GND, ESP32 находится в режиме программирования.
Для программирования ESP32-камеры понадобятся следующие компоненты:
Приступим к установке, настройке необходимого ПО и прошивке ESP32. Разделим вс ё на несколько этапов:
1.
Установка дополнения ESP32
В этом
примере я использую Arduino IDE для
программирования платы ESP32-CAM. Установите
Arduino IDE, и настройте
работу с ESP32. Если этого у вас не сделано,
воспользуетесь следующей инструкцией:
Установка, прошивка платы ESP32 в Arduino IDE (Windows, Mac OS X, Linux)
2.
Пример Кода CameraWebServer
В среде Arduino
IDE выберите пример для работы с
камерой
для этого перейдите:
Файл > Примеры > ESP32 > Camera>CameraWebServer
Откроется пример скетча работы с камерой ESP32:
Если вы не можете найти данный пример, то можете его скачать с нашего сайта. Внизу статьи есть ссылка для скачивания материала. Внимание! Для того, чтобы скачать файлы с сайта вам нужно зарегистрироваться.
После
загрузки распакуйте папку и откройте
файл скетча для esp32
cam ov2640: CameraWebServer.ino.
Перед
загрузкой прошивки в модуль ESP32 CAM
необходимо указать ваши данные для
подключения к Wi-Fi сети.
const char* ssid = "Имя_точки_wi-fi"; const char* password = "пароль_от_wi-fi";
Затем
убедитесь, что вы выбрали правильный
модуль камеры. В данном случае используйте
модель AI-THINKER Model. Для этого закомментируйте
все другие модели и раскомментируйте
указанную ниже:
#define CAMERA_MODEL_AI_THINKER
Теперь
код готов к загрузке на вашу ESP32.
3.
Прошивка ESP32-CAM
Для прошивки я использую самый недорогой TTL программатор. И всё прошивается и работает отлично.
Подключаю всё вот по такой схеме:
Важно! GPIO 0 должен быть подключен к GND, чтобы вы смогли загрузить код.
Чтобы загрузить код, выполните следующие действия:
Важно! Если вы не можете загрузить код, то еще раз проверьте, что GPIO 0 подключен к GND и, что вы выбрали правильные настройки в меню Инструменты. Вы также должны нажать кнопку сброса на борту, чтобы перезагрузить ESP32 в режиме программирования.
4.
Получение IP-адреса и подключение к
камере.
После
загрузки кода отключите
GPIO 0
от GND. Подключите
питание на 5 В. На 3,3 В у меня камера не
заработала.
Откройте
последовательный монитор со скоростью
передачи данных 115200. Нажмите кнопку
ESP32-CAM on-board Reset.
IP-адрес
ESP32 должен быть выведен
в последовательном
мониторе.
Теперь
вы можете получить доступ к серверу
потоковой передачи камеры в локальной
сети. Откройте браузер и введите
IP-адрес
ESP32-CAM
. Нажмите кнопку Start Streaming,
чтобы начать потоковую передачу видео.
У вас так же есть возможность делать фотографии, нажав на кнопку Get Still. К сожалению, этот пример не сохраняет фотографии, но вы можете изменить его, чтобы использовать встроенную карту microSD для хранения полученных фотографий.
Есть
еще несколько настроек камеры, с которыми
вы можете поиграть, чтобы настроить
параметры изображения.
Если вы
откроете монитор порта во время работы
камеры, то вы получите подробную
информацию о количестве кадров в секунду,
о скорости обработки и пр.
Чем выше качество потокового вещания, тем меньше кадров. Комфортно работает при разрешении 600х800.
Можно реализовать распознавание лиц. Но, пока, в данном направлении я не экспериментировал. Как будут результаты, обязательно напишу статью, или сделаю проект.
Подписывайтесь
на
наш
канал на
Youtube и
вступайте в группы в
Вконтакте и Facebook.
Понравилась статья? Поделитесь ею с друзьями:
Файлы для скачивания
![]() |
arduino-esp32-CameraWebServer-master.zip | 14 Kb | 2809 | Скачать |
Вернуться в раздел: Проекты на ESP32 Дата публикации 5 ноября , 2019
Привет
Пытаюсь залить прошивку. Возвращает ошибку:
A fatal error occurred: Failed to connect to ESP32: Invalid head of packet: (0x00)
Проверял ттл конвертор - работает исправно. Ошибка возникает независимо от удержания кнопки сброса платы
как включить/выключить вспышку ?
Тоже два дня промучился с ошибками, пока не переключил два переключателя на програматоре в положение ON
Доброго времени,у меня выдает такую ошибку Connecting........_____....._____....._____....._____....._____....._____.....____Произошла
ошибка при загрузке скетча
по вашему вопросу кажись кондерчик на 10микрофарад может поможет,Ни нужно ни чего припаивать. Вот нормальное решение:
https://portal-pk.ru/news/226-ustanovka-proshivka-...
Внимание! Если у вас бежит строка с повторяющимися точками и линиями. Нажмите кнопку Boot на плате и удерживайте ее пока не побегут проценты загрузки. После чего кнопку можно отпустить.
Writing at 0x0000e000... (100 %)Проверти схему подключения.
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 4096.0 kbit/s)...
A fatal error occurred: Timed out waiting for packet header
A fatal error occurred: Timed out waiting for packet header
Сам нашел ответ на свой вопрос. Оказалось китаец подсунул камеру xrz00d1-v240 вместо ov2640. С ней все немного сложнее.
Добрый вечер! Все повторил по Вашей инструкции, - лог отправки кадров потока в консоли отображаются, но в браузере (Chrom, IE) видо не демонстрируется. При "старте потока" появляется маленький пустой квадратик и крестик для закрытия потока. При нажатии крестика лог в консоли останавливается. Все вроде бы работает правильно но "мультиков" нет. Что я делаю не правильно?
Esp 32 позволяет сделать и регистратор и ip камеру, и видеоняню и домофон... Особенно, если подружить его с ардуино. Программные (и "железные") доработки могут значительно расширить область применения. Очень привлекательный модуль в соотношении возможностей к цене. Основное применение модулю, конечно, в робототехнике.
Думаю, делать из него регистратор как то глупо, ввиду малого объема памяти и наличия чипа wi-fi - bluetooth. А вот на дрон - пожалуйста.
Комментарии
Войдите или Зарегистрируйтесь И Вы сможете общаться на форуме и оставлять комментарии без капчи.