Giới thiệu cảm biến vân tay R307
Cảm biến vân tay R307 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 R307
- Điện áp nguồn: DC 4.2 ~ 6.0V
- Chip sử dụng: AS606
- 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:

- V+: chân cấp nguồn chính VCC 3.3VDC cho cảm biến hoạt động.
- Tx: Chân giao tiếp UART TTL TX
- Rx: Chân giao tiếp UART TTL RX
- GND: Chân cấp nguồn GND (Mass / 0VDC)
- 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
- 3.3V: Chân cấp nguồn 3.3VDC cho Touch Sensor.
Để 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 R307 là 1000 vân tay
- Mô-đun vân tay R307 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:

Đồng hồ điện áp Volt 4.5-30VDC xanh dương, Hiển thị led 7 đoạn
Nguồn Adapter 12VDC 5A Jack DC 5.5x2.1mm, Nguồn cung cấp hệ thống
Nguồn Adapter 12VDC 3A Jack DC 5.5x2.1mm, Nguồn cung cấp hệ thống
ĐĨA SERVO KIM LOẠI 25T, ĐĨA SERVO MG995, MG996
Động cơ bước Step 42mm cao 33mm, Động cơ step motor
Đồng hồ điện áp Volt 4-100VDC màu đỏ, Hiển thị led 7 đoạn
Nguồn Adapter 24VDC 5A Jack DC 5.5x2.1mm, Nguồn cung cấp hệ thống
CẦU DIODE KBPC810 DIP, CHỈNH LƯU TOÀN KỲ 8A - 1000V
Đồng hồ điện áp Volt 4-100VDC xanh dương, Hiển thị led 7 đoạn
Đồng hồ điện áp Volt 12-60VDC màu đỏ, Hiển thị led 7 đoạn
Đồng hồ điện áp Volt 4-100VDC xanh lá, Hiển thị led 7 đoạn
ĐẾ RELAY 5 CHÂN MÓC 30MM ĐEN, HF115F G2R G2RL JW2SN
ĐẾ IC 14 CHÂN DIP, SỬ DỤNG CHO IC 14 CHÂN CẮM
ĐẾ RELAY 5 CHÂN MÓC 20MM ĐEN, HF115F G2R G2RL JW2SN
ĐẾ IC 32 CHÂN DIP, SỬ DỤNG CHO IC 32 CHÂN CẮM
Động cơ bước Step 42mm cao 40mm, Động cơ step motor
ĐẾ IC 24 CHÂN DIP HẸP, SỬ DỤNG CHO IC 24 CHÂN CẮM
ĐẾ RELAY 8 CHÂN MÓC 20MM XANH, HF115F G2R G2RL JW2SN
IC MOC3020 CÁCH LY AC SMD6, IC THYRISTOR XOAY CHIỀU
ĐẾ IC DIP 28 VUÔNG, SỬ DỤNG CHO IC 28 CHÂN CẮM
CẦU DIODE KBPC5010 DIP, CHỈNH LƯU TOÀN KỲ 50A - 1000V
ĐẾ IC 24 CHÂN DIP RỘNG, SỬ DỤNG CHO IC 24 CHÂN CẮM
ĐẾ IC DIP 28 VUÔNG, SỬ DỤNG CHO IC 28 CHÂN CẮM (LOẠI RỘNG)
DIODE CHỈNH LƯU 1N4007 1A 1000V, DIODE CHỈNH LƯU BÁN KỲ - 10 CON
Cảm biến uốn cong Flex sensor 2.2, Cảm biến áp lực điện trở
CẢM BIẾN LỰC RFP602 2KG, CẢM BIẾN ÁP SUẤT ĐIỆN TRỞ
CẢM BIẾN BMP180, ÁP SUẤT KHÔNG KHÍ VÀ NHIỆT ĐỘ
Jack DC cái hàn board 5.5x2.1mm, Đầu nối nguồn thông dụng
Jack DC Đực 5.5x2.1mm đầu domino, Đầu nối nguồn thông dụng
Jack DC cái hàn board 3.5x1.35mm, Đầu nối nguồn thông dụng
Dây Jack DC đầu đực 5.5x2.1mm 3A, Jack dc thông dụng
Dây Jack DC đầu đực 5.5x2.1mm 10A, Jack dc thông dụng
Cảm biến lực FSR402 1Kg, Cảm biến áp suất điện trở
Dây Jack DC đầu cái 5.5x2.1mm 10A, Jack dc thông dụng
ĐÈN BÁO AD16-22DS MÀU TRẮNG 12-24VACDC, ĐÈN BÁO PHI 22MM
ĐÈN BÁO AD16-22DS MÀU VÀNG 220VAC, ĐÈN BÁO PHI 22MM
ĐÈN PHÁT LASER 3V 650nm 6mm, ĐẦU PHÁT LASER MINI 3V
LED 5MM PHỦ XANH DƯƠNG CHÂN DÀI, LED SIÊU SÁNG - 40 CON
Bộ sạc pin 2 cell 18650 4.2V 800mA song song, Sạc pin 2 cell
Module điều khiển động cơ bước DRV8825, Driver động cơ Step
LED TRONG 8MM MÀU XANH DƯƠNG CHÂN DÀI, LED SIÊU SÁNG
Mạch Dimmer AC Thyristor 4000W , Điều chỉnh điện áp bằng BTA
Module điều khiển động cơ bước A4988, Driver động cơ Step
IC ASM1117 3.3V 800mA, ỔN ÁP DC-DC GIẢM ÁP 9V - 3.3V
Nguồn Adapter 24VDC 2A Jack DC 5.5x2.1mm, Nguồn cung cấp hệ thống
Module điều khiển động cơ bước TB6600 Thường, Driver động cơ Step
Động cơ DC Encoder JGA25-370 12V 60rpm, Động cơ giảm tốc
ĐÈN BÁO AD16-22DS MÀU ĐỎ 220VAC, ĐÈN BÁO PHI 22MM
ĐÈN BÁO AD16-22DS XANH LÁ 12-24VACDC, ĐÈN BÁO PHI 22MM
Đèn báo AD16-22DS Xanh dương 220-380VAC, Đèn báo phi 22mm
Nguồn Adapter 5VDC 6A Jack DC 5.5x2.1mm, Nguồn cung cấp hệ thống 
















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