Indholdsfortegnelse:

Raspberry Pi Door Notifier: 6 trin (med billeder)
Raspberry Pi Door Notifier: 6 trin (med billeder)

Video: Raspberry Pi Door Notifier: 6 trin (med billeder)

Video: Raspberry Pi Door Notifier: 6 trin (med billeder)
Video: Machu Picchu: What they won't tell you about visiting here 2024, November
Anonim
Hindbær Pi dørmeddeler
Hindbær Pi dørmeddeler

Har du nogensinde spekuleret på, om eller hvornår folk får adgang til døre? Vil du have en diskret, billig og hurtig måde at overvåge dørbevægelser … og måske et lille projekt? Stop med at lede! Denne forenklede enhed vil spore vibrationer, der afgives fra bevægelige døre og rapportere tilbage til brugeren med en e -mail til en bestemt e -mail -adresse.

Dette projekt giver dig lidt øvelse med kolbe, hindbærpis, GPIO -sensorer og Mandrill API! Det er ikke kun sjovt at bygge, men det har en masse nytteværdi. Ubudne gæster pas på…

Trin 1: Forbrugsvarer

Forbrugsvarer
Forbrugsvarer

Planlægger du stadig at bygge denne konstruktion? Her er hvad du skal bruge:

  • Raspberry Pi 3
  • Micro SD -kort
  • 3 hun-til-hun ledninger
  • 1 vibrationssensor
  • En powerbank
  • Kommandostrimler

Hvis du planlægger at bygge dette projekt til flere døre, skal du gange hver forsyning med, hvor mange enheder du skal bruge.

Hvis du er i gang med at bygge/teste denne enhed, er det ikke nødvendigt at have følgende … men det ville helt sikkert være meget nyttigt.

  • En computerskærm
  • Et USB -tastatur
  • Micro USB opladningssæt

Trin 2: Ledningsføring

Ledninger
Ledninger
Ledninger
Ledninger

Mens Raspberry Pi er en smart enhed, der følger med masser af forskellige sensorer og periferiudstyr, skal vi tilføje hovedsensoren til ledningerne til Pi, så den kan foretage de målinger, vi har brug for. Hovedsensoren, der blev brugt i dette projekt, kan ses på billedet ovenfor - det er en vibrationssensor med høj følsomhed. Selvom vi kunne bruge et brødbræt eller en anden monteringsenhed til at placere denne sensor på og køre vores ledninger igennem, tilsluttede vi den simpelthen via hun-til-hun-ledninger direkte til stifterne på Raspberry Pi-enheden.

En ledningsskema kan findes ovenfor (stammer fra https://www.piddlerintheroot.com/vibration-sensor/). Du skal blot tilslutte alle ledningerne som vist på dette billede, og din vibrationssensor skal være god at gå. Bemærk også, at du til sidst skal bruge en batteripakke til dette projekt, men hvis du tester, er det sandsynligvis nyttigt at få enheden tilsluttet en stikkontakt.

Trin 3: Indstilling af ting

Tillykke! Du har nået så langt. Lad os blive ved!

Vi skal nu begynde at arbejde direkte med Pi. Alt det følgende kan udføres på enheden med et tastatur og en skærm (eller via SSH, hvis du er komfortabel).

Der er en masse forudgående opsætninger for at få enhver GPIO -sensor til at arbejde med en Pi og kolbe. Tålmodighed er en dyd. Der er ganske få Python -biblioteker, du skal installere først. Dette kan gøres med Pip, et bibliotek/pakkehåndtering til Python. For at bruge skal du skrive 'pip install' For at navngive nogle af de biblioteker, du skal bruge:

  • anmodninger
  • RPi. GPIO
  • kolbe
  • flask_restful
  • flask_wtf
  • wtforms
  • e -mail
  • mandrill

Du vil måske tage en kop kaffe, mens du venter på, at disse installeres - det kan tage lidt tid.

Nu hvor alle dine biblioteker er installeret, er du klar til at starte dit Flask -projekt. Kolbe er en let ramme, der serverer sider fra den enhed, den kører på. I dette tilfælde bliver Raspberry Pi en server. Ret pænt, hva '? Du kan lære at oprette en meget enkel kolbe -applikation her. Gør dette, før du prøver nogen af instruktionerne efter dette.

Trin 4: Kode og kørsel

Når du har gennemført dette, er du klar til at begynde at opbygge projektfilerne. Jeg har inkluderet alle de filer, du har brug for herunder - du bør dog sandsynligvis omskrive koden og ikke bare kopiere filerne (DU LÆR MERE!).

Sådan skal biblioteksorganisationerne se ud:

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

Placer alle disse filer i denne korrekte rækkefølge, og du bør være i stand til at få dit projekt i gang på ingen tid. For derefter at køre din Flask -server skal du navigere til rodmappen. Du skal derefter skrive:

$ eksport FLASK_APP = iotapp.py

$ python -m kolbe kører --host 0.0.0.0

Med dette skal du få en meddelelse, der angiver, at din server kører, og du skal kunne vise siden fra enheden til en anden enhed på netværket.

Nu ville det være et godt tidspunkt at kigge dine filer igennem og virkelig prøve at få et kig på, hvad koden laver. Selvfølgelig er ingen af koden sat i sten … det hele kan opdateres/ændres, så det passer til projektspecifikke behov. For eksempel sender den fra nu, når enheden POSTs ved modtagelse af input fra vibrationssensoren, tidsstemplet for, hvornår input indtraf. Serveren gemmer dog ikke disse data. Dette kunne gøres, hvis brugeren foretrak at beholde historiske oplysninger og ville vise dem et sted.

En ting, du sandsynligvis vil bemærke, er, at KODEN IKKE ER FULDFØRT. Dette projekt gør brug af en ekstern API til at sende meddelelses -e -mails ud ved vibration (døråbning). For at konfigurere dette skal du oprette en Mandrill -konto og oprette en API -nøgle.

Når du har bekræftet dit afsendelsesdomæne og har en API -nøgle, kan du placere din nøgle i filen 'mcemail.py' (hvor den er til stede) og justere afsendelsesoplysningerne (enten ved at ændre standardparameteren i den samme fil eller ved at sende i en anden e -mail i filen 'routes.py'. Hvis du vil have mere dokumentation om Mandrill, og hvordan du bruger den, kan du finde det her.

Trin 5: Test

Test
Test

Inden du monterer enheden på sin permanente placering, er det sandsynligvis en god idé at teste alt det, den laver. Sådan kører du tingene.

Enheden kører faktisk to programmer: `vibes.py` og Flask -serveren. Førstnævnte skal køres først i baggrunden, og derefter kan Flask -serveren køres. `vibes.py` sender simpelthen POST til serveren, og serveren fortolker POST -anmodningen.

$ python vibes.py &

$ python -m kolbe kører --host 0.0.0.0

Du skal derefter kunne navigere til den korrekte URI/IP og angive den e -mailadresse, du gerne vil sende alle dine notifikationer til. Du skal trykke på vibrationssensoren for at prøve at sende nogle test -e -mails og sikre, at projektet fungerer.

Ser alt godt ud? Okay, vi er klar til forretning!

Trin 6: Montering

Montering
Montering

Montering af enheden er ret selvforklarende. Grundlæggende skal du bare sikre dig, at enheden er sluttet til batteripakken og bruge kommandostrimler til at fastgøre enheden til døren.

Bemærk: Enheden skal placeres med vibrationssensoren vinkelret på døren, for at sensoren kan fange dørens bevægelse

Når dette er fuldført, skal du være i stand til at SSH ind i enheden og køre programmerne som nævnt i det foregående trin og vente på ubudne gæster!

For ekstra point, prøv at skjule ledningerne/enheden, så ubudne gæster ikke er mistænksomme over for din smarte enhed! … eller placer den bare ikke på en glasdør. ¯ / _ (ツ) _/¯

Anbefalede: