Sadržaj:

Otvarač garažnih vrata pomoću Raspberry Pi: 5 koraka (sa slikama)
Otvarač garažnih vrata pomoću Raspberry Pi: 5 koraka (sa slikama)

Video: Otvarač garažnih vrata pomoću Raspberry Pi: 5 koraka (sa slikama)

Video: Otvarač garažnih vrata pomoću Raspberry Pi: 5 koraka (sa slikama)
Video: The Choice is Ours (2016) Official Full Version 2024, Novembar
Anonim
Otvarač garažnih vrata pomoću Raspberry Pi
Otvarač garažnih vrata pomoću Raspberry Pi

Upravljajte garažnim motorom sa pametnog telefona ili bilo kojeg uređaja koji može pregledavati web stranice (s AJAX -om!). Projekt je započeo jer sam za garažu imao samo jedan daljinski upravljač. Koliko je bilo zabavno kupiti drugu? Nije dovoljno. Cilj mi je bio da s jedne stranice mogu kontrolirati i nadzirati garažna vrata sa svog pametnog telefona. Nisam stavio nikakvu otmjenu sigurnost oko toga jer RPi nije izložen izvan mog LAN -a. Pri tome se oslanjam na VPN za pristup web stranici. Koristeći Android pametni telefon, vrlo je jednostavno postaviti VPN i dodati web stranicu na početni ekran. Trebao mi je samo softver za to.

Ako želite da me podržite u pisanju drugih instrukcija, molimo vas da kupite hardver na Amazon sponzorisanim vezama.

Takođe, ovo uputstvo je sada dostupno i na mojoj ličnoj stranici:

Korak 1: Nešto pozadine

Šta sam pronašao na internetu

Kao programer, volim ponovo koristiti vodiče ili već kod za "produkcijski nivo". U ovom slučaju nisam bio zadovoljan onim što sam pronašao:

  • Otvarač garažnih vrata Raspberry Pi po kvartanu. Tamo gdje sam počeo, jednostavno dugme za upravljanje relejem. Nema dugmadi za otvaranje/zatvaranje, nema povratnih informacija. Bilo je ionako vrlo korisno razumjeti koncept oko namjenskih RPi za upravljanje motorom iz releja. Kablovi koje sada koristim i dalje su isti za naredbeni dio.
  • Otvarač za garažna vrata Raspberry Pi sa GaragePi od Chase Chou. Ista vrsta postavljanja, ali pomoću dodatnog bežičnog daljinskog upravljača. Nisam bio voljan da ubijem svoj jedini daljinski. Pokazalo se da ionako koristi istu vrstu električnog postavljanja za naredbeni dio. Usput sam naučio o WebIOPi da provjerim svoj GPIO preko web stranice. Tada sam naučio i o stavljanju prečice na svoj Android početni ekran. Takođe je počela da se pali ideja oslanjanja na usluge, na kraju krajeva, želim da bude pouzdana.
  • Izrada e -pošte, tweeta ili SMS -a za vaša garažna vrata: 1. dio Richard L. Lynch. Ovaj je dodao ideju o korištenju magnetskog senzora za kontrolu stanja vrata. Međutim, nisam mnogo koristio jer nisam gradio alarmni sistem već sistem komandi/nadzora.
  • Potpuno bežično otvaranje garažnih vrata / sigurnosna kamera kompanije DeckerEgo. Ovo me učinilo svjesnijim streaminga web kamera radi praćenja vrata. Moram još uložiti malo truda u to. Možda bih morao reciklirati USB hub ili donijeti drugu web kameru.
  • Raspberry Pi kontrolu s mobilnog uređaja ili stolnog web preglednika Frédérick Blais. Ovo je sada moja baza za softverski stek. Koristi Flask za pokretanje vrlo jednostavne web stranice zajedno s AJAX -om. Ovo je za mene vrhunsko jer pruža mogućnosti praćenja i upravljanja u stvarnom vremenu. Pročitajte u nastavku.

O mojim RPi

Dok još uvijek učim o RPi-u i elektroničkim stvarima općenito, kupio sam brojne stvari za svoj tek nabavljeni Raspberry Pi: nekoliko kabela, T-obućar, neke LED diode, modul s jednim relejem, osam releja modul, LCD ekran i tako dalje. Nisam nikakav elektroničar i ovo se pokazalo vrlo poučnim. Da biste kupili dodatni hardver, Amazon i Ebay su vam najbolji prijatelji.

