CARRERA:
INGENIERA EN TELEMTICA
UNIDAD DE APRENDIZAJE:
PROYECTO INTEGRADOR VII MDULO
TEMA:
DESARROLLO DE UNA APLICACIN TELEMTICA QUE SIMULE EL
CONTROL DE LAS AULAS DEL EDIFICIO DE LA FACULTAD DE
CIENCIAS DE LA INGENIERA A TRAVES DE UN SISTEMA
BIOMTRICO
AUTORES:
BRIONES BRAVO JHON KEVIN
PERIDO ACADMICO
2016 2017
QUEVEDO LOS RIOS - ECUADOR
UNIVERSIDAD TCNICA ESTATAL DE QUEVEDO
FACULTAD DE CIENCIAS DE LA INGENIERA
ESCUELA DE ELCTRICA
CERTIFICACIN
Atentamente,
Atentamente,
ART. 10.- LOS REQUISITOS PARA SER COORDINADOR DEL PROYECTO INTEGRADOR
SON LOS SIGUIENTES:
a) SER ACADMICO DE UNA DE LAS UNIDADES DE APRENDIZAJE DEL MDULO.
b) HABER RECIBIDO CAPACITACIN EN MODELOS PEDAGGICOS
UNIVERSITARIOS.
c) CAPACIDAD PARA TRABAJAR EN EQUIPOS MULTIDISCIPLINARIOS.
ART. 80.-EL PROYECTO INTEGRADOR (PI) PODR REALIZARSE POR VARIOS ESTUDIANTES,
DE ACUERDO CON LOS OBJETIVOS Y LA COMPLEJIDAD DEL TEMA, SIEMPRE QUE SE
GARANTICE EL TRABAJO INDIVIDUAL DE CADA UNO.
CONTENIDO... PG
DACTILARES ................................................................................................... 13
NDICE DE TABLAS
CONTENIDO... PG
VARIABLES ....................................................................................................... 8
1
ABSTRACT
The present project aims to develop a telematic application that simulates the
control of the classrooms of the building of the faculty of engineering sciences
through a biometric system.
In the first chapter we have the description of the problem, the objectives of the
research, justification of the project, the scope of the project and the methodological
aspects. In the second chapter we find the theoretical framework where we have:
the introduction, history, devices, characteristic components and track record, etc.
The third chapter presents the methodology used, the resources, materials used,
schedules of activities and the budget.
Finally, we have the fourth chapter where we have the descriptions of all stages, the
schemas of the application design, in addition to the parameters of time control that
allows the correct access control
2
CAPTULO I
1.1. INTRODUCCIN
Tradicionalmente se identifica a la persona por algo que posee, como puede ser
una llave o una tarjeta, pero surge el problema de que lo que se posee puede ser
perdido o robado, y de esta manera, cuando el objeto pasa a manos de otra
persona, sta adquiere los privilegios del legtimo dueo.
3
INTRODUCTION
The fingerprint is one of the biometric features, which has been used in a multitude
of identification tasks, the need to be able to identify each person in a fast and
reliable way has led to a rapid development of biometric techniques that allow you
to implement automatic recognition systems.
Security offering to provide the creation of this Project includes several measures
that prevent overlooked in the idenntification, therfore, the classroom is not available
to persons who are not designated in due time in this case teachers or people who
some how want, to harm the establishment stealing components or dest roying them
4
1.2. PROBLEMATIZACIN
1.2.1. DIAGNSTICO
Por lo tanto, este proyecto tiene como objetivo el desarrollo de una aplicacin
telemtica que permita controlar y elevar los niveles de seguridad de un laboratorio
de computacin a travs de la tecnologa biomtrica (detector de huella).
1.2.2. FORMULACIN
1.2.3. SISTEMATIZACIN
5
1.3. JUSTIFICACIN
6
1.4. OBJETIVOS
1.4.1. GENERAL
Desarrollar una aplicacin telemtica para la simulacin del control de las aulas de
la FCI a travs de un sistema biomtrico (detector de huella).
1.4.2. ESPECIFCOS
7
1.5. HIPTESIS
1.5.1. HIPTESIS GENERAL
DEFINICIN
VARIABLES DIMENSIONES SUBDIMENSIONES
CONCEPTUAL
(INDICADORES)
Posibilidad de
crecimiento, no solo de
El desarrollo de la
aplicacin un laboratorio o aula si
ESCALABILIDAD no de todas de la FCI.
INDEPENDIENTE
permitir el registro
de la informacin Sin perder calidad en el
Aplicacin de servicio del detector.
de los docentes y el
escritorio personal
encargado de
ingresar al Garantizar la seguridad
laboratorio. del laboratorio, a travs
CONFIABILIDAD del detector de huellas,
permitir un acceso
correcto.
8
CAPTULO II
2.1. MARCO REFERENCIAL
Reconocimiento facial
Reconocimiento de la voz
9
La ventaja de los sistemas biomtricos est, por una parte, en el aumento de
comodidad para el usuario. Como las caractersticas biomtricas estn unidas a la
persona, sta siempre las lleva consigo, es decir, no las puede perder ni olvidar.
Por eso no hace falta que lleve encima llaves o tarjetas transponedoras. (Bosch,
2005)
Por otro lado, est la ventaja del aumento de seguridad que se consigue. Como las
caractersticas biomtricas son inherentes a las personas, no se pueden transmitir
de forma deliberada ni pueden sustraerse en el sentido tradicional. (Bosch, 2005)
Cada uno de los indicadores anteriores genera una estrategia bsica para el
proceso de identificacin personal. Adems, pueden ser combinados con el objeto
de alcanzar grados de seguridad ms elevados y brindar, de esta forma, diferentes
niveles de proteccin. (FIBI, s.f.)
10
2.1.1.2. CARACTERSTICAS DE UN INDICADOR BIOMTRICO
12
aplicaciones ubicadas en el mismo u otro sistema. Esta puede entenderse
conceptualmente como dos mdulos: (Valadez, 2005)
13
identificacin al ser comparada con la informacin proveniente del indicador
biomtrico en el punto de acceso. (Valadez, 2005)
1. Modo de verificacin, o
2. Modo de identificacin
14
Esto conduce a una comparacin uno-a-uno para determinar si la identidad
reclamada por el individuo es verdadera o no. De manera ms sencilla el modo de
verificacin responde a la pregunta: eres t quin dices ser? (Crucea, 2009)
Las variaciones intraclase implican que la identidad de una persona puede ser
establecida slo con un cierto nivel de confianza. Una decisin tomada por un
sistema biomtrico distingue "personal autorizado" o "impostor". Para cada tipo de
decisin, existen dos posibles salidas, verdadero o falso. Por lo tanto, existe un total
de cuatro posibles respuestas del sistema:
Las salidas nmeros 1 y 3 son correctas, mientras que los nmeros 2 y 4 no lo son.
El grado de confidencia asociado a las diferentes decisiones puede ser
caracterizado por la distribucin estadstica del nmero de personas autorizadas e
impostores. En efecto, las estadsticas anteriores se utilizan para establecer dos
tasas de errores [9]:
1. Tasa de falsa aceptacin (FAR: False Acceptance Rate), que se define como
la frecuencia relativa con que un impostor es aceptado como un individuo
autorizado,
2. Tasa de falso rechazo (FRR: False Rejection Rate), definida como la
frecuencia relativa con que un individuo autorizado es rechazado como un
impostor.
Si, por ejemplo, para el ingreso a un recinto se exige un valor alto para el grado de
parentesco (un valor cercano a 1), entonces pocos impostores sern aceptados
como personal autorizado y muchas personas autorizadas sern rechazadas. Por
otro lado, si el grado de parentesco requerido para permitir el acceso al recinto es
pequeo, una fraccin pequea del personal autorizado ser rechazada, mientras
que un nmero mayor de impostores ser aceptado. (FIBI, s.f.)
1. Rostro,
2. Termograma del rostro,
3. Huellas dactilares,
4. Geometra de la mano,
5. Venas de las manos,
6. Iris,
7. Patrones de la retina,
8. Voz,
9. Firma.
Es ese uno de los motivos de su xito: cualquier persona con pocos conocimientos
de informtica y electrnica puede programarlo e implementarlo. Existen varios
modelos de Arduino como son Uno, Leonardo, Mega, Nano. (Rodriguez, s.f.)
18
Figura 4. Arduino UNO
Fuente: https://openwebinars.net/tutorial-arduino-introduccion/
Autor: Juan Garca.
Son muchos los proyectos iniciados con Arduino, algunos muy conocidos y
prometedores, otros algo ms simples que ofrecen funciones particulares, pero
igualmente interesantes por utilizar esta tecnologa tan popular. Es por ello que hoy
por hoy podremos encontrar muchos nuevos microcontroladores y proyectos
electrnicos que se basan en este hardware libre. (Gonsalez, 2014)
19
Se caracteriza por ser un hardware muy simple, el cual se puede construir con
materiales bsicos, pero a su vez tambin se destaca por ser econmico, por lo que
existen muchos proveedores de este tipo de insumos que se comercializan este
tipo de placas a un muy bajo costo, por lo que es de gran ayuda para el programador
y el tcnico electrnico que est buscando realizar un proyecto nuevo y no quiere
comenzar desde cero. (Gonsalez, 2014)
Con una placa Arduino se pueden hacer muchas cosas, por lo que muchos
expertos en la materia recomiendan acudir a la imaginacin para encontrar solucin
a aquellos problemas frecuentes, que es por lo general el secreto del xito, ya que
resolviendo un problema comn podemos lograr atraer la atencin de una masa
enorme de pblico. (Gonsalez, 2014)
Otras veces su tarea es realizar una serie de acciones sucesivamente sin hacer
ninguna lectura. ste caso sera el de utilizar Arduino para encender
alternativamente las luces de un semforo. (Rodriguez, s.f.)
En este apartado veremos las distintas partes que conformar nuestro Arduino como
son entradas, salidas, alimentacin, comunicacin y shields. (Rodriguez, s.f.)
20
Figura 7. Parte del Arduino.
Fuente: http://comohacer.eu/analisis-comparativo-placas-arduino-oficiales-compatibles/
Autor: Isaac PE
2.1.5.1. ENTRADAS
Son los pines de nuestra placa que podemos utilizar para hacer lecturas. En la placa
Uno son los pines digitales (del 0 al 13) y los analgicos (del A0 al A5). (Rodriguez,
s.f.)
2.1.5.2. SALIDAS
Los pines de salidas se utilizan para el envo de seales. En este caso los pines de
salida son slo los digitales (0 a 13). (Rodriguez, s.f.)
21
Figura 9. Entradas del Arduino.
Fuente: https://blog.theinventorhouse.org/usando-las-entradas-analogicas-de-arduino-como-
digitales/
Autor: Luis Angulo
Tambin tenemos otros pines como los GND (tierra), 5V que proporciona 5 Voltios,
3.3V que proporciona 3.3 Voltios, los pines REF de referencia de voltaje, TX
(transmisin) y RX (lectura) tambin usados para comunicacin serial, RESET para
resetear, Vin para alimentar la placa y los pines ICSP para comunicacin SPI.
(Rodriguez, s.f.)
22
2.1.5.4. ALIMENTACIN
Como hemos visto el pin Vin sirve para alimentar la placa pero lo ms normal es
alimentarlo por el jack de alimentacin usando una tensin de 7 a 12 Voltios.
Tambin podemos alimentarlo por el puerto USB pero en la mayora de
aplicaciones no lo tendremos conectado a un ordenador. (Rodriguez, s.f.)
2.1.5.5. COMUNICACIN
Cuando se inserta una shield sta se comunica con nuestra placa utilizando los
pines ICSP (comunicacin ISP), los pines 10 a 13 (tambin usados para
comunicacin ISP), los pines TX/RX o cualquiera de los digitales ya que son
capaces de configurarse como pines de entrada o salida y recibir o enviar pulsos
digitales. (Rodriguez, s.f.)
23
Figura 12. Comunicacin Arduino Mediante USB Rx y Tx.
Fuente: https://ardubasic.wordpress.com/2013/11/
Autor: Jess lvarez
2.1.5.6. SHIELDS
Traducido del ingls significa escudo. Se llama as a las placas que se insertan
sobre Arduino a modo de escudo ampliando sus posibilidades de uso. En el
mercado existen infinidad de shields para cada tipo de Arduino. Algunas de las ms
comunes son las de Ethernet, Wi-Fi, Ultrasonidos, Pantallas LCD, rels, matrices
LED's, GPS. (Rodriguez, s.f.)
24
similares a su propio lenguaje) los comandos que el equipo deber ejecutar.
(Peralta, 2016)
25
2.1.7. LENGUAJE DE PROGRAMACIN
Los lenguajes que los equipos usan para comunicarse entre ellos no tienen nada
que ver con los lenguajes de programacin; se los conoce como protocolos de
comunicacin. Se trata de dos conceptos totalmente diferentes. Un lenguaje de
programacin es muy estricto: (Perz, 2016)
26
es mucho ms fcil de comprender que un lenguaje mquina:
27
2.1.8. QU ES JAVA
Lo que quiere decir que el cdigo que es ejecutado en una plataforma no tiene que
ser recompilado para correr en otra. Java es, a partir de 2012, uno de los lenguajes
de programacin ms populares en uso, particularmente para aplicaciones
de cliente-servidor de web, con unos 10 millones de usuarios reportados. (Alvarez,
2001)
28
2.1.10. ETAPAS DE DESARROLLO DE SOFTWARE
Consiste en utilizar los modelos creados durante la etapa de diseo para crear los
componentes del sistema. (Garca, 2013)
29
CAPTULO III
3.1. METODOLOGA DEL PROYECTO INTEGRADOR
Este tipo de investigacin es til debido a que al inicio del proyecto es necesario
realizar un anlisis de la situacin tanto actual como pasada en cuanto a la
utilizacin de un control de aulas del edificio de la FCI a travs de un sistema
biomtrico, en la actualidad, existe nuevos proyectos de tecnologa de identificacin
por huella digital se basan en el reconocimiento nico e irrepetible de las
caractersticas fsicas que poseen las huellas dactilares para el uso de sistema de
control biomtrico.
30
3.1.3 DISEO DE LA INVESTIGACIN
31
como solucin al control y acceso ya sea de un grupo social, institucional o de una
regin geogrfica en un instituto de educacin superior.
32
3.2. RECURSOS
MATERIALES DESCRIPCIN
Consultas a expertos
acerca de sistemas
Consultas en libros.
INVESTIGACIN electrnicos
Consultas en Internet.
Equipos de oficina.
Computadora
Hojas A4
OFICINA Laptops
Lapiceros
Impresora
Diodos led.
33
3.3. PRESUPUESTO
VALOR VALOR
N DENOMINACIN CANTIDAD
C/U TOTAL
34
3.4. CRONOGRAMA DE ACTIVIDADES
35
CAPTULO IV
4.1. DESARROLLO
4.1.1. ETAPA I.
Para hacer los sistemas de seguridad ms confiables, es una buena idea combinar
el anlisis biomtrico con un medio convencional de identificacin, como una
contrasea.
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.
36
Figura 17. Display Led 2x16.
Fuente: http://tienda.hacedores.com/
Autor: Roberto Guevara
37
Figura 20. Arduino uno
Fuente: http://tienda.hacedores.com/
Autor: Roberto Guevara
38
4.1.2.1. DISEO DE LA APLICACIN
39
4.1.2.2. DESCRIPCIN A TRAVS DE FIGURAS DEL FUNCIONAMIENTO
DE LA APLICACIN
40
Figura 24. Registro en la base de datos
Fuente: Investigacin
Autor: Estudiantes VII Telemtica
41
Figura 26. Seleccin de Aula
Fuente: Investigacin
Autor: Estudiantes V Telemtica
ADM SQLJAVA
package arduino;
//System
import java.awt.Image;
import java.awt.List;
import java.io.ByteArrayInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
42
import static java.util.Collections.list;
import java.util.Date;
import java.util.Iterator;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.imageio.ImageIO;
import javax.imageio.ImageReadParam;
import javax.imageio.ImageReader;
import javax.imageio.stream.ImageInputStream;
import javax.swing.JOptionPane;
class Adm_sql {
Connection cn;
public Adm_sql(){
usuario="";
try{
cn=con.conexion();
43
PreparedStatement pst = cn.prepareStatement(sql);
pst.setInt(1, id);
pst.setString(2, Nombre);
pst.setString(3, Apellido);
pst.setString(4, cedula);
pst.setString(5, celular);
pst.setString(6, cargo);
pst.setString(7,fecha);
pst.setBinaryStream (8,foto,l);
pst.executeUpdate();
cn.close();
try{
cn=con.conexion();
44
PreparedStatement pst = cn.prepareStatement(sql);
pst.setString(1, Nombre);
pst.setString(2, Apellido);
pst.setString(3, cedula);
pst.setString(4, celular);
pst.setString(5, cargo);
pst.setString(6,fecha);
pst.setInt(7, id);
pst.executeUpdate();
cn.close();
try{
cn=con.conexion();
45
pst.setBinaryStream (1,foto,l);
pst.setInt(2, id);
pst.executeUpdate();
cn.close();
try{
cn=con.conexion();
pst.setString(1, cursp);
pst.setString(2, hora);
pst.setInt(3, personal_id);
pst.executeUpdate();
cn.close();
46
}catch (SQLException ex){
System.out.println(ex.getMessage());
cn=con.conexion();
int resultado=0;
try {
//int i = 0;
while(res.next()){
// usu_id = res.getInt("tm_idusuario");
// usu_login = res.getString("tm_login");
// usu_password = res.getString("tm_password");
// data[i][0] = usu_id;
// data[i][1] = usu_login;
// data[i][2] = usu_password;
47
nombreArrayList.add(res.getString("id"));
//usuario=res.getString("NOMBRES").toString();
//resultado=1;
cn.close();
System.out.println(ex.getMessage());
finally{
return nombreArrayList;
cn=con.conexion();
int resultado=0;
String sql= "select id, nombre, apellidos,cedula, celular, cargo from huella.personal";
try {
48
//int i = 0;
while(res.next()){
// usu_id = res.getInt("tm_idusuario");
// usu_login = res.getString("tm_login");
// usu_password = res.getString("tm_password");
// data[i][0] = usu_id;
// data[i][1] = usu_login;
// data[i][2] = usu_password;
nombreArrayList.add(res.getString("id")+";"+res.getString("nombre")+";"+res.getString("ap
ellidos")+";"+res.getString("cedula")+";"+res.getString("celular")+";"+res.getString("cargo"))
;
//usuario=res.getString("NOMBRES").toString();
//resultado=1;
cn.close();
System.out.println(ex.getMessage());
finally{
return nombreArrayList;
49
public int eliminarsolohorarios(String id){
try {
cn=con.conexion();
//preparedStatement.setInt(1, Integer.parseInt(txtId.getText()));
pst.setString(1, id);
res = pst.executeUpdate();
if (res > 0) {
} else {
//JOptionPane.showMessageDialog(null, "");
cn.close();
System.out.println(ex);
return res;
50
try {
cn=con.conexion();
//preparedStatement.setInt(1, Integer.parseInt(txtId.getText()));
pst.setString(1, id);
res = pst.executeUpdate();
if (res > 0) {
eliminarpersonal(id);
} else {
eliminarpersonal(id);
//JOptionPane.showMessageDialog(null, "");
cn.close();
System.out.println(ex);
return res;
51
public int eliminarpersonal(String id){
try {
cn=con.conexion();
//preparedStatement.setInt(1, Integer.parseInt(txtId.getText()));
pst.setString(1, id);
res = pst.executeUpdate();
if (res > 0) {
} else {
cn.close();
System.out.println(ex);
return res;
52
public ArrayList<String> consulatrhorario(String aula){
cn=con.conexion();
int resultado=0;
try {
//int i = 0;
while(res.next()){
nombreArrayList.add(res.getString("curso")+";"+res.getString("hora")+";"+res.getString("pe
rsonal_id"));
cn.close();
System.out.println(ex.getMessage());
finally{
return nombreArrayList;
53
}
cn=con.conexion();
int resultado=0;
try {
//int i = 0;
while(res.next()){
nombreArrayList.add(res.getString("hora"));
cn.close();
System.out.println(ex.getMessage());
finally{
return nombreArrayList;
54
public ArrayList<String> consultaturno(String hora, String aula){
cn=con.conexion();
int resultado=0;
String sql= "SELECT personal_id FROM huella.horario where hora = '"+hora+"' and
curso = '"+aula+"'";
try {
//int i = 0;
while(res.next()){
nombreArrayList.add(res.getString("personal_id"));
cn.close();
System.out.println(ex.getMessage());
finally{
return nombreArrayList;
55
public ArrayList<String> consultapersonal(int aux){
cn=con.conexion();
int resultado=0;
String sql= "SELECT nombre, apellidos, cedula, cargo, celular FROM huella.personal
where id = "+aux+"";
try {
//int i = 0;
while(res.next()){
nombreArrayList.add(res.getString("nombre"));
nombreArrayList.add(res.getString("apellidos"));
nombreArrayList.add(res.getString("cedula"));
nombreArrayList.add(res.getString("cargo"));
nombreArrayList.add(res.getString("celular"));
cn.close();
System.out.println(ex.getMessage());
56
finally{
return nombreArrayList;
cn=con.conexion();
int resultado=0;
String cadena="";
try {
//int i = 0;
while(res.next()){
cadena=res.getString("NOMBRES")+";"+res.getString("APELLIDOS")+";"+res.getString("
CEDULA")+";"+res.getString("CARGO");
cn.close();
57
} catch (SQLException ex) {
System.out.println(ex.getMessage());
finally{
return cadena;
cn=con.conexion();
boolean b1=false;
try{
pstm.setString(1, id);
int i = 0;
while(res.next()){
byte[] b = res.getBytes("image");
if (b==null) {
b1=true;
break;
58
else{
data = ConvertirImagen(b);
i++;
res.close();
cn.close();
}catch(SQLException e){
// System.out.println(e.getMessage());
if(b1){
return null;
else{
return data;
59
ImageInputStream iis = ImageIO.createImageInputStream(source);
reader.setInput(iis, true);
import java.beans.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
public class ConexionBD {
Connection cn;
Statement st;
Statement createStatement(){
throw new UnsupportedOperationException("No soportado");
}
}
60
4.1.4. ETAPA IV
En el diseo del circuito se puede apreciar los diferentes componentes que se han
utilizado, por lo tanto, una vez culminadas las etapas anteriores, se procede a
cargar el programa a la placa Arduino, de manera que con el siguiente esquema
funcione de manera correcta.
61
4.2. RESULTADOS
Tabla 6. Registro
Fuente: Investigacin
Autor: Estudiantes VII Telemtica
62
4.2.1.3. VARIABLES DE ACCESO CORRECTO E INCORRECTO,
SOBRE ESCALA 1
A travs del balance de error que se produjo, el mismo ocurri debido a uso
continuo del detector de huellas, el cual se sabe empaar debido al numeroso
ndice de accesos que acoge. Nos muestra un ndice de fiabilidad de 0.98 sobre la
escala de 1
63
4.3. COMPROBACIN DE LA HIPTESIS
A travs del uso del biomtrico donde los docentes solo podrn entrar a cada
laboratorio en su horario respectivo y a travs del detector de huellas, respetando
el horario establecido el cual permitir un mejor uso y control al mismo.
64
4.4. CONCLUSIONES
65
4.5. RECOMENDACIONES
Realizar el diseo adecuado que cumpla con cada una de las necesidades
(mejorar el acceso) que se presentan en el laboratorio en lo que concierne
al tema principal del proyecto.
Cada uno de las restricciones que se den dentro de los horarios se debern
tomar en cuenta el uso correcto del detector de huellas, que permitir a cada
docente su respectivo control y acceso.
66
4.6. BIBLIOGRAFA Y LINKOGRAFA
67
Rojas, J. (18 de Enero de 2008). Kimaldi. Obtenido de
http://www.kimaldi.com/area_de_conocimiento/biometria/que_es_la_biomet
ria
Valadez, G. E. (2005). https://gjorge.wordpress.com/2007/12/29/arquitectura-de-
un-sistema-biometrico-para-identificacion-personal/.
68
4.7. ANEXOS
69
70
71