Spisu treści:
- Krok 1: Inspiracja
- Krok 2: Sprzęt
- Krok 3: Oprogramowanie
- Krok 4: Zestawienie materiałów
- Krok 5: Przygotowanie komponentów
- Krok 6: Podłącz do płytki LED IR do zasilacza
- Krok 7: Zasil Raspberry Pi
- Krok 8: Podłącz filtr IR Cut
- Krok 9: Podłącz płytkę LED IR do Raspberry
- Krok 10: Zamontuj kamerę na płycie LED IR
- Krok 11: Opcja 1 - Flash wstępnie skonfigurowany obraz PiWebcam (zalecane)
- Krok 12: Opcja 2 - Zbuduj obraz PiWebcam
- Krok 13: Opcja 2 - Skopiuj PiWebcam na kartę SD
- Krok 14: Opcja 2 - Włącz Raspberry i połącz się z nim
- Krok 15: Opcja 2 - Skonfiguruj system dla PiWebcam
- Krok 16: Zadania poinstalacyjne - Połącz się z punktem dostępu Wi-Fi PiWebcam
- Krok 17: Podłącz kamerę internetową do sieci Wi-Fi
- Krok 18: Zamknij obudowę kamery internetowej
- Krok 19: Pierwsze kroki z PiWebcam
- Krok 20: Zdalny dostęp do Internetu
- Krok 21: Szczegóły techniczne
Wideo: W pełni funkcjonalna zewnętrzna kamera bezpieczeństwa oparta na Raspberry Pi: 21 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Jeśli miałeś rozczarowujące doświadczenia z tanimi kamerami internetowymi, ich słabo napisanym oprogramowaniem i/lub nieodpowiednim sprzętem, możesz łatwo zbudować półprofesjonalną kamerę internetową z Raspberry Pi i kilkoma innymi komponentami elektronicznymi, które można łatwo znaleźć, na których uruchomiona jest PiWebcam, darmowa i atrapa oprogramowanie, które za pomocą jednego kliknięcia zamienia urządzenie w potężną i w pełni funkcjonalną kamerę internetową.
Krok 1: Inspiracja
Po walce z ograniczonym oprogramowaniem większości tanich kamer bezpieczeństwa na rynku (np. słabe widzenie w nocy, niejasna aplikacja do konfiguracji, brak nagrywania offline, niedokładne wykrywanie ruchu itp.), postanowiłem zbudować coś sam i Raspberry Pi wyglądało na najbardziej odpowiednią platformę.
Nawet jeśli istnieje już duża liczba projektów dotyczących wykorzystania Raspberry Pi jako kamery internetowej, osobiście uważam je za zbyt skomplikowane i ogólnie mówiąc bardziej doraźne rozwiązania dla zaawansowanych użytkowników niż skończonych produktów.
Niemniej jednak większość z nich skupia się tylko na oprogramowaniu, a nie na sprzęcie, co jest równie ważne w przypadku użycia kamery bezpieczeństwa.
Krok 2: Sprzęt
Do zbudowania wewnętrznej kamery internetowej wystarczy prosty Raspberry Pi (dowolny model) i dołączona kamera (dowolny model) z diodami podczerwieni do widzenia w nocy. Dostępnych jest już wiele zestawów z tą kombinacją, więc jeśli chcesz to osiągnąć, kup jeden z nich i przejdź do kroku 12.
Ten sam sprzęt nie pasowałby jednak do kamery zewnętrznej: obraz z kamery Raspberry z obsługą podczerwieni na zewnątrz domu wyglądałby głównie na mały palec (ze względu na przechwytywanie światła podczerwonego przez kamerę) i z niewielkim Diody LED IR nie byłyby w stanie zobaczyć niczego w odległości większej niż 3 stopy/1 metr.
Aby rozwiązać pierwszy problem, potrzebujemy czegoś, co nazywa się mechanicznym filtrem IR CUT, który zasadniczo przywraca prawdziwe kolory w świetle dziennym, ale nadal pozwala uchwycić światła podczerwone w nocy. Większość urządzeń na rynku ma dwa przewody: jeden krótki impuls na jednym przewodzie przesunie filtr IR przed czujnik (tryb dzienny), jeden krótki impuls na drugim przewodzie usunie filtr (tryb nocny). Zwykle działają w zakresie od 3 V do 9 V, a jeśli są podłączone do naszego Raspberry, możemy mieć pełną kontrolę nad tym, kiedy przełączać tryb nocny. Jednak filtr IR Cut nie może być sterowany bezpośrednio z pinu Raspberry, ponieważ część mechaniczna wewnątrz niego wymaga znacznie więcej prądu niż ten, który może dostarczyć Pi. Ominiemy to za pomocą mostka H zasilanego przez 5V Raspberry i kontrolowanego przez dwa piny.
Aby rozwiązać drugi problem, potrzebowalibyśmy mocniejszej płyty LED IR, aby uzyskać przyzwoite widzenie w nocy. Tablice z mniejszą liczbą, ale większych diod są preferowane w porównaniu z tymi z dużą ilością małych diod. Większość płyt na rynku ma również dołączony LDR (Light Dependent Resistor), który służy do określania, kiedy włączyć diody LED, gdy jest ciemno. Zwykle działają z napięciem 12 V i mają małą wtyczkę (oznaczoną „IRC”), której można użyć do podłączenia filtra odcinającego IR. Jednak żaden impuls nie jest wysyłany bezpośrednio przez tę wtyczkę, ale w nocy (diody LED włączone) powstaje (zwykle) spadek napięcia 5 V między obydwoma przewodami a masą. Podłączając jeden z przewodów do naszego Raspberry i monitorując sygnał pinu, możemy określić, czy wchodzimy w tryb nocny, czy wychodzimy (dokładnie to robi PiWebcam)
Ostatnią rzeczą do rozważenia w odniesieniu do sprzętu jest sposób zasilania Raspberry Pi. Ponieważ mamy zasilacz 12 V i potrzebujemy 5 V do zasilania Pi, potrzebny jest regulator napięcia.
Krok 3: Oprogramowanie
Ideą PiWebcam było zapewnienie potężnej platformy obrazowania dla każdego, niezależnie od jego wcześniejszej wiedzy. Skrypt instalacyjny zajmie się pełną konfiguracją systemu z rozsądnymi ustawieniami domyślnymi, pozwalając użytkownikowi na dostosowanie za pomocą przejrzystego i przyjaznego dla urządzeń mobilnych interfejsu internetowego tylko bardzo ograniczonej liczby istotnych parametrów. Niemniej jednak, dzięki potężnej funkcji wykrywania ruchu, rozszerzonej o możliwości rozpoznawania obiektów oparte na modelu sztucznej inteligencji, PiWebcam może powiadomić użytkownika o każdym wykrytym ruchu, wysyłając zrzut ekranu do odbiorcy e-mail lub umieszczając go w ulubionym kanale Slack użytkownika.
- Strona projektu:
- Instrukcja obsługi:
Krok 4: Zestawienie materiałów
Poniższy wykaz materiałów dotyczy zewnętrznej kamery internetowej zbudowanej w tym samouczku:
- Raspberry Pi Zero W
- Kamera Raspberry Pi (dowolny model, ten zawiera filtr odcinający IR)
- Kabel kamery Raspberry Pi Zero
- Wodoodporna obudowa aparatu (każdy model, w którym pasowałaby malina)
- Karta SD (zalecane 16 GB)
- Tablica LED IR (dowolna tablica pasująca do obudowy kamery)
- Filtr IR Cut (tylko jeśli nie jest jeszcze wbudowany w kamerę)
- Regulator 12v - 5v (upewnij się, że jest to regulator buck, który może zapewnić co najmniej 1A)
- Wtyk męski Micro USB
- Wtyczka żeńska 12v
- Zasilacz 12V 3A
- Mostek H
- Kobieta-kobieta Cales Dupont
Krok 5: Przygotowanie komponentów
Konwerter buck (regulator napięcia) jest odpowiedzialny za konwersję zasilania 12 V na 5 V, którego wymaga Raspberry Pi. Większość komponentów dostępnych na rynku jest regulowana (np. poprzez przekręcenie śruby można zmienić napięcie wyjściowe). Ponieważ wewnątrz kamery śruba może zostać przypadkowo przesunięta, aby zapewnić stałe i stałe wyjście 5 V, umieść trochę cyny w gnieździe 5 V, aby zlutować ze sobą dwie krawędzie i przeciąć drut na płytce drukowanej (nożem), który przechodzi w „ADJ” (lewy górny róg obrazu)
Ponieważ chcemy mieć pełną kontrolę nad filtrem IR Cut przez Raspberry (czy filtr jest osadzony z kamerą jak na zdjęciu), musimy pozbyć się małego złącza. Przetnij dwa przewody i podłącz żeński kabel dupontowy dla każdego przewodu. Nie wyrzucaj małej wtyczki, ponieważ musimy jej użyć, aby otrzymać status LDR zamontowanego na płytce IR Led. Podłącz kolejny żeński kabel dupontowy na jednym z dwóch przewodów (nie ma znaczenia, który).
Krok 6: Podłącz do płytki LED IR do zasilacza
Zacznijmy od podłączenia do podzespołów wejścia zasilacza 12V wchodzącego do naszej gołej obudowy kamery.
Podłącz do ujemnego (czarnego) przewodu w następujący sposób:
- Ujemny przewód tablicy Led IR
- Przewód ujemny konwertera buck
- Przewód ujemny do męskiego złącza USB
Podłącz do dodatniego (czerwonego) przewodu w następujący sposób:
- Dodatni przewód (12 v) płyty LED IR
- Drut Vin konwertera buck
Krok 7: Zasil Raspberry Pi
Podłącz przewód Vout konwertera buck do wtyczki USB, która będzie zasilać Raspberry.
Po połączeniu wszystkich przewodów zlutuj je razem lub po prostu sklej taśmą izolacyjną.
Krok 8: Podłącz filtr IR Cut
Ponieważ filtr IR Cut nie może być sterowany bezpośrednio z pinu Raspberry, użyjemy mostka H zasilanego przez pin 5V Raspberry i kontrolowanego przez dwa piny.
- Podłącz pin 4 (5v) maliny do „+” mostka H
- Podłącz pin 5 (GND) maliny do „-” mostka H
- Podłącz pin 39 (BCM 20) maliny do INT1 mostka H
- Podłącz pin 36 (BCM 16) maliny do INT2 mostka H
- Podłącz dwa przewody filtra IR Cut do MOTOR1 i MOTOR2 lub mostka H
W ten sposób, gdy impuls zostanie wysłany m.in. pin 39, 5v zostanie dostarczony do MOTOR1, co spowoduje przełączenie filtra.
Krok 9: Podłącz płytkę LED IR do Raspberry
Aby wiedzieć, kiedy robi się ciemno, wykorzystujemy LDR zamontowany na płycie LED IR. Użyj małej wtyczki wyciętej z filtra IR w poprzednich krokach, podłącz jedną stronę do złącza oznaczonego "IRC" płytki LED IR, a drugą do pinu 40 (BCM 21) Raspberry.
Krok 10: Zamontuj kamerę na płycie LED IR
Zamocuj kamerę w dedykowanym gnieździe płytki LED IR za pomocą taśmy izolacyjnej lub w inny sposób. Rzeczy, które należy wziąć pod uwagę na tym etapie:
- Płytka LED IR bardzo się nagrzewa, gdy jest włączona, więc odpowiednio chroń kamerę;
- Upewnij się, że żadne światło podczerwone nie może dostać się do gniazda, w którym znajduje się kamera; Odbicie światła podczerwonego jest jedną z najczęstszych przyczyn słabego widzenia w nocy (nieostrości);
- Upewnij się, że pomiędzy obiektywem a szkłem obudowy kamery pozostało trochę wolnego miejsca, w przeciwnym razie może dojść do odbicia lub zniekształcenia obrazu;
NIE zamykaj jeszcze obudowy kamery:-)
Krok 11: Opcja 1 - Flash wstępnie skonfigurowany obraz PiWebcam (zalecane)
- Pobierz najnowszy obraz PiWebcam (PiWebcam_vX. X.img.zip) z
- Rozpakuj plikZapisz obraz na karcie SD (https://www.raspberrypi.org/documentation/installation/installing-images/)
- Podłącz kartę SD do Raspberry Pi i włącz ją
- Urządzenie zacznie działać jako punkt dostępowy
- Kontynuuj zadania poinstalacyjne
Krok 12: Opcja 2 - Zbuduj obraz PiWebcam
Zbudowanie obrazu PiWebcam wymaga nowej instalacji Raspbian i karty SD. Nie używaj ponownie istniejącej instalacji, ale zacznij od zera:
- Pobierz system operacyjny Raspbian Stretch Lite
- Zapisz obraz na karcie SD (na przykład za pomocą programu Win32 Disk Imager)
Krok 13: Opcja 2 - Skopiuj PiWebcam na kartę SD
Pobierz najnowszą wersję PiWebcam (PiWebcam_vX. X.zip), rozpakuj i skopiuj katalog „PiWebcam” na partycję rozruchową.
W przypadku konfiguracji bezgłowej umieść na partycji rozruchowej również pusty plik o nazwie "ssh" i "wpa_supplicant.conf" z konfiguracją sieci. W ten sposób Raspberry zacznie łączyć się z siecią Wi-Fi po uruchomieniu i nie potrzebujesz w ogóle kabla HDMI, ale możesz połączyć się z nim bezpośrednio przez SSH.
Krok 14: Opcja 2 - Włącz Raspberry i połącz się z nim
Podłącz kartę SD do Raspberry Pi, włącz ją i połącz się z klientem SSH (lub PuTTY w systemie Windows):
- Nazwa hosta: raspberrypi.local
- Nazwa użytkownika: pi
- Hasło: malina
Krok 15: Opcja 2 - Skonfiguruj system dla PiWebcam
Po upewnieniu się, że Raspberry jest połączone z Internetem, uruchom następujące polecenie:
sudo /boot/PiWebcam/PiWebcam.sh zainstalować
Spowoduje to pełną konfigurację systemu i zainstalowanie wymaganych zależności.
Pod koniec instalacji zostaniesz poproszony o ponowne uruchomienie urządzenia, aby zmiany były w pełni skuteczne. Wszystkie dane uwierzytelniające zostaną podsumowane na ekranie.
Pamiętaj, że ostatnie 6 znaków jest losowych (np. PiWebcam-e533fe) i różni się w zależności od urządzenia.
Krok 16: Zadania poinstalacyjne - Połącz się z punktem dostępu Wi-Fi PiWebcam
Po włączeniu urządzenie zacznie działać jako punkt dostępowy.
Połącz się z siecią WiFi utworzoną przez urządzenie. Hasło sieci oraz hasło administratora (zarówno dla interfejsu WWW, jak i SSH) są takie same jak SSID (np. PiWebcam-XXXXX). Skieruj swoją przeglądarkę na https://PiWebcam.local i uwierzytelnij się nazwą użytkownika "admin" i hasłem takim samym jak nazwa sieci.
Krok 17: Podłącz kamerę internetową do sieci Wi-Fi
Jeśli chcesz podłączyć kamerę internetową do istniejącej sieci WiFi, przejdź do Urządzenie / Sieć, wybierz "Klient WiFi" i wypełnij swoje "Sieć WiFi" i "Hasło".
Poczekaj 1-2 minuty, połącz się z powrotem z siecią i skieruj przeglądarkę na https://nazwa_kamery.twoja_sieć (np.
Krok 18: Zamknij obudowę kamery internetowej
Po sprawdzeniu, czy kamera internetowa jest dostępna przez sieć i przeprowadzeniu podstawowej konfiguracji przedstawionej w poprzednim kroku, nadszedł czas na zamknięcie sprawy.
Krok 19: Pierwsze kroki z PiWebcam
PiWebcam ma już rozsądne ustawienia domyślne. Po zainstalowaniu nie jest wymagana dodatkowa konfiguracja; PiWebcam zacznie robić zdjęcia i nagrywać filmy, niezależnie od tego, czy jest podłączony do sieci, czy nie.
Całą konfigurację urządzenia (kamera, sieć, powiadomienia i ustawienia systemowe) można przeprowadzić za pośrednictwem interfejsu internetowego. Plik konfiguracyjny można łatwo wyeksportować i zaimportować w menu Urządzenie / System.
Po wykryciu ruchu PiWebcam rozpocznie nagrywanie wideo (które zostanie następnie udostępnione w menu „Odtwarzanie” interfejsu internetowego). Gdy nie będzie już ruchu, zostanie również zapisany obraz podświetlony czerwonym polem wykrytego ruchu. Jeśli funkcja wykrywania obiektów jest włączona, każdy ruch niezawierający skonfigurowanego obiektu zostanie zignorowany, aby obniżyć liczbę fałszywych alarmów (np. w przypadku wykrycia ruchu, ale nie zidentyfikowania żadnej osoby).
Gdy powiadomienia są włączone, migawka zostanie wysłana na adres e-mail użytkownika i/lub opublikowana na skonfigurowanym kanale Slack. Jeśli połączenie internetowe nie jest dostępne, powiadomienie zostanie umieszczone w kolejce i zwolnione, gdy połączenie zostanie przywrócone.
Szczegółowe podsumowanie wszystkich dostępnych ustawień znajduje się na stronie projektu.
Krok 20: Zdalny dostęp do Internetu
Opcjonalnie interfejs sieciowy można uzyskać z Internetu bez dodatkowej konfiguracji w sieci lub routerze domowym. Aby włączyć tę funkcję, zaznacz odpowiednie pole w sekcji Urządzenie / Sieć.
Jeśli zdalny dostęp do Internetu jest włączony, urządzenie inicjuje tunel SSH przez servero.net, bez konieczności konfigurowania jakiegokolwiek NAT lub UPnP w routerze. Nazwa urządzenia jest używana jako nazwa hosta, a zarówno usługi internetowe, jak i ssh są ujawniane.
Krok 21: Szczegóły techniczne
Wszystkie pliki PiWebcam znajdują się na partycji rozruchowej karty SD, w katalogu o nazwie PiWebcam. Obejmuje to pojedynczy plik bash, PiWebcam.sh i strony PHP dla panelu administracyjnego.
Podczas procesu instalacji wykonywana jest bardzo podstawowa konfiguracja systemu, tworzony jest obraz initramfs i skrypt PiWebcam.sh jest dodawany do /etc/rc.local, aby był uruchamiany przy uruchomieniu z parametrem "configure".
Przy pierwszym ponownym uruchomieniu obraz initramfs zmniejszy partycję główną (wcześniej rozszerzoną, aby wypełnić całą kartę SD przez instalator Raspbian) i zaraz po tym utworzy partycję danych.
Zarówno rozruchowy, jak i główny system plików są montowane tylko do odczytu, a nakładka systemu plików jest tworzona przez obraz initram na głównym systemie plików, dzięki czemu wszelkie zmiany w systemie są przechowywane tylko w pamięci i zostają utracone przy następnym ponownym uruchomieniu. W ten sposób urządzenie będzie bardziej odporne na błędne konfiguracje, można je łatwo przywrócić do ustawień fabrycznych i może przetrwać każdą awarię zasilania, ponieważ żaden plik systemowy nie jest nigdy zapisywany na karcie SD podczas normalnej pracy. System plików danych jest zamiast tego formatowany za pomocą F2FS (Flash-Friendly File System), który uwzględnia cechy urządzeń pamięci masowej opartych na pamięci flash.
Podczas uruchamiania PiWebcam odczytuje swój plik konfiguracyjny zapisany w /boot/PiWebcam/PiWebcam.conf, konfiguruje system, kamerę, sieć i powiadomienia na podstawie znalezionych tam ustawień i wdraża interfejs sieciowy z /boot/PiWebcam/web do główna lokalizacja sieci.
Zarówno filmy, jak i filmy są przechowywane w systemie plików danych i pogrupowane w folderach według roku/miesiąca/dnia/godziny, aby zapewnić łatwiejszy dostęp. Wszystkie nagrania można przeglądać przez interfejs sieciowy za pomocą nowoczesnego indeksatora plików h5ai, który umożliwia wyświetlanie plików i katalogów w atrakcyjny sposób oraz zapewnia podgląd zdjęć i filmów bez konieczności wcześniejszego pobierania treści.
Po wykryciu ruchu plik PiWebcam.sh jest wywoływany z parametrem „notify” poprzez zdarzenie ruchu on_picture_save/on_movie_end. Jeśli włączono wykrywanie obiektów w celu dalszej analizy obrazu, obraz jest wysyłany do Clarifai w celu rozpoznania wszystkich obiektów na obrazie. Byłoby to świetne, aby obniżyć liczbę fałszywych alarmów, np. jeśli chcesz wiedzieć, czy ktoś kradnie w twoim domu, a nie tylko nagła zmiana światła.
Następnie PiWebcam sprawdza, czy jest dostępne połączenie z Internetem, a jeśli tak, wysyła powiadomienie. Oprócz tradycyjnych powiadomień e-mail, wysyłanych przez ssmtp, z załączonym wykrytym filmem, PiWebcam może również przesłać to samo zdjęcie do kanału Slack. Jeśli nie znasz Slacka, sprawdź go (); jest to świetne narzędzie do współpracy, ale może być również używane do tworzenia grupy dedykowanej dla Twojej rodziny, przyznawania dostępu członkom rodziny, czatowania z nimi i zezwalania narzędziom PiWebcam lub Home Automation (takim jak np. eGeoffrey) na publikowanie tam aktualizacji. W przypadku braku połączenia z Internetem powiadomienie nie zostanie utracone, ale zostanie umieszczone w kolejce i wysłane po przywróceniu połączenia.
Funkcja aktualizacji jest również dostępna za pośrednictwem interfejsu internetowego.
Zalecana:
Kissing the Frog V2.0 - Głośnik Bluetooth z tylnym rogiem w pełni do druku: 5 kroków (ze zdjęciami)
Kissing the Frog V2.0 - Głośnik Bluetooth z tylnym rogiem w pełni do druku: Wprowadzenie Zacznę od małego tła. Czym więc jest głośnik tubowy obciążony z tyłu? Pomyśl o tym jak o odwróconym megafonie lub gramofonie. Megafon (w zasadzie przedni głośnik tubowy) wykorzystuje tubę akustyczną, aby zwiększyć ogólną wydajność
Funkcjonalna pamięć flash USB Rubiks Cube: 7 kroków (ze zdjęciami)
Funkcjonalny dysk flash USB Rubiks Cube: W tym samouczku pokażę ci, jak zrobić własny dysk flash USB Rubik. Gotowy produkt możesz zobaczyć na poniższym filmie:
Kamera bezpieczeństwa Raspberry Pi: 11 kroków (ze zdjęciami)
Kamera bezpieczeństwa Raspberry Pi: Jest to instrukcja krok po kroku, jak utworzyć kamerę bezpieczeństwa IoT aktywowaną ruchem za pomocą Raspberry Pi. Dowiesz się, jak stworzyć webowy serwer kolby i formularz, który pozwoli użytkownikowi dostosować czułość kamery i czas nagrywania
Najłatwiejsza kamera internetowa jako kamera bezpieczeństwa - wykrywanie ruchu i zdjęcia przesyłane e-mailem: 4 kroki
Najłatwiejsza kamera internetowa jako kamera bezpieczeństwa - wykrywanie ruchu i zdjęcia przesyłane pocztą e-mail: Nie musisz już pobierać ani konfigurować oprogramowania, aby przesyłać obrazy wykryte z kamery internetowej do wiadomości e-mail - wystarczy użyć przeglądarki. Użyj aktualnej przeglądarki Firefox, Chrome, Edge lub Opera w systemie Windows, Mac lub Android, aby uchwycić obraz
Bezprzewodowy przycisk bezpieczeństwa dla bezpieczeństwa PLC: 6 kroków (ze zdjęciami)
Bezprzewodowy przycisk bezpieczeństwa dla bezpieczeństwa PLC: Ten projekt jest moim dowodem koncepcji wykorzystania IoT i (ewentualnie) robotyki do stworzenia dodatkowej warstwy bezpieczeństwa dla niebezpiecznych zakładów produkcyjnych. Ten przycisk może służyć do uruchamiania lub zatrzymywania wielu procesów, w tym sterowania sygnałem