¿Cómo usar el lector de huellas dactilares GT-511C3? El lector de huella digital GT-511C3 es un sensor que puede llegar a grabar 200 huellas dactilares. He decidido utilizarlo para activar un motor que hará moverse una puerta corredera de un proyecto que simula un garaje. El sensor necesita de un cable JST-SH de cuatro salidas para poder conectarse. Estas salidas las numero como puede verse en la imagen siendo cada numeración lo que se indica en el recuadro:
Lector GT-511C3
1. Tx (3.3V) Transmisor serial 2. Rx (3.3V) Receptor serial 3. GND 4. (5V)
Fig 1. Entradas/Salidas del GT-511C3
Hay que observar lo siguiente en los 4 pines del lector o detector de huellas: El pin 1 y 2 son pines TTL a 3.3.V. Estos pines se usan para comunicarse con el módulo FPS a una velocidad, por defecto, de 9600bps. El pin 1 es el que controla la transmisión serie Tx sobre el FPS, transmitiendo un nivel alto a un máximo de 3.3V. El pin 2 es el que controla la recepción serie Rx sobre el FPS y puede recibir un nivel alto a 3.3V. Es muy importante la tensión porque conectaremos este lector de huellas dactilares a una placa Arduino Uno. En esta placa, los pines (exceptuando el 13) trabajan a 5V y, por este motivo, introduciremos un divisor de tensión que nos reduzca los 5V a 3.3V. Para implementar el divisor de tensión podemos usar cualquier conjunto (R1, R2) en filas de la siguiente tabla. Hemos decidido, por disponer de estos valores en el taller, utilizar el que hemos sombreado de color naranjo: R1 620Ω 680Ω 560Ω 1KΩ
GRUPO_PEGADA DIXITAL
R2 1.2KΩ 1.3KΩ 1KΩ 1.8KΩ
Voltaje calculado 3.3V 3.28V 3.21V 3.21V
Página 1 de 6
¿Cómo usar el lector de huellas dactilares GT-511C3? El pin 3 es el cable de tierra, llamado GND (0V) El pin 4 es el cable de tensión de entrada del lector FPS y se conectará a 5V (nos valdría una tensión entre 4.5V y 6V). En el siguiente circuito protoboard puede verse las conexiones entre una placa arduino uno y el lector de huellas digitales GT-511C3:
Fig 2. Circuito de conexión Arduino Uno/Lector GT-511C3
El circuito de la fig 2 podemos esquematizarlo de la siguiente forma:
GRUPO_PEGADA DIXITAL
Página 2 de 6
¿Cómo usar el lector de huellas dactilares GT-511C3?
Fig 3. Esquema de conexión Arduino Uno/Lector de huella
Antes de nada, debemos grabar nuestra huella digital en el lector. Para ello podemos usar su software y, según nos indica su casa comercial, debemos usar un módulo conversor serie TTLUSB de tipo FTDI de 3V (o de 5V si usamos el divisor de tensión). El que disponemos es de 5V y lo mostramos en la siguiente imagen:
Fig 4. Conversor serie- USB de tipo FTDI
En su lateral izquierdo vemos Entradas/Salidas. Estas las conectaremos al lector como se muestra en la siguiente tabla (entre uno y otro añadiremos el divisor de tensión): Conversor serie TTL- USB del tipo FTDI 1. DTR (Sin conectar) 2. RXI 3. TXO 4. 5V 5. CTS (Sin conectar) 6. GND
GRUPO_PEGADA DIXITAL
Sensor de huellas 1. Tx 2. Rx 3. GND 4. Voltaje de 5V
Página 3 de 6
¿Cómo usar el lector de huellas dactilares GT-511C3? Si abrimos su software, llamado SDK demo, primero debemos conseguir conectar el escáner de huellas con el software. Para ello, ejecuto los siguientes 3 pasos: 1. Escoger el puerto COM del dispositivo FTDI 2. Escoger la velocidad, que por defecto es 9600 3. Hacer clic en la pestaña “Open”
Fig 5. Ventana del SDK del lector de huella digital
A continuación podemos chequear si el lector de huellas tiene alguna grabada. Para ello hago clic en “Get User Count” y veo si existe alguna huella en el lector. El número de huellas grabadas me lo va diciendo la caja del identificador (ID). Si quiero, puedo borrar una huella con “Delete ID” o todas las huellas, con la pestaña “Delete All”. Ahora, sabiendo lo que tenemos, podemos comenzar a grabar nuevas huellas dactilares. A cada una de ellas, el software le asocia un identificador (ID). Para introducir nuevas huellas, debo primero seleccionar una ID que no se usara y, después, hacer clic en la pestaña “Enroll”. En ese mismo instante coloco mi huella en el escáner (la pongo y la saco 3 veces para que la identifique bien). Si el escaneo es exitoso, el lector me lo dirá con un mensaje en la caja de resultados (Result) situada en la parte inferior izquierda de la ventana del software. Finalmente, nos falta comprobar que ha grabado la huella que nosotros le hemos dicho. Para ello, encontramos el ID en su caja y hacemos clic en “Identify(1:N)” y ponemos nuestra huella (dedo a identificar) sobre el escáner de huellas. En la caja Result se nos mostrará un mensaje exitoso que nos dice si el identificador es correcto. Para cancelar este chequeo de huellas, hacemos clic en el botón “Cancel”. GRUPO_PEGADA DIXITAL
Página 4 de 6
¿Cómo usar el lector de huellas dactilares GT-511C3? Si no disponemos de este módulo FDTI, existe otra opción para conseguir grabar las huellas usando la placa Arduino Uno. Para ello: 1. Implementamos el circuito de la figura 3 y con el IDE de arduino, cargarmos el siguiente programa a la placa: /*-----------------------------------------------------------------------------Program: FPS2processing Description: Relays data between GT-511C3 fingerprint scanner and processing application via the serial port at 9600 baud. Hardware: - Arduino Uno - GT-511C3 Optical Fingerprint Scanner Module - Interfacing resitors References: GT-511C3 datasheet v1.1, www.adh-tech.com.tw Date:
3 July 2015
Author: W.A. Smith, http://startingelectronics.org ------------------------------------------------------------------------------*/ #include <SoftwareSerial.h> // need a serial port to communicate with the GT-511C3 SoftwareSerial gtSerial(5, 4); // Arduino RX (GT TX), Arduino TX (GT RX) // the Arduino TX pin needs a voltage divider, see wiring diagram at: // http://startingelectronics.com/articles/GT-511C3-fingerprint-scannerhardware/ void setup() { Serial.begin(9600); // serial connection to processing app. gtSerial.begin(9600); // for communicating with the GT-511C3 } byte rx_byte = 0;
// stores received byte
void loop() { if (Serial.available()) { // get byte from processing app. and send to FPS rx_byte = Serial.read(); gtSerial.write(rx_byte); } // check for a byte from the GT-511C3 if (gtSerial.available()) { GRUPO_PEGADA DIXITAL
Página 5 de 6
¿Cómo usar el lector de huellas dactilares GT-511C3? // get a byte from the FPS and send it to the processing app. rx_byte = gtSerial.read(); Serial.write(rx_byte); } } 2. Cerramos el IDE de Arduino y abrimos el software (SDK Demo) del lector de huella. En él seleccionamos el puerto COM de la placa, la velocidad de 9600 y hacemos clic en “Open”. Con esto, ya está conectado para poder grabar la huella dactilar como se ha explicado anteriormente:
GRUPO_PEGADA DIXITAL
Página 6 de 6