Kazalo:

Pametni garažni krmilnik: 5 korakov
Pametni garažni krmilnik: 5 korakov

Video: Pametni garažni krmilnik: 5 korakov

Video: Pametni garažni krmilnik: 5 korakov
Video: Мой ребенок преследует: 20 страшных видео на Хэллоуин 2022 2024, November
Anonim
Pametni garažni krmilnik
Pametni garažni krmilnik

Ta projekt je nastal, ko sem zapustil hišo zaradi službe in prišel do polovice poti, le da se mi je za trenutek vnela panika, kjer se nisem spomnil, če sem zaprl garažna vrata. Včasih sem bil prepričan, da nisem, in se obrnil, samo da bi potrdil, da sem res zaprl garažna vrata. Zdaj moram zamuditi 30 minut na delo … super. Ko sem kupil svojo hišo, sem mislil, da lahko zdaj odpiračem garažnih vrat naredim, kar hočem, in rodila se je ta ideja.

Zaloge

  • Raspberry Pi - Mislim, da bi moral delovati skoraj vsak model, če lahko deluje z Django, NGINX in gunicorn. Uporabil sem Raspberry Pi 3 B+. Če imate drugo različico, boste morda morali nekaj spremeniti. - (https://www.adafruit.com/product/3775)
  • kartica microSD (za
  • 40 -polni trak za kable GPIO - (https://www.adafruit.com/product/1988)
  • 4 -polna odklopna plošča GPIO - (https://www.adafruit.com/product/2029)
  • Opto -izolirana relejna plošča za> 20v DC - (https://www.amazon.com/gp/product/B07M88JRFY)
  • Polovična deska Perma-Proto-(https://www.adafruit.com/product/1609)
  • priključna žica (~ 24-20 AWG) - (https://www.amazon.com/dp/B01LH1FYHO)
  • Magnetno trstično stikalo - (https://www.amazon.com/gp/product/B076GZDYD2)
  • Raspberry Pi HDMI pokrov za prah - (https://www.amazon.com/gp/product/B07P95RNVX)
  • Raspberry Pi Ethernet pokrov za prah - (https://www.amazon.com/gp/product/B01I814D0U)
  • Raspberry Pi USB prevleke za prah (4) - (https://www.amazon.com/gp/product/B074NVHTF9)
  • Vir napajanja Raspberry Pi (odvisno od modela maline pi, ki ga uporabljate)
  • Etui Raspberry Pi - (https://www.amazon.com/gp/product/B07QPCPK8G)
  • 3,5 mm vtičnica - (https://www.amazon.com/gp/product/B00OGLCR3W)
  • Vijak M2.5/stojala za montažne plošče - (https://www.amazon.com/dp/B0721SP83Q)
  • 18 AWG kabel - (https://www.amazon.com/gp/product/B07TL9XK2K)
  • 3 mm prozoren akril - (https://www.amazon.com/gp/product/B07RY4X9L3)
  • dostop do laserskega rezalnika

1. korak: Sestavite RPi

Sestavite RPi
Sestavite RPi
Sestavite RPi
Sestavite RPi
Sestavite RPi
Sestavite RPi

napišite kartico microsd z najnovejšo podobo Raspbian po vaši izbiri. (https://www.raspberrypi.org/documentation/installation/installing-images/) nato sestavite ploščo v ohišje in pritrdite tračni kabel, preden pritrdite pokrov na ohišje. Nato dodajte odprtine za prah.

2. korak: Izrežite in sestavite nadzorno omarico

Izrežite in sestavite krmilno omarico
Izrežite in sestavite krmilno omarico
Izrežite in sestavite krmilno omarico
Izrežite in sestavite krmilno omarico
Izrežite in sestavite krmilno omarico
Izrežite in sestavite krmilno omarico

Morali boste najti mesto, ki vam bo omogočilo, da izrežete škatlo na laserskem rezalniku, poiskati lokalni izdelovalski prostor ali na spletu mesta za rezanje akrila. Druga možnost je, da lahko uporabite katero koli drugo vrsto projektne škatle z ustrezno. Ne pozabite dodati 330 ohmskega upora med 3.3v linijo in COM priključkom trstičnega stikala. N. O. terminal se vrne na izbrani pin GPIO.

Priključite rele s 5V na DC+, GND na DC- in GPIO po izbiri na IN.

Sponke za odpiranje garažnih vrat bodo priključene na rele na COM in NO

Korak 3: Namestite trstična stikala in napeljite kabel

Montirajte trstična stikala in vodite kabel
Montirajte trstična stikala in vodite kabel
Montirajte trstična stikala in vodite kabel
Montirajte trstična stikala in vodite kabel
Montirajte trstična stikala in vodite kabel
Montirajte trstična stikala in vodite kabel

Prepričajte se, da vaš kabel ne ovira vožnje vaših vrat. Za odpiranje vrat priključite enaka dva vijaka, s katerimi sta povezana stenska gumba.

4. korak: Povežite svoj Raspberry Pi s svojim Wi -Fi

Povežite svoj Raspberry Pi s svojim Wi -Fi
Povežite svoj Raspberry Pi s svojim Wi -Fi

in se prepričajte, da lahko SSH povežete s svojim malinovim pi, da lahko nastavite spletni strežnik. nato ga lahko namestite v svojo garažo, ostalo pa lahko opravite iz računalnika.

5. korak: Namestite in konfigurirajte programsko opremo

Namestite in konfigurirajte programsko opremo
Namestite in konfigurirajte programsko opremo
Namestite in konfigurirajte programsko opremo
Namestite in konfigurirajte programsko opremo
Namestite in konfigurirajte programsko opremo
Namestite in konfigurirajte programsko opremo

na Raspberry Pi namestite Django z ukazi:

  • `sudo apt update`
  • `sudo apt install python3-pip`
  • `sudo pip3 namestite django`

Nato namestite NGINX in gunicorn

  • `sudo apt install nginx`
  • `sudo pip3 install gunicorn`

Namestite modul python, ustvarite projekt django, ustvarite migracije in konfigurirajte settings.py

  • kopiraj tarball v /srv
  • namestite z `sudo pip3 install django-smart-carhole-0.1.tar.gz`
  • ustvarite projekt django z `sudo django-admin startproject my_smart_garage`
  • `cd my_smart_garage/`
  • uredite datoteko settings.py, ki jo najdete na /srv/my_smart_garage/my_smart_garage/setting.py
  • dodajte naslov IP maline pi ali njegovo ime gostitelja v ALLOWED_HOSTS
  • dodajte 'door_control' na seznam INSTALLED_APPS
  • Uredite čas TIME_ZONE v svojem časovnem pasu
  • Na konec datoteke dodajte naslednje nastavitve: RPI_SENSOR_PIN, RPI_RELAY_PIN, IP_WHITELIST_DOORCONTROL in jih izpolnite z ustreznimi vrednostmi. Za primere glejte slike.
  • Dodajte "path ('door_control/', include ('door_control.urls'))", "/srv/my_smart_garage/my_smart_garage/urls.py na seznam urlpatterns
  • dodajte ", vključi" v uvozno vrstico na vrhu knjižnice django.urls. Za primere glejte slike.

  • preseli aplikacijo z 'sudo python3 manage.py migrate'
  • preizkusite, da zagotovite, da stvari delujejo, tako da zaženete preskusni strežnik z: `python3 manage.py runserver 0.0.0.0: 8000`
  • Pomaknite se do svojega maline pi tako: https:// [ipaddress]: 8000/door_control
  • Morali bi se srečati s stranjo, kot je prikazana.

Zdaj je čas, da ga nastavite tako, da se spletni strežnik samodejno zažene.

  • Najprej onemogočite način odpravljanja napak v datoteki setting.py
  • odkomentirajte ime strežnika_hash_bucket_size 64 v /etc/nginx/nginx.conf
  • kopirajte datoteko gunicorn v /etc/systemd/system/gunicorn.service
  • kopirajte datoteko nginx v /etc/nginx/conf.d/smart_carhole.conf
  • zaženite oba procesa
  • systemctl omogoči gunicorn.service
  • systemctl start gunicorn.service
  • systemctl omogoči nginx.service

Priporočena: