Spisu treści:

Inteligentny kontroler garażu: 5 kroków
Inteligentny kontroler garażu: 5 kroków

Wideo: Inteligentny kontroler garażu: 5 kroków

Wideo: Inteligentny kontroler garażu: 5 kroków
Wideo: INTELIGENTNY GARAŻ cz.1 | Inteligentny Dom DIY #16 2024, Listopad
Anonim
Inteligentny kontroler garażu
Inteligentny kontroler garażu

Ten projekt powstał, gdy wychodziłem z domu do pracy i docierałem do połowy, tylko po to, by wpaść w panikę, w której nie pamiętałem, czy zamknąłem bramę garażową. Czasami byłem przekonany, że nie, i odwracałem się tylko po to, by potwierdzić, że rzeczywiście zamknąłem drzwi garażowe. Teraz spóźniam się 30 minut do pracy… świetnie. Kiedy kupiłem własny dom, pomyślałem, że teraz mogę zrobić, co zechcę, z otwieraczem drzwi garażowych i narodził się ten pomysł.

Kieszonkowe dzieci

  • Raspberry Pi - myślę, że każdy model powinien działać, o ile obsługuje Django, NGINX i gunicorn. Użyłem Raspberry Pi 3 B+. Być może będziesz musiał zmienić niektóre rzeczy, jeśli masz inną wersję. - (https://www.adafruit.com/product/3775)
  • karta microSD (dla
  • 40-pinowy kabel taśmowy do pinów GPIO - (https://www.adafruit.com/product/1988)
  • 4-pinowa płytka zaciskowa GPIO - (https://www.adafruit.com/product/2029)
  • Izolowana optycznie płytka przekaźnikowa przystosowana do >20V DC - (https://www.amazon.com/gp/product/B07M88JRFY)
  • Półwymiarowa deska Perma-Proto - (https://www.adafruit.com/product/1609)
  • przewód przyłączeniowy (~24-20 AWG) - (https://www.amazon.com/dp/B01LH1FYHO)
  • Magnetyczny kontaktron - (https://www.amazon.com/gp/product/B076GZDYD2)
  • Osłona przeciwpyłowa Raspberry Pi HDMI - (https://www.amazon.com/gp/product/B07P95RNVX)
  • Osłona przeciwpyłowa Raspberry Pi Ethernet - (https://www.amazon.com/gp/product/B01I814D0U)
  • Osłony przeciwpyłowe USB Raspberry Pi (4) - (https://www.amazon.com/gp/product/B074NVHTF9)
  • Źródło zasilania Raspberry Pi (w zależności od modelu raspberry pi, którego używasz)
  • Obudowa Raspberry Pi - (https://www.amazon.com/gp/product/B07QPCPK8G)
  • Gniazdo 3,5 mm - (https://www.amazon.com/gp/product/B00OGLCR3W)
  • Śruba M2,5/podstawki do montażu płyt - (https://www.amazon.com/dp/B0721SP83Q)
  • Kabel 18 AWG - (https://www.amazon.com/gp/product/B07TL9XK2K)
  • 3mm przezroczysty akryl - (https://www.amazon.com/gp/product/B07RY4X9L3)
  • dostęp do wycinarki laserowej

Krok 1: Złóż RPi

Montaż RPi
Montaż RPi
Montaż RPi
Montaż RPi
Montaż RPi
Montaż RPi

napisz kartę microsd z najnowszym wybranym obrazem raspbian. (https://www.raspberrypi.org/documentation/installation/installing-images/), a następnie zamontuj płytkę w obudowie i podłącz kabel taśmowy przed zamocowaniem pokrywy na obudowie. Następnie dodaj porty przeciwpyłowe.

Krok 2: Wytnij i złóż skrzynkę kontrolną

Skrzynka kontrolna cięcia i montażu
Skrzynka kontrolna cięcia i montażu
Skrzynka kontrolna cięcia i montażu
Skrzynka kontrolna cięcia i montażu
Skrzynka kontrolna cięcia i montażu
Skrzynka kontrolna cięcia i montażu

Musisz znaleźć miejsce, w którym wytniesz pudełko na wycinarce laserowej, poszukaj lokalnego producenta lub w Internecie miejsc, w których można wycinać akryl. Alternatywnie możesz prawdopodobnie użyć dowolnego innego rodzaju pudełka projektu z właściwym. Pamiętaj, aby dodać rezystor 330 Ohm między linią 3,3 V a zaciskiem COM kontaktronu. NIE. terminal wraca do wybranego pinu GPIO.

Podłącz przekaźnik 5V do DC+, GND do DC-, a wybrany pin GPIO do IN.

Zaciski otwierania drzwi garażowych zostaną podłączone do przekaźnika na COM i NO

Krok 3: Zamontuj kontaktrony i poprowadź kabel

Zamontuj kontaktrony i poprowadź kabel
Zamontuj kontaktrony i poprowadź kabel
Zamontuj kontaktrony i poprowadź kabel
Zamontuj kontaktrony i poprowadź kabel
Zamontuj kontaktrony i poprowadź kabel
Zamontuj kontaktrony i poprowadź kabel

Upewnij się, że kabel nie utrudnia podróży twoich drzwi. Podłącz te same dwie śruby, z którymi łączą się przyciski ścienne, aby otworzyć drzwi.

Krok 4: Podłącz Raspberry Pi do Wi-Fi

Podłącz Raspberry Pi do Wi-Fi
Podłącz Raspberry Pi do Wi-Fi

i upewnij się, że możesz SSH do swojego raspberry pi, aby móc skonfigurować serwer WWW. możesz go następnie zamontować w garażu, a resztę możesz zrobić z komputera.

Krok 5: Zainstaluj i skonfiguruj oprogramowanie

Zainstaluj i skonfiguruj oprogramowanie
Zainstaluj i skonfiguruj oprogramowanie
Zainstaluj i skonfiguruj oprogramowanie
Zainstaluj i skonfiguruj oprogramowanie
Zainstaluj i skonfiguruj oprogramowanie
Zainstaluj i skonfiguruj oprogramowanie

na Raspberry Pi zainstaluj Django za pomocą poleceń:

  • `aktualizacja sudo apt`
  • `sudo apt zainstaluj python3-pip`
  • `sudo pip3 zainstaluj django`

Następnie zainstaluj NGINX i gunicorn

  • `sudo apt zainstaluj nginx`
  • `sudo pip3 zainstaluj gunicorn`

Zainstaluj moduł Pythona, utwórz projekt django, utwórz migracje i skonfiguruj settings.py

  • skopiuj archiwum do /srv
  • zainstaluj używając `sudo pip3 zainstaluj django-smart-carhole-0.1.tar.gz`
  • utwórz projekt django z `sudo django-admin startproject my_smart_garage`
  • `cd mój_inteligentny_garaż/`
  • edytuj plik settings.py znajdujący się pod adresem /srv/my_smart_garage/my_smart_garage/setting.py
  • dodaj adres IP raspberry pi lub jego nazwę hosta w ALLOWED_HOSTS
  • dodaj „door_control” do listy INSTALLED_APPS
  • Zmień TIME_ZONE na swoją strefę czasową
  • Dodaj następujące ustawienia na końcu pliku: RPI_SENSOR_PIN, RPI_RELAY_PIN, IP_WHITELIST_DOORCONTROL i wypełnij odpowiednimi wartościami. Zobacz zdjęcia przykładów.
  • Dodaj "path('door_control/', include('door_control.urls')) " do /srv/my_smart_garage/my_smart_garage/urls.py na liście wzorców url
  • dodaj ', include' do linii importu na górze dla biblioteki django.urls. Zobacz zdjęcia przykładów.

  • migruj aplikację za pomocą 'sudo python3 manage.py migrate'
  • test, aby upewnić się, że wszystko działa, uruchamiając serwer testowy z: `python3 manage.py runserver 0.0.0.0:8000`
  • Przejdź do swojego Raspberry Pi w ten sposób:
  • Powinieneś spotkać się z pokazaną stroną.

Teraz nadszedł czas na skonfigurowanie go, aby serwer WWW działał automatycznie.

  • Najpierw wyłącz tryb debugowania w pliku setting.py
  • odkomentuj server_names_hash_bucket_size 64 w /etc/nginx/nginx.conf
  • skopiuj plik gunicorn do /etc/systemd/system/gunicorn.service
  • skopiuj plik nginx do /etc/nginx/conf.d/smart_carhole.conf
  • uruchom oba procesy
  • systemctl włącz gunicorn.service
  • systemctl uruchom gunicorn.service
  • systemctl włącz nginx.service

Zalecana: