
Cześć! :)
W tym projekcie przeprowadzimy Cię przez proces zbudowania kamerki monitorującej na IP z płytką ESP32-CAM. Kamera ESP32 będzie tworzyć serwer sieciowy do streamowania wideo, do którego będzie możliwość uzyskania dostępu za pomocą dowolnego urządzenia w sieci WiFi.
Projekt może służyć jako kamera bezpieczeństwa przed domem, lub również jako niania elektroniczna do monitorowania swojego dziecka, gdy znajduję się w innym pomieszczeniu.
Efekt finalny będzie następujący:
Spis treści:
- Wymagane komponenty
- ESP32-CAM
- Konwerter USB CP2102
- Przewody męsko-żeńskie
- Wtyk Micro-USB
- Konfiguracja projektu
- Instalowanie środowiska Arduino IDE
- Program do obsługi kamerki
- Wgrywanie programu do kamerki ESP32
- Sprawdzenie obrazu kamery
- Przykładowe ostateczne połączenie kamery
1. Wymagane komponenty

Specyfikacja:
- 32 bitowy dwurdzeniowy procesor z maksymalnym taktowaniem 160MHz;
- 802.11b/g/n Wi-Fi Bluetooth SoC;
- 520 KB pamięci SRAM;
- 4 M PSRAM;
- Obsługuje UART/SPI/I2C/PWM/ADC/DAC;
- Wbudowana dioda FLASH do oświetlania;
- Czytnik kart TF/MicroSD;
- Wiele trybów pracy w uśpieniu;
- Tryb pracy Wi-Fi: STA/AP/STA+AP;
- Smart Config / AirKiss;
- Możliwość zmiany firmware'u zdalnie;
- Kamera OV2640 z maksymalną rozdzielczością do 2 MPX;
- Złącze IPEX do podłączenia

Wymiary:
- Szerokość: 27 mm
- Długość: 39 mm
- Wysokość (od końcówki pinów do zamontowanej kamery jak na obrazku wyżej): 18 mm
- Waga: 6.5 g

Specyfikacja:
- Układ: CP2102
- Złącze: USB A
- Wyprowadzone sygnały na złącze goldpin: TX, RX, DTR, CTS, GND, VCC
- 3x Diody LED służące do sygnalizacji następujących operacji: wysyłanie danych, odbieranie danych, zasilanie.
- Napięcie na pinie VCC: 5V
- Poziom logiczny sygnałów: RX, TX, DTR - 3.3V


Specyfikacja:
- Dostęp do wszystkich linii zawartych w kablu USB.
- Typ złącza: Micro-USB.
- Dwa otwory montażowe, każdy o średnicy 3,5 mm.
- Rozmiar: 1,5 x 1,4 cm
2. Konfiguracja projektu
W tym tutorialu użyjemy Arduino IDE do zaprogramowania mikrokontrolera ESP32-CAM.
Arduino IDE można pobrać ze strony: https://www.arduino.cc/en/software
Po instalacji programu należy dodać dodatek ESP32 w następujący sposób:
- Po uruchomieniu Arduino IDE, w lewym górnym rogu przejść do zakładki
Plik > Preferencje (File > Preferences)
Dodawanie biblioteki wspierającej ESP32-CAM - W polu „Dodatkowe adresy URL do menedżera płytek” wpisać: https://dl.espressif.com/dl/package_esp32_index.json
Wskazanie adresu do pobrania biblioteki dla ESP32-CAM - Przejść do Menedżeru płytek.
Narzędzia > Płytka > Menedżer płytek… (Tools > Board > Boards Manager…)
Menadżer Płytek - Wyszukać dodatek ESP32 oraz go zainstalować.

2.2 Program do obsługi kamery
Następnie po pomyślnym zainstalowaniu środowiska Arduino IDE, należy zaprogramować mikrokontroler. Poniżej został przedstawiony przykładowy kod do stworzenia serwera dla kamerki z komentarzami w języku polskim.
Kod źródłowy jest dostępny do pobrania tutaj: https://gist.github.com/cjaca/7a23ea9e8f857c8b816bd5737959b9e7
Arduino IDE udostępnia również przykładowy kod do tworzenia serwera. Można go znaleźć poprzez wybranie opcji Plik > Przykłady > ESP32 > Camera > CameraWebServer

2.3 Wgrywanie programu do ESP32-CAM
Po napisaniu kodu następnym krokiem jest dodawanie go do płytki. Do tego potrzebny będzie programator, odpowiednie przewody i opcjonalna jest płytka stykowa.
Wykonać następujące połączenia: ESP32 CAM |
Programator |
GND |
GND |
5V |
VCC(5V) |
U0T |
RX |
U0R |
TX |
GPIO 0 |
GND |

Ważne jest, aby podczas wgrywania programu było połączenie IO0 oraz GND.
Aby wgrać program na moduł należy wykonać następujące czynności w środowisku Arduino IDE:
- Narzędzia > Płytka oraz wybrać AI-THINKER ESP32-CAM

- Narzędzia > Port oraz wybrać odpowiedni port (jeśli port się nie pokazuję to najpierw spróbuj wsadzić programator do innego portu USB, sprawdź wszystkie połączenia, programator podczas wpięcia do komputera powinien się zaświecić)

- Wgrać program na płytkę za pomocą przycisku Wgraj, który znajduję się w lewym górnym rogu środowiska Arduino IDE

Jeśli w konsoli widoczna będzie wiadomość connecting…___... (Rys. 16) to należy nacisnąć przycisk RST, który znajduję się po drugiej stronie płytki ESP32-CAM


Po wgraniu programu należy odłączyć połączenie IO0 oraz GND. Następnie włączyć monitor portu szeregowego (Narzędzia > Monitor portu szeregowego)

Upewnić się, że szybkość transmisji jest włączona na 115200 tak jak widać na kolejnym rysunku:

Nacisnąć przycisk RST na płytce ESP32-CAM (widoczna na Rys. 17) oraz po chwili pojawi się komunikat Stream kamery jest gotowy! Idz do: …

2.4 Sprawdzenie obrazu kamery
Program wysyła adres strony na którym będzie widoczny obraz rzeczywisty kamerki w tym przypadku jest to http://192.168.1.24 po wpisaniu podanego adresu w przeglądarce internetowej można podglądać widok kamery.

2.5 Przykładowe ostateczne połączenie kamery
Do zasilania płytki potrzebne jest zasilanie 5V, do przykładu została użyta płytka PCB 5 pin z gniazdem Micro-USB.

W ten sposób uzyskaliśmy działający monitoring w 20 minut :)
Poradnik stworzył: Matthew Ferry