Anleitung zum Arduino-Fingerabdrucksensor
Komponenten und Verbrauchsmaterialien
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Apps und Onlinedienste
|
Über dieses Projekt
Liebe Freunde, willkommen zu einem weiteren Tutorial! Heute bauen wir ein interessantes Arduino-Projekt, das ein Fingerabdrucksensormodul verwendet . Lass uns ohne weitere Verzögerung loslegen!
Ich wollte schon immer ein Fingerabdrucksensor-Modul ausprobieren, um mehr über seine Technologie zu erfahren und es in einigen meiner Projekte zu verwenden, um ihnen biometrische Sicherheit zu verleihen.
Um eine einfache Verwendung des Sensors zu demonstrieren, wurde dieses einfache Projekt erstellt. Ich habe den Sensor an einen Arduino Nano angeschlossen und verwende auch das kleine, aber sehr schnelle 1,44 Zoll Farb-TFT-Display. Das Projekt verlangt zum Entsperren einen gültigen Fingerabdruck. Wenn ich meinen Finger auf den Sensor lege, erkennt er meinen Finger, färbt das Fingerabdrucksymbol grün und begrüßt mich. Legt meine Freundin ihren Finger auf den Sensor, erkennt er sie auch und zeigt eine Willkommensnachricht mit ihrem Namen an. Wenn ich einen weiteren Finger auf den Sensor lege, entsperrt das Projekt den Bildschirm nicht. Es funktioniert gut und Sie werden sehen, Sie können dieses Projekt in weniger als 10 Minuten erstellen ! Mal sehen, wie man das erreicht!
Schritt 1:Holen Sie sich alle Teile
Die Teile, die zum Bau dieses Projekts benötigt werden, sind diese:
- Ein Arduino Nano ▶ http://educ8s.tv/part/ArduinoNano
- Das Fingerabdrucksensormodul ▶ http://educ8s.tv/part/FingerprintSensor
- Ein 1,44-Zoll-TFT-Farbdisplay ▶ http://bit.ly/144TFTLCD
- Ein kleines Steckbrett ▶ http://educ8s.tv/part/SmallBreadboard
- Einige Kabel ▶ http://bit.ly/Wires3InOne
- Powerbank ▶ http://educ8s.tv/part/Powerbank
Die Kosten für dieses Projekt betragen rund 30 US-Dollar. Wenn man die Technologie berücksichtigt, die dieses Projekt verwendet, sind diese Kosten sehr gering. Vor 10 Jahren kosteten solche Projekte noch einige hundert Dollar!
Schritt 2:Das 1,44-Zoll-LCD-Display
Diese Anzeige ist sehr schnell. Es verwendet den Treiber ILI9163C. Es hat eine Auflösung von 128x128 Pixel und kann bis zu 260.000 Farben darstellen. Es ist sehr einfach mit Arduino zu verwenden und kostet etwa 4 $.
Das Display verwendet das SPI-Protokoll, um mit dem Arduino-Board zu kommunizieren. Wir müssen nur 8 Drähte anschließen, damit es funktioniert. Fangen wir an.
Verbindung mit Arduino
Vcc ▶ 5V-Pin des Arduino
GND ▶ Arduino GND-Pin
CS ▶ Digitaler Pin 10
RST ▶ Digitaler Pin 9
A0 ▶ Digitaler Pin 8
SDA ▶ Digitaler Pin 11
SCK ▶ Digitaler Pin 13
LED ▶ 3.3V Pin des Arduino
Wie Sie sehen können, ist dieses Display mit Arduino sehr einfach zu bedienen. Es ist sehr billig, sehr schnell, hat eine geringe Größe und verbraucht nur etwa 30 mA Strom. Ich denke, es ist ein schönes Display für Projekte, die kein großes Display erfordern, aber Farbe wäre schön.
Du bekommst es hier ▶ http://bit.ly/144TFTLCD
Schritt 3:Das Fingerabdrucksensormodul
Das Fingerabdrucksensormodul ist klein und schön gebaut und verwendet einige fortschrittliche DSP-Chips (Digital Signal Processing).
Der Sensor funktioniert so. Es handelt sich um einen optischen Sensor, dh er analysiert das Foto eines Fingers. Es rendert dann das Bild, führt einige Berechnungen durch, findet die Merkmale dieses Fingers und sucht dann in seinem Speicher nach einem Fingerabdruck mit den gleichen Merkmalen. All das kann er in weniger als einer Sekunde erreichen!
Dieses Modul kann bis zu 1000 Fingerabdrücke in seinem Speicher speichern und seine falsche Akzeptanzrate beträgt weniger als 0,001%, was es ziemlich sicher macht! Toll! All das bekommen wir in einem sehr einfach zu bedienenden Modul und zu sehr geringen Kosten! Es ist eine wirklich beeindruckende Technologie!
Du bekommst es hier ▶ http://educ8s.tv/part/FingerprintSensor
Schritt 4:Anschließen der Teile
Lassen Sie uns nun alle Teile zusammenfügen.
Zuerst müssen wir das Fingerabdrucksensormodul anschließen. Das Kabel stecken wir auf der Rückseite des Moduls ein. Bitte überprüfen Sie das angehängte Foto.
Fingerabdrucksensor-Verbindung
Schwarzer Draht ▶ Arduino GND
Rotes Kabel ▶ Arduino 5V
Grünes Kabel ▶ Digitaler Pin 2
Weißer Draht ▶ Digitaler Pin 3
Wir sind jetzt bereit, das Display mit Arduino zu verbinden.
Display-Verbindung
Vcc ▶ 5V-Pin des Arduino
GND ▶ Arduino GND-Pin
CS ▶ Digitaler Pin 10
RST ▶ Digitaler Pin 9
A0 ▶ Digitaler Pin 8
SDA ▶ Digitaler Pin 11
SCK ▶ Digitaler Pin 13
LED ▶ 3.3V Pin des Arduino
Das ist es! Wir sind bereit, das Projekt zu starten. Wie Sie sehen, funktioniert es gut! Einfach, nicht wahr?
Schritt 5:Der Code des Projekts
Sehen wir uns nun die Softwareseite des Projekts an und wie wir unsere Fingerabdrücke in den eingebetteten Speicher des Moduls einschreiben, um sie zu erkennen.
Wir müssen einige Bibliotheken herunterladen. Als erstes benötigen wir für die Darstellung die Adafruit Fingerprint Library, die Adafruit GFX Library und die Sumotoy’s Library.
https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library
https://github.com/adafruit/Adafruit-GFX-Library
https://github.com/sumotoy/TFT_ILI9163C
Zuerst müssen wir das Enroll-Beispiel auf unser Arduino-Board hochladen. Wir gehen zu Datei -> Beispiele -> Adafruit Fingerprint Sensor Library -> Enroll. Mit diesem Beispielprogramm können wir Fingerabdrücke im FLASH-Speicher des Moduls speichern. Wir laden die Skizze hoch und öffnen den Serial Monitor. Das Programm fordert uns auf, die ID für die Registrierung einzugeben. Dann legen wir den Finger nach Anweisung zweimal auf den Sensor und der Fingerabdruck wird gespeichert! Auf diese Weise können Sie bis zu 1000 Fingerabdrücke speichern!
Laden wir nun den Code, den ich entwickelt habe. Dank der Bibliotheken von Adafruit ist der Code des Projekts sehr einfach. Sehen wir uns einen kleinen Teil des Codes an.
void loop() { fingerprintID =getFingerprintID(); // Wir scannen den Fingerabdruck hier delay (50); if(fingerprintID ==1) //Wir haben einen gültigen Fingerabdruck mit der ID 1 gefunden { display.drawBitmap(30,35,icon,60,60,GREEN); Verzögerung (2000); displayUnlockedScreen(); displayIoanna(); Verzögerung (5000); display.fillScreen (SCHWARZ); displayLockScreen(); } if(fingerprintID ==2) //Wir haben einen gültigen Fingerabdruck mit der ID 2 gefunden { display.drawBitmap(30,35,icon,60,60,GREEN); Verzögerung (2000); displayUnlockedScreen(); displayNick(); Verzögerung (5000); display.fillScreen (SCHWARZ); displayLockScreen(); }}
Wir starten den Sensor und das Display und prüfen alle 50ms, ob ein Finger auf dem Sensor liegt. Wenn sich ein Finger auf dem Sensor befindet, bitten wir das Modul zu suchen, ob dieser Finger in seinem Speicher registriert ist. Wenn es den Fingerabdruck im Speicher findet, gibt es die ID dieses Fingerabdrucks zurück. Als nächstes zeigt es eine Willkommensnachricht an und sperrt den Bildschirm nach einigen Sekunden wieder.
Den Code des Projekts finden Sie wie immer in diesem Tutorial angehängt. Da ich den Code von Zeit zu Zeit aktualisiere, besuche bitte die neueste Version des Codes auf der Website des Projekts:http://educ8s.tv/arduino-fingerprint-sensor-module...
Fingerabdruck.ino
Schritt 6:Abschließende Gedanken
Ich bin wirklich beeindruckt von der Leistung und der Benutzerfreundlichkeit dieses Fingerabdrucksensormoduls. Mit sehr geringen Kosten können wir unseren Projekten biometrische Sicherheitsfunktionen hinzufügen. Das ist erstaunlich. Projekte wie dieses wären für einen Hersteller noch vor wenigen Jahren unmöglich gewesen. Das ist die Schönheit und Leistungsfähigkeit von Open-Source-Hardware und -Software. Nach diesem ersten Test werde ich das Fingerabdrucksensormodul zusammen mit einem Elektroschloss verwenden, um zu sehen, ob wir diesen Sensor in einer realen Situation verwenden können, also bleiben Sie dran. Bitte teilen Sie mir Ihre Meinung zu diesem Sensor im Kommentarbereich unten mit. Danke!
Code
- Code-Snippet Nr. 1
Code-Snippet Nr. 1Nur-Text
void loop () { FingerprintID =getFingerprintID (); // Wir scannen den Fingerabdruck hier delay (50); if(fingerprintID ==1) //Wir haben einen gültigen Fingerabdruck mit der ID 1 gefunden { display.drawBitmap(30,35,icon,60,60,GREEN); Verzögerung (2000); displayUnlockedScreen(); displayIoanna(); Verzögerung (5000); display.fillScreen (SCHWARZ); displayLockScreen(); } if(fingerprintID ==2) //Wir haben einen gültigen Fingerabdruck mit der ID 2 gefunden { display.drawBitmap(30,35,icon,60,60,GREEN); Verzögerung (2000); displayUnlockedScreen(); displayNick(); Verzögerung (5000); display.fillScreen (SCHWARZ); displayLockScreen(); }}
Github
https://github.com/sumotoy/TFT_ILI9163Chttps://github.com/sumotoy/TFT_ILI9163CGithub
https://github.com/adafruit/Adafruit-Fingerabdruck-Sensor-Bibliothekhttps://github.com/adafruit/Adafruit-Fingerabdruck-Sensor-BibliothekGithub
https://github.com/adafruit/Adafruit-GFX-Bibliothekhttps://github.com/adafruit/Adafruit-GFX-BibliothekHerstellungsprozess
- In-Display-Fingerabdrucksensor
- Raspberry Pi-Lichtsensor:Eine einfache LDR-Anleitung
- Anleitung zum Arduino-RFID-Schloss
- CO2-Überwachung mit K30-Sensor
- Wie groß bist du?
- Kapazitiver Fingerabdrucksensor mit einem Arduino oder ESP8266
- Arduino Cloud Sensor Tower
- Bewegungssensor-Wasserpistole
- Mini-Radar mit Arduino
- Arduino-Tutorial 01:Erste Schritte