Spisu treści:
- Krok 1: Łączenie z istniejącym panelem sterowania
- Krok 2: Okablowanie płytki przekaźnikowej
- Krok 3: Instalacja oprogramowania
- Krok 4: Tworzenie interfejsu
- Krok 5: Wypróbuj
Wideo: Otwieracz do drzwi garażowych Raspberry Pi: 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Nasza piętnastoletnia klawiatura, która pozwala nam otworzyć bramę garażową, powoli umiera, z kilkoma przyciskami, które ledwo się rejestrują, co utrudnia naszym nastolatkom (lub opiekunom) dostanie się do domu, gdy zapomną klucz.
Zamiast go wymieniać i przeskakiwać przez pętle przeprogramowania, zdecydowałem się na nieco bardziej zaawansowaną technologię i zastąpić go czymś, co wymagało jedynie dostępu do naszego Wi-Fi i telefonu.
Użyłem bezprzewodowego Pi Zero i 2-kanałowego przekaźnika, który pozostawiłem z innego projektu, który pozwala mi sterować zarówno drzwiami, jak i światłami wbudowanymi w otwieracz bramy garażowej. Ponieważ miałem starą / zapasową kamerę USB leżącą wokół zbierającą kurz, użyłem jej zamiast PiCam, ale to tylko z wygody. To działałoby dobrze z każdą obsługiwaną kamerą - nie ma nic specjalnego w moim, tylko to, że Raspbian to obsługuje.
W przeciwieństwie do innych podobnych projektów, starałem się, aby było to tak proste, jak to tylko możliwe, używając "standardowych" pakietów oprogramowania, które są dość łatwe do uruchomienia, jeśli postępujesz zgodnie z instrukcjami. To zdjęcie pokazuje moją ostateczną (wcale nie ładną, ale to mój garaż) instalację, w tym Pi, moduł przekaźnika i kamerę USB skierowaną na drzwi. Nie ma konkretnego powodu, aby używać Pi Zero – wystarczyłoby każde Pi, o ile można je podłączyć do sieci wewnętrznej, a Wi-Fi to ułatwia.
Krok 1: Łączenie z istniejącym panelem sterowania
Po pierwsze, TWÓJ MOŻE BYĆ INNY! Mój ma pojedynczą parę przewodów biegnących od otwierania drzwi garażowych do panelu sterowania na ścianie. Ponieważ są tylko dwa przewody, które podczas testowania wydawały się mieć około 18 woltów, początkowo byłem trochę zdezorientowany, jak dokładnie ta rzecz może sterować wieloma funkcjami. MYŚLĘ, że każdy chwilowy przycisk po prostu uzupełnia obwód, ale z różnymi poziomami oporu. Następnie jednostka główna może odczytać tę rezystancję poprzez różne spadki napięcia i wykonać prawidłowe działanie. Nic z tego nie ma jednak znaczenia, chyba że próbujesz całkowicie zastąpić jednostkę sterującą Pi. Nie wiem, dlaczego chcesz to zrobić, ponieważ fajnie jest nadal mieć jednostkę fizyczną na swoim miejscu.
AAAAAannyway, wszystko, co musisz zrobić, to powielić różne naciśnięcia przycisków, podłączając chwilowe przełączniki na płytce drukowanej do modułu przekaźnika. To było jedyne lutowanie, które musiałem wykonać, a pady na płytce drukowanej były dość duże, więc było to całkiem proste. Na razie zostaw te przewody trochę za długie, ponieważ o wiele łatwiej jest skrócić przewód niż go później wydłużyć, chyba że masz na sobie napinacz do drutu ACME, ale są to dość rzadkie.
Krok 2: Okablowanie płytki przekaźnikowej
Nie ma tu za dużo do powiedzenia, po prostu połącz wszystko jak na zdjęciach. W module 2-przekaźnikowym Sainsmart styki JC-VCC i VCC muszą być połączone razem, chyba że chcesz użyć dla nich całkowicie oddzielnego zasilacza, ale do tego celu jest to przesada. Podłącz GND do pinu Pi GND, VCC do pinu 5 V, a IN1 i IN2 do dowolnych pinów GPIO, których chcesz użyć. Ponieważ zamierzasz używać ich jako przełączników HIGH / LOW, naprawdę nie ma znaczenia, które z nich.
Krok 3: Instalacja oprogramowania
Jest to prawdopodobnie najbardziej czasochłonny krok, ponieważ przez jakiś czas będziesz oglądać rzeczy pobierane i instalowane. Oglądaj youtube czy coś, gdy niektóre z tych rzeczy są zainstalowane.
Nie będę wyjaśniał, jak zainstalować Raspbian. Jeśli jeszcze nie wiesz, jak to zrobić, może najpierw przejdź do google kilka samouczków typu „hello world”. W każdym razie prawdopodobnie najlepiej będzie użyć nowej instalacji Raspbian Lite. Nie ma potrzeby posiadania interfejsu użytkownika w tym projekcie, a to tylko dodatkowe obciążenie. raspberrypi.org może przeprowadzić Cię przez ten proces.
Włącz SSH i (jeśli chcesz) albo skonfiguruj statyczny adres IP dla swojego Pi (po raz kolejny istnieje wiele samouczków, jak to zrobić, napisane przez lepszych autorów niż ja) lub jeszcze lepiej, skonfiguruj swój router / serwer DHCP aby przypisać statyczny adres IP do twojego Pi.
Jeśli chcesz mieć ładną, łatwą w instalacji i obsłudze usługę wideo, zainstaluj MotionEye. To prawdopodobnie przesada, ale jest to jedna z instalacji, która „po prostu działa” za każdym razem i ma ładny, łatwy w użyciu interfejs sieciowy. Sprawdź to tutaj:
github.com/ccrisan/motioneye/wiki/Install-… Postępuj zgodnie z tymi instrukcjami, używając sudo przed każdym poleceniem, a będziesz mieć fajną konfigurację streamera wideo. Nie jest dokładnie wymagane posiadanie strumienia wideo, jeśli zależy ci tylko na otwarciu drzwi, gdy możesz to zobaczyć, ale miło jest mieć informację zwrotną.
Po zainstalowaniu Motioneye wejdź na stronę https://TwójAdresIP:8765 i zaloguj się przy użyciu nazwy użytkownika „admin” i pustego hasła. Prawdopodobnie będziesz musiał dodać kamerę, która ponownie powinna „po prostu działać” i wykraczać poza zakres tych instrukcji.
Gdy jesteś zalogowany jako administrator, kliknij przełącznik "Ustawienia zaawansowane", a następnie ustaw opcje wideo - użyłem 320x240 do mojego wideo, ponieważ bardziej zależy mi na szybszych aktualizacjach niż na jakości, ponieważ naprawdę chciałem tylko zobaczyć to drzwi były otwarte lub nie, i nie trzeba czytać numerów skrzynek pocztowych po drugiej stronie ulicy.
W obszarze ustawień „Video Streaming” kliknij link „Streaming URL” i zanotuj adres, który Ci przedstawia. Będziesz go potrzebować później, jeśli planujesz skonfigurować interfejs w taki sam sposób, jak ja.
Istnieje wiele sposobów kontrolowania pinów GPIO. Do tego projektu użyłem WiringPi, aby go zainstalować, skorzystaj z instrukcji na stronie:
wiringpi.com/download-and-install/
Lub po prostu wydaj następujące polecenia na swoim Pi:
wget https://lion.drogon.net/wiringpi-2.50-1.debsudo dpkg -i wirepi-2.50-1.deb gpio -v gpio readall
To powinno dać ci listę tego, co dzieje się z twoimi pinami GPIO.
Jeśli używasz pinów 4 i 17 (w schemacie numeracji BCM), możesz przetestować swoje połączenia za pomocą następujących poleceń. Należy pamiętać, że ustawienie pinu LOW spowoduje aktywację przekaźników w przypadku korzystania z tego modułu Sainsmart. Twoje może być inne i musisz się do tego dostosować. Podczas wykonywania tych poleceń powinieneś usłyszeć, jak przekaźniki klikają na swoje miejsce, a diody LED powinny się zaświecić.
gpio -g tryb 17 out
gpio -g zapisz 17 0 gpio -g zapisz 1 1 gpio -g tryb 4 wyj gpio -g zapisz 4 0 gpio -g zapisz 4 1
OK, teraz możemy przejść do tworzenia interfejsu użytkownika.
Krok 4: Tworzenie interfejsu
Użyłem apache i PHP. Ładne i proste, nic nadzwyczajnego. Po raz kolejny zostało to lepiej wyjaśnione w innym miejscu, więc po prostu postępuj zgodnie z instrukcjami znajdującymi się tutaj:
www.raspberrypi.org/documentation/remote-a…
"Root" twojego serwera WWW domyślnie znajduje się w /var/www/html/ z domyślnym index.html, który zawiera informacje o twoim serwerze WWW. Zastąpisz ten index.html, więc możesz go usunąć lub zmienić jego nazwę na coś innego, na przykład index.copy. Uczyniłem również użytkownika "pi" właścicielem katalogu html, żeby być leniwym co do uprawnień. Wreszcie stworzyłem katalog do przechowywania moich obrazów, z których są dwa. Jeden, który jest po prostu głupią informacją, że został naciśnięty przycisk, a drugi, którego można użyć jako ikony na ekranie głównym telefonu.
pi@drzwi garażowe:~ $ cd /var/www/html/
pi@garagedoor:/var/www/html $ sudo chown pi.pi@garagedoor:/var/www/html $ mv index.html index.copy pi@garagedoor:/var/www/html $ mkdir images
Istnieje nieskończona liczba sposobów na stworzenie strony internetowej, ale zdecydowałem się zachować ją tak prostą i łatwą, jak to tylko możliwe w oparciu o MOJE umiejętności. Stąd PHP, odkąd go znam. Jeśli jesteś guru Pythona lub innym językiem skryptowym, możesz go użyć.
Stworzyłem stronę index.html „kontener”, która w rzeczywistości ma dwie ramki iframe, które wykonują całą pracę. Jedna z ramek iframe zawiera przyciski/łącza, które faktycznie wyzwalają przekaźniki przez GPIO, a druga ramka iframe wyświetlająca wideo. Zawiera również łącza do obrazu.png, którego można użyć jako ikony na ekranie głównym telefonu.
Element iframe index.html zawierający przyciski ma jako swoją zawartość plik buttons.html. (zabawne, jak to działa, co?) Oba linki w button.html prowadzą do action.php z unikalną wartością zmiennej GET. Na podstawie przekazanej wartości action.php albo wywoła drzwi, albo przycisk światła. Możesz pobrać kod HTML i PHP z mojego github:
Umieść cały kod HTML i PHP w katalogu głównym (/var/www/html/), w razie potrzeby zaktualizuj kod o nazwę obrazu, którego możesz użyć do potwierdzenia naciśnięcia przycisku, oraz adres strumienia wideo. Pamiętasz, kiedy powiedziałem ci, że będziesz tego potrzebować, w poprzednim kroku?
Krok 5: Wypróbuj
OK, teraz, gdy masz już wszystko okablowane i zainstalowane, wszystko działa idealnie za pierwszym razem, prawda? Słodki!
Zalecana:
Otwieracz drzwi garażowych z informacją zwrotną za pomocą Esp8266 jako serwera internetowego.: 6 kroków
Otwieracz do drzwi garażowych z informacją zwrotną za pomocą Esp8266 jako serwera internetowego.: Cześć, pokażę ci, jak w prosty sposób zrobić otwieracz do drzwi garażowych. informacje zwrotne, będziesz wiedzieć, czy drzwi są otwierane lub zamykane w czasie rzeczywistym - Prosty, tylko jeden skrót, aby
Sprzęt do otwierania drzwi garażowych Raspberry Pi Zero: 10 kroków
Sprzęt do otwierania drzwi garażowych Raspberry Pi Zero: Jedną z inspiracji dla tego projektu była drobna instruktaż w otwieraczu drzwi garażowych Raspberry Pi 3, a także kilka innych znalezionych w Internecie. Nie będąc wytrawną elektroniką, przeprowadziłem wiele dodatkowych badań na temat sposobów na
Otwieranie drzwi garażowych za pomocą Raspberry Pi: 5 kroków (ze zdjęciami)
Otwieranie drzwi garażowych za pomocą Raspberry Pi: Steruj silnikiem garażu ze smartfona lub dowolnego urządzenia, które może przeglądać strony internetowe (z AJAX!). Projekt rozpoczął się, ponieważ miałem tylko jeden pilot do garażu. Jak fajnie było kupić drugi? Niewystarczająco. Moim celem była możliwość kontrolowania i monitorowania
Otwieracz do drzwi garażowych Raspberry Pi 3: 15 kroków (ze zdjęciami)
Otwieracz do drzwi garażowych Raspberry Pi 3: Stworzyłem tę instrukcję w 2014 roku. Od tego czasu wiele się zmieniło. W 2021 zaktualizowałem tutaj Smart Garage Door Opener. Użyj Raspberry Pi i smartfona, aby otwierać, zamykać i monitorować bramę garażową. Otwieranie i zamykanie drzwi zabezpieczone jest za pomocą s
Otwieracz drzwi garażowych iPhone i Arduino: 8 kroków
IPhone i Arduino Garage Door Opener: Często podążam za wieloma technicznymi instrukcjami i zawsze jestem zdumiony rzeczami, które ludzie wymyślają. Jakiś czas temu znalazłem instrukcję na otwieraczu drzwi garażowych Wi-Fi, który uważałem za naprawdę fajny i dodałem go do mojej niekończącej się listy rzeczy do zrobienia