Trenutno stanje projekta uključuje sljedeći hardver:

  • Raspberry Pi (FR/DE) koji pokreće Raspbian Wheezy 2014-09-09 s najnovijim ažuriranjima
  • Micro SD kartica od 8 GB (FR/DE) ili 16 GB (FR/DE) ili 32 GB (FR/DE) klase 10 za pohranu OS, datoteka i tako dalje
  • Dva garažna trska sklopke od legure cinka (FR/DE) za otkrivanje otvorenog/zatvorenog stanja
  • Jedan relejni modul od 3 V (FR/DE) za slanje naredbi motoru vrata (moj ima ugrađenu LED diodu za praćenje stanja releja, vrlo zgodno!)
  • Oplata za lemljenje (FR/DE) i 2 trenutna prekidača (FR/DE) za simulaciju vrata na mom stolu (ili nabavite početni komplet (FR/DE))
  • Wi -Fi ključ (FR/DE) za uklanjanje dodatnih kabela kada budu visili sa stropa garaže

Ograničenje koje još imam je to što ne znam kada su vrata na pola puta, zaustavljena ili se i dalje kreću. Ovo je i razlog zašto bih kasnije želio dodati staru web kameru za prijenos iz garaže. Vjerovatno ću zaista dodati neki senzor za nadzor samog motora.

Korak 2: Snop softvera

Software Stack
Software Stack

Opšte stvari

Softver se oslanja na Python, Flask i WiringPi GPIO Python modul. Kao što je objašnjeno u pozadini, krenuo sam od vodiča Raspberry Pi kontrole s mobilnog uređaja ili web preglednika na radnoj površini koji je objavio Frédérick Blais. Trenutni softver sastoji se od:

  • Datoteka HTML predloška koja sadrži jQuery Mobile kôd i kontrole
  • Python Pins modul za pristup GPIO -u Raspberry Pi
  • Python go modul za pokretanje Flaska i podršku AJAX upitima

Ono što je prisutno u spremištu je sirovi softver. To ni na koji način nije otmjeno niti preopterećeno značajkama. To je ono što sam uspio postići iz onoga što sam naučio.

Trenutni interfejs

Trenutno se stanje vrata čita svakih 0,5 sekundi. Dva prekidača se koriste za otvoreno/zatvoreno stanje. Za upravljanje motorom koristi se relej. Trenutni kod i dalje daje neke greške. Ispod je snimak ekrana sa Nexusa 5.

Korak 3: Hardver - Alfa

Hardver - Alfa
Hardver - Alfa
Hardver - Alfa
Hardver - Alfa

Testni krevet

Moj testni krevet je prilično jednostavan, RPi, relej i dva prekidača. Da biste čvrsto držali stvari, potrebno vam je samo nekoliko patentnih zatvarača (FR/DE). Evo njegove slike. RJ45 LAN kabel (FR/DE) je za desktop otklanjanje grešaka i WIFI ključ za upotrebu u garaži.

Sistem uživo

RPi je za sada spojen samo na motor vrata, slijede prekidači. Moram malo pričekati da nabavim svoje cijevi za skupljanje topline (FR/DE). I ja bih trebao biti stabilniji. Izvinite zbog zamućenja.

Plavi, žuti i zeleni kabeli s lijeve strane služe za magnetske prekidače.

  • Plava je GND
  • Žuta i zelena su pinovi 18 (otvoreno stanje) i 27 (zatvoreno stanje).

Korak 4: Hardver - Beta

Hardver - Beta
Hardver - Beta
Hardver - Beta
Hardver - Beta
Hardver - Beta
Hardver - Beta

Testni krevet

Ovo je sada direktan karton sa patentnim zatvaračima. LCD i relej su takođe u paketu. LCD je 20x4 (20 znakova za redove, 4 linije) (FR/DE) preko I²C.

Prva 2 reda prikazuju dobrodošlicu i datum/vrijeme. Zadnje 2 linije se kreću između stanja pinova i stanja mreže (eth0/wan0 IP -ovi). Linija stanja vrata je lijep GFX za reći:

  • | | je otvoren
  • |-| radi
  • |. | je zatvoren

Sheme fritzinga

Shema uvijanja sa 20x4 I2C LCD -om, prekidačima za otvaranje/zatvaranje i relejem. Jedini dodatak je I2C LCD ekran. Više sam volio to 18x2 koje sam imao.

Sistem uživo

Beta HW je sada "proizvodni nivo" jer se lijepo uklapa u staru kutiju s vijcima. Zadržao sam jedan separator za smještanje relejnih i raznih kablova dok RPi stoji na nižem nivou. Možda ćete primijetiti Synology NAS (FR/DE) s desne strane, koristi se za direktno napajanje RPi -ja. Noću s modemom, prekidačem i NAS -om.

Zatvoreni prikaz kutija s vijcima, LCD prikazuje stanje vrata i pinout Otvori/Zatvori/Relej.

Noću, unutrašnji pogled s vrha.

Korak 5: Izvorni kod i resursi

Sve resurse možete pronaći na ovom GitHub spremištu:

github.com/amayii0/GarageOpenerR1

Preporučuje se: