Spisu treści:
- Krok 1: Trochę tła
- Krok 2: Stos oprogramowania
- Krok 3: Sprzęt - Alpha
- Krok 4: Sprzęt - wersja beta
- Krok 5: Kod źródłowy i zasoby
Wideo: Otwieranie drzwi garażowych za pomocą Raspberry Pi: 5 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
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 bramy garażowej ze smartfona za pomocą jednej strony. Nie nałożyłem na to żadnego wymyślnego zabezpieczenia, ponieważ RPi nie jest widoczne poza moją siecią LAN. W związku z tym polegam na VPN, aby uzyskać dostęp do strony internetowej. Korzystając ze smartfona z Androidem, bardzo łatwo jest zarówno skonfigurować VPN, jak i dodać stronę internetową do mojego ekranu głównego. Wszystko, czego potrzebowałem, to oprogramowanie do tego.
Jeśli chcesz wesprzeć mnie w pisaniu innych instrukcji, kup sprzęt z linków sponsorowanych Amazon.
Ponadto ta instrukcja jest teraz również dostępna na mojej osobistej stronie:
Krok 1: Trochę tła
Co znalazłem w Internecie
Jako programista lubię ponownie wykorzystywać samouczki lub kod już „na poziomie produkcyjnym”. W tym przypadku nie byłem zadowolony z tego, co znalazłem:
- Otwieracz do drzwi garażowych Raspberry Pi firmy quartarian. Tam, gdzie zacząłem, prosty przycisk do sterowania przekaźnikiem. Brak przycisków otwierania/zamykania, brak sprzężenia zwrotnego. W każdym razie bardzo pomocne było zrozumienie koncepcji wokół dedykowanego RPi do sterowania silnikiem z przekaźnika. Okablowanie, którego teraz używam, jest nadal takie samo dla części sterującej.
- Otwieracz do drzwi garażowych Raspberry Pi z GaragePi firmy Chase Chou. Taka sama konfiguracja, ale przy użyciu dodatkowego pilota bezprzewodowego. Nie chciałem zabić mojego jedynego pilota. W każdym razie okazało się, że używa tego samego rodzaju układu elektrycznego dla części dowodzenia. Po drodze dowiedziałem się o WebIOPi, aby sprawdzić moje GPIO przez stronę internetową. Tam też dowiedziałem się o umieszczeniu skrótu na ekranie głównym Androida. Zaczęło też rzucać światło na pomysł polegania na usługach, w końcu chcę, żeby był niezawodny.
- Tworzenie wiadomości e-mail, tweeta lub SMS-ów z drzwi garażowych: Część 1 Autor: Richard L. Lynch. Ten dodał pomysł, aby użyć czujnika magnetycznego do kontrolowania stanu drzwi. Jednak nie używałem zbyt wiele, ponieważ nie budowałem systemu alarmowego, ale system dowodzenia/monitorowania.
- Całkowicie bezprzewodowy mechanizm otwierania drzwi garażowych / kamera bezpieczeństwa firmy DeckerEgo. Dzięki temu lepiej wiedziałem o przesyłaniu strumieniowym z kamery internetowej w celu monitorowania drzwi. Nadal muszę w to włożyć trochę wysiłku. Może będę musiał oddać koncentrator USB do recyklingu lub pobrać inną kamerę internetową.
- Sterowanie Raspberry Pi z urządzenia mobilnego lub przeglądarki internetowej na komputerze przez Frédérick Blais. To jest teraz moja podstawa dla stosu oprogramowania. Używa Flask do uruchomienia bardzo prostej strony internetowej wraz z AJAX. Jest to dla mnie premium, ponieważ zapewnia monitorowanie w czasie rzeczywistym i opcje poleceń. Czytaj poniżej.
O moim RPi
Ponieważ wciąż uczę się ogólnie o RPi i elektronice, kupiłem kilka rzeczy do mojego świeżo nabytego Raspberry Pi: kilka kabli, T-cobbler, kilka diod led, moduł z jednym przekaźnikiem, osiem przekaźników moduł, wyświetlacz LCD i tak dalej. W żadnym wypadku nie jestem elektronikiem i okazało się to bardzo pouczające. Aby kupić dodatkowy sprzęt, Amazon i Ebay są twoimi najlepszymi przyjaciółmi.
Obecny stan projektu obejmuje następujący sprzęt:
- Raspberry Pi (FR/DE) z systemem Raspbian Wheezy 2014-09-09 z najnowszymi aktualizacjami
- Karta microSD klasy 10 o pojemności 8 GB (FR/DE) lub 16 GB (FR/DE) lub 32 GB (FR/DE) do przechowywania systemu operacyjnego, plików itp.
- Dwa kontaktrony garażowe ze stopu cynku (FR/DE) do wykrywania stanu otwarcia/zamknięcia
- Jeden moduł przekaźnika 3V (FR/DE) do wysyłania poleceń do silnika drzwi (mój ma wbudowaną diodę LED do monitorowania stanu przekaźnika, bardzo przydatne!)
- Płytka stykowa bez lutowania (FR/DE) i 2 przełączniki chwilowe (FR/DE) do symulacji drzwi na moim biurku (lub zestaw startowy (FR/DE))
- Klucz sprzętowy Wi-Fi (FR/DE) do usuwania dodatkowego okablowania, gdy będzie zwisał z sufitu garażu
Ograniczeniem, które nadal mam, jest to, że nie wiem, kiedy drzwi są w połowie drogi, zatrzymane lub nadal się poruszają. Dlatego też chciałbym później dodać starą kamerkę do streamowania z garażu. Chyba faktycznie dodam jakiś czujnik do monitorowania samego silnika.
Krok 2: Stos oprogramowania
Ogólne rzeczy
Oprogramowanie opiera się na module Python, Flask i WiringPi GPIO Python. Jak wyjaśniono w tle, zacząłem od samouczka sterowania Raspberry Pi z urządzenia mobilnego lub przeglądarki internetowej na komputerze, opublikowanego przez Frédéricka Blaisa. Obecne oprogramowanie składa się z:
- Plik szablonu HTML zawierający kod i elementy sterujące jQuery Mobile
- Moduł Python Pins umożliwiający dostęp do GPIO Raspberry Pi
- Moduł Pythona go do uruchamiania Flask i obsługi zapytań AJAX
To, co jest obecne w repozytorium, to surowe oprogramowanie. To w żaden sposób nie jest wyszukane ani przytłaczające. Właśnie to udało mi się osiągnąć dzięki temu, czego się nauczyłem.
Aktualny interfejs
Obecnie stan drzwi jest odczytywany co 0,5s. Dwa przełączniki są używane zarówno do stanu otwartego, jak i zamkniętego. Przekaźnik służy do sterowania silnikiem. Obecny kod nadal wyświetla jakiś debug. Poniższy zrzut ekranu pochodzi z Nexusa 5.
Krok 3: Sprzęt - Alpha
Stanowisko testowe
Moje stanowisko testowe jest dość proste, RPi, przekaźnik i dwa przełączniki. Aby trzymać rzeczy mocno, wystarczy kilka wiązań (FR/DE). Oto jego zdjęcie. Kabel RJ45 LAN (FR/DE) służy do debugowania pulpitu i klucza WIFI do użytku w garażu.
System na żywo
Na razie RPi jest podłączone do silnika drzwi, przełączniki pójdą. Muszę trochę poczekać, aby dostać rurkę termokurczliwą (FR/DE). Powinienem też być bardziej opanowany. Przepraszam za rozmycie.
Kable niebieski, żółty i zielony po lewej stronie służą do przełączników magnetycznych.
- Niebieski to GND
- Żółty i zielony to piny 18 (stan otwarty) i 27 (stan zamknięty).
Krok 4: Sprzęt - wersja beta
Stanowisko testowe
To jest teraz bezpośredni karton z wiązaniami na suwak. W zestawie znajduje się również wyświetlacz LCD i przekaźnik. Wyświetlacz LCD ma wymiary 20x4 (20 znaków dla wierszy, 4 linie) (FR/DE) na I²C.
Pierwsze 2 wiersze wyświetlają powitanie i datę/godzinę. Ostatnie 2 linie przełączają się między stanami pinów a stanem sieci (adresy IP eth0/wan0). Linia stanu drzwi to fajny GFX do powiedzenia:
- | | jest otwarte
- |-| działa
- |.| zamknięte
Schematy frytek
Schemat Fritzing z wyświetlaczem LCD 20x4 I2C, przełącznikami otwórz/zamknij i przekaźnikiem. Jedynym dodatkiem jest ekran LCD I2C. Wolałem to od 18x2, które miałem.
System na żywo
Beta HW jest teraz „poziomem produkcyjnym”, ponieważ ładnie mieści się w starym pudełku na śruby. Zachowałem jeden separator do hostowania kabli przekaźnikowych i dodatkowych, podczas gdy RPi stoi na niższym poziomie. Po prawej stronie możesz zauważyć serwer Synology NAS (FR/DE), który służy do bezpośredniego zasilania RPi. W nocy z modemem, switchem i NAS.
Zamknij widok skrzynki na śruby, wyświetlacz LCD pokazuje stan drzwi i pinout otwierania/zamykania/przekaźnika.
W nocy widok na wnętrze z góry.
Krok 5: Kod źródłowy i zasoby
Wszystkie zasoby można znaleźć w tym repozytorium GitHub:
github.com/amayii0/GarageOpenerR1
Zalecana:
DIY Inteligentne otwieranie drzwi garażowych + Integracja z asystentem domowym: 5 kroków
DIY inteligentny otwieracz drzwi garażowych + integracja z asystentem domowym: Zmień swoją zwykłą bramę garażową na inteligentną, korzystając z tego projektu DIY. Pokażę Ci, jak ją zbudować i sterować za pomocą Home Assistant (poprzez MQTT) oraz mieć możliwość zdalnego otwierania i zamykania bramy garażowej. Będę korzystał z płytki ESP8266 o nazwie Wemos
Tanie inteligentne otwieranie drzwi garażowych: 6 kroków (ze zdjęciami)
Tanie inteligentne otwieranie drzwi garażowych: CreditI prawie skopiował implementację Savjee, ale zamiast używać Shelly, użyłem Sonoff Basic. Sprawdź jego stronę internetową i kanał YouTube! https://www.savjee.be/2020/06/make-garage-door-ope…https://www.youtube.com/c/Savjee/Assumptions
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
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
Wykonaj automatyczne samoczynne otwieranie i zamykanie drzwi za pomocą Arduino!: 4 kroki
Zrób automatyczne samoczynne otwieranie i zamykanie drzwi za pomocą Arduino!: Czy kiedykolwiek chciałeś, aby drzwi otwierały się automatycznie, tak jak w filmach science fiction? Teraz możesz, postępując zgodnie z tą instrukcją. W tej instrukcji zbudujemy drzwi, które mogą otwierać się i zamykać automatycznie bez dotykania drzwi. Czujniki ultradźwiękowe o