Kazalo:

Odpirač garažnih vrat z uporabo Raspberry Pi: 5 korakov (s slikami)
Odpirač garažnih vrat z uporabo Raspberry Pi: 5 korakov (s slikami)

Video: Odpirač garažnih vrat z uporabo Raspberry Pi: 5 korakov (s slikami)

Video: Odpirač garažnih vrat z uporabo Raspberry Pi: 5 korakov (s slikami)
Video: The Choice is Ours (2016) Official Full Version 2024, November
Anonim
Odpirač garažnih vrat z uporabo Raspberry Pi
Odpirač garažnih vrat z uporabo Raspberry Pi

Upravljajte garažni motor s pametnega telefona ali katere koli naprave, ki lahko brska po spletni strani (z AJAX!). Projekt se je začel, saj sem imel za garažo samo en daljinski upravljalnik. Kako zabavno je bilo kupiti drugega? Ne dovolj. Moj cilj je bil, da bi z eno stranjo lahko upravljal in spremljal svoja garažna vrata s pametnega telefona. Nisem postavil nobene domišljijske varnosti, saj RPi ni izpostavljen zunaj mojega LAN -a. Pri tem se za dostop do spletne strani zanašam na VPN. S pametnim telefonom Android je zelo enostavno nastaviti VPN in dodati spletno stran na začetni zaslon. Potreboval sem le programsko opremo.

Če me želite podpreti pri pisanju drugih navodil, kupite strojno opremo na povezavah, ki jih sponzorira Amazon.

Ta navodila so zdaj na voljo tudi na moji osebni strani:

1. korak: Nekaj ozadja

Kaj sem našel na spletu

Kot programer rad znova uporabljam vaje ali kodo že na ravni produkcije. V tem primeru nisem bil zadovoljen z ugotovljenim:

  • Odpirač za garažna vrata Raspberry Pi po kvartarju. Kjer sem začel, preprost gumb za upravljanje releja. Brez gumbov za odpiranje/zapiranje, brez povratnih informacij. Vseeno je bilo zelo koristno razumeti koncept namenskega RPi za upravljanje motorja iz releja. Kabli, ki jih zdaj uporabljam, so za ukazni del še vedno enaki.
  • Odpirač garažnih vrat Raspberry Pi z GaragePi avtorja Chase Chou. Enaka nastavitev, vendar z uporabo dodatnega brezžičnega daljinskega upravljalnika. Nisem bil pripravljen ubiti svojega edinega daljinca. Vseeno se je izkazalo, da za ukazni del uporablja isto vrsto električne nastavitve. Med potjo sem izvedel za WebIOPi, da preverim svoj GPIO prek spletne strani. Takrat sem se tudi naučil o bližnjici do začetnega zaslona Android. Začela se je tudi zamisel o zanašanju na storitve, navsezadnje želim, da je zanesljiva.
  • Ustvarjanje e -pošte, tvita ali SMS -a za garažna vrata: 1. del Richarda L. Lyncha. Ta je dodal idejo o uporabi magnetnega senzorja za nadzor stanja vrat. Vendar nisem veliko uporabljal, saj nisem gradil alarmnega sistema, ampak sistem za ukaze/nadzor.
  • Popolnoma brezžično odpiranje garažnih vrat / varnostna kamera podjetja DeckerEgo. Zaradi tega sem se bolje seznanil s pretakanjem spletnih kamer za spremljanje vrat. Za to se moram še potruditi. Mogoče bi moral reciklirati zvezdišče USB ali prinesti drugo spletno kamero.
  • Nadzor Raspberry Pi iz mobilne naprave ali namiznega spletnega brskalnika Frédérick Blais. To je zdaj moja osnova za sklad programske opreme. Uporablja Flask za zagon zelo preproste spletne strani skupaj z AJAX. To je zame vrhunsko, saj ponuja možnosti spremljanja in ukazovanja v realnem času. Preberite spodaj.

O mojih RPi

Ker se še vedno učim o RPi in elektronskih stvareh na splošno, sem za novo pridobljeno Raspberry Pi kupil nekaj stvari: nekaj kablov, T-čevljar, nekaj LED, enorelejski modul, osem relejev modul, LCD zaslon itd. Nisem elektronik in to se je izkazalo za zelo poučno. Če želite kupiti dodatno strojno opremo, sta Amazon in Ebay vaša najboljša prijatelja.

Trenutno stanje projekta vključuje naslednjo strojno opremo:

  • Raspberry Pi (FR/DE) z Raspbian Wheezy 2014-09-09 z najnovejšimi posodobitvami
  • 8 GB (FR/DE) ali 16 GB (FR/DE) ali 32 GB (FR/DE) kartica micro SD razreda 10 za shranjevanje operacijskega sistema, datotek itd.
  • Dva garažna trstična stikala iz zlitine cinka (FR/DE) za zaznavanje stanja odprtosti/zapiranja
  • En relejni modul 3v (FR/DE) za pošiljanje ukazov motorju vrat (moj ima vgrajeno LED za spremljanje stanja releja, zelo priročno!)
  • Oplata za spajkanje (FR/DE) in 2 trenutna stikala (FR/DE) za simulacijo vrat na mizi (ali pa dobite začetni komplet (FR/DE))
  • Ključ za wifi (FR/DE) za odstranitev dodatnih kablov, ko visi s stropa garaže

Še vedno imam omejitev, da ne vem, kdaj so vrata na pol poti, ustavljena ali se še premikajo. Tudi zato bi pozneje dodal staro spletno kamero za pretakanje iz garaže. Verjetno bom dodal še kakšen senzor za spremljanje samega motorja.

2. korak: Niz programske opreme

Snop programske opreme
Snop programske opreme

Splošne stvari

Programska oprema temelji na Python modulu Python, Flask in WiringPi GPIO. Kot je bilo pojasnjeno v ozadju, sem začel z vadnico Raspberry Pi control iz mobilne naprave ali namiznega spletnega brskalnika, ki jo je objavil Frédérick Blais. Trenutna programska oprema je sestavljena iz:

  • Datoteka predloge HTML, ki vsebuje nekaj kode in kontrolnikov jQuery Mobile
  • Modul Python Pins za dostop do GPIO v Raspberry Pi
  • Modul Python go za zagon Flaska in podporo poizvedbam AJAX

V skladišču je prisotna surova programska oprema. To nikakor ni domišljija ali preobremenjenost funkcij. To je tisto, kar sem lahko dosegel iz tega, kar sem se naučil.

Trenutni vmesnik

Trenutno se stanje vrat odčita vsakih 0,5 s. Za odprto/zaprto stanje se uporabljata dve stikali. Za upravljanje motorja se uporablja rele. Trenutna koda še vedno oddaja nekaj napak. Spodnji posnetek zaslona je iz Nexusa 5.

3. korak: Strojna oprema - alfa

Strojna oprema - Alpha
Strojna oprema - Alpha
Strojna oprema - Alpha
Strojna oprema - Alpha

Testna postelja

Moja testna postelja je precej preprosta, RPi, rele in dve stikali. Če želite stvari držati tesno, potrebujete le nekaj zadrg (FR/DE). Tukaj je njegova slika. LAN kabel RJ45 (FR/DE) je namenjen odpravljanju napak na namizju in ključu WIFI za uporabo v garaži.

Sistem v živo

RPi je zaenkrat priključen le na motor vrat, sledijo stikala. Moram počakati malo, da dobim toplotno skrčljivo cev (FR/DE). Moral bi biti tudi bolj stabilen. Oprostite za zamegljenost.

Modri, rumeni in zeleni kabli na levi so za magnetna stikala.

  • Modra je GND
  • Rumena in zelena sta zatiča 18 (odprto stanje) in 27 (zaprto stanje).

4. korak: Strojna oprema - Beta

Strojna oprema - beta
Strojna oprema - beta
Strojna oprema - beta
Strojna oprema - beta
Strojna oprema - beta
Strojna oprema - beta

Testna postelja

To je zdaj neposreden karton z zadrgami. V kompletu sta tudi LCD in rele. LCD je 20x4 (20 znakov za vrstice, 4 vrstice) (FR/DE) nad I²C.

Prvi dve vrstici prikazujeta dobrodošlico in datum/čas. Zadnji dve vrstici se premikata med stanji zatičev in stanjem omrežja (eth0/wan0 IP). Vrstica stanja vrat je lepo povedati GFX:

  • | | je odprto
  • |-| deluje
  • |. | je zaprta

Sheme zmrzovanja

Shema zamrzovanja z LCD -zaslonom 20x4 I2C, stikali za odpiranje/zapiranje in relejem. Edini dodatek je LCD zaslon I2C. Raje sem imel to kot 18x2, ki sem ga imel.

Sistem v živo

Beta HW je zdaj "proizvodna raven", saj se lepo prilega v staro škatlo z vijaki. Ohranil sem en ločilnik za gostitelje relejnih in raznih kablov, medtem ko je RPi na nižji ravni. Morda boste na desni strani opazili Synology NAS (FR/DE), ki se uporablja za neposredno napajanje RPi. Ponoči z modemom, stikalom in NAS.

Zaprite pogled na škatlo z vijaki, LCD prikazuje stanje vrat in odpiranje/zapiranje/izklop releja.

Ponoči notranji pogled od zgoraj.

5. korak: izvorna koda in viri

Vse vire najdete v tem skladišču GitHub:

github.com/amayii0/GarageOpenerR1

Priporočena: