INHOUDSOPGAWE:

Raspberry Pi Door Notifier: 6 stappe (met foto's)
Raspberry Pi Door Notifier: 6 stappe (met foto's)

Video: Raspberry Pi Door Notifier: 6 stappe (met foto's)

Video: Raspberry Pi Door Notifier: 6 stappe (met foto's)
Video: Электрика в квартире своими руками. Финал. Переделка хрущевки от А до Я. #11 2024, September
Anonim
Framboos Pi Deur Notifier
Framboos Pi Deur Notifier

Het u al ooit gewonder of mense toegang tot deure kry? Wil u 'n diskrete, goedkoop en vinnige manier hê om deurbeweging te monitor … en miskien 'n klein projek? Moenie verder soek nie! Hierdie eenvoudige toestel sal trillings wat deur bewegende deure afgegee word, opspoor en aan die gebruiker rapporteer met 'n e -pos na 'n spesifieke e -posadres.

Hierdie projek gee u oefening met Flask, Raspberry Pis, GPIO -sensors en die Mandrill API! Dit is nie net lekker om te bou nie, maar dit het ook baie nut. Indringers pasop …

Stap 1: Voorrade

Voorrade
Voorrade

Beplan u nog steeds om hierdie toerusting te bou? Hier is wat u benodig:

  • Framboos Pi 3
  • Micro SD kaart
  • 3 wyfie-tot-wyfie drade
  • 1 vibrasiesensor
  • 'N Kragbank
  • Opdragstroke

As u van plan is om hierdie projek vir verskeie deure te bou, vermenigvuldig elk van die voorrade met hoeveel toestelle u benodig.

As u besig is om hierdie toestel te bou/te toets, is dit nie nodig om die volgende te hê nie, maar dit sal beslis baie nuttig wees.

  • 'N Rekenaarmonitor
  • 'N USB -sleutelbord
  • Micro USB laaikit

Stap 2: Bedrading

Bedrading
Bedrading
Bedrading
Bedrading

Alhoewel die Raspberry Pi 'n goeie toestel is wat by baie verskillende sensors en randapparatuur ingesluit is, moet ons die hoofsensor by die bedrading van die Pi voeg, sodat ons die metings kan doen wat ons benodig. Die hoofsensor wat in hierdie projek gebruik is, kan op die foto hierbo gesien word - dit is 'n vibrasiesensor met 'n hoë sensitiwiteit. Alhoewel ons 'n broodbord of 'n ander bevestigingstoestel kon gebruik om hierdie sensor aan te sit en ons drade deur te voer, het ons dit eenvoudig via wyfie-tot-vroulike drade direk aan die penne op die Raspberry Pi-toestel gekoppel.

Hierbo kan 'n bedradingskema gevind word (afkomstig van https://www.piddlerintheroot.com/vibration-sensor/). Koppel eenvoudig al die drade soos in hierdie prent getoon, en u vibrasiesensor moet goed wees. Let ook daarop dat u uiteindelik 'n battery vir hierdie projek benodig, maar as u dit toets, is dit waarskynlik nuttig om die toestel in 'n stopcontact te koppel.

Stap 3: Stel dinge op

Geluk! Jy het dit so ver gemaak. Laat ons aanhou!

Ons gaan nou direk met die Pi begin werk. Al die volgende kan op die toestel gedoen word met 'n sleutelbord en monitor (of deur SSH as u gemaklik is).

Daar is baie vooraf voorbereidings om enige GPIO -sensor met 'n Pi en fles te laat werk. Geduld is 'n deug. Daar is heelwat Python -biblioteke wat u eers moet installeer. Dit kan gedoen word met Pip, 'n biblioteek-/pakketbestuurder vir Python. Tik 'pip install' in om 'n paar van die biblioteke wat u benodig, te noem:

  • versoeke
  • RPi. GPIO
  • fles
  • fles_rus
  • flask_wtf
  • wtvorms
  • e -pos
  • mandril

U sal moontlik 'n koffie wil drink terwyl u wag totdat dit geïnstalleer word - dit kan 'n bietjie tyd neem.

Noudat al u biblioteke geïnstalleer is, is u gereed om u Flask -projek te begin. Flask is 'n liggewig raamwerk wat bladsye bedien van die toestel waarop dit werk. In hierdie geval word die Raspberry Pi 'n bediener. Redelik knap, nè? U kan hier leer hoe om 'n baie eenvoudige Flask -toepassing op te stel. Doen dit asseblief voordat u enige van die instruksies daarna probeer.

Stap 4: Kode en hardloop

Sodra u dit voltooi het, is u gereed om die projeklêers op te stel. Ek het al die lêers wat u benodig hieronder ingesluit -– u moet waarskynlik die kode herskryf en nie net die lêers oorskryf nie (U LEER MEER!).

Hier is hoe die gidsorganisasies moet lyk:

+- iotapp | +- appFolder | +- sjablone | +- index.html | +- _init_.py | +- forms.py | +- mcemail.py | +- routes.py | +- iotapp.py | +- vibes.py

Plaas al hierdie lêers in die regte volgorde, en u projek kan binnekort aan die gang gesit word. Om u Flask -bediener te laat loop, moet u na die wortelgids gaan. U moet dan tik:

$ uitvoer FLASK_APP = iotapp.py

$ python -m flesuitvoer -gasheer 0.0.0.0

Hiermee moet u 'n boodskap kry wat aandui dat u bediener werk, en u moet die bladsy van die toestel na 'n ander toestel op die netwerk kan bedien.

Dit is 'n goeie tyd om deur u lêers te kyk en regtig 'n idee te kry van wat die kode doen. Natuurlik is niks van die kode in klip nie … dit kan alles opgedateer/verander word om aan die projekspesifieke behoeftes te voldoen. Byvoorbeeld, op die oomblik dat die toestel POS na ontvangs van insette van die vibrasiesensor, stuur dit die tydstempel van wanneer die invoer plaasgevind het. Die bediener stoor hierdie data egter nie. Dit kan gedoen word as die gebruiker verkies om historiese inligting te bewaar en dit iewers wil wys.

Een ding wat u waarskynlik sal opmerk, is dat DIE KODE NIE VOLLEDIG IS NIE. Hierdie projek maak gebruik van 'n eksterne API om kennisgewings -e -posse te stuur by trillings (deuropening). Om dit op te stel, moet u 'n Mandrill -rekening skep en 'n API -sleutel skep.

Nadat u u stuurdomein geverifieer het en 'n API -sleutel het, kan u u sleutel in die 'mcemail.py' -lêer plaas (waar dit teenwoordig is) en die stuurinligting aanpas (óf deur die standaardparameter in dieselfde lêer te verander of deur te slaag in 'n ander e -pos in die 'routes.py' -lêer. As u meer dokumentasie oor Mandrill wil hê en hoe u dit kan gebruik, kan u dit hier vind.

Stap 5: Toets

Toets
Toets

Voordat u die toestel op sy permanente plek monteer, is dit waarskynlik 'n goeie idee om alles te toets wat dit doen. Hier is hoe u die goed bestuur.

Die toestel werk eintlik met twee programme: 'vibes.py' en die Flask -bediener. Eersgenoemde moet eers op die agtergrond uitgevoer word, en dan kan die Flask -bediener uitgevoer word. 'vibes.py' stuur eenvoudig na die bediener en die bediener interpreteer die POST -versoek.

$ python vibes.py &

$ python -m flesuitvoer -gasheer 0.0.0.0

U moet dan na die regte URI/IP kan navigeer en die e -posadres instel waarna u al u kennisgewings wil stuur. U moet op die vibrasiesensor tik om 'n paar toets -e -posse te stuur en te verseker dat die projek werk.

Lyk alles goed? Goed, ons is gereed vir sake!

Stap 6: Montering

Montering
Montering

Die installering van die toestel is redelik vanselfsprekend. Eintlik moet u net seker maak dat die toestel aan die battery gekoppel is en opdragstroke gebruik om die toestel aan die deur vas te maak.

Let wel: die toestel moet met die trillingsensor loodreg op die deur geplaas word sodat die sensor die beweging van die deur kan vang

Sodra dit voltooi is, moet u die toestel kan SSH en die programme kan uitvoer soos in die vorige stap genoem, en wag vir indringers!

Vir ekstra punte, probeer om die drade/toestel weg te steek sodat indringers nie agterdogtig is oor u slim toestel nie! … of plaas dit net nie op 'n glasdeur nie. ¯ / _ (ツ) _/¯

Aanbeveel: