Giới thiệu cảm biến vân tay SFM-V1.7
Cảm biến vân tay SFM-V1.7 dùng nhận dạng vân tay sử dụng giao tiếp UART TTL hoặc USB 1.1 để giao tiếp với Vi điều khiển hoặc kết nối trực tiếp với máy tính (thông qua mạch chuyển USB-UART hoặc giao tiếp USB 1.1). Cảm biến nhận dạng vân tay được tích hợp nhân xử lý nhận dạng vân tay phía trong, tự động gán vân tay với 1 chuỗi data và truyền qua giao tiếp UART ra ngoài nên hoàn toàn không cần các thao tác xử lý hình ảnh, đơn giản chỉ là phát lệnh đọc/ghi và so sánh chuỗi UART nên rất dễ sử dụng và lập trình.
Cảm biến nhận dạng vân tay có khả năng lưu nhiều vân tay cho 1 ID (1 người), thích hợp cho các ứng dụng bảo mật, khóa cửa, sinh trắc học,… Khu vực ứng dụng: Mô-đun vân tay được sử dụng rộng rãi, phù hợp với tất cả các hệ thống nhận dạng vân tay từ cao cấp đến thấp cấp. Cảm biến nhận dạng vân tay R307 bao gồm cảm biến vân tay quang, bộ xử lý DSP tốc độ cao, thuật toán so sánh vân tay hiệu suất cao, chip FLASH dung lượng lớn. Nó có hiệu suất ổn định và cấu trúc đơn giản. Đầu vào vân tay, xử lý hình ảnh, so sánh vân tay, tìm kiếm và lưu trữ mẫu. 


Thông số kỹ thuật cảm biến vân tay SFM-V1.7
- Điện áp nguồn: DC 4.2 ~ 6.0V
- Chip sử dụng: SFM-V1.7
- Dòng hoạt động: 50mA
- Dòng điện cực đại: 80mA
- Độ phân giải: 300000 pixel
- Tốc độ quét: < 0.2 s
- Tốc độ xác minh: < 0.3 s
- Khả năng tĩnh điện : 15KV
- Chống mài mòn : 1.000.000 lần
- Thời gian nhập hình ảnh dấu vân tay: <0,3 giây
- Diện tích nhập vân tay: 14×18 mm
- Phương pháp so sánh :
- Phương pháp so sánh (1: 1)
- Chế độ tìm kiếm (1: N)
- tập tin chữ ký: 256-byte
- tệp mẫu: 512 byte
- Dung lượng lưu trữ: 1000 vân tay
- Mức độ bảo mật: 5 (từ thấp đến cao: 1,2,3,4,5)
- Tỷ lệ chấp nhận sai (FAR): <0,001%
- Tốc độ từ chối (FRR): <1,0%
- Thời gian tìm kiếm: <1,0 giây
- Giao diện máy chủ: Tốc độ truyền thông UART USB1.1 (UART): (9600 N) bps trong đó N = 1 12 (giá trị mặc định N = 6, tức là 57600bps)
- Nhiệt độ làm việc: -20 ° C- + 40 ° C
- Độ ẩm tương đối làm việc: 10% RH-85% RH (không ngưng tụ)
- Nhiệt độ lưu trữ: -40 ° C- + 85 ° C
- Độ ẩm tương đối lưu trữ: <85% H (không ngưng tụ hơi nước)
Chức năng chân:

- 1.GND: Chân cấp nguồn GND (Mass / 0VDC)
- 2.Rx: Chân giao tiếp UART TTL RX
- 3.Tx: Chân giao tiếp UART TTL TX
- 4. V+: chân cấp nguồn chính VCC 3.3VDC cho cảm biến hoạt động.
- 5. IRQ: Chân cho phép mức cao.
- 6.TCH: Chân Output của cảm biến chạm Touch, khi chạm tay vào cảm biến chân này sẽ xuất ra mức cao High, để sử dụng tính năng này cần cấp nguồn 3.3VDC cho chân Va
Để giao tiếp UART ta cần sử dụng các chân:
- V+: Cấp nguồn 3.3VDC
- Tx: nối với RX của Vi điều kiển (mức TTL từ 3.3~5VDC)
- Rx: nối với TX của Vi điều kiển (mức TTL từ 3.3~5VDC)
- GND: Cấp nguồn GND (Mass chung)
Để giao tiếp USB ta cần sử dụng các chân:

- V+: Cấp nguồn 3.3VDC
- U+: Chân tín hiệu USB D+
- U-: Chân tín hiệu USB D-
- GND: Cấp nguồn GND (Mass chung).
Một số tính năng
- Nhỏ gọn: cảm biến nhỏ gọn, không bên ngoài chip DSP bảng mạch thuật toán có gắn, dễ cài đặt, ít thất bại.
- Tiêu thụ điện năng cực thấp: Mức tiêu thụ điện năng chung của sản phẩm cực kỳ thấp, phù hợp với yêu cầu tiêu thụ điện năng thấp.
- Khả năng chống tĩnh điện mạnh: Nó có khả năng chống tĩnh điện mạnh và chỉ số chống tĩnh điện đạt trên 15KV.
- Phát triển ứng dụng rất đơn giản: các nhà phát triển có thể kiểm soát theo hướng dẫn được cung cấp bởi phát triển sản phẩm ứng dụng dấu vân tay của riêng mình, mà không cần phải có kiến thức chuyên môn nhận dạng vân tay.
- Mức an toàn có thể điều chỉnh: phù hợp với các ứng dụng khác nhau, mức độ an toàn có thể được điều chỉnh bởi người dùng.
- Dung lượng lưu trữ cảm biến vân tay SFM-V1.7 là 1000 vân tay
- Mô-đun vân tay SFM-V1.7 có cùng lúc với RS232 và USB2.0, giao diện kép giao tiếp với các thiết bị bên ngoài, giao diện USB2.0 có thể được kết nối với máy tính, giao diện RS232 TTL, tốc độ truyền mặc định là 57600, có thể thay đổi.
Một số ứng dụng
- Khóa vân tay, két sắt, hộp súng, tài chính và các khu vực an ninh khác;
- Các lĩnh vực nhận dạng như hệ thống kiểm soát truy cập, IPC, máy POS , đào tạo lái xe và tham dự;
- Các khu vực quản lý như câu lạc bộ tư nhân, phần mềm quản lý và cấp phép.
Chương trình
Nguyên lý
#include <Adafruit_Fingerprint.h>
SoftwareSerial mySerial(2, 3); // TX/RX
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
uint8_t id;
void setup()
{
Serial.begin(9600);
while (!Serial); // For Yun/Leo/Micro/Zero/...
delay(100);
Serial.println("\n\nAdafruit Fingerprint sensor enrollment");
// 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); }
}
}
uint8_t readnumber(void) {
uint8_t num = 0;
while (num == 0) {
while (! Serial.available());
num = Serial.parseInt();
}
return num;
}
void loop() // run over and over again
{
Serial.println("Ready to enroll a fingerprint!");
Serial.println("Please type in the ID # (from 1 to 127) you want to save this finger as...");
id = readnumber();
if (id == 0) {// ID #0 not allowed, try again!
return;
}
Serial.print("Enrolling ID #");
Serial.println(id);
while (! getFingerprintEnroll() );
}
uint8_t getFingerprintEnroll() {
int p = -1;
Serial.print("Waiting for valid finger to enroll as #"); Serial.println(id);
while (p != FINGERPRINT_OK) {
p = finger.getImage();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image taken");
break;
case FINGERPRINT_NOFINGER:
break;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
break;
case FINGERPRINT_IMAGEFAIL:
Serial.println("Imaging error");
break;
default:
Serial.println("Unknown error");
break;
}
}
// OK success!
p = finger.image2Tz(1);
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image converted");
break;
case FINGERPRINT_IMAGEMESS:
Serial.println("Image too messy");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
return p;
case FINGERPRINT_FEATUREFAIL:
Serial.println("Could not find fingerprint features");
return p;
case FINGERPRINT_INVALIDIMAGE:
Serial.println("Could not find fingerprint features");
return p;
default:
Serial.println("Unknown error");
return p;
}
Serial.println("Remove finger");
delay(2000);
p = 0;
while (p != FINGERPRINT_NOFINGER) {
p = finger.getImage();
}
Serial.print("ID "); Serial.println(id);
p = -1;
Serial.println("Place same finger again");
while (p != FINGERPRINT_OK) {
p = finger.getImage();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image taken");
break;
case FINGERPRINT_NOFINGER:
break;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
break;
case FINGERPRINT_IMAGEFAIL:
Serial.println("Imaging error");
break;
default:
Serial.println("Unknown error");
break;
}
}
// OK success!
p = finger.image2Tz(2);
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image converted");
break;
case FINGERPRINT_IMAGEMESS:
Serial.println("Image too messy");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
return p;
case FINGERPRINT_FEATUREFAIL:
Serial.println("Could not find fingerprint features");
return p;
case FINGERPRINT_INVALIDIMAGE:
Serial.println("Could not find fingerprint features");
return p;
default:
Serial.println("Unknown error");
return p;
}
// OK converted!
Serial.print("Creating model for #"); Serial.println(id);
p = finger.createModel();
if (p == FINGERPRINT_OK) {
Serial.println("Prints matched!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Communication error");
return p;
} else if (p == FINGERPRINT_ENROLLMISMATCH) {
Serial.println("Fingerprints did not match");
return p;
} else {
Serial.println("Unknown error");
return p;
}
Serial.print("ID "); Serial.println(id);
p = finger.storeModel(id);
if (p == FINGERPRINT_OK) {
Serial.println("Stored!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Communication error");
return p;
} else if (p == FINGERPRINT_BADLOCATION) {
Serial.println("Could not store in that location");
return p;
} else if (p == FINGERPRINT_FLASHERR) {
Serial.println("Error writing to flash");
return p;
} else {
Serial.println("Unknown error");
return p;
}
}
Chương trình kiểm tra
#include <Adafruit_Fingerprint.h>
const int led_pin_accept = 8;
const int led_pin_deny = 9;
volatile int finger_status = -1;
SoftwareSerial mySerial(2, 3); // TX/RX on fingerprint sensor
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
void setup()
{
Serial.begin(9600);
pinMode(led_pin_accept,OUTPUT);
pinMode(led_pin_deny,OUTPUT);
while (!Serial); // For Yun/Leo/Micro/Zero/...
delay(100);
Serial.println("\n\nAdafruit finger detect test");
// 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); }
}
finger.getTemplateCount();
Serial.print("Sensor contains "); Serial.print(finger.templateCount); Serial.println(" templates");
Serial.println("Waiting for valid finger...");
}
void loop() // run over and over again
{
finger_status = getFingerprintIDez();
if (finger_status!=-1 and finger_status!=-2){
digitalWrite(led_pin_accept,HIGH);
delay(1000);
} else{
if (finger_status==-2){
for (int ii=0;ii<5;ii++){
digitalWrite(led_pin_deny,HIGH);
delay(50);
digitalWrite(led_pin_deny,LOW);
delay(50);
}
}
digitalWrite(led_pin_accept,LOW);
}
delay(50); //don't ned to run this at full speed.
}
// returns -1 if failed, otherwise returns ID #
int getFingerprintIDez() {
uint8_t p = finger.getImage();
if (p!=2){
Serial.println(p);
}
if (p != FINGERPRINT_OK) return -1;
p = finger.image2Tz();
if (p!=2){
Serial.println(p);
}
if (p != FINGERPRINT_OK) return -1;
p = finger.fingerFastSearch();
if (p != FINGERPRINT_OK) return -2;
// found a match!
Serial.print("Found ID #"); Serial.print(finger.fingerID);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
return finger.fingerID;
}
Liên hệ làm mạch
- Phone: 0967.551.477
- Zalo: 0967.551.477
- Email: dientunhattung@gmail.com
- Chi tiết : Nhận làm mạch và hướng dẫn đồ án sinh viên
Tham khảo chương trình mẫu và thông tin linh kiện chi tiết tại:

