- Szükséges alkatrészek:
- Ujjlenyomat-érzékelő modul Arduino-val:
- Munka magyarázat:
- Áramkör magyarázat:
- A program magyarázata:
A biztonság a mindennapi életünkben komoly gondot jelent, és a digitális zárak e biztonsági rendszerek fontos részévé váltak. Sokféle biztonsági rendszer áll rendelkezésre a helyünk biztosítására. Néhány példa: PIR alapú biztonsági rendszer, RFID alapú biztonsági rendszer, digitális zárrendszer, biomátrix rendszerek, elektronikai kódzár. Ebben a bejegyzésben összekapcsolunk egy ujjlenyomat-érzékelő modult az Arduinóval, és felépítünk egy ujjlenyomat-alapú biometrikus biztonsági rendszert ajtózárással. Az ujjlenyomatot az egyik legbiztonságosabb kulcsnak tekintik bármely rendszer lezárásához vagy feloldásához, mivel minden személyt egyedülállóan felismer, és nem lehet egyszerűen lemásolni.
Szükséges alkatrészek:
- Arduino Uno
- Ujjlenyomat-modul
- Nyomja meg a gombot -4
- LED-ek -2
- 1K ellenállás -3
- 2,2K ellenállás -1 "
- Tápegység
- Csatlakozó vezetékek
- Kartondoboz
- Szervomotor -1
- 16x2 LCD -1
- Kenyérlap -1
Ujjlenyomat-érzékelő modul Arduino-val:
Az ujjlenyomat-érzékelő modul vagy az ujjlenyomat-szkenner olyan modul, amely rögzíti az ujjlenyomat képét, majd átalakítja azt az egyenértékű sablonba, és elmenti a memóriájába az Arduino által kiválasztott azonosítón (helyen). Itt az Arduino parancsolja az összes folyamatot, például képet készít az ujjlenyomatról, átalakítja sablonokká és tárolja a helyet stb.
Ebben az Arduino ujjlenyomat-érzékelő projektben az ujjlenyomat-érzékelő modult használtuk az ujj vagy hüvelykujj benyomásának bevitelére a rendszerben. Itt 4 nyomógomb segítségével regisztrálhatunk / vissza, törölhetünk / OK, fel és le. Minden kulcs kettős tulajdonságokkal rendelkezik. A beiratkozás gombbal új ujjlenyomatot regisztrálhatunk a rendszerbe és a hátsó funkcióba is. Azt jelenti, hogy amikor a felhasználó új ujjat akar regisztrálni, akkor meg kell nyomnia a regisztrációs gombot, majd az LCD kéri az azonosítót vagy helyet, ahová a felhasználó az ujjlenyomat kimenetét szeretné tárolni. Ha most a felhasználó nem akar tovább haladni, akkor a visszalépéshez újra megnyomhatja a beiratkozás gombot (ezúttal a Vissza gombként viselkedik). Azt jelenti, hogy a beiratkozás kulcsnak van beiratkozási és vissza funkciója. DEL / OK gombszintén ugyanaz a kettős funkciója van, mint amikor a felhasználó új ujjat ír be, akkor ki kell választania az ujj azonosítóját vagy helyét egy másik két billentyű használatával, nevezetesen az UP / MATCH ÉS DOWN / MATCH (amely szintén kettős funkcióval rendelkezik) most a felhasználónak meg kell nyomnia a DEL / OK gombot gomb (ezúttal ez a kulcs úgy viselkedik, mint az OK), hogy folytassa a kiválasztott azonosítót vagy helyet. A FEL / LE billentyűk támogatják az Ujjlenyomat egyeztetés funkciót is. Ellenőrizze a videó végén a teljes bemutatást.
Itt egy karton dobozt is csatlakoztattunk egy szervomotorral, amely biztonsági kapuként működik, amely csak akkor nyílik meg, amikor a rendszer beolvassa a helyes ujjlenyomatot. A sárga LED azt jelzi, hogy a kapu zárva van, és a zöld LED azt jelzi, hogy a kapu nyitva van.
Munka magyarázat:
Az ujjlenyomat-érzékelő ajtózárjának működésekönnyű. Ebben a projektben egy kaput használtunk, amely akkor lesz nyitva, amikor a tárolt ujjat az ujjlenyomat-modulhoz helyezzük. Először is, a felhasználónak regisztrálnia kell az ujját a nyomógomb / gombok segítségével. Ehhez a felhasználónak meg kell nyomnia az ENROLL gombot, majd az LCD kéri a hely / azonosító megadását, ahol az ujj tároló lesz. Tehát most a felhasználónak meg kell adnia az azonosítót (hely) a FEL / LE billentyűk használatával. A Hely / azonosító kiválasztása után a felhasználónak meg kell nyomnia az OK gombot (DEL gomb). Most az LCD kéri, hogy tegye az ujját az ujjlenyomat-modulra. Most a felhasználónak át kell tennie az ujját az ujjlenyomat-modulon. Ezután az LCD kéri, hogy távolítsa el az ujját az ujjlenyomat-modulról, és ismét megkéri az ujját. Most a felhasználónak újra be kell tennie az ujját az ujjlenyomat-modulra.Most az ujjlenyomat-modul elkészít egy képet, sablonokká alakítja, és kiválasztott azonosító szerint tárolja az ujjlenyomat-modul memóriájában. Most a felhasználó megnyithatja a kaput azzal, hogy ugyanazt az ujját helyezi el, amelyet hozzáadott vagy beírt a rendszerbe, majd nyomja meg a MATCH gombot (FEL / LE gomb). Ugyanezzel a módszerrel a felhasználó több ujjat is hozzáadhat. Ellenőrizze az alábbi videót a teljes bemutatáshoz.
Ha a felhasználó el akarja távolítani vagy törölni a tárolt azonosítókat, akkor meg kell nyomnia a DEL gombot, miután a DEL gombot megnyomta, az LCD a kiválasztott helyet kéri a törölni kívánt azonosító kiválasztásával. Most a felhasználónak ki kell választania az azonosítót, és meg kell nyomnia az OK gombot (ugyanaz a DEL gomb). Most az LCD értesíti Önt arról, hogy az ujját sikeresen törölte. Most a felhasználó ellenőrizheti, hogy törölték-e, ha ugyanazt az ujját az ujjlenyomat-modul fölé helyezi, és megnyomja a MATCH gombot (FEL / LE gomb).
Ha az ujját behelyezi, a zöld LED öt másodpercig világít, és a kapu is kinyílik egyidejűleg. 5 másodperc múlva a kapu automatikusan bezárul. A felhasználó igényei szerint testre szabhatja a kapu / ajtó nyitását és zárását. A szervomotor felelős a kapu nyitásáért és bezárásáért.
Áramkör magyarázat:
Ennek az Arduino ujjlenyomat-biztonsági rendszernek az áramköre nagyon egyszerű, amely az Arduino-t tartalmazza, amely a projekt egész folyamatát, nyomógombot, hangjelzőt és LCD-t vezérli. Az Arduino ellenőrzi a teljes folyamatokat.
A nyomógomb közvetlenül csatlakozik az Arduino D14 (ENROLL), D15 (DEL), D16 (UP) és D17 (DOWN) érintkezõihez a földhöz viszonyítva. Sárga LED van csatlakoztatva az Arduino D7 digitális érintkezõjénél a testhez képest 1k ellenállást és zöld LED-et ugyanazzal a módszerrel csatlakoztatnak az Arduino D6-hoz. Az ujjlenyomat-modul Rx és Tx-je közvetlenül csatlakozik az Arduino szoftveres soros vagy digitális D2 és D3 csatlakozóihoz. Az 5v-os tápegységet az Arduino kártyáról vett ujjlenyomat-modul táplálásához használják, és a Servo motor is csatlakozik az Arduino D5 PWM csatlakozójához. A 16x2 LCD 4 bites módban van konfigurálva, és RS, EN, D4, D5, D6 és D7 közvetlenül csatlakozik az Arduino D13, D12, D11, D10, D9 és D8 digitális érintkezőihez.
Megjegyzés: itt D14, D15, D16, D17 jelentése A0, A1, A2, A3.
A program magyarázata:
Egy programban az Adafruit Fingerprint Sensor Library-t használtuk az ujjlenyomat-modul Arduino táblával való összekapcsolására. Az alábbiakban ellenőrizheti a teljes kódot, könnyen érthető. Itt elmagyarázzuk az Arduino Program főbb funkcióit.
Az alábbi kódrészlet segítségével az Ujjlenyomatot kell bevinni, és az ujj érvényesítésének megfelelően kell cselekedni. Ha az ujj érvényesül, a kapu nyitva lesz, különben zárva marad.
for (int i = 0; i <5; i ++) {lcd.clear (); lcd.print ("Hely ujj"); késés (2000); int eredmény = getFingerprintIDez (); if (eredmény> = 0) {digitalWrite (openLight, HIGH); digitalWrite (closeLight, LOW); lcd.clear (); lcd.print ("Engedélyezett"); lcd.setCursor (0,1); lcd.print ("Gete megnyílt"); myServo.write (0); késés (5000); myServo.write (180); digitalWrite (closeLight, HIGH); digitalWrite (openLight, LOW); lcd.setCursor (0,1); lcd.print ("Zárt kapu");
Adott void checkKeys () függvény segítségével ellenőrizhetjük, hogy az Enroll vagy a DEL billentyűt lenyomják-e vagy sem, és mi a teendő, ha megnyomjuk. Ha az ENROLL gombot megnyomta, az Enroll () funkció meghívásra kerül, és a DEL gomb megnyomása, majd a törlés () funkció meghívása.
void checkKeys () {if (digitalRead (beiratkozás) == 0) {lcd.clear (); lcd.print ("Kérjük, várjon"); késés (1000); while (digitalRead (beiratkozás) == 0); Beiratkozás (); } else if (digitalRead (del) == 0) {lcd.clear (); lcd.print ("Kérjük, várjon"); késés (1000); törlés (); }}
Az adott függvény a törlendő azonosító megadásához és az uint8_t deleteFingerprint (uint8_t id) függvény hívásához használható , amely törli az ujját a rekordokból.
void delet () {int count = 0; lcd.clear (); lcd.print ("Ujj törlése"); lcd.setCursor (0,1); lcd.print ("Hely:"); míg (1) {lcd.setCursor (9,1); lcd.print (számlálás); if (digitalRead (fel) == 0) {count ++; ha (szám> 25) szám = 0; késés (500); }……………….
Az adott funkció az ujjlenyomat törlésére szolgál a kiválasztott azonosító rekordjából.
uint8_t deleteFingerprint (uint8_t id) {uint8_t p = -1; lcd.clear (); lcd.print ("Kérjük, várjon"); p = finger.deleteModel (id); if (p == FINGERPRINT_OK) {Serial.println ("Törölve!"); lcd.clear (); lcd.print ("Figer törölve"); lcd.setCursor (0,1); lcd.print ("Sikeresen"); késés (1000); } else {Serial.print ("Valami rossz"); lcd.clear (); lcd.print ("Valami rossz"); lcd.setCursor (0,1); lcd.print ("Próbálja újra később"); késés (2000); visszatérő p; }}
A Given Function használatával ujjlenyomatképeket készíthet, átalakítja azokat sablonokká, és a kiválasztott azonosítókkal menti az ujjlenyomat-modul memóriájába.
uint8_t getFingerprintEnroll () {int p = -1; lcd.clear (); lcd.print ("ujj azonosító:"); lcd.print (id); lcd.setCursor (0,1); lcd.print ("Hely ujj"); késés (2000); míg (p! = FINGERPRINT_OK) {p = finger.getImage ();…………………
Így használhatjuk az Arduino-t az ujjlenyomat-olvasó modullal a biztonsági rendszerhez.