Вы находитесь на странице: 1из 29

Lector de huellas digitales

Biometra
Podramos decir que los seres humanos tienen tarjetas de identificacin integradas, muy
fcilmente accesibles: sus huellas digitales, las cuales son diseos virtualmente nicos.

La gente tiene diminutos "valles y crestas" de piel en la punta de los dedos que eran de gran
utilidad a los ancestros de la raza humana, pues les permitan asir cosas con mayor facilidad.
Estos valles y crestas se forman por una combinacin de factores genticos y ambientales
aleatorios, como la posicin del feto en un momento particular y la composicin y densidad
exacta del lquido amnitico que lo rodea.

Un lector de huella digital lleva a cabo dos tareas:


1) Obtener una imagen de su huella digital, y
2) Comparar el patrn de valles y crestas de dicha imagen con los patrones de las huellas
que tiene almacenadas.
Los dos mtodos principales de obtener una imagen de una huella digital son por lectura ptica
o lectura de capacitancia.
Lectores Opticos
Un lector ptico funciona con un dispositivo CCD (Charged Coupled Device), como el usado en
las cmaras digitales, que tienen un arreglo de diodos sensible a la luz que generan una seal
elctrica en respuesta a fotones de luz. Cada diodo graba un pixel, un pequeo punto que
representa la luz que le es reflejada. Colectivamente, la luz y perfiles oscuros forman una
imagen de la huella leda. El proceso de lectura comienza cuando usted pone su dedo sobre la
ventana del lector, el cual tiene su propia fuente de iluminacin, tpicamente un arreglo de
LEDs, para iluminar las crestas de la huella digital. El CCD genera, de hecho, una imagen
invertida del dedo, con reas ms oscuras que representan ms luz reflejada (las crestas del
dedo) y reas ms claras que representan menos luz reflejada (los valles entre las crestas).

Antes de comparar la informacin obtenida con la almacenada, el procesador del lector se


asegura de que el CCD ha capturado una imagen clara. Verifica la oscuridad promedio de los
pixeles, o los valores generales en una pequea muestra, y rechaza la lectura si la imagen
general es demasiado oscura o demasiado clara. Si la imagen es rechazada, el lector ajusta el
tiempo de exposicin para dejar entrar ms o menos luz, e intenta leer la huella de nuevo.

Si el nivel de luz es adecuado, el lector revisa la definicin de la imagen (que tan precisa es la
imagen obtenida). El procesador busca varias lineas rectas que se mueven horizontal y
verticalmente sobre la imagen, y si esta tiene buena definicin, una lnea que corre
perpendicular a las crestas ser hecha de secciones alternantes de pixeles muy claros y muy
oscuros.
Lectores de Capacitivos
Nuestra piel es elctricamente conductora, y cuando acercamos el dedo el campo elctrico
cambia, en concreto aumentando con la distancia. El sensor es un circuito integrado de silicio
cuya superficie est cubierta por un gran nmero de elementos transductores. El sensor
detecta crestas de nuestras huellas y viceversa, lo que nos da el patrn. Cuando la piel est
dura o hay humedad, el dielctrico vara y hace que las muestras no se obtengan tan precisas.

Bsicamente tenemos las dos placas conductoras que varan sus valores. El escner recibir
un valor en su capacitancia que depender de la distancia a la que est la huella. Para esto el
sistema se marca su propio valor de referencia. Al final el mecanismo no es muy distinto al
anterior, salvo que unos emplean la luz para calcular la diferencia entre los valles de la huella
y estos utilizan la variacin en el campo elctrico.

Los lectores capacitivos de huella digital generan una imagen de las crestas y valles que
conforman una huella digital, pero en vez de hacerlo con luz, los capacitores utilizan corriente
elctrica. El diagrama de abajo muestra un ejemplo de sensor capacitivo. El sensor est hecho
de uno o ms chips que contienen un arreglo de pequeas celdas. Cada celda incluye dos placas
conductoras, cubiertas con una capa aislante.

Las celdas son ms pequeas que el ancho de una cresta del dedo. El sensor es conectado a un
integrador, un circuito elctrico construido sobre la base de un amplificador operacional
inversor que altera un flujo de corriente. La alteracin se basa en el voltaje relativo de dos
fuentes, llamado la terminal inversora y la terminal no-inversora. En este caso, la terminal noinversora es conectada a tierra, y la terminal inversora es conectada a una fuente de voltaje de
referencia y un bucle de retroalimentacin que incluye las dos placas conductoras, que
funcionan como un capacitor, esto es, un componente que puede almacenar una carga. La
superficie del dedo actua como una tercera placa capacitora, separada por las capas aislantes
en la estructura de la celda y, en el caso de los valles de la huella, una bolsa de aire.

Al variar la distancia entre las placas capacitoras (moviendo el dedo ms cerca o ms lejos de
las placas conductoras), se cambia la capacitancia (o habilidad para almacenar una carga) total
de el capacitor. Gracias a esta cualidad, el capacitor en una celda bajo una cresta tendr una
capacitancia ms grande que el capacitor en una celda bajo un valle. Ya que la distancia a el
dedo altera la capacitancia, la cresta de un dedo resultar en una salida de voltaje diferente a la
del valle de un dedo.

El procesador del lector lee esta salida de voltaje y determina si es caracterstico de una cresta
o un valle. Al leer cada celda en el arreglo de sensores, el procesador puede construir una
imagen de la huella, similar a la imagen capturada por un lector ptico.

La principal ventaja de un lector capacitivo es que requiere una verdadera forma de huella
digital y no slo un patrn de luz y oscuridad que haga la impresin visual de una huella
digital. Esto hace que el sistema sea ms difcil de engaar. Adicionalmente, al usar un chip
semiconductor en vez de una unidad CCD, los lectores capacitivos tienden a ser ms
compactos que los pticos.

10

Anlisis
Suponemos que los lectores de huella digital tpicamente empalman varias imgenes de huellas
digitales para encontrar una que corresponda. En realidad, este no es un modo prctico para
comparar las huellas digitales. Una imagen borrosa puede hacer que dos imgenes de la misma
huella se vean bastante diferentes, as que raramente se podr obtener un empalme perfecto.
Adicionalmente, utilizar la imagen completa de la huella digital en un anlisis comparativo
utiliza muchos recursos del procesador, y adems hace ms sencillo robar los datos impresos
de la huella de alguien.

En vez de esto, la mayora de los lectores compara rasgos especficos de la huella digital,
generalmente conocidos como minutiae (pequeos detalles caractersticos).
Tpicamente, los investigadores humanos y computadoras se concentran en puntos donde las
lneas de las crestas terminan o donde se separan en dos (bifurcaciones). Colectivamente estos
y otros rasgos distintivos se llaman typica.

El software del sistema del lector utiliza algoritmos altamente complejos para reconocer y
analizar estas minutiae. La idea bsica es medir las posiciones relativas de la minutiae. Una
manera simple de pensar en esto es considerar las figuras que varios minutia forman cuando
dibuja lneas rectas entre ellas. Si dos imgenes tienen tres terminaciones de crestas y dos
bifurcaciones formando la misma figura dentro de la misma dimensin, hay una gran
probabilidad de que sean de la misma persona.
11

Para obtener una coincidencia, el sistema del lector no necesita encontrar el patrn entero de
minutiae en la muestra y en la imagen almacenada, simplemente debe encontrar un nmero
suficiente de patrones de minutiae que ambas imgenes tengan en comn. El nmero exacto
vara de acuerdo a la programacin del lector.
Ventajas Generales
Las ventajas de un sistema biomtrico de huella digital son que los atributos fsicos de una
persona suelen ser difciles de falsificar, uno no puede adivinar una huella digital como adivina
un password, no puede perder sus huellas digitales como pierde una llave y no puede olvidar
sus huellas digitales como puede olvidar un password.

12

Para hacer los sistemas de seguridad ms confiables, es una buena idea combinar el anlisis
biomtrico con un medio convencional de identificacin, como un password o una tarjeta.
Muchos lectores de huella adems pueden verificar una tarjeta inteligente o una tarjeta mifare
(tarjeta inteligente sin contacto) en donde se almacene la huella digital del usuario. El lector
coteja que la huella codificada en la tarjeta sea la misma que se est poniendo sobre el lector,
proporcionando un grado mayor de seguridad y eliminando las limitaciones de espacio de
almacenamiento de huellas en un servidor, pues se pueden emitir credenciales con huellas
codificadas de manera infinita.

13

14

Cada da se implementan ms y ms nuevas soluciones con lectores de huella digital, por lo


que en un futuro cercano ser una tecnologa utilizada por una gran proporcin de la gente. Si
desea aprovechar esta nueva tendencia es el momento indicado, llame a uno de nuestros
Ejecutivos de Ventas para conocer la gama completa de lectores de huella digital que podemos
ofrecerle.

ARDUINO
Lector de Huella Digital 071405

lector de huella digital


El sensor biomtrico de huella digital es ideal para realizar un sistema capaz de proteger lo que
tu requieras por medio del anlisis de tu huella digital. El sistema realiza procesamiento digital
de imgenes interno con un DSP adems de incluir capacidades de comparacin en base de
datos y actualizacin de la misma.
El dispositivo funciona con el protocolo serial, por lo que puede ser utilizado con cualquier
microcontrolador o tarjeta de desarrollo.
15

lector de huella digital


El dispositivo tiene la capacidad de almacenar hasta 162 huellas dactilares en su memoria
FLASH interna. El LED del dispositivo se ilumina cada que se encuentra tomando imgenes en
busca de huellas digitales.

-Modelo: 071405
-Voltaje de alimentacin: 3.6V 6V
-Corriente de operacin: 100mA 150mA
-Interfaz: UART TTL
-Modo de paridad de huella: 1:1 1:N
-Baud Rate: 9600*N
-N = 1 a 12 (Por defecto es 6)
-Tiempo de adquisicin menor a 1 segundo
-5 Niveles de seguridad
-Dimensin de la ventana: 14x18mm
-Entorno de trabajo: -10C a 40C (Humedad Relativa 40% a 85%)
-Dimensiones: 5.5 x 2.1 x 2.0 cm
-Peso: 22g

Para poder utilizar el dispositivo es necesario guardar las huellas en la base de datos del
mismo. Estas huellas se les asigna un ID. Posteriormente se puede iniciar la secuencia de
lectura y comparacin para verificar las huellas de los usuarios y as poder discernir y ejecutar
acciones en base al resultado.
16

Para utilizar el cdigo de ejemplo es necesario primero tomar en cuenta que los cables del
dispositivo no tienen acoplado ningn conector por lo que se recomienda soldar pines macho o
pines hembra, ya que los headers de arduino o de un protoboard no hacen bien contacto y son
motivo de que el dispositivo no funcione correctamente!.

lector de huella digital

17

lector de huella digital

Conexiones:
GND : Negro
Pin D2 : Verde
Pin D3: Blanco
5V: Rojo

Primero procedemos a descargar la biblioteca para Arduino del siguiente link:


https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library
Una vez descargada, se descomprime la biblioteca y se guarda dentro de:
C:\Program Files (x86)\Arduino\libraries\
Es necesario renombrar la carpeta de la biblioteca en caso de que se encuentre con un nombre
diferente que el archivo .cpp que se encuentra en la misma.
Abrimos el IDE de Arduino y seleccionamos Archivo-Ejemplos- y buscamos la biblioteca que
acabamos de instalar y seleccionamos el ejemplo de enroll. En este ejemplo primero
identificara si el sensor se encuentra conectado. Si lo detecta primero preguntara una ID para
asignarla a la huella a introducir.

18

lector de huella digital

Una vez enviado el ID deseado ponemos la huella en el sensor, la retiramos y la volvemos a


poner para tomar una captura redundante de 2 imgenes. Podemos seguir este proceso para
dar de alta en la base de datos del dispositivo todas las huellas que se requieran, ya que estas
se guardan en la memoria interna del mismo.

lector de huella digital


19

Una vez dadas de altas las huellas, se puede cargar el ejemplo fingerprint, este lee la huella del
sensor y nos dice que tan coherente es un resultado con su base de datos, siempre y cuando
haya sido un resultado positivo, si no encuentra huella, no enva nada.

lector de huella digital

APENDICE
El sensor funciona a 57600 baudios, se puede configurar pero esta es la velocidad por defecto,
al hacer uso del serial, el arduino utiliza la biblioteca de serial por software.
1

#include <SoftwareSerial.h>

Si se requiere cambiar de pines el serial por software se puede hacer en la siguiente


instruccin:
1

SoftwareSerial mySerial(2, 3);

Para el ejemplo de fingerprint, si se requieres que el arduino ejecute una accion al haber
encontrado una huella, es necesario indicarlo en esta seccion de codigo:
1
2
3

Serial.print("Found ID #");
Serial.print(finger.fingerID);
Serial.print("With confidence of");
20

4
5
6

Serial.println(finger.confidence);
// Escribir el codigo aqui
return finger.fingerID;

ANEXO

Features:

Secure your project with biometrics - this all-in-one optical fingerprint sensor will make
adding fingerprint detection and verification super simple. These modules are typically
used in safes - there's a high powered DSP chip that does the image rendering, calculation,
feature-finding and searching. Connect to any microcontroller or system with TTL serial,
and send packets of data to take photos, detect prints, hash and search. You can also enroll
new fingers directly - up to 162 finger prints can be stored in the onboard FLASH memory.
There's a red LED in the lens that lights up during a photo so you know its working.
There are basically two requirements for using the optical fingerprint sensor. First is you'll
need to enroll fingerprints - that means assigning ID #'s to each print so you can query
them later. Once you've enrolled all your prints, you can easily 'search' the sensor, asking it
to identify which ID (if any) is currently being photographed.
You can enroll using the windows software (easiest and neat because it shows you the
photograph of the print) or with the Arduino sketch (good for when you don't have a
windows machine handy or for on-the-road enrolling)

Enrolling new users with Windows


The easiest way to enroll a new fingerprint is to use the Windows software. The
interface/test software is unfortunately windows-only but you only need to use it once to
enroll, to get the fingerprint you want stored in the module.
First up, you'll want to connect the sensor to the computer via a USB-serial converter. The
easiest way to do this is to connect it directly to the USB/Serial converter in the Arduino.
To do this, you'll need to upload a 'blank sketch' this one works well:
// this sketch will allow you to bypass the Atmega chip
// and connect the fingerprint sensor directly to the USB/Serial
// chip converter.
// Red connects to +5V
// Black connects to Ground
21

// White goes to Digital 0


// Green goes to Digital 1
void setup() {}
void loop() {}
Wire up the sensor as described in the sketch comments after uploading the sketch. Since
the sensor wires are so thin and short, we stripped the wire a bit and melted some solder
on so it made better contact but you may want to solder the wires to header or similar if
you're not getting good conteact. When you plug in the power, you should see the red LED
blink to indicate the sensor is working.

SFGDemo Software download:


http://www.divshare.com/download/18481583-6ec

Start up the SFGDemo software and click Open Device from the bottom left corner. Select
the COM port used by the Arduino

22

And press OK when done. You should see the following, with a blue success message and
some device statistics in the bottom corner. You can change the baud rate in the bottom
left hand corner, as well as the "security level" (how sensitive it is) but we suggest leaving
those alone until you have everything running and you want to experiment

23

Lets enroll a new finger! Click the Previewcheckbox and press the Enroll button next to it
(Con Enroll means 'Continuous' enroll, which you may want to do if you have many
fingers to enroll). When the box comes up, enter in the ID # you want to use. You can use

24

up to 162 ID numbers.

The software will ask you to press the finger to the sensor

You can then see a preview (if you cliecked the preview checkbox) of the fingerprint

25

You will then have to repeat the process, to get a second clean print. Use the same finger!
On success you will get a notice

If there's a problem such as a bad print or image, you'll have to do it again

Searching with the software


Once you have the finger enrolled, it's a good idea to do a quick test to make sure it can be
found in the database. Click on theSearch button on the right hand side
When prompted, press a different/same finger to the sensor
If it is the same finger, you should get a match with the ID #

If it is not a finger in the database, you will get a failure notice

Wiring for use with Arduino


Once you've tested the sensor, you can now use it within a sketch to verify a fingerprint.
We'll need to rewire the sensor. Disconnect the green and white wires and plug the green
wire into digital 2 and the white wire to digital 3. You can change these pins later but for
26

now, use the default pins. Since the sensor wires are so thin and short, we stripped the wire
a bit and melted some solder on so it made better contact but you may want to solder the
wires to header or similar if you're not getting good contact. When you plug in the power,
you should see the red LED blink to indicate the sensor is working.

Next, To download click the DOWNLOADS button in the top right corner, rename the
uncompressed folder Adafruit_Fingerprint. Check that the Adafruit_Fingerprint folder
contains Adafruit_Fingerprint.cpp and Adafruit_Fingerprint.h Place
theAdafruit_Fingerprint library folder your <arduinosketchfolder>/libraries/ folder.
You may need to create the libraries subfolder if its your first library. Restart the IDE.
Once you've restarted you should be able to select
the FileExamplesAdafruit_Fingerprintfingerprint example sketch. Upload it to
your Arduino as usual. Open up the serial monitor at 9600 baud and when prompted place
your finger against the sensor that was already enrolled.
You should see the following:

The 'confidence' is a score number (from 0 to 255) that indicates how good of a match the
print is, higher is better. Note that if it matches at all, that means the sensor is pretty
confident so you don't have to pay attention to the confidence number unless it makes
sense for high security applications.
If you want to have a more detailed report, change the loop() to
run getFingerprintID() instead of getFingerprintIDez() - that will give you a detailed
report of exactly what the sensor is detecting at each point of the search process.

Enrolling with Arduino


We did put together a simple sketch for enrolling a new finger via Arduino - its not as easy
to use as the Windows program but it does work. Run
the FileExamplesAdafruit_Fingerprintenroll sketch and upload it to the Arduino,

27

use the same wiring as above.


When you open up the serial monitor, it will ask for you to type in the ID to enroll - use the
box up top to type in a number and click Send

Then go through the enrollment process as indicated. When it has successfully enrolled a
finger, it will print Stored!

Don't forget to do a search test when you're done enrolling to make sure its all good!

28

Package Contents
100% Brand New
1 x Optical Fingerprint Sensor Module All-in-one fingerprint sensors For Arduino
1 x cable

29

Вам также может понравиться