Spisu treści:

ESP8266 Zdalna kamera: 5 kroków
ESP8266 Zdalna kamera: 5 kroków

Wideo: ESP8266 Zdalna kamera: 5 kroków

Wideo: ESP8266 Zdalna kamera: 5 kroków
Wideo: Multisensor na ESP8266 #1, czyli pomiar temperatury dla Domoticza (i nie tylko) 2024, Listopad
Anonim
ESP8266 Zdalna kamera
ESP8266 Zdalna kamera

W tej instrukcji pokażę, jak wykonać zdalną kamerę IP z komponentów, które można łatwo kupić w serwisie eBay, Banggood lub innym dostawcy ekonomicznym. Chciałem, aby kamera była przenośna, rozsądnie kompaktowa i działała w mojej sieci domowej.

Krok 1: Projekt

Projektowanie
Projektowanie
Projektowanie
Projektowanie
Projektowanie
Projektowanie
Projektowanie
Projektowanie

Zdecydowałem się użyć Arduino Mega zamiast Arduino Uno, ponieważ potrzebowałem 2 portów szeregowych i chociaż mogłem emulować drugi na Uno, nie był on tak niezawodny przy wyższych prędkościach. Wybrałem najmniejszy pakiet ESP8266, ESP-01, aby zaoszczędzić miejsce. Do przechowywania obrazów użyłem adaptera kart microSD Sainsmart. Jako kamerę wybrałem ArduCAM Mini 2MP, ponieważ ma on wbudowany FIFO, a także regulowany obiektyw do ogniskowania obrazu. Do przymocowania go do płytki użyłem krótkiego kabla CAT5, ponieważ miał odpowiednią liczbę żył i złącze wykonane w celu łatwego mocowania i odłączania kamery od ekranu. Pozwoliło mi to również na łatwe skierowanie kamery w różne strony lub dodanie przedłużek do kabla.

Użyłem Fritzinga do przechwycenia schematu i rozmieszczenia PCB. Płytki zostały wykonane przez PCBWay, ale każdy producent, który akceptuje pliki Gerber, może je wykonać.

Materiały

  • Arduino Mega
  • Pusta osłona PCB
  • Kabel do programowania USB
  • 12V DC, 250mA lub więcej, wtyczka 2.1mm, zasilacz z dodatnim pinem środkowym
  • ESP8266 (ESP-01)
  • Płytka programująca ESP8266
  • ArduCAM Mini 2MP
  • Moduł czytnika kart microSD + karta microSD
  • AMS1117-33 (liniowy regulator napięcia 3.3)
  • n-kanałowy mosfet (do konwersji poziomów)
  • 4 rezystory 10kΩ
  • Kondensator 50 V 100 uF
  • Pionowe gniazdo sieciowe RJ45
  • Kabel i złącze CAT5 (lub inny 8-żyłowy kabel)
  • 8-stykowe dwurzędowe złącze żeńskie (dla ESP-01)
  • 6-stykowe jednorzędowe złącze żeńskie (do czytnika kart microSD)
  • Nylonowy wspornik 12 mm (do obsługi czytnika kart microSD)
  • 3 1-pinowe złącza męskie (dla punktów testowych)
  • 2-pinowe złącze męskie (dla punktów testowych)
  • 3-pinowe złącze męskie (dla punktów testowych)
  • Obudowa akrylowa Arduino Mega (opcjonalnie)

Potrzebne narzędzia

  • Lutownica
  • Lutować
  • Przecinaki do płukania
  • Multimetr
  • zaciskarka RJ45 (jeśli nie masz pod ręką istniejącego kabla ze złączem)

Krok 2: Flashowanie ESP8266

Flashowanie ESP8266
Flashowanie ESP8266
Flashowanie ESP8266
Flashowanie ESP8266
Flashowanie ESP8266
Flashowanie ESP8266

Aby sflashować ESP8266, podążałem za przewodnikiem All About Circuits. Sflashowałem ESP8266 za pomocą zestawu poleceń AT 2.1.0 i SDK w wersji 1.1.0, które można znaleźć tutaj za pomocą narzędzia do flashowania ESP8266. Użyłem również PuTTY, aby sprawdzić, czy oprogramowanie zostało poprawnie zainstalowane. Schemat układu, którego użyłem do zaprogramowania ESP8266, również znajduje się powyżej. Płytkę programującą zbudowałem na małej płytce prototypowej, ponieważ nie opłacało się produkować PCB. Zwróć uwagę, że układ styków złącza komunikacyjnego na płytce programującej jest zgodny z układem pinów adaptera szeregowego na USB, którego użyłem.

Materiały do flashowania

  • Adapter szeregowy na USB (CP2102)
  • Konwerter USB A na B (żebym mógł użyć zwykłego kabla USB)
  • Płyta prototypowa 40x60mm, raster 2,54mm
  • 6-pinowe gniazdo z zaciskami śrubowymi
  • 8-pinowy dwurzędowy nagłówek żeński
  • 2 przyciski (chwilowe)
  • AMS1117-33 (liniowy regulator napięcia 3.3)
  • Kondensator elektrolityczny 16V 47 uF
  • 2 rezystory 10kΩ
  • różne kawałki drutu

Krok 3: Montaż tarczy

Istnieje wiele sposobów na przylutowanie nagłówków, ale zdecydowałem się najpierw podłączyć je do Mega, a następnie umieścić płytkę ekranującą na górze. Następnie przykleiłem lutem szpilki narożne i sprawdziłem wyrównanie, przed wlutowaniem wszystkich pinów. Po przylutowaniu wszystkich pinów wyjąłem płytkę drukowaną z Mega i przylutowałem resztę komponentów. Zacząłem od środka planszy i wyszedłem na zewnątrz. Przed pierwszym włączeniem płyty sprawdziłem, czy nie ma zwarć między pinami lub między zasilaniem a masą.

Krok 4: Programowanie Arduino Mega

Programowanie Arduino Mega
Programowanie Arduino Mega

Użyłem nieco zmodyfikowanej wersji biblioteki SparkFun ESP8266 dla Arduino (załączona zmodyfikowana biblioteka). Fragmenty kodu pobrałem ze SparkFun (karta microSD, serwer WWW ESWP8266) oraz ArduCAM. Kod ma następującą strukturę; gdy wchodzisz na stronę z przeglądarki, robi zdjęcie, zapisuje je na karcie microSD, a następnie wysyła do Twojej przeglądarki. W załączeniu podstawowa wersja serwisu (index.txt). Stronę należy umieścić na karcie microSD. Po przesłaniu kodu sprawdź, czy wszystko jest prawidłowo połączone, otwierając monitor szeregowy i odczytując komunikaty inicjalizacji. Dołączony jest klips monitora szeregowego podczas uruchamiania. Pokazuje, że kamera, czytnik kart microSD i ESP8266 są podłączone, że ESP8266 jest podłączony do WIFI, a adres IP jest przypisany.

Krok 5: Uruchamianie serwera WWW obrazu

Uruchamianie serwera WWW obrazu
Uruchamianie serwera WWW obrazu
Uruchamianie serwera WWW obrazu
Uruchamianie serwera WWW obrazu

Aby uruchomić serwer WWW po raz pierwszy, uruchom Arduino IDE i ustaw port COM na ten, do którego podłączony jest Mega. Otwórz monitor szeregowy i ustaw szybkość transmisji na taką, na jaką jest ustawiony Mega. Jak tylko otworzysz monitor szeregowy, wydrukuje niektóre informacje inicjujące, a następnie wydrukuje adres IP, do którego przypisany jest ESP8266 (jest to podkreślone na niebiesko na pierwszym obrazku). W tym momencie zalogowałem się do mojego routera i wstępnie przypisałem adres IP, z którym ESP8266 był podłączony na stałe, aby ESP8266 zawsze miał przypisany ten adres. Na przykład, aby wyświetlić obrazy z mojego serwera internetowego, zawsze używam 192.168.1.135 w mojej przeglądarce internetowej. Mogę to zrobić na dowolnym urządzeniu podłączonym do mojej sieci LAN/WLAN. Załączony jest przykładowy obraz i prawdopodobnie jest tak dobry, jak w przypadku aparatu o rozdzielczości 2 megapikseli. Często potrzeba kilku iteracji, aby prawidłowo ustawić ostrość obrazu. Przydałby się aparat z autofokusem, może to będzie moja przyszła aktualizacja.

Zalecana: