- Vaaditut komponentit:
- Sormenjälkitunnistinmoduuli Arduinolla:
- Työselitys:
- Piirin selitys:
- Ohjelman selitys:
Turvallisuus on tärkeä huolenaihe jokapäiväisessä elämässämme, ja digitaalisista lukoista on tullut tärkeä osa näitä turvajärjestelmiä. Paikkamme turvaamiseksi on käytettävissä monenlaisia turvajärjestelmiä. Joitakin esimerkkejä ovat PIR-pohjainen turvajärjestelmä, RFID-pohjainen turvajärjestelmä, digitaalinen lukitusjärjestelmä, biomatriisijärjestelmät, elektroniikkakoodilukko. Tässä viestissä liitämme sormenjälkitunnistinmoduulin Arduinoon ja rakennamme sormenjälkiin perustuvan biometrisen turvajärjestelmän oven lukituksella. Sormenjälkeä pidetään yhtenä turvallisimmista avaimista minkä tahansa järjestelmän lukitsemiseksi tai avaamiseksi, koska se tunnistaa kenenkään yksilöllisesti eikä sitä voi kopioida helposti.
Vaaditut komponentit:
- Arduino Uno
- Sormenjälkimoduuli
- Painike -4
- LEDit -2
- 1K vastus -3
- 2.2K vastus -1 '
- Virtalähde
- Johtojen liittäminen
- Pahvilaatikko
- Servomoottori -1
- 16x2 LCD -1
- Leipälauta -1
Sormenjälkitunnistinmoduuli Arduinolla:
Sormenjälkitunnistinmoduuli tai sormenjälkitunnistin on moduuli, joka sieppaa sormenjälkikuvan ja muuntaa sen sitten vastaavaksi malliksi ja tallentaa ne muistiinsa Arduinon valitsemalle tunnukselle (sijainti). Täällä Arduino komentaa kaiken prosessin, kuten kuvan ottaminen sormenjäljestä, muuntaminen malliksi ja sijainnin tallentaminen jne.
Tässä Arduino-sormenjälkitunnistinprojektissa olemme käyttäneet sormenjälkitunnistinmoduulia ottamaan sormen tai peukalon vaikutelman järjestelmän tulona. Tässä käytämme 4 painonappia Rekisteröityminen / Takaisin, Poista / OK, YLÖS ja ALAS. Jokaisella näppäimellä on kaksoisominaisuudet. Rekisteröintinäppäintä käytetään uuden sormenjäljen rekisteröimiseen järjestelmään ja selkätoimintoon. Tarkoittaa, kun käyttäjä haluaa rekisteröidä uuden sormen, hänen on painettava rekisteröintinäppäintä ja LCD kysyy tunnusta tai sijaintia, johon käyttäjä haluaa tallentaa sormenjäljen. Jos nyt käyttäjä ei halua edetä pidemmälle, hän voi palata takaisin painamalla rekisteröintinäppäintä uudelleen (tällä kertaa rekisteröintinäppäin käyttäytyy Takaisin-näppäimenä). Tarkoittaa, että rekisteröintinäppäimellä on sekä ilmoittautumis- että takaisin-toiminto. DEL / OK-näppäinon myös sama kaksoistoiminto kuin silloin, kun käyttäjä rekisteröi uuden sormen, hänen on valittava sormen tunnus tai sijainti käyttämällä kahta toista näppäintä, nimittäin YLÖS / MATCH JA DOWN / MATCH (jolla on myös kaksoistoiminto), käyttäjän on nyt painettava DEL / OK -näppäin (tällä kertaa tämä avain toimii kuten OK) jatkaaksesi valitun tunnuksen tai sijainnin kanssa. YLÖS / ALAS-näppäimet tukevat myös Sormenjälkien ottelutoimintoa. Tarkista videon lopussa oleva esittely.
Tässä olemme myös liittäneet pahvilaatikon, jossa on servomoottori, toimimaan turvaporttina, joka avautuu vasta, kun järjestelmä lukee oikean sormenjäljen. Keltainen LED osoittaa portin olevan kiinni ja vihreä LED osoittaa portin olevan auki.
Työselitys:
Tämän sormenjälkitunnistimen oven lukon toimintaon helppo. Tässä projektissa olemme käyttäneet porttia, joka on auki, kun laitamme tallennetun sormen sormenjälkimoduuliin. Ensinnäkin käyttäjän on rekisteröitävä sormi painikkeella / näppäimillä. Tätä varten käyttäjän on painettava ENROLL-näppäintä ja sitten LCD pyytää syöttämään sijainnin / tunnuksen, jossa sormi on myymälä. Joten käyttäjän on nyt syötettävä tunnus (sijainti) käyttämällä YLÖS / ALAS-näppäimiä. Kun olet valinnut Sijainti / tunnus, käyttäjän on painettava OK-näppäintä (DEL-näppäin). Nyt LCD pyytää asettamaan sormen sormenjälkimoduulin päälle. Nyt käyttäjän on laitettava sormensa sormenjälkimoduulin päälle. Tämän jälkeen LCD pyytää poistamaan sormen sormenjälkimoduulista ja pyytää jälleen sormen asettamista. Nyt käyttäjän on laitettava sormensa uudelleen sormenjälkimoduulin päälle.Nyt sormenjälkimoduuli ottaa kuvan ja muuntaa sen malleiksi ja tallentaa sen valitulla tunnuksella sormenjälkimoduulin muistiin. Nyt käyttäjä voi avata portin asettamalla saman sormen, jonka hän on lisännyt tai rekisteröitynyt järjestelmään, ja paina sitten MATCH-näppäintä (YLÖS / ALAS-näppäin). Samalla menetelmällä käyttäjä voi lisätä sormia. Katso alla olevasta videosta täydellinen esittely.
Jos käyttäjä haluaa poistaa tai poistaa minkä tahansa tallennetusta tunnuksesta, hänen on painettava DEL-näppäintä. Kun olet painanut DEL-näppäintä, LCD pyytää valitsemaan sijaintitiedot valitsemalla poistettavan ID: n. Nyt käyttäjän on valittava tunnus ja painettava OK-näppäintä (sama DEL-näppäin). Nyt LCD ilmoittaa, että sormi on poistettu onnistuneesti. Nyt käyttäjä voi tarkistaa, onko se poistettu vai ei, asettamalla sama sormi sormenjälkimoduulin päälle ja painamalla MATCH-näppäintä (YLÖS / ALAS-näppäin).
Kun sormi asetetaan, vihreä LED palaa viisi sekuntia ja portti avautuu myös samanaikaisesti. Viiden sekunnin kuluttua portti sulkeutuu automaattisesti. Käyttäjä voi räätälöidä portin / oven avaamisen ja sulkemisen vaatimustensa mukaisesti. Servomoottori on vastuussa portin avaamisesta ja sulkemisesta.
Piirin selitys:
Tämän Arduino Sormenjälkiturvajärjestelmän piiri on hyvin yksinkertainen, joka sisältää Arduinon, joka ohjaa koko projektin prosessia, painonappia, summeria ja LCD-näyttöä. Arduino ohjaa kaikkia prosesseja.
Painike on kytketty suoraan Arduinon tapiin D14 (ENROLL), D15 (DEL), D16 (UP) ja D17 (DOWN) maadoitukseen. Keltainen LED on kytketty Arduinon digitaaliseen tapiin D7 maadoituksen 1k vastus ja vihreä LED kytketään Arduinon D6: een samalla menetelmällä. Sormenjälkimoduulin Rx ja Tx on kytketty suoraan Arduinon ohjelmistosarja- tai digitaalitappeihin D2 ja D3. 5v: n virtalähdettä käytetään Arduino-kortilta otetun sormenjälkimoduulin virtalähteeseen ja Servo-moottori on kytketty myös Arduinon PWM-nastaan D5. 16x2-nestekidenäyttö on konfiguroitu 4-bittisessä tilassa ja sen RS, EN, D4, D5, D6 ja D7 on kytketty suoraan Arduinon digitaalisiin nastoihin D13, D12, D11, D10, D9 ja D8.
Huomaa: tässä D14, D15, D16, D17 ovat A0, A1, A2, A3.
Ohjelman selitys:
Yhdessä ohjelmassa olemme käyttäneet Adafruit Fingerprint Sensor Library -sovellusta sormenjälkimoduulin liittämiseen Arduino-korttiin. Voit tarkistaa koko koodin alla, se voidaan helposti ymmärtää. Tässä selitämme Arduino-ohjelman päätoimintoja.
Alla olevaa koodinpätkää käytetään ottamaan sormenjälki syötteenä ja toimimaan sormen validoinnin mukaan. Jos sormi tarkistetaan, portti on auki, muuten pysy suljettuna.
for (int i = 0; i <5; i ++) {lcd.selvä (); lcd.print ("Paikkasormi"); viive (2000); int tulos = getFingerprintIDez (); if (tulos> = 0) {digitalWrite (openLight, HIGH); digitalWrite (closeLight, LOW); lcd.clear (); lcd.print ("Sallittu"); lcd.setCursor (0,1); lcd.print ("Gete avattu"); myServo.write (0); viive (5000); myServo.write (180); digitalWrite (closeLight, HIGH); digitalWrite (openLight, LOW); lcd.setCursor (0,1); lcd.print ("portti suljettu");
Annettua void checkKeys () -toimintoa käytetään tarkistamaan, että rekisteröinti- tai DEL-näppäintä painetaan tai ei, ja mitä tehdä, jos sitä painetaan. Jos ENROLL-näppäintä painettiin, kutsutaan Enroll () -toiminto ja DEL-näppäimen painallus, sitten poistetaan () -toiminto.
void checkKeys () {if (digitalRead (rekisteröidy) == 0) {lcd.clear (); lcd.print ("Odota hetki"); viive (1000); while (digitalRead (rekisteröidy) == 0); Ilmoittaudu (); } else if (digitalRead (del) == 0) {lcd.clear (); lcd.print ("Odota hetki"); viive (1000); poista (); }}
Annettua toimintoa käytetään poistettavan tunnuksen syöttämiseen ja uint8_t deleteFingerprint (uint8_t id) -toiminnon kutsumiseen, joka poistaa sormen tietueista.
void delet () {int count = 0; lcd.clear (); lcd.print ("Poista sormi"); lcd.setCursor (0,1); lcd.print ("Sijainti:"); kun taas (1) {lcd.setCursor (9,1); lcd.print (määrä); if (digitalRead (ylös) == 0) {count ++; jos (määrä> 25) määrä = 0; viive (500); }……………….
Annettua toimintoa käytetään poistamaan sormenjälki valitun tunnuksen tietueesta.
uint8_t deleteFingerprint (uint8_t id) {uint8_t p = -1; lcd.clear (); lcd.print ("Odota hetki"); p = finger.deleteModel (id); if (p == FINGERPRINT_OK) {Serial.println ("Poistettu!"); lcd.clear (); lcd.print ("Figer poistettu"); lcd.setCursor (0,1); lcd.print ("Onnistuneesti"); viive (1000); } else {Serial.print ("Jotain väärää"); lcd.clear (); lcd.print ("Jotain väärää"); lcd.setCursor (0,1); lcd.print ("Yritä myöhemmin uudelleen"); viive (2000); paluu p; }}
Annettua toimintoa käytetään ottamaan sormenjälkikuva ja muuntamaan ne malliksi ja tallentamaan se valitulla tunnuksella sormenjälkimoduulin muistiin.
uint8_t getFingerprintEnroll () {int p = -1; lcd.clear (); lcd.print ("sormen tunnus:"); lcd.print (id); lcd.setCursor (0,1); lcd.print ("Paikkasormi"); viive (2000); kun (p! = FINGERPRINT_OK) {p = finger.getImage ();…………………
Joten voimme käyttää Arduinoa Finger Print Reader -moduulin kanssa turvajärjestelmään.