Innholdsfortegnelse:

Raspberry Pi Door Notifier: 6 trinn (med bilder)
Raspberry Pi Door Notifier: 6 trinn (med bilder)

Video: Raspberry Pi Door Notifier: 6 trinn (med bilder)

Video: Raspberry Pi Door Notifier: 6 trinn (med bilder)
Video: ВСЯ НОЧЬ С ПОЛТЕРГЕЙСТОМ В ЖИЛОМ ДОМЕ, я заснял жуткую активность. 2024, November
Anonim
Raspberry Pi dørvarsler
Raspberry Pi dørvarsler

Har du noen gang lurt på om eller når folk får tilgang til dører? Vil du ha en diskret, billig og rask måte å overvåke dørbevegelser på … og kanskje et lite prosjekt? Ser ikke lenger! Denne forenklede enheten vil spore vibrasjoner avgitt fra bevegelige dører og rapportere tilbake til brukeren med en e -post til en spesifisert e -postadresse.

Dette prosjektet gir deg litt øvelse med Flask, Raspberry Pis, GPIO -sensorer og Mandrill API! Ikke bare er det morsomt å bygge, men det har mye nytte. Inntrengere pass på…

Trinn 1: Rekvisita

Rekvisita
Rekvisita

Planlegger du fortsatt å bygge dette utstyret? Her er hva du trenger:

  • Raspberry Pi 3
  • Micro SD -kort
  • 3 hunn-til-hunn ledninger
  • 1 vibrasjonssensor
  • En kraftbank
  • Kommandostrimler

Hvis du planlegger å bygge dette prosjektet for flere dører, multipliserer du hver av rekvisita med hvor mange enheter du trenger.

Hvis du er i ferd med å bygge/teste denne enheten, er det ikke nødvendig å ha følgende … men det vil definitivt være veldig nyttig.

  • En dataskjerm
  • Et USB -tastatur
  • Micro USB ladesett

Trinn 2: Kabling

Kabling
Kabling
Kabling
Kabling

Mens Raspberry Pi er en fin enhet som følger med mange forskjellige sensorer og eksterne enheter, må vi legge til hovedsensoren til ledningene til Pi, slik at den kan gjøre de målingene vi trenger. Hovedsensoren som ble brukt i dette prosjektet kan sees på bildet ovenfor - det er en vibrasjonssensor med høy følsomhet. Selv om vi kunne bruke et brødbrett eller en annen monteringsenhet for å plassere denne sensoren og kjøre ledningene våre, koblet vi den rett og slett direkte via hunn-til-hunn-ledninger til pinnene på Raspberry Pi-enheten.

Du finner en kabeldiagram over (fra https://www.piddlerintheroot.com/vibration-sensor/). Bare koble til alle ledningene som vist på dette bildet, og vibrasjonssensoren din skal være god å gå. Vær også oppmerksom på at du til slutt trenger en batteripakke til dette prosjektet, men hvis du tester, er det sannsynligvis nyttig å koble enheten til en stikkontakt.

Trinn 3: Sette opp ting

Gratulerer! Du har kommet så langt. La oss fortsette!

Vi skal nå begynne å jobbe direkte med Pi. Alt det følgende kan gjøres på enheten med et tastatur og en skjerm (eller via SSH hvis du er komfortabel).

Det er mye forhåndsoppsett for å få alle GPIO -sensorer til å fungere med en Pi og kolbe. Tålmodighet er en dyd. Det er ganske mange Python -biblioteker du må installere først. Dette kan gjøres med Pip, et bibliotek/pakkebehandler for Python. For å bruke, skriv inn 'pip install' For å nevne noen av bibliotekene du trenger:

  • forespørsler
  • RPi. GPIO
  • kolbe
  • flask_restful
  • flask_wtf
  • wtforms
  • e -post
  • mandrill

Det kan være lurt å ta en kaffe mens du venter på at disse skal installeres - det kan ta litt tid.

Nå som alle bibliotekene er installert, er du klar til å starte Flask -prosjektet. Flask er et lett rammeverk som serverer sider fra enheten den kjører på. I dette tilfellet blir Raspberry Pi en server. Ganske kjapt, ikke sant? Du kan lære hvordan du konfigurerer en veldig enkel Flask -applikasjon her. Gjør dette før du prøver noen av instruksjonene etter dette.

Trinn 4: Kode og kjøring

Når du har fullført dette, er du klar til å begynne å bygge ut prosjektfilene. Jeg har tatt med alle filene du trenger nedenfor –– du bør imidlertid skrive om koden, og ikke bare kopiere filene over (DU LER MER!).

Slik skal katalogorganisasjonene se ut:

+- iotapp | +- appFolder | +- maler | +- index.html | +- _init_.py | +- forms.py | +- mcemail.py | +- ruter.py | +- iotapp.py | +- vibes.py

Plasser alle disse filene i denne riktige rekkefølgen, og du bør være i stand til å få prosjektet i gang på kort tid. For deretter å kjøre din Flask -server, bør du navigere til rotkatalogen. Du bør da skrive:

$ eksport FLASK_APP = iotapp.py

$ python -m kolbe kjøre -vert 0.0.0.0

Med dette bør du få en melding som indikerer at serveren din kjører, og du bør kunne vise siden fra enheten til en annen enhet i nettverket.

Det ville være et godt tidspunkt å se gjennom filene dine og virkelig prøve å få en oversikt over hva koden gjør. Selvfølgelig er ingen av koden satt i stein … den kan alt oppdateres/endres for å passe til prosjektspesifikke behov. For eksempel, for øyeblikket når enheten poster etter mottak av inndata fra vibrasjonssensoren, sender den tidsstempelet da inngangen skjedde. Serveren lagrer imidlertid ikke disse dataene. Dette kan gjøres hvis brukeren foretrekker å beholde historisk informasjon og ønsker å vise den et sted.

En ting du sannsynligvis vil legge merke til er at KODEN IKKE ER FULLFØRT. Dette prosjektet bruker en ekstern API for å sende ut varselmeldinger ved vibrasjon (døråpning). For å konfigurere dette må du opprette en Mandrill -konto og opprette en API -nøkkel.

Når du har bekreftet sendende domene og har en API -nøkkel, kan du plassere nøkkelen i filen 'mcemail.py' (hvor den er til stede) og justere sendeinformasjonen (enten ved å endre standardparameteren i samme fil eller ved å sende i en annen e -post i filen 'routes.py'. Hvis du vil ha mer dokumentasjon om Mandrill og hvordan du bruker den, kan du finne det her.

Trinn 5: Testing

Testing
Testing

Før du monterer enheten på den permanente plasseringen, er det sannsynligvis en god idé å teste alt den gjør. Slik kjører du tingene.

Enheten kjører faktisk to programmer: `vibes.py` og Flask -serveren. Førstnevnte skal kjøres først i bakgrunnen, og deretter kan Flask -serveren kjøres. `vibes.py` er ganske enkelt POSTing til serveren, og serveren tolker POST -forespørselen.

$ python vibes.py &

$ python -m kolbe kjøre -vert 0.0.0.0

Du bør da kunne navigere til riktig URI/IP og angi e -postadressen du vil sende alle varslene dine til. Du bør trykke på vibrasjonssensoren for å prøve å sende noen test -e -poster og sikre at prosjektet fungerer.

Ser alt bra ut? Ok, vi er klare for virksomheten!

Trinn 6: Montering

Montering
Montering

Montering av enheten er ganske selvforklarende. I utgangspunktet må du bare sørge for at enheten er koblet til batteripakken og bruke kommandostrimler for å feste enheten på døren.

Merk: Enheten må plasseres med vibrasjonssensoren vinkelrett på døren for at sensoren skal fange dørens bevegelse

Når dette er fullført, bør du kunne SSH inn i enheten og kjøre programmene som nevnt i forrige trinn og vente på inntrengere!

For ekstra poeng, prøv å skjule ledningene/enheten, slik at inntrengere ikke mistenker din smarte enhet! … eller ikke plasser den på en glassdør. ¯ / _ (ツ) _/¯

Anbefalt: