Kazalo:

Abellcadabra (sistem zaklepanja vrat za prepoznavanje obrazov): 9 korakov
Abellcadabra (sistem zaklepanja vrat za prepoznavanje obrazov): 9 korakov

Video: Abellcadabra (sistem zaklepanja vrat za prepoznavanje obrazov): 9 korakov

Video: Abellcadabra (sistem zaklepanja vrat za prepoznavanje obrazov): 9 korakov
Video: Kako kodirati kljuc od auta (100% radi) 2024, November
Anonim
Abellcadabra (sistem za zaklepanje vrat za prepoznavanje obrazov)
Abellcadabra (sistem za zaklepanje vrat za prepoznavanje obrazov)

Med karanteno sem se sprehajal in poskušal najti način, kako ubiti čas, tako da sem ustvaril prepoznavanje obrazov za hišna vrata. Poimenoval sem ga Abellcadabra - ki je kombinacija med Abracadabra, čarobno frazo z zvoncem na vratih, ki ga vzamem samo na zvonec. LOL

Kakorkoli že, ta sistem bo izvedel prepoznavanje obrazov z uporabo Amazon Rekognance, ko uporabnik pritisne na zvonec. Rekognance bo primerjal sliko, posneto z zbirko slik v Amazon S3. Če je prepoznavanje uspešno, se odprejo vrata. Če ne uspe, se oglasi zvočni signal in uporabnik lahko odklene z uporabo žetona RFID. Na notranji strani hiše je tudi gumb, s katerim lahko lastnik odklene vrata tako, da jih pritisne.

Vsa izvedena prepoznavanja in odklepanje bodo shranjena v Amazon DynamoDB. Poskusil bom korak za korakom razložiti celoten sistem. Uporabljam materiale, ki jih že imam, ker je trajalo veliko časa, da sem dobil kaj drugega, zato je to to.

Korak: Materiali in orodja

Material:

  • Malina Pi
  • Pi kamera
  • RC servo (deluje kot zaklepanje vrat)
  • Gumb za preklop 2x
  • Zvočni signal
  • Magnetno stikalo
  • RC-522 RFID čitalnik in oznaka
  • MF, MM, FF žice za mizo
  • Ledenica iz lesa Polystrene - vsaka velikost bi bila v redu, ker bodo to naša vrata.
  • 1,5 -palčni tečaj 2x
  • 2,5 mm vijak 4x

Orodja

  • Izvijač
  • Dvostranski trak

2. korak: Nastavitev spletnih storitev Amazon

Nastavitev spletnih storitev Amazon
Nastavitev spletnih storitev Amazon

Spletne storitve Amazon so enostavne za uporabo in so brezplačne, dokler ne dosežete 5000 klicev API na mesec. Tukaj se lahko registrirate za račun AWS. Morali se boste prijaviti za brezplačni amazonski račun Rekognance. Brezplačna stopnja bi morala biti več kot zadostna za ta projekt.

Ko je prijava uspešna, kliknite Storitve> IAM. Od tu bomo ustvarili uporabnika, ki bo imel dovoljenja za uporabo v Raspberry Pi.

  1. Kliknite Uporabniki> Dodaj novega uporabnika
  2. Uporabniku ustvarite ime. Za vrsto dostopa potrdite polje Programski dostop.
  3. Kliknite Naprej.
  4. Kliknite Neposredno pripni obstoječe pravilnike. Preverite naslednja pravila:
  • AWSLambdaFullAccess
  • AmazonS3FullAccess
  • AmazonDynamoDBFullAccess
  • AmazonRekognanceFullAccess
  • AdministratorAccess
  1. Znova kliknite Naprej in Naprej, ker nam ni treba dodati oznake.
  2. Preverite, ali so izbrani pravilniki enaki navedenim, nato kliknite Ustvari uporabnika.

Prenesite datoteko CSV, ki vsebuje ID ključa za dostop in tajni ključ za dostop, ki bo uporabljen v naslednjem koraku. Kliknite Zapri.

3. korak: Konfigurirajte Amazon S3 in Amazon DynamoDB

V konzoli AWS kliknite Storitve> S3

S3 deluje tako kot Google Drive, kjer lahko shranjujete dokumente in slike. Za ta projekt bomo potrebovali dve vedri, od katerih bo ena shranila zbirko slik, ki jih bo uporabljala Amazon Rekognance (druga pa je shranjevanje posnete slike.

  1. Kliknite Ustvari vedro.
  2. Vnesite ime vedra in znova kliknite Naprej in Naprej.
  3. Počistite polje »Blokiraj ves javni dostop«.
  4. Potrdite polje »Potrjujem, da lahko trenutne nastavitve povzročijo, da to vedro in predmeti, ki so znotraj, postanejo javni«.
  5. Kliknite Naprej in Ustvari vedro.
  6. Ponovite korak za drugo vedro.
  7. kliknite Storitve> DynamoDB

Amazon DynamoDB bo v tem projektu uporabljen za shranjevanje podatkov o prepoznavanju in odklepanju. podatki, ki bodo shranjeni, so povezava do posnete slike, ime slike je prepoznano ali če ni prepoznano, bo ime shranjeno kot „neznano“, datum in čas prepoznavanja ter stanje, ali je uspešno, brez ujemajočih se obrazov, brez obrazov zaznano, RFID odklepanje ali odklepanje od znotraj.

  1. Kliknite Dodaj novo tabelo.
  2. Za tabelo vnesite poljubno ime.
  3. Za primarni ključ kot primarni ključ vstavite "rid".
  4. Kliknite Ustvari.

4. korak: Konfigurirajte AWS na Raspberry Pi

Prvi korak je vnos poverilnic za AWS. Če želite to narediti v konzoli Raspberry Pi:

aws konfigurirati

Nato vnesite svoje poverilnice AWS IAM, ki ste jih ustvarili, pri tem pa vnesite »us-west-2« kot svojo regijo (ali ustrezno regijo, ki ste jo nastavili za ponovno prepoznavanje AWS). Privzeti izhodni format pustite prazen.

5. korak: Elemente povežite z Raspberry Pi

Povezave elementov so torej spodaj.

  • RC Servo - 1, 11, Ozemljitev
  • Magnetno stikalo - 8, ozemlj
  • Zvočni signal - 32, prizemljen
  • Zunanji gumb - 16, tla
  • Notranji gumb - 18, tla
  • SDA pin na bralniku RFID - 24
  • SCK pin na bralniku RFID - 23
  • Pin MOSI na bralniku RFID - 19
  • Pin MISO na bralniku RFID - 21
  • Pin GND na bralniku RFID - ozemljitev
  • RST pin na bralniku RFID - 22
  • 3.3 V pin na bralniku RFID - 17

Povežite se z najbližjo ozemljitvijo.

6. korak: Kode

Vso potrebno kodo najdete v mojem skladišču Git.

Če želite izvedeti, kako dodati obraze in uporabiti Index Faces.py, si oglejte ta video.

7. korak: Izdelava prototipa

Izdelava prototipa
Izdelava prototipa
Izdelava prototipa
Izdelava prototipa

Ker med izdelavo nisem posnel nobene slike, bom pustil samo sliko svojega končnega prototipa.

Prototip je narejen tako, da prikazuje vrata. Pogled od zunaj prikazuje pogled na vrata z zunanje strani hiše. Pi Camera je bila nameščena na povprečno višino črte človeškega očesa, da se zagotovi, da bo posneta slika vsebovala obraz, ki ga je treba prepoznati. Gumb za zvonjenje, ki aktivira kamero Pi za snemanje slike, je nameščen pod kamero Pi. Bralnik RFID je nameščen tudi na vratih, da lahko uporabnik pri vratih odklene vrata z oznako RFID, če prepoznavanje ne uspe.

Rdeči gumb je notranji gumb, ki se bo uporabljal za odklepanje vrat iz notranjosti hiše. Raspberry Pi je nameščen na notranji strani hiše, tako da ga ljudje od zunaj ne morejo posegati. Servo RC je nameščen na desni strani vrat kot ključavnica vrat. Zunanji zvočnik je nameščen na notranji strani hiše, da se zagotovi zvok brenčevalca od ljudi v hiši, ko je zazvonil. Med vrati in ogrodjem je nameščeno magnetno stikalo.

8. korak: Preizkus prototipa

Testiranje prototipa
Testiranje prototipa

Zaženite kodo na terminalu

sudo python3 ime datoteke.py

Samo pritisnite rumeni gumb na zunanji strani hiše in ta fotografija je posneta.

Preverite svoj Amazon DynamoDB, da preverite, ali je tabela posodobljena in vedra S3, da preverite, ali je posneta slika shranjena.

9. korak: Zapiranje

Če se odločite, da boste ta projekt naredili sami, mi to sporočite v komentarjih (:

Hvala za branje.

Priporočena: