Sadržaj:

Raspberry Pi Notifier za vrata: 6 koraka (sa slikama)
Raspberry Pi Notifier za vrata: 6 koraka (sa slikama)

Video: Raspberry Pi Notifier za vrata: 6 koraka (sa slikama)

Video: Raspberry Pi Notifier za vrata: 6 koraka (sa slikama)
Video: Праздник. Новогодняя комедия 2024, Novembar
Anonim
Raspberry Pi Notifier
Raspberry Pi Notifier

Jeste li se ikada zapitali da li ljudi pristupaju vratima ili kada? Želite li diskretan, jeftin i brz način praćenja kretanja vrata … i možda mali projekt? Ne tražite dalje! Ovaj pojednostavljeni uređaj će pratiti vibracije koje se emitiraju s pokretnih vrata i izvještavati korisnika putem e -pošte na određenu adresu e -pošte.

Ovaj će vam projekt dati malo prakse s Flask -om, Raspberry Pis -om, GPIO senzorima i Mandrill API -jem! Ne samo da je zabavno graditi, već ima i mnogo korisnosti. Uljezi oprez …

Korak 1: Potrošni materijal

Supplies
Supplies

Planirate li i dalje izgradnju ove opreme? Evo šta će vam trebati:

  • Raspberry Pi 3
  • Micro SD kartica
  • 3 žice ženski na ženski
  • 1 senzor vibracija
  • Banka moći
  • Komandne trake

Ako planirate izgraditi ovaj projekt za više vrata, pomnožite svaku zalihu s koliko uređaja vam je potrebno.

Ako ste u procesu izgradnje/testiranja ovog uređaja, nije potrebno imati sljedeće … međutim, to bi svakako bilo od velike pomoći.

  • Monitor računara
  • USB tastatura
  • Mikro USB komplet za punjenje

Korak 2: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje

Iako je Raspberry Pi sjajan uređaj koji dolazi s mnoštvom različitih senzora i perifernih uređaja, moramo dodati glavni senzor na ožičenje Pi -a kako bi mogao izvršiti mjerenja koja su nam potrebna. Glavni senzor korišten u ovom projektu može se vidjeti na gornjoj slici - to je senzor vibracija s visokom osjetljivošću. Iako smo mogli upotrijebiti matičnu ploču ili neki drugi montažni uređaj da postavimo ovaj senzor i provedemo naše žice, jednostavno smo ga spojili putem žica za žene direktno na pinove na Raspberry Pi uređaju.

Shema ožičenja može se pronaći gore (porijeklo sa https://www.piddlerintheroot.com/vibration-sensor/). Jednostavno spojite sve žice kao što je prikazano na ovoj slici i vaš senzor vibracija bi trebao biti spreman za rad. Također imajte na umu da će vam na kraju za ovaj projekt trebati baterija, ali ako testirate, vjerojatno bi bilo korisno uključiti uređaj u zidnu utičnicu.

Korak 3: Postavljanje stvari

Čestitam! Uspjeli ste dovde. Idemo dalje!

Sada ćemo početi raditi direktno s Pi -jem. Sve navedeno možete učiniti na uređaju pomoću tastature i monitora (ili putem SSH -a ako vam je udobno).

Postoji mnogo preliminarnih postavki za rad bilo kojeg GPIO senzora s Pi i Flask. Strpljenje je vrlina. Postoji dosta Python biblioteka koje morate prvo instalirati. To se može učiniti s Pip -om, upraviteljem biblioteke/paketa za Python. Za korištenje upišite `pip install` Da biste imenovali neke od biblioteka koje su vam potrebne:

  • zahtjevi
  • RPi. GPIO
  • boca
  • flask_restful
  • flask_wtf
  • wtforms
  • email
  • mandrill

Možda ćete htjeti popiti kavu dok čekate da se ovi instaliraju - može potrajati malo vremena.

Sada kada su sve vaše biblioteke instalirane, spremni ste za pokretanje Flask projekta. Flask je lagani okvir koji opslužuje stranice s uređaja na kojem radi. U tom slučaju Raspberry Pi postaje poslužitelj. Prilično sjajno, a? Ovdje možete naučiti kako postaviti vrlo jednostavnu aplikaciju Flask. Molimo vas da to učinite prije pokušaja bilo kakvog uputstva nakon ovoga.

Korak 4: Kôd i trčanje

Kada ovo dovršite, spremni ste za početak izrade projektnih datoteka. Ispod sam uključio sve datoteke koje će vam trebati - međutim, vjerovatno biste trebali prepisati kôd, a ne samo kopirati datoteke (naučit ćete više!).

Evo kako bi imeničke organizacije trebale izgledati:

+- iotapp | +- appFolder | +- predlošci | +- index.html | +- _init_.py | +- forms.py | +- mcemail.py | +- routes.py | +- iotapp.py | +- vibes.py

Postavite sve ove datoteke u ovaj ispravan redoslijed i trebali biste moći pokrenuti svoj projekt u trenu. Da biste zatim pokrenuli svoj Flask server, trebate otići do korijenskog direktorija. Zatim biste trebali upisati:

$ export FLASK_APP = iotapp.py

$ python -m flask run --host 0.0.0.0

Ovim biste trebali dobiti poruku koja ukazuje da vaš poslužitelj radi i trebali biste moći poslužiti stranicu s uređaja na drugi uređaj na mreži.

Sada bi bilo dobro vrijeme da pregledate svoje datoteke i zaista pokušate sagledati šta kôd radi. Naravno, ništa od koda nije čvrsto postavljeno … sve se može ažurirati/promijeniti kako bi odgovaralo potrebama specifičnim za projekt. Na primjer, trenutno, kada uređaj POST -uje nakon primitka ulaza od senzora vibracije, šalje vremensku oznaku kada se ulaz dogodio. Međutim, poslužitelj ne sprema ove podatke. To bi se moglo učiniti ako je korisnik više volio zadržati povijesne podatke i htio ih negdje pokazati.

Jedna stvar koju ćete vjerojatno primijetiti je da KOD NIJE CJELOVIT. Ovaj projekt koristi vanjski API za slanje e -poruka s obavijestima nakon vibracije (otvaranje vrata). Da biste ovo postavili, morat ćete stvoriti Mandrill račun i kreirati API ključ.

Nakon što potvrdite svoju domenu za slanje i imate API ključ, možete postaviti svoj ključ u `mcemail.py` datoteku (gdje je prisutan) i prilagoditi informacije o slanju (bilo promjenom zadanog parametra u istoj datoteci ili prosljeđivanjem u drugoj e -pošti u datoteci `routes.py`. Ako želite više dokumentacije o Mandrill -u i kako ga koristiti, to možete pronaći ovdje.

Korak 5: Testiranje

Testiranje
Testiranje

Prije nego što uređaj montirate na stalno mjesto, vjerojatno je dobra ideja isprobati sve što radi. Evo kako pokrećete stvari.

Uređaj zapravo pokreće dva programa: `vibes.py` i Flask server. Prvi bi trebao biti pokrenut prvo u pozadini, a zatim se može pokrenuti Flask server. `vibes.py` je jednostavno POSTING na serveru i server tumači POST zahtjev.

$ python vibes.py &

$ python -m flask run --host 0.0.0.0

Tada biste trebali moći doći do ispravnog URI/IP -a i postaviti adresu e -pošte na koju želite poslati sva svoja obavještenja. Trebali biste dodirnuti senzor vibracije da biste pokušali poslati neke testne e -poruke i provjeriti radi li projekt.

Sve izgleda dobro? U redu, spremni smo za posao!

Korak 6: Montiranje

Montaža
Montaža

Montaža uređaja prilično je jasna. U osnovi, samo morate osigurati da je uređaj spojen na bateriju i koristiti komandne trake za pričvršćivanje uređaja na vrata.

Napomena: uređaj mora biti postavljen sa senzorom vibracija okomito na vrata kako bi senzor uhvatio kretanje vrata

Nakon što se ovo završi, trebali biste biti u mogućnosti da SSH uđete u uređaj i pokrenete programe kao što je spomenuto u prethodnom koraku i čekate uljeze!

Za dodatne bodove pokušajte sakriti žice/uređaj tako da uljezi ne sumnjaju u vaš pametni uređaj! … ili ga jednostavno ne stavljajte na staklena vrata. ¯ / _ (ツ) _/¯

Preporučuje se: