INFORMACIÓN
R503 Sensor Dactilar es un dispositivo que permite leer y guardar hasta 200 huellas dactilares a través de un panel touch, también contiene un indicador configurable de luz LED. Este sensor es pequeño y de fácil uso, tiene un amplio rango de detección, una tuerca para que puedas instalarlo fácilmente y tiene 6 pines, 2 para alimentación, 1 para la señal de detección de dedo, otro para la alimentación del touch y 2 para comunicación por protocolo serial (Tx, Rx) para que puedas utilizarlo con tarjetas de desarrollo Arduino, ESP 32, PIC y otros microcontroladores.
R503 Sensor Dactilar puede ser utilizado en aplicaciones de seguridad, control de acceso y asistencia, puedes usar los colores del LED para indicar errores en el censado, huellas encontradas en los registros, huellas no registradas, entre otras cosas.
ESPECIFICACIONES Y CARACTERÍSTICAS
- Modelo: R503
- Voltaje:
- Entrada: 3.3 V
- Touch: 3-5 V
- Típico en modo de espera: 3.3V
- Corriente
- Funcionamiento: 20 mA
- Modo de espera (standby):
- Promedio: 2 uA
- A prueba de agua
- Contiene tuerca para instalación
- Resolución de imagen: 508 dpi
- Número de pines: 6
- Conector: SH1.0mm de 6 pines
- Longitud de cable: 24 cm
- Protocolos de comunicación: UART (Nivel lógico TTL 3.3V)
- Índice de baudios: (9600 × N) bps; N=1 ~ 12 (N = 6 predeterminado, es decir, 57600 bps)
- Tiempo de adquisición de imagen: <0.2s
- Matiz de censado: 192 x 192 píxeles
- Área de detección: 15 mm de diámetro
- Peso: 33 g
- Dimensiones:
- Diámetro de la parte superior: 27.8 mm
- Diámetro de la base: 25 mm
- Altura: 19 mm
DOCUMENTACIÓN Y RECURSOS
INFORMACIÓN ADICIONAL
¿Cómo funciona el R503 Sensor Dactilar?
- Registro de huellas
- Lector de huellas
Cuando se hace el registro, el usuario debe de colocar su dedo 2 veces para que el módulo pueda procesar ambas imágenes y generar una plantilla para guardarla. En el modo lector el sistema generará otra plantilla y hará una comparación con las que ya están guardadas. El modulo trabaja con protocolo serial semidúplex, por lo que a través de un monitor serial puedes enviar comandos para cambiar el color del indicador LED, borrar huellas guardadas, elegir el registro donde guardar, entre otras.
Prueba del R503 Sensor Dactilar
Para poder probar el módulo se necesita instalar en el IDE Arduino la librería Adafruit_Fingerprint,
Realizaremos las siguientes conexiones en nuestra tarjeta de desarrollo Arduino Uno:
Cables:
- Rojo: 3.3V
- Negro: GND
- Amarillo: Pin 2
- Café: Pin 3
- Azul: N/C
- Blanco: 3.3V

Posteriormente usaremos el siguiente código en nuestro IDE para programar nuestro Arduino, esté código registra y guarda las huellas detectadas por el sensor:
#include <Adafruit_Fingerprint.h>
#if (defined(__AVR__) || defined(ESP8266)) && !defined(__AVR_ATmega2560__)
// Para Arduino Uno u otros dispositivos sin hardware serial, debemos usar software serial...
// pin #2 es entrada del sensor (Cable amarillo)
// pin #3 es salida arduino (Cable Café) SoftwareSerial mySerial(2, 3);
//Configuración del puerto serial para software serial #else
// Para Leonardo/M0/etc, otros con hardware serial, usar hardware serial!
// #0 es el cable amarillo, #1 es café
#define mySerial Serial1
#endif
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
uint8_t id;
void setup()
{ Serial.begin(9600);
while (!Serial); // Para Yun/Leo/Micro/Zero/...
delay(100);
Serial.println("\n\nAdafruit Fingerprint Registro de Huellas");
// Configuración de la transmisión de datos para el puerto serial
finger.begin(57600);
// Comprobar conexión con el sensor
if (finger.verifyPassword()) {
Serial.println(" Sensor encontrado!");
} else {
Serial.println("No se encontró sensor de huellas :(");
while (1) { delay(1); }
}
// Lectura de parámetros del sensor
Serial.println(F("Leyendo parámetros del sensor"));
finger.getParameters();
Serial.print(F("Estatus: 0x")); Serial.println(finger.status_reg, HEX);
Serial.print(F("Sys ID: 0x")); Serial.println(finger.system_id, HEX);
Serial.print(F("Capacidad: ")); Serial.println(finger.capacity);
Serial.print(F("Nivel de Seguridad: ")); Serial.println(finger.security_level);
Serial.print(F("Dirección del Dispositivo: ")); Serial.println(finger.device_addr, HEX);
Serial.print(F("Longitud del paquete: ")); Serial.println(finger.packet_len);
Serial.print(F("Rango de Baudios: ")); Serial.println(finger.baud_rate);
}
uint8_t readnumber(void) {
uint8_t num = 0;
while (num == 0) {
while (! Serial.available());
num = Serial.parseInt();
}
return num;
}
void loop() //Repetir una y otra vez
{
// Elección de dirección del registro de la huella
Serial.println("Listo para registrar huella!");
Serial.println("Por favor escribe el ID # (del 1 al 127) en el que quieres registrar tu huella...");
id = readnumber();
if (id == 0) {// ID #0 no permitido, intenta otra vez!
return;
}
Serial.print("Registrando ID #");
Serial.println(id);
while (! getFingerprintEnroll() );
}
// Registro de la huella
uint8_t getFingerprintEnroll() {
int p = -1;
Serial.print("Esperando una huella valida para registrar en #"); Serial.println(id);
while (p != FINGERPRINT_OK) {
p = finger.getImage();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Imagen obtenida");
break;
case FINGERPRINT_NOFINGER:
Serial.println(".");
break;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Error de comunicación");
break;
case FINGERPRINT_IMAGEFAIL:
Serial.println("Error de Imagen");
break;
default:
Serial.println("Error desconocido");
break;
}
}
// OK Exito!
p = finger.image2Tz(2);
switch (p) {
case FINGERPRINT_OK:
Serial.println("Imagen convertida");
break;
case FINGERPRINT_IMAGEMESS:
Serial.println("Imagen muy confusa");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Error de comunicación");
return p;
case FINGERPRINT_FEATUREFAIL:
Serial.println("No se pueden encontrar las características de la huella");
return p;
case FINGERPRINT_INVALIDIMAGE:
Serial.println("No se pueden encontrar las características de la huella");
return p;
default:
Serial.println("Error desconocido");
return p;
}
// OK convertida!
Serial.print("Creando el modelo para #"); Serial.println(id);
p = finger.createModel();
if (p == FINGERPRINT_OK) {
Serial.println("Han coincidido las huellas!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Error de comunicación");
return p;
} else if (p == FINGERPRINT_ENROLLMISMATCH) {
Serial.println("Las huellas no coinciden");
return p;
} else {
Serial.println("Error desconocido");
return p;
}
Serial.print("ID "); Serial.println(id);
p = finger.storeModel(id);
if (p == FINGERPRINT_OK) {
Serial.println("Guardado!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Error de comunicación");
return p;
} else if (p == FINGERPRINT_BADLOCATION) {
Serial.println("No se puede guardar en esa ubicación");
return p;
} else if (p == FINGERPRINT_FLASHERR) {
Serial.println("Error de escritura en la memoria flash");
return p;
} else {
Serial.println("Error desconocido");
return p;
}
return true;
}
Recuerda que para poder visualizar el funcionamiento del código debes abrir el monitor serial:

Si requieres más ejemplos de uso, por ejemplo para detectar si las huellas ya están guardadas, configuración del indicador LED o borrar registros de huellas, puedes acceder a los ejemplos que tiene la librería desde aquí o desde el IDE de Arduino:

También como sugerencia de uso puedes utilizar: K202 Controlador Dactilar

Tarjeta MicroSD de 64GB Preprogramada con Raspbian para Raspberry Pi
Pulsera Antiestática Inalámbrica Ajustable
Sensor Ultrasonico US-100 Compensacion de Temperatura
PAM8610 Amplificador Digital Clase-D de Doble Potencia
Fuente de alimentación para protoboard v2 MB-102 3.3V 5V
FR107 Diodo Rectificador 1A 1000V
KBPC2506 Puente Rectificador 25A 600V
Carcasa Raspberry Pi 4B Oficial Blanco Rojo
Cargador de Carga Rápida 40W US + Cable Tipo C
Sensor de Temperatura y Humedad DHT22 con cables
Terminal ZH1.5mm ZH 1.5mm
TJA1050T Transceptor CAN de Alta Velocidad
A1 Mini Bambu Lab Impresora 3D
Nema 17 17HS4023 Motor a Pasos 0.7Amp 1.4Kg/cm
Soldador de Gas Tipo Bolígrafo con Accesorios
Tira Header Macho 40 Pines 2mm Negro
TE-808 Lupa de Soldadura con Abrazadera Universal
Gravity Kit de 9 Sensores Compatibles con Arduino DFR0018




















Valoraciones
No hay valoraciones aún.