Tutorial Arduino-vingerafdruksensor
Componenten en benodigdheden
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 1 | ||||
| × | 1 |
Apps en online services
![]() |
|
Over dit project


Beste vrienden welkom bij een nieuwe tutorial! Vandaag gaan we een interessant Arduino-project bouwen dat gebruik maakt van een vingerafdruksensormodule . Laten we zonder verder uitstel beginnen!
Ik heb altijd al een vingerafdruksensormodule willen proberen om meer te weten te komen over de technologie ervan en deze in sommige van mijn projecten te gebruiken om er biometrische beveiliging aan toe te voegen.
Om een eenvoudig gebruik van de sensor te demonstreren, is dit eenvoudige project gebouwd. Ik heb de sensor aangesloten op een Arduino Nano, en ik gebruik ook het kleine maar zeer snelle 1,44 inch kleuren TFT-scherm. Het project vraagt om een geldige vingerafdruk om te ontgrendelen. Als ik mijn vinger op de sensor plaats, herkent deze mijn vinger, wordt het vingerafdrukpictogram groen en wordt ik welkom geheten. Als mijn vriendin haar vinger op de sensor legt, herkent deze haar ook en toont ze een welkomstbericht met haar naam. Als ik nog een vinger op de sensor leg, ontgrendelt het project het scherm niet. Het werkt prima en je zult zien, je kunt dit project in minder dan 10 minuten bouwen ! Laten we eens kijken hoe we dat kunnen bereiken!
Stap 1:Verkrijg alle onderdelen

De onderdelen die nodig zijn om dit project te bouwen zijn deze:
- Een Arduino Nano ▶ http://educ8s.tv/part/ArduinoNano
- De vingerafdruksensormodule ▶ http://educ8s.tv/part/FingerprintSensor
- Een 1,44-inch TFT-kleurenscherm ▶ http://bit.ly/144TFTLCD
- Een klein breadboard ▶ http://educ8s.tv/part/SmallBreadboard
- Sommige draden ▶ http://bit.ly/Wires3InOne
- Powerbank ▶ http://educ8s.tv/part/Powerbank
De kosten van dit project bedragen ongeveer $ 30. Als je rekening houdt met de technologie die dit project gebruikt, zijn deze kosten erg laag. 10 jaar geleden zouden projecten als deze een paar honderd dollar kosten!
Stap 2:Het 1,44-inch LCD-scherm


Dit scherm is erg snel. Het gebruikt de ILI9163C-driver. Het heeft een resolutie van 128x128 pixels en kan tot 260.000 kleuren weergeven. Het is heel gemakkelijk te gebruiken met Arduino en het kost ongeveer $ 4,-.
Het display gebruikt het SPI-protocol om te communiceren met het Arduino-bord. We hoeven maar 8 draden aan te sluiten om het te laten werken. Laten we beginnen.
Verbinding met Arduino
Vcc ▶ 5V pin van de Arduino
GND ▶ Arduino GND-pin
CS ▶ Digitale pin 10
RST ▶ Digitale pin 9
A0 ▶ Digitale pin 8
SDA ▶ Digitale pin 11
SCK ▶ Digitale pin 13
LED ▶ 3.3V pin van de Arduino
Zoals je kunt zien, is dit display heel gemakkelijk te gebruiken met Arduino. Het is erg goedkoop, erg snel, het is klein van formaat en het trekt slechts ongeveer 30 mA stroom. Ik vind het een mooi scherm om te gebruiken in projecten die geen groot scherm nodig hebben, maar kleur zou leuk zijn.
Je kunt het hier downloaden ▶ http://bit.ly/144TFTLCD
Stap 3:De vingerafdruksensormodule



De vingerafdruksensormodule is klein en mooi gebouwd en maakt gebruik van enkele geavanceerde DSP-chips (Digital Signal Processing).
De sensor werkt als volgt. Het is een optische sensor, wat betekent dat hij de foto van een vinger analyseert. Vervolgens rendert het de afbeelding, maakt een aantal berekeningen, vindt de kenmerken van die vinger en zoekt vervolgens in zijn geheugen naar een vingerafdruk met dezelfde kenmerken. Het kan dat allemaal in minder dan een seconde bereiken!
Deze module kan tot 1000 vingerafdrukken in zijn geheugen opslaan en de valse acceptatiegraad is minder dan 0,001%, wat hem behoorlijk veilig maakt! Geweldig! We krijgen dat allemaal in een zeer gebruiksvriendelijke module en tegen zeer lage kosten! Het is echt een indrukwekkende technologie!
Je kunt het hier downloaden ▶ http://educ8s.tv/part/FingerprintSensor
Stap 4:De onderdelen aansluiten



Laten we nu alle onderdelen samenvoegen.
Eerst moeten we de vingerafdruksensormodule aansluiten. We pluggen de kabel in aan de achterkant van de module. Controleer de bijgevoegde foto.
Vingerafdruksensorverbinding
Zwarte draad ▶ Arduino GND
Rode draad ▶ Arduino 5V
Groene draad ▶ Digitale pin 2
Witte draad ▶ Digitale pin 3
We zijn nu klaar om het display aan te sluiten op Arduino.
Verbinding weergeven
Vcc ▶ 5V pin van de Arduino
GND ▶ Arduino GND-pin
CS ▶ Digitale pin 10
RST ▶ Digitale pin 9
A0 ▶ Digitale pin 8
SDA ▶ Digitale pin 11
SCK ▶ Digitale pin 13
LED ▶ 3.3V pin van de Arduino
Dat is het! We zijn klaar om het project kracht bij te zetten. Zoals je ziet werkt het prima! Makkelijk toch?
Stap 5:De code van het project