Điện trở 3R9 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
MODULE CẢM BIẾN TCRT5000, DÒ LINE TRẮNG ĐEN
CẢM BIẾN LM35, NHIỆT ĐỘ MÔI TRƯỜNG (LOẠI TỐT)
ĐỘNG CƠ SERVO SG92R NHỰA, ĐỘNG CƠ GÓC 0 - 180 ĐỘ
Màn hình Oled 0.96in I2C xanh dương , Oled 128x64 hiển thị điểm ảnh
Bộ chuyển đổi Pt100 4-20mA -50-150ºC, Nhiệt độ -50-150 độ C - Loại thường
Dây bus 4pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
LED 7ĐOẠN 1SỐ ANODE 0.56IN ĐỎ, LED 7 SEG 12.5x19x8MM
TRANSISTOR NPN 2N5551 DIP, HOẠT ĐỘNG 160V VÀ 300mA
CẢM BIẾN SHT30, MODULE ĐO NHIỆT ĐỘ VÀ ĐỘ ẨM
Arduino Uno R3 chip dán SMD cáp Type B, Vi điều khiển họ Arduino ( không kèm Cáp)
ĐỘNG CƠ GIẢM TỐC V1 1 PHẦN SẮT, ĐỘNG CƠ TRỤC SẮT
Điện trở 8R2 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
CẢM BIẾN DS18b20, NHIỆT ĐỘ MÔI TRƯỜNG - LOẠI TỐT
ANTEN 433Mhz 8dBi KIM TRONG 16.5CM, ANTEN LORA 433MHz
Hàng rào đực đơn thẳng 1*40P 17mm 2.54mm, Jump header đơn 40 pin
Điện trở 220R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Màn hình LCD1602 I2C Xanh lá, Màn hình hiển thị Text
ANTEN 433Mhz 7dBi KIM TRONG 17.5CM, ANTEN LORA RF
Dây bus 5pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Bộ khung xe robot 4 bánh 2 tầng, Khung xe mô hình 4 bánh
Module Lora SX1278 433Mhz AS32, Module thu phát không dây
Điện trở 18R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
IC SỐ SN74HC238 3 SANG 8, IC CỔNG LOGIC MỞ RỘNG DIP
TRANSISTOR NPN 2N3904 DIP, HOẠT ĐỘNG 60V VÀ 200mA
Điện trở 2R7 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
CẦU DIODE KBL608 DIP, CHỈNH LƯU TOÀN KỲ 6A - 800V
Bộ thanh trượt tròn T8 250mm Trục ngang, Thanh trượt cố định đai ốc vitme
QUANG TRỞ LỚN CDS 12MM 12528, CẢM BIẾN ÁNH SÁNG
Dây bus 2pin 40cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
GÁ ĐỠ ĐỘNG CƠ DC GA25, KHUNG GÁ ĐỘNG CƠ GIẢM TỐC
MODULE ĐỘ ẨM ĐẤT, CẢM BIẾN ĐỘ ẨM
Hồng Ngoại E18-D80NK, CẢM BIẾN VẬT CẢN 5V
Kìm cắt linh kiện 90mm có khóa, Kìm cắt dây điện
Dây bus 4pin 40cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Điện trở 1R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
IC SỐ CD4017 IC ĐẾM, IC CHỨC NĂNG
Điện trở 560R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Pic16F877A DÁN SMD, VI ĐIỀU KHIỂN HỌ PIC CỦA MICROCHIP
Atmega32 DIP, VI ĐIỀU KHIỂN HỌ AVR CỦA ATMEL
ĐỘNG CƠ SERVO S3003, ĐỘNG CƠ QUAY GÓC 0 - 180 ĐỘ
LED 7ĐOẠN 2SỐ ANODE 0.56IN ĐỎ, LED 7 SEG 25x19x8MM
IC SN74HC165 THANH GHI DỊCH, IC MỞ RỘNG NGÕ VÀO DIP
LED 5MM PHỦ MÀU ĐỎ CHÂN NGẮN, LED SIÊU SÁNG - 40 CON
Module giảm áp ASM1117 3.3V ngang , Mạch giảm áp DC-DC 800mA
Module giảm áp ASM1117 5V ngang , Mạch giảm áp DC-DC 800mA
Dây bus 3pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Cảm Biến Bụi PM2.5, CẢM BIẾN GP2Y1010AU0F
Hàng rào cái lỗ tròn đơn thẳng 1*40P 2.54mm, Jump header đơn 40 pin
Điện trở 1R2 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Điện trở 12R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Dây bus 8pin 40cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
ANTEN 6dBi 4G/3G/GSM 19.5CM KIM TRONG, ANTEN 4G
QUẠT TẢN NHIỆT 12VDC 40X40X10MM, QUẠT MINI 12V
Màn hình LCD2004 Xanh lá, Màn hình hiển thị Text
CẦU DIODE KBPC5010 DIP, CHỈNH LƯU TOÀN KỲ 50A - 1000V
Điện trở 16R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Atmega328P DIP, VI ĐIỀU KHIỂN HỌ AVR CỦA ATMEL
IC SN74HC595 THANH GHI DỊCH, MỞ RỘNG CHÂN 8BIT DIP
TRANSISTOR PNP TIP127 DIP, HOẠT ĐỘNG -100V VÀ -5A
ĐỘNG CƠ SERVO 35KG, ĐỘNG CƠ QUAY GÓC 0 - 180 ĐỘ
Điện trở 6R2 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
ANTEN 433Mhz 8dBi 20.5CM KIM TRONG, ANTEN LORA, RF
Module điều khiển động cơ DC L298N, Driver điều khiển động cơ DC
LED 5MM PHỦ XANH LÁ CHÂN NGẮN, LED SIÊU SÁNG - 40 CON
ĐỘNG CƠ SERVO MG90 KIM LOẠI, ĐỘNG CƠ GÓC 0 - 180 ĐỘ
Module thu phát NRF24L01 2.4Ghz anten liền, Truyền nhận không dây RF
Dây bus 5pin 40cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
Dây bus 4pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
TRANSISTOR NPN C2383 DIP, DÃY HOẠT ĐỘNG 160V VÀ 1A
ANTEN GSM 3DBI 9CM KIM TRONG, ANTEN 3G/4G
ĐỘNG CƠ SERVO 30KG, ĐỘNG CƠ QUAY GÓC 0 - 180 ĐỘ
Arduino mega2560 R3 Atmega16U2, Vi điều khiển họ Arduino
Bàn phím mềm keypad 4x4, Ma trận phím mềm
Dây bus 8pin 20cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
MODULE CẢM BIẾN DHT11, ĐO NHIỆT ĐỘ VÀ ĐỘ ẨM
Dây bus 6pin 10cm 24AWG cùng hướng XH2.54mm, Kích thước chân 2.54mm
ANTEN 2.4GHz 4DBI 7.2CM KIM TRONG, ANTEN WIFI, ZIGBEE, RF
QUANG TRỞ 4 CHÂN, CẢM BIẾN ÁNH SÁNG
Hàng rào đực đơn chân thẳng 1*40P 2.54mm, Jump header đơn 40 pin
CẢM BIẾN ACS712 20A, ĐO DÒNG ĐIỆN DC/AC
IC SỐ SN74HC21 CỔNG AND, IC CỔNG LOGIC 4-INPUT DIP
Điện trở 270R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
HC-SRF05, CẢM BIẾN ĐO KHOẢNG CÁCH
LED 5MM PHỦ MÀU VÀNG CHÂN NGẮN, LED SIÊU SÁNG - 40 CON
Arduino Nano Ft232RL cổng Mini USB, Vi điều khiển họ Arduino
Điện trở 2R2 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Hàng rào Cái vuông đơn cong 1*40P 2.54mm, Jump header đơn 40 pin
Khớp nối mềm D19-L25 8x10mm, Khớp nối mềm trục hợp kim nhôm
CẢM BIẾN PIR HC-SR501, CHUYỂN ĐỘNG THÂN NHIỆT
Điện trở 470R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
TRANSISTOR NPN TIP41 DIP, DÃY HOẠT ĐỘNG 100V VÀ 6A
Atmega16L DIP, VI ĐIỀU KHIỂN HỌ AVR CỦA ATMEL
Điện trở 30R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
ĐỘNG CƠ DC JGA25-310 12V 35RPM, ĐỘNG CƠ GIẢM TỐC
Arduino Uno R3 chip cắm DIP cáp Type B, Vi điều khiển họ Arduino ( không kèm Cáp)
Điện trở 1R5 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
Điện trở 100R 1/4W 5 vòng màu, Điện trở 1/4W - 100 con
CẢM BIẾN KHỐI LƯỢNG LOADCELL 5KG, ĐO KHỐI LƯỢNG
ANTEN 433MHz 5dBi ĐẦU TRÒN 46MM, KIM TRONG DÂY 1M
Hàng rào cái vuông đơn thẳng 1*40P 2.54mm, Jump header đơn 40 pin
MODULE CẢM BIẾN RUNG SW18010P, CẢM BIẾN LÒ XO 

















Đánh giá
Chưa có đánh giá nào.