- Komponenter som krävs:
- Fingeravtryckssensormodul med Arduino:
- Arbetsförklaring:
- Kretsförklaring:
- Programförklaring:
Säkerhet är ett stort problem i vårt dagliga liv och digitala lås har blivit en viktig del av dessa säkerhetssystem. Det finns många typer av säkerhetssystem tillgängliga för att säkra vår plats. Några exempel är PIR-baserat säkerhetssystem, RFID-baserat säkerhetssystem, Digital Lock-system, biomatrissystem, Elektronisk kodlås. I det här inlägget kommer vi att ansluta en fingeravtryckssensormodul med Arduino och bygga ett fingeravtrycksbaserat biometriskt säkerhetssystem med dörrlåsning. Fingeravtryck anses vara en av de säkraste nycklarna för att låsa eller låsa upp vilket system som helst, eftersom det kan känna igen alla personer unikt och inte kan kopieras enkelt.
Komponenter som krävs:
- Arduino Uno
- Fingeravtrycksmodul
- Tryckknapp -4
- Lysdioder -2
- 1K Motstånd -3
- 2,2K motstånd -1 '
- Strömförsörjning
- Anslutande ledningar
- Kartong låda
- Servomotor -1
- 16x2 LCD -1
- Brödbräda -1
Fingeravtryckssensormodul med Arduino:
Finger Print Sensor Module eller Finger Print Scanner är en modul som fångar fingeravtrycksbilden och sedan konverterar den till motsvarande mall och sparar dem i sitt minne på valt ID (plats) av Arduino. Här styrs hela processen av Arduino som att ta en bild av fingeravtryck, konvertera den till mallar och lagra plats etc.
I detta Arduino fingeravtryckssensorprojekt har vi använt fingeravtryckssensormodul för att ta finger- eller tumavtryck som inmatning i systemet. Här använder vi fyra tryckknappar för att registrera / backa, Radera / OK, UPP och Ner. Varje tangent har dubbla funktioner. Enroll-tangenten används för att registrera ett nytt fingeravtryck i systemet och tillbaka-funktionen. Betyder när användaren vill registrera ett nytt finger då måste han / hon trycka på inskrivningsknappen och sedan frågar LCD om ID eller plats där användaren vill lagra fingeravtrycksutmatningen. Om användaren vid den här tiden inte vill gå vidare kan han / hon trycka på registret igen för att gå tillbaka (den här gången registrerar sig nyckeln beter sig som bakåt). Medelregistreringsnyckel har både inskrivnings- och bakfunktion. DEL / OK-tangentenhar också samma dubbla funktion som när användaren registrerar nytt finger då måste han / hon välja finger-ID eller plats genom att använda en annan två tangent, nämligen UPP / MATCH OCH NER / MATCH (som också har dubbel funktion) nu måste användaren trycka på DEL / OK (den här gången fungerar den här tangenten som OK) för att fortsätta med valt ID eller plats. UPP / NER-tangenterna stöder också matchningsfunktionen för fingeravtryck. Kontrollera videon i slutet för fullständig demonstration.
Här har vi också fäst en kartong med en servomotor för att fungera som en säkerhetsgrind, som bara öppnas när systemet läser rätt fingeravtryck. Gul lysdiod indikerar att grinden är stängd och grön lysdiod indikerar att grinden är öppnad.
Arbetsförklaring:
Fungerar av detta fingerlåsär lätt. I det här projektet har vi använt en grind som kommer att vara öppen när vi placerar lagrat finger på fingeravtrycksmodulen. Först och främst måste användaren registrera finger med hjälp av tryckknappar / knappar. För att göra detta måste användaren trycka på ENROLL-tangenten och sedan frågar LCD om att ange plats / ID där finger kommer att vara en butik. Så nu måste användaren ange ID (plats) med UPP / NER-tangenterna. Efter att ha valt Plats / ID måste användaren trycka på en OK-tangent (DEL-tangent). Nu kommer LCD att be om att placera fingret över fingeravtrycksmodulen. Nu måste användaren lägga fingret över fingeravtrycksmodulen. Då kommer LCD att be om att ta bort fingret från fingeravtrycksmodulen och be om att placera fingret igen. Nu måste användaren sätta fingret igen över fingeravtrycksmodulen.Nu tar fingeravtrycksmodulen en bild och konverterar den till mallar och lagrar den med valt ID i fingeravtrycksmodulens minne. Nu kan användaren öppna grinden genom att placera samma finger som han / hon har lagt till eller registrerat sig i systemet och sedan trycka på MATCH-tangenten (UPP / NER-tangenten). Med samma metod kan användaren lägga till fler fingrar. Se videon nedan för fullständig demonstration.
Om användaren nu vill ta bort eller ta bort något av de lagrade ID-erna måste han / hon trycka på DEL-tangenten, efter att ha tryckt på DEL-tangenten kommer LCD att be om vald plats betyder att välja ID som ska raderas. Nu måste användaren välja ID och trycka på OK-tangenten (samma DEL-tangent). Nu meddelar LCD dig att fingret har raderats framgångsrikt. Nu kan användaren kontrollera att den har raderats eller inte genom att placera samma finger över fingeravtrycksmodulen och trycka på MATCH-tangenten (UPP / NER-tangenten).
När det placerade fingret är giltigt lyser den gröna lysdioden i fem sekunder och grinden öppnas också samtidigt. Efter 5 sekunder stängs grinden automatiskt. Användaren kan anpassa grind / dörröppning och stängning enligt deras behov. Servomotorn är ansvarig för att öppna och stänga grinden.
Kretsförklaring:
Kretsen för detta Arduino Fingerprint Security System är väldigt enkel som innehåller Arduino som styr hela processen för projektet, tryckknapp, summer och LCD. Arduino styr de fullständiga processerna.
Tryckknappen är direkt ansluten till stift D14 (ENROLL), D15 (DEL), D16 (UP) och D17 (DOWN) i Arduino i förhållande till marken och gul LED är ansluten vid Digital stift D7 i Arduino med avseende på marken genom en 1k motstånd och grön lysdiod är ansluten till D6 i Arduino med samma metod. Fingeravtrycksmodulens Rx och Tx direkt anslutna till programvaru Serial eller Digital pin D2 och D3 i Arduino. 5v-matning används för att driva fingeravtrycksmodulen från Arduino-kortet och Servomotorn är också ansluten till PWM-stift D5 i Arduino. En 16x2 LCD är konfigurerad i 4-bitars läge och dess RS, EN, D4, D5, D6 och D7 är direktanslutna på Digital stift D13, D12, D11, D10, D9 och D8 i Arduino.
Obs: här är D14, D15, D16, D17 A0, A1, A2, A3.
Programförklaring:
I ett program har vi använt Adafruit Fingerprint Sensor Library för att koppla fingeravtrycksmodul med Arduino-kortet. Du kan kontrollera hela koden nedan, den är lätt att förstå. Här förklarar vi huvudfunktionerna i Arduino-programmet.
Nedan kod används för att ta fingeravtryck som inmatning och vidta åtgärder enligt valideringen av fingret. Om finger kommer att valideras kommer grinden att vara öppen annars förblir stängd.
för (int i = 0; i <5; i ++) {lcd.clear (); lcd.print ("Placera finger"); fördröjning (2000); int resultat = getFingerprintIDez (); om (resultat> = 0) {digitalWrite (openLight, HIGH); digitalWrite (closeLight, LOW); lcd.clear (); lcd.print ("Tillåtet"); lcd.setCursor (0,1); lcd.print ("Gete öppnade"); myServo.write (0); fördröjning (5000); myServo.write (180); digitalWrite (closeLight, HIGH); digitalWrite (openLight, LOW); lcd.setCursor (0,1); lcd.print ("Gate Stängd");
Givet void checkKeys () -funktion används för att kontrollera Enroll eller DEL-tangenten trycks in eller inte och vad man ska göra om man trycker på den. Om ENROLL-tangenten trycks in anropas Enroll () -funktionen och DEL-tangenten trycks sedan raderas () -funktionen.
ogiltiga checkKeys () {if (digitalRead (registrera) == 0) {lcd.clear (); lcd.print ("Vänligen vänta"); fördröjning (1000); medan (digitalRead (registrera) == 0); Skriva in(); } annat om (digitalRead (del) == 0) {lcd.clear (); lcd.print ("Vänligen vänta"); fördröjning (1000); radera (); }}
Angiven funktion används för att ange ID som ska raderas och ringa till uint8_t deleteFingerprint (uint8_t id) -funktion som tar bort finger från poster.
ogiltig radering () {int antal = 0; lcd.clear (); lcd.print ("Radera finger"); lcd.setCursor (0,1); lcd.print ("Plats:"); medan (1) {lcd.setCursor (9,1); lcd.print (count); if (digitalRead (up) == 0) {count ++; if (count> 25) count = 0; fördröjning (500); }……………….
Angiven funktion används för att radera fingeravtryck från registreringen av valt ID.
uint8_t deleteFingerprint (uint8_t id) {uint8_t p = -1; lcd.clear (); lcd.print ("Vänligen vänta"); p = finger.deleteModel (id); if (p == FINGERPRINT_OK) {Serial.println ("Borttagen!"); lcd.clear (); lcd.print ("Figer borttagen"); lcd.setCursor (0,1); lcd.print ("framgångsrikt"); fördröjning (1000); } annat {Serial.print ("Något fel"); lcd.clear (); lcd.print ("Något fel"); lcd.setCursor (0,1); lcd.print ("Försök igen senare"); fördröjning (2000); returnera p; }}
Given funktion används för att ta en fingeravtrycksbild och konvertera dem till mallen och spara den med valt ID i fingeravtrycksmodulens minne.
uint8_t getFingerprintEnroll () {int p = -1; lcd.clear (); lcd.print ("finger-ID:"); lcd.print (id); lcd.setCursor (0,1); lcd.print ("Placera finger"); fördröjning (2000); medan (p! = FINGERPRINT_OK) {p = finger.getImage ();…………………
Så det är så vi kan använda Arduino med Finger Print Reader Module för säkerhetssystem.