Module cảm biến vân tay quang học AS608Các mô-đun cảm biến vân tay, nhưmô-đuntrong hình dưới đây, đã nhận dạng vân tay dễ truy cập hơn và dễ dàng thêm vào các dự án của bạn.Điều này có nghĩa đó là siêu dễ dàng để thực hiện thu thập dấu vân tay, đăng ký, so sánh và tìm kiếm.
Đang xem: Module cảm biến vân tay
Các mô-đun này đi kèm với bộ nhớ FLASH để lưu trữ các dấu vân tay và làm việc với bất kỳ vi điều khiển hoặc hệ thống với TTL nối tiếp.Các mô-đun này có thể được thêm vào hệ thống bảo mật, khóa cửa, hệ thống chấm công và nhiều hơn nữa.
Giá cho cảm biến này rất khác nhau từ $10 đến $50.Chúng tôi khuyên bạn nên kiểm tramô-đun cảm biến vân tay trênMaker Advisorso sánh giá ở các cửa hàng khác nhau.Các mô-đun cảm biến vân tay được giới thiệu trênMaker Advisor (Trình hướng dẫn dành cho nhà sản xuất) nên tương thích với hướng dẫn này.
Thông số kỹ thuật
Dưới đây là thông số kỹ thuật củamô-đun cảm biến vân taymà chúng ta đang sử dụng (bạn nên kiểm tra biểu dữ liệu cảm biến hoặc thông số kỹ thuật được cung cấp bởi nhà cung cấp của bạn – chúng không khác nhiều):
Nguồn cung cấp điện áp: DC 3.6 đến 6.0VNguồn cung hiện tại: Màu đèn nền: màu xanh lụcGiao diện: UARTTỷ lệ xấu: 9600Mức độ an toàn: năm (từ thấp đến cao: 1,2,3,4,5)Tỷ lệ chấp nhận sai (FAR): Tỷ lệ từ chối giả (FRR): Có thể lưu trữ 127 dấu vân tay khác nhau
Pinout cảm biến
Cảm biến có sáu chốt được gắn nhãn trong hình bên dưới.
Mô-đun cảm biến dấu vân tay được sử dụng trong dự án này đi kèm với các dây thực sự mỏng, do đó cần có dây hàn thân thiện với breadboard.Chúng tôi khuyên bạn nên sử dụng các màu khác nhau theo chức năng pin.Trong trường hợp của chúng ta:
DNC – dây màu trắngVCC – dây màu đỏTX – dây màu xanhRX – dây màu xanh lá câyGND – dây màu đen
Bảng sau đây cho thấy cách nối cảm biến với Arduino.
Cảm biến dấu vân tay | Arduino |
VCC | 5V (nó cũng hoạt động với 3.3V) |
TX | RX (chốt số 2, phần mềm nối tiếp) |
RX | TX (chốt kỹ thuật số 3, phần mềm nối tiếp) |
GND | GND |
Cài đặt thư viện cảm biến vân tay Adafruit
Cách dễ nhất để kiểm soát mô-đun cảm biến vân tay với Arduino là sử dụng thư viện Adafruit cho cảm biến này.Làm theo các hướng dẫn tiếp theo để cài đặt thư viện:
Giải nén thư mục .zip và bạn sẽ nhận được thư mục Adafruit-Fingerprint-Sensor-Library-masterĐổi tên thư mục của bạn từAdafruit-Fingerprint-Sensor-Library-masterthànhthư mụcAdafruit_Fingerprint_Sensor_LibraryDi chuyển thư mục vào thư mục cài đặt thư viện Arduino IDE của bạnCuối cùng, mở lại Arduino IDE của bạn
Đăng ký một vân tay mới
Có mô-đun cảm biến vân tay có dây cho Arduino, hãy làm theo các bước tiếp theo để đăng ký một dấu vân tay mới.Đảm bảo bạn đã cài đặt thư viện Cảm biến vân tay Adafruit trước đó.
1.Trong IDE Arduino, đi tớiFile>Examples>AdafruitFingerprintSensorLibrary>Enroll.
2.Tải code lên và mở màn hình nối tiếp với tốc độ truyền 9600.
3.Bạn nên nhập ID cho dấu vân tay.Vì đây là dấu vân tay đầu tiên của bạn, hãy nhập 1 ở góc trên cùng bên trái, sau đó nhấp vàonútSend.
4.Đặt ngón tay lên máy quét và làm theo hướng dẫn trên màn hình nối tiếp.
Bạn sẽ được yêu cầu đặt cùng một ngón tay hai lần trên máy quét.Nếu bạn nhận được “Prints matched!”, Như được hiển thị bên dưới, vân tay của bạn được lưu trữ thành công.Nếu không, hãy lặp lại quy trình, cho đến khi bạn thành công.
Lưu trữ bao nhiêu dấu vân tay bạn muốn bằng phương pháp này.
Tìm một sự trùng khớp (phù hợp)
Bây giờ bạn sẽ có một số dấu vân tay được lưu trên các ID khác nhau.Để tìm một kết quả phù hợp với cảm biến vân tay, hãy làm theo các hướng dẫn tiếp theo.
1.Trong IDE Arduino, hãy đi tớiFile>Examples>AdafruitFingerprintSensorLibrary>Fingerprintvà tải code lên board Arduino của bạn.
2.
Xem thêm: Ăn Nhanh Đói Là Bệnh Gì – Tại Sao Bạn Luôn Cảm Thấy Đói
Mở Serial Monitor (man hình nối tiếp) với tốc độ truyền 9600. Bạn sẽ thấy thông báo sau:
3.Đặt ngón tay để xác định khi quét.
4.Trên màn hình nối tiếp, bạn có thể thấy ID khớp với dấu vân tay.Nó cũng cho thấy độ bảo mật – độ tin cậy càng cao, dấu vân tay tương tự với dấu vân tay được lưu trữ.
Ví dụ dự án – Hiển thị trùng khớp dấu vân tay trên màn hình OLED
Trong ví dụ dự án này, chúng ta sẽ đăng ký hai dấu vân tay từ hai người khác nhau.Sau đó, chúng ta sẽ hiển thị một thông báo lời chào phù hợp với kết quả được tìm thấy, trên màn hình OLED.
Để tìm hiểu thêm về màn hình OLED, hãy đọc:Hướng dẫn hiển thị OLED với Arduino
Các phần được yêu cầu
Đối với ví dụ này, bạn sẽ cần các phần sau:
Sơ đồ
Đây là sơ đồ nối dây bạn nên làm theo để tạo mạch cho dự án này.
Cài đặt thư viện OLED 0,96 inch
Để điều khiển màn hình OLED, bạn cần thư viện “Adafruit_GFX.h” và thư viện “Adafruit_SSD1306.h”.Làm theo các bước tiếp theo để cài đặt các thư viện đó:
CÀI ĐẶT THƯ VIỆN ADAFRUIT_GFXGiải nén thư mục .zip và bạn sẽ nhận thư mụcAdafruit-GFX-Library-masterĐổi tên thư mục của bạn từAdafruit-GFX-Library-masterthànhAdafruit_GFX_Library(bạn thực sự cần ro thay thế những “-” bởi “_”)Di chuyển thư mụcAdafruit_GFX_Libraryvào thư mục thư viện cài đặt Arduino IDE của bạnCuối cùng, mở lại Arduino IDE của bạnCÀI ĐẶT THƯ VIỆN ADAFRUIT_SSD1306Giải nén thư mục .zip và bạn sẽ nhậnAdafruit-GFX-Thư viện-masterthư mụcĐổi tên thư mục của bạn từAdafruit_SSD1306-mastertớiAdafruit_SSD1306Di chuyểnthư mụcAdafruit_SSD1306vào thư mục thư viện cài đặt Arduino IDE của bạnCuối cùng, mở lại Arduino IDE của bạn
Code
Trước khi tải code lên, bạn cần đăng ký các dấu vân tay khác nhau từ những người khác nhau.Đi tới phần “Enroll a New Fingerprint”ở trên, tải lên code đã cho và làm theo hướng dẫn để đăng ký hai dấu vân tay.
Sau đó, sửa đổi code để ID dấu vân tay khớp với tên của những người đã đăng ký – cuộn xuống trang để xem giải thích về code.Cuối cùng, bạn có thể tải lên code được cung cấp.
/********* Rui Santos Complete project details at http://randomnerdtutorials.com *********/#include #include #include #define OLED_RESET 4Adafruit_SSD1306 display(OLED_RESET);#include #include SoftwareSerial mySerial(2, 3);Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);int fingerprintID = 0;String IDname;void setup(){ //Fingerprint sensor module setup Serial.begin(9600); // set the data rate for the sensor serial port finger.begin(57600); if (finger.verifyPassword()) { Serial.println(“Found fingerprint sensor!”); } else { Serial.println(“Did not find fingerprint sensor :(“); while (1) { delay(1); } } //OLED display setup Wire.begin(); display.begin(SSD1306_SWITCHCAPVCC, 0x3C); //displays main screen displayMainScreen();}void loop(){ displayMainScreen(); fingerprintID = getFingerprintIDez(); delay(50); if(fingerprintID == 1 || fingerprintID == 3 || fingerprintID == 4 || fingerprintID == 5){ IDname = “Sara”; displayUserGreeting(IDname); } else if(fingerprintID == 2){ IDname = “Rui”; displayUserGreeting(IDname); }}// returns -1 if failed, otherwise returns ID #int getFingerprintIDez() { uint8_t p = finger.getImage(); if (p != FINGERPRINT_OK) return -1; p = finger.image2Tz(); if (p != FINGERPRINT_OK) return -1; p = finger.fingerFastSearch(); if (p != FINGERPRINT_OK) return -1; // found a match! Serial.print(“Found ID #”); Serial.print(finger.fingerID); Serial.print(” with confidence of “); Serial.println(finger.confidence); return finger.fingerID; }void displayMainScreen(){ display.clearDisplay(); display.setTextSize(1); display.setTextColor(WHITE); display.setCursor(7,5); display.println(“Waiting fingerprint”); display.setTextSize(1); display.setTextColor(WHITE); display.setCursor(52,20); display.println(“…”); display.display(); delay(2000);}void displayUserGreeting(String Name){ display.clearDisplay(); display.setTextColor(WHITE); display.setTextSize(2); display.setCursor(0,0); display.print(“Hello”); display.setCursor(0,15); display.print(Name); display.display(); delay(5000); fingerprintID = 0; }
Nhập thư viện
Code này bắt đầu bằng cách nhập các thư viện cần thiết để viết trong màn hình OLED, và tạo ra một đối tượng Adafruit_SSD1306 được gọi là hiển thị.
#include #include #include #define OLED_RESET 4Adafruit_SSD1306 display(OLED_RESET);Chúng ta cũng cần nhập các thư viện cần thiết cho cảm biến vân tay:Adafruit_Fingerprint.hvàSoftwareSerial.h.
#include #include SoftwareSerial mySerial (2, 3);Dòng sau thiết lập phần mềm nối tiếp trên pin 2 và 3. Pin 2 là RX và Pin 3 là TX.
SoftwareSerial mySerial (2, 3);Sau đó, chúng ta tạo ra mộtđối tượngAdafruit_Fingerprintđược gọi làfingertrên các pin (chốt) nối tiếp mà chúng ta đã thiết lập trước đó.
Adafruit_Fingerprint finger = Adafruit_Fingerprint (& mySerial);Hai dòng tiếp theo tạo biến để giữ ID vân tay và IDname.
int fingerprintID = 0; String IDname;
setup()
Trong setup(), cả cảm biến vân tay và màn hình OLED được khởi tạo.Chúng ta cũng in một thông báo trên màn hình nối tiếp để biết nếu cảm biến vân tay được tìm thấy thành công.
void setup(){ //Fingerprint sensor module setup Serial.begin(9600); // set the data rate for the sensor serial port finger.begin(57600); if (finger.verifyPassword()) { Serial.println(“Found fingerprint sensor!”); } else { Serial.println(“Did not find fingerprint sensor :(“); while (1) { delay(1); } }//OLED display setup Wire.begin(); display.begin(SSD1306_SWITCHCAPVCC, 0x3C); //displays main screen displayMainScreen();}
loop()
Trong loop(), code hiển thị màn hình chính trên màn hình OLED – điều này được thực hiện trong hàmdisplayMainScreen ().Sau đó, code liên tục kiểm tra các dấu vân tay đến.Nếu bộ cảm biến tìm thấy vân tay đã lưu, Arduino sẽ lưu ID tương ứng trongbiếnfingerprintID.
Sau đó, code có câu lệnh if/else để kiểm tra ID tương ứng với dấu vân tay.Bạn nên chỉnh sửa các dòng code sau đây với các ID và tên tương ứng.
if(fingerprintID == 1 || fingerprintID == 3 || fingerprintID == 4 || fingerprintID == 5){ IDname = “Sara“; displayUserGreeting(IDname); } else if(fingerprintID == 2){ IDname = “Rui“;Đôi khi, cảm biến sẽ nhận ra dấu vân tay tốt hơn nếu nó được lưu nhiều lần trong các ID khác nhau.Sau khi xác định tên ID, OLED hiển thị lời chào – điều này được thực hiện trong hàmdisplayUserGreeting (),
Minh họa
Bây giờ, khi một người có vân tay đã lưu đặt ngón tay lên cảm biến, nó sẽ hiển thị một thông điệp chúc mừng.
Sơ lược
Trong bài viết này, chúng tôi đã chỉ cho bạn cách sử dụng mô-đun cảm biến vân tay: đăng ký dấu vân tay và tìm một kết quả phù hợp.Đôi lúc cảm biến khó xác định dấu vân tay nếu bạn không đặt ngón tay của bạn rất giống với khi bạn đã lưu nó – dấu vân tay đặc biệt của phụ nữ (chúng tôi không biết tại sao điều này xảy ra).Chúng tôi đã nhận thấy rằng cảm biến hoạt động tốt hơn nếu bạn đặt ngón tay từ từ trên máy quét.
Xem thêm: Tuyển Dụng, Tìm Việc Làm Tài Xế Tai Tại Bình Dương, Việc Làm Lái Xe Tại Bình Dương
Theo quan điểm của chúng tôi, mô-đun cảm biến vân tay hoạt động khá tốt và đó là một cách hợp lý để thêm nhận dạng sinh trắc học vào các dự án của bạn.Cảm ơn vì đã đọc.