Laten we nu kijken naar de softwarekant van het project en hoe we onze vingerafdrukken kunnen registreren in het ingesloten geheugen van de module om ze te herkennen.
We moeten enkele bibliotheken downloaden. Allereerst hebben we de Adafruit Fingerprint-bibliotheek, de Adafruit GFX-bibliotheek en de Sumotoy's-bibliotheek nodig voor de weergave.
https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library
https://github.com/adafruit/Adafruit-GFX-Library
https://github.com/sumotoy/TFT_ILI9163C
Allereerst moeten we het inschrijfvoorbeeld uploaden naar ons Arduino-bord. We gaan naar Bestand -> Voorbeelden -> Adafruit Vingerafdruksensorbibliotheek -> Inschrijven. Met dit voorbeeldprogramma kunnen we vingerafdrukken opslaan in het FLASH-geheugen van de module. We uploaden de schets en we openen de Seriële Monitor. Het programma vraagt ons om de ID in te voeren om in te schrijven. Vervolgens plaatsen we de vinger twee keer op de sensor zoals ons is opgedragen en wordt de vingerafdruk opgeslagen! Zo kun je maar liefst 1000 vingerafdrukken opslaan!
Laten we nu de code laden die ik heb ontwikkeld. Dankzij de bibliotheken van Adafruit is de code van het project heel eenvoudig. Laten we een klein deel van de code bekijken.
void loop() { fingerprintID =getFingerprintID(); //We scannen de vingerafdruk hier vertraging (50); if (fingerprintID ==1) // We hebben een geldige vingerafdruk gevonden met de id 1 { display.drawBitmap (30,35,icon,60,60,GREEN); vertraging (2000); displayUnlockedScreen(); displayIoanna(); vertraging (5000); display.fillScreen(ZWART); displayLockScreen(); } if(fingerprintID ==2) // We hebben een geldige vingerafdruk gevonden met de id 2 { display.drawBitmap (30,35,icon,60,60,GREEN); vertraging (2000); displayUnlockedScreen(); displayNick(); vertraging (5000); display.fillScreen(ZWART); displayLockScreen(); }}
We starten de sensor en het display en controleren elke 50 ms of er een vinger op de sensor zit. Als er een vinger op de sensor zit, vragen we de module om te zoeken of die vinger in het geheugen is geregistreerd. Als het de vingerafdruk in het geheugen vindt, retourneert het de ID van die vingerafdrukken. Vervolgens wordt een welkomstbericht weergegeven en wordt het scherm na een paar seconden weer vergrendeld.
Zoals altijd kun je de code van het project in deze tutorial vinden. Aangezien ik de code van tijd tot tijd update, ga je voor de nieuwste versie van de code naar de website van het project:http://educ8s.tv/arduino-fingerprint-sensor-module...
Fingerprint.ino
Stap 6:Laatste gedachten

Ik ben echt onder de indruk van de prestaties en het gebruiksgemak van deze vingerafdruksensormodule. Tegen zeer lage kosten kunnen we biometrische beveiligingsfuncties aan onze projecten toevoegen. Dat is geweldig. Projecten als deze zouden zelfs een paar jaar geleden voor een maker onmogelijk zijn geweest. Dat is het mooie en de kracht van open source hardware en software. Na deze eerste test ga ik de vingerafdruksensormodule samen met een elektrisch slot gebruiken om te zien of we deze sensor in een echte situatie kunnen gebruiken, dus houd ons in de gaten. Laat me je mening over deze sensor weten in de comments hieronder. Bedankt!
Code
- Codefragment #1
Codefragment #1Platte tekst
void loop() { fingerprintID =getFingerprintID(); //We scannen de vingerafdruk hier vertraging (50); if (fingerprintID ==1) // We hebben een geldige vingerafdruk gevonden met de id 1 { display.drawBitmap (30,35,icon,60,60,GREEN); vertraging (2000); displayUnlockedScreen(); displayIoanna(); vertraging (5000); display.fillScreen(ZWART); displayLockScreen(); } if(fingerprintID ==2) // We hebben een geldige vingerafdruk gevonden met de id 2 { display.drawBitmap (30,35,icon,60,60,GREEN); vertraging (2000); displayUnlockedScreen(); displayNick(); vertraging (5000); display.fillScreen(ZWART); displayLockScreen(); }}
Github
https://github.com/sumotoy/TFT_ILI9163Chttps://github.com/sumotoy/TFT_ILI9163CGithub
https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Libraryhttps://github.com/adafruit/Adafruit-Fingerprint-Sensor-LibraryGithub
https://github.com/adafruit/Adafruit-GFX-Libraryhttps://github.com/adafruit/Adafruit-GFX-LibraryProductieproces
- In-Display-vingerafdruksensor
- Raspberry Pi-lichtsensor:een eenvoudige LDR-zelfstudie
- Arduino RFID Lock-zelfstudie
- CO2-monitoring met K30-sensor
- Hoe lang ben je?
- Capacitieve vingerafdruksensor met een Arduino of ESP8266
- Arduino Cloud Sensor Tower
- Bewegingssensor-waterpistool
- Mini-radar met Arduino
- Touch Controlled Light met Arduino
- Arduino-zelfstudie 01:Aan de slag