Está en la página 1de 43

UNIVERSIDAD AUTÓNOMA DE CIUDAD JUÁREZ

Instituto de Ingeniería y Tecnología


Departamento de Ingeniería Eléctrica y Computación

Uso de realidad aumentada en dispositivo móvil como herramienta de


trabajo para la Coordinación de Redes y Comunicaciones.

Reporte Técnico de Investigación presentado por:


Julio Froylán Fuentes Razo # 78302
Oscar Ysais Clemente Amaya #85792

Requisito para la obtención del título de

INGENIERO EN SISTEMAS COMPUTACIONALES

Director del Proyecto de Titulación: Luis Felipe Fernández Martínez


Responsable del Seminario de Titulación II: Dr. Jorge Enrique Rodas Osollo

Noviembre de 2012
ii
Autorización de Impresión
Los abajo firmantes, miembros del comité evaluador autorizamos la impresión
del proyecto de titulación

Uso de realidad aumentada en dispositivos móviles como herramienta de trabajo para


la Coordinación Redes y Comunicaciones.

Elaborado por los alumnos:

Julio Froylán Fuentes Razo #78302

Oscar Ysais Clemente Amaya #85792

Dr. Jorge Enrique Rodas Osollo Luis Felipe Fernández Martínez

Profesor de la Materia Asesor Técnico

iii
Declaración de Originalidad
Nosotros Julio Froylán Fuentes Razo y Oscar Ysais Clemente Amaya
declaramos que el material contenido en esta publicación fue generado con la revisión
de los documentos que se mencionan en la sección de Referencias y que el Programa
de Cómputo (Software) desarrollado es original y no ha sido copiado de ninguna otra
fuente, ni ha sido usado para obtener otro título o reconocimiento en otra Institución
de Educación Superior.

Julio Froylán Fuentes Razo Oscar Ysais Clemente Amaya

iv
Dedicatoria

A mis padres, porque creyeron en mí y me sacaron adelante, dándome ejemplos


dignos de superación y entrega, gracias a ustedes, hoy puedo ver alcanzada mi meta,
ya que siempre estuvieron impulsándome en los momentos más difíciles de mi
carrera, y porque el orgullo que sienten por mí, fue lo que me hizo ir hasta el final.

Es por ustedes, por lo que valen, porque admiro su fortaleza ya que han hecho
de mí un hombre de valores y principios honrados y honestos. Sin olvidar ni dejar a
un lado a mis hermanos, tíos, primos, abuelos y amigos que influyeron en mi de
maneras diversas ayudándome a dar lo mejor.

Gracias por haber fomentado en mí el deseo de superación y el anhelo de


triunfo en la vida.

Mil palabras no bastarían para agradecerles su apoyo, su comprensión y sus


consejos en los momentos difíciles.

A todos, espero no defraudarlos y contar siempre con su valioso apoyo,


sincero e incondicional.

v
Agradecimientos
Julio Froylán Fuentes Razo.

En primer lugar, me gustaría agradecer a nuestro director del proyecto de titulación


Luis Felipe Fernández Martínez, por su guía, sugerencias y valiosas correcciones
durante esta investigación.

También me gustaría agradecer a Hugo Miramontes Cadillo, a mi familia y


amigos por su apoyo y colaboración al desarrollo de esta investigación, mi más
profundo y extenso agradecimiento a todos.

Oscar Ysais Clemente Amaya

Primero quiero agradecer al personal de la Coordinación General de Tecnologías de


Información de la UACJ, a la Coordinación de Redes y Comunicaciones, por
brindarnos la oportunidad de poder realizar este proyecto y al apoyo que se nos fue
brindado por parte de ellos.

También quiero agradecer a nuestro director de proyecto el profesor Luis


Felipe Fernández Martínez y al Profesor Miguel Torres por el apoyo que nos
brindaron para poder llevar acabo nuestro trabajo.

A mis amigos por haber estado ahí en todo momento, al escucharme y siempre
darme ánimos y ayudarme en mis fallas y errores.

Y en especial a mi familia quienes me apoyaron en todo momento, desde la


decisión de estudiar la carrera, hasta su culminación.

vi
Índice
Autorización de Impresión............................................................................................iii
Declaración de Originalidad.........................................................................................iv
Dedicatoria.....................................................................................................................v
Agradecimientos...........................................................................................................vi
Lista de Figuras.............................................................................................................ix
Introducción...................................................................................................................1
Capítulo 1. Planteamiento del problema........................................................................2
1.1 Definición del problema y antecedentes..............................................................3
1.2 Objetivos de la investigación...............................................................................3
1.3 Preguntas de investigación...................................................................................3
1.4 Justificación de la investigación...........................................................................4
1.5 Limitaciones y delimitaciones de la investigación..............................................4
Capítulo 2. Marco Teórico.............................................................................................5
2.1 Realidad Aumentada ...........................................................................................5
2.2 Evolución de la Realidad Aumentada .................................................................6
2.3 Tipos de dispositivos móviles..............................................................................7
2.3.1 Teléfonos inteligentes.......................................................................................8
2.3.2 Tabletas.............................................................................................................8
2.4 Sistemas operativos para dispositivos móviles ...................................................9
2.4.1 Android..............................................................................................................9
2.4.2 iOS ....................................................................................................................9
2.4.3 BlackBerry OS ...............................................................................................10
2.4.4 Windows Phone 7 ...........................................................................................10
2.5 Ejemplo de aplicaciones ....................................................................................11
2.6 Librerías de desarrollo .......................................................................................12
Capítulo 3. Materiales y Método..................................................................................14
3.1 Descripción del área de estudio..........................................................................14
3.2 Materiales...........................................................................................................14
3.3 Método...............................................................................................................15
Capítulo 4. Resultados de la investigación...................................................................17
4.1 Presentación de resultados.................................................................................17
Capítulo 5. Discusiones, conclusiones y recomendaciones.........................................20

vii
5.1 Con respecto a las preguntas de investigación...................................................20
5.2 Con respecto al objetivo de la investigación......................................................21
5.3 Trabajo a futuro .................................................................................................22
Referencias...................................................................................................................23
Desarrollo de la aplicación.......................................................................................26
Instalación del servidor HTTP................................................................................30
Creación de marcadores...........................................................................................32

viii
Lista de Figuras
Figura 1. Línea de continuidad de Realidad Mixta de Milgram y Kishino....................5
Figura 2. Ejemplo de imagen postrada en una mesa con Augment [22]......................12
.....................................................................................................................................12
Figura 3. Wikitude mostrando información de la Estatua de la Libertad [23].............12
Se empleó el IDE por sus siglas en inglés (Integrated Development Environment),
Eclipse Indigo con los complementos para poder desarrollar en Android los cuales
son: Android SDK, Android NDK, JDK 6, Eclipse JDT, Android ADT, para poder
crear la aplicación denominada C.E.I.R.A (Catalogo de Equipo Informático con
Realidad Aumentada) (ver anexo 1), tanto como las funciones que utilizará dicha
aplicación como las vistas que desplegará en pantalla.................................................15
Para el manejo del equipo y para poder trabajar con la biblioteca de Vuforia, como es
el SDK y para utilizar las funciones de AR, así como Cygwin para poder hacer la
compilación de la aplicación para su funcionamiento en el entorno del sistema
operativo Android. ......................................................................................................16

ix
Introducción
La Realidad Aumentada (RA) es el término que se usa para definir la visión de un
entorno físico, en la cual se le añaden elementos virtuales por medio de un conjunto de
dispositivos para la creación de una realidad mixta en tiempo real.

A diferencia de la Realidad Virtual (RV) que consiste en introducir al usuario a


un entorno simulado, es decir no sustituye la realidad física, sino sobreimprime los
datos informáticos en el mundo real.

1
Capítulo 1. Planteamiento del problema
El personal de redes, para poder realizar las operaciones de mantenimiento como
pueden ser la revisión de un servidor que no está respondiendo, revisión de los puertos
de un switch, etc.

Al momento de realizar una revisión, el técnico necesita contar con cierta


información, entre ellos número de puertos, que servicios hospeda, que sistema
operativo utiliza y otras características.

Por lo cual es de gran importancia contar con esta información a la mano para
evitar perder tiempo en la consulta de datos, es por esto que se creará una aplicación que
podrá ejecutarse desde un dispositivo móvil, en el cual podrá visualizarse la
información general del equipo.

2
1.1 Definición del problema y antecedentes

En el momento que un encargado del departamento de redes, quienes son los


responsables del monitoreo y mantenimiento del equipo de red en el instituto, se le es
asignado una orden de servicio para la revisión o mantenimiento de un equipo, el
técnico debe realizar una consulta en una base de datos en Excel. Se busca la
información correspondiente del equipo, la cual es registrada en un papel o en la misma
orden impresa, para luego acudir a la ubicación donde se realizará el servicio y el
mantenimiento correspondiente.

Esta forma de trabajar ha originado algunos problemas, por ejemplo: en el


transcurso de la realización del servicio, en ocasiones, el técnico puede llegar a extraviar
la información; a veces la información registrada en papel en la orden de servicio no es
la correcta, provocando así que el técnico regrese a su estación de trabajo y vuelva a
consultar la información nuevamente. Es evidente que los retrasos en la resolución de la
orden dan como resultado un mal servicio.

1.2 Objetivos de la investigación

Proveer de una aplicación en dispositivo móvil, que ayude a los técnicos del
departamento de Coordinación Redes y Comunicaciones de la UACJ a realizar mejor su
trabajo.

1.3 Preguntas de investigación

• ¿Cómo se puede desarrollar una aplicación en los dispositivos móviles para


proporcionar la información del equipo de redes?

• ¿Qué se necesita para desarrollar esa aplicación en Android?

• ¿De qué forma se puede aplicar la Realidad aumentada para dicha aplicación?

• ¿De qué forma se realizará la instalación de la aplicación?

• ¿Qué información proporcionará la aplicación?


3
• ¿Qué software se utilizará para su desarrollo?

• ¿Qué seguridad presenta la aplicación?

• ¿Cuál será el alcance del proyecto?

1.4 Justificación de la investigación

Es necesario tener la información accesible al momento de realizar la revisión de un


equipo, sin requerir de ir a consultarla a la Coordinación de redes y comunicaciones, o
comunicarse con un compañero que los auxilie, ya que esto ocasiona una pérdida de
tiempo en el traslado o en la espera de respuesta.

Para evitar este retraso, se pretende crear una aplicación que contenga la
información general de los equipos, de esta manera el técnico podrá consultar la
información en dicha aplicación reduciendo el tiempo de respuesta al momento de
atender una orden de servicio.

1.5 Limitaciones y delimitaciones de la investigación

Limitaciones

• El equipo móvil en el cual se implementará la aplicación para la Coordinación


de Redes y Comunicaciones.

• Plataforma de desarrollo, de acuerdo con las características del dispositivo


móvil.

Delimitaciones

• La información que se mostrará en pantalla, al momento de realizar la lectura del


marcador.

• El diseño de la interfaz gráfica a mostrar en la aplicación móvil.

4
Capítulo 2. Marco Teórico
A continuación en este capítulo se explicarán, los diferentes aspectos que se emplean
para el desarrollo de aplicaciones móviles que emplean Realidad Aumentada (RA).

En la primera sección se explicará el concepto y características de lo que es la


RA, cómo es que funciona dicha tecnología y qué usos se le pueden dar, en la segunda
sección se explicará, cómo fue la evolución de la misma, sus etapas y qué alcances se
espera de esta tecnología, en la tercera sección se mencionará sobre cómo la tecnología
móvil ha incursionado en el desarrollo de este campo, en la cuarta sección se explicarán
algunos sistemas operativos más utilizados en dispositivos móviles, en la quinta sección
se hará mención de algunos ejemplos de aplicaciones funcionales que la emplean, en la
sexta sección se dará a conocer algunas de las librerías que se pueden emplear para el
desarrollo de aplicaciones.

2.1 Realidad Aumentada


La RA es una tecnología en la cual trata de incluir objetos o elementos virtuales
simulados en un entorno real, con el objetivo de modificar la percepción que se tiene de
la realidad, sin necesidad de modificar o cambiar el mismo entorno. El objetivo de la
RA, es sumergir al usuario en un entorno sintético, sobreponiendo los objetos virtuales
en el mundo real. A diferencia de la Realidad Virtual (RV), el cual su objetivo es llevar
al usuario dentro de un mundo creado virtualmente. Ambas tecnologías, son parte de
una continuidad de realidad-virtualidad, el concepto fue nombrado "realidad mixta"
(MR) por Paul Milgram y Fumio Kishino en 1994 y se puede representar por una
imagen. [1, 3, 4, 10] (ver Figura 1). [4]

Figura 1. Línea de continuidad de Realidad Mixta de Milgram y Kishino

5
2.2 Evolución de la Realidad Aumentada

La RA es una tecnología que ya se había empleado en el pasado, a continuación en esta


sección se mencionará sobre cómo fue evolucionando esta tecnología con el paso del
tiempo.

A mediados del año 1968 Sutherland crea lo que es el primer sistema que
emplea RA, la cual también es el primer sistema que emplea RV, debido a que en
aquella época el poder de procesamiento era muy limitado, solo se podía crear dibujos
sencillos los cuales se podrían mostrar en tiempo real.[30]

Como es el caso de los pilotos de combate, consistía en que por medio de su


casco se les proporcionaba la información de sus objetivos, gracias a esto se logra
identificar dos tipos de RA, la que era basada en la localización de la escena real a
mostrar y la orientación de la cámara y la basada en ciertos marcadores presentes en la
escena a mostrar. [29]

Caudell y Mizell en 1992, utilizan el término de “Realidad Aumentada”, esto


para poder referirse al proceso de añadir información generada por un ordenador al
mundo real, gracias a esto se inician las ventajas entre la RA y la RV. [31]

Rekimoto en el año de 1995, desarrollan NaviCam, este sistema está diseñado


para la detección de marcadores por medio de una cámara y mostrar su resultado en
monitor. Un año después en 1996 desarrollan marcadores de matriz 2D, los cuales
permitían un mayor rango de detección de marcadores en diferentes ángulos. [32]

Kato y Billinghurst desarrollan ARToolKit en el año de 1999, esta es una


librería para el desarrollo de RA, esta es capaz de utilizar el reconocimiento de
marcadores en 2D, esta librería es de código abierto bajo la licencia de GPL. [33]

6
En el mismo año de 1999, Holleret desarrolla un sistema en RA móvil la cual
incluía HDM y una Tablet PC, esta consistía en capturar la información que había en el
exterior y la enviaba a otro sistema del exterior.[34]

En el año del 2001 Reitmayr y Schamaslteig, muestran un sistema de Realidad


Aumentada móvil, la cual era multiusuario, esto con la finalidad de que en el mismo
espacio real combinándolo con objetos virtuales, provocando así la alteración de la
percepción de la realidad para el usuario.[35]

Mohring en el año del 2004, muestra un sistema para la detección de marcadores


en 3D en dispositivos móviles, esta consistía que el mismo dispositivo móvil
reconociera el marcador 3D, para así poder visualizar el objeto o elemento en Realidad
Aumentada. [36]

Henrysson en el año del 2005, desarrolla un juego de tenis en RA para


dispositivos móviles el cual estaba desarrollado con las librerías de ARToolKit. [37]

Reaitmayr en el año del 2006, desarrolla un sistema para los dispositivos PDA,
la cual captura en tiempo real un video del entorno, esto para poder dar seguimiento
hibrido de su ubicación por medio de la Realidad Aumentada. [38]

Los desarrolladores de Mobilizy en el año del 2008, crean una aplicación para
dispositivos móviles, en la cual consiste en una brújula digital que utiliza
posicionamiento GPS, que al posicionarla en algún lugar u objeto, muestra la
información del mismo.[39]

2.3 Tipos de dispositivos móviles

Un dispositivo móvil, se puede definir como un aparato de tamaño pequeño, el cual


cuenta con una capacidad de procesamiento, así como contar con conexión permanente
o intermitente y tienen como objetivo cumplir con una función en específico. Dentro de
7
esta definición, existen una gran variedad de dispositivos móviles para diferentes
aplicaciones, como pueden ser reproductores de audio, cámaras fotográficas, grabadoras
de voz, dispositivos GPS, teléfonos celulares, hasta los PDA's, lector de libros
electrónicos, teléfonos inteligentes y tabletas. En esta sección, se analizarán los
dispositivos conocidos como teléfonos inteligentes o "Smartphones" y las tabletas. [3,
9]

2.3.1 Teléfonos inteligentes

Hoy en día existen en el mercado un gran número de teléfonos inteligentes, los cuales
son muy pequeños en tamaño, pero muy grandes de acuerdo a las prestaciones que estos
ofrecen. Algunos de ellos pueden llegar a compararse a una computadora de gama baja,
ya que cuentan con ciertas características a las de un ordenador personal como lo puede
ser conexión inalámbrica, procesamiento de datos, cámara integrada, entre otras.

Una característica muy importante en la mayoría de estos dispositivos, es la


capacidad de poder instalarle aplicaciones para el uso de más tareas y procesamiento de
datos, estas aplicaciones pueden ser desarrolladas por el fabricante, por una empresa de
desarrollo de aplicaciones o por un desarrollador independiente. Todas estas funciones
se han vuelto muy populares, adicionadas a las funciones habituales de un teléfono
móvil, como lo son él envío y recepción de llamadas, mensajes de texto, mensajes
multimedia y manejo de contactos. [3, 9]

2.3.2 Tabletas

Las tabletas o "Tablets" en inglés, son computadoras portátiles, más grandes que un
PDA (el cual es una agenda electrónica u ordenador de bolsillo personal llamado así por
sus siglas en ingles Personal Digital Assistant) o un "Smartphone", los cuales reciben su
nombre de contar con una pantalla táctil, y carecer de teclado físico, dándoles de esta
manera la forma de una tabla. Estas, cuentan con algunos botones y puertos,
regularmente situados a los costados, como pueden ser el botón de encendido/apagado,
puerto para conectar audífonos, algunas cuentan con puerto USB y una ranura para
insertar una tarjeta de memoria, para así expandir la capacidad de almacenamiento.

8
Las tabletas cuentan con cámara, aunque no son meramente para utilizarlas
como cámara fotográfica, suelen integrarse para utilizar algunas aplicaciones, como
puede ser una aplicación de RA. También cuentan con otros componentes que les
permiten tener conexión inalámbrica, Bluetooth, GPS, lo cual les da una flexibilidad
para ser utilizadas dentro y fuera del hogar u oficina si cuentan con una tarjeta de
conexión 3G. [6]

2.4 Sistemas operativos para dispositivos móviles

Al igual que los equipos personales que cuentan con un sistema operativo (SO), también
para los dispositivos móviles existen sistemas operativos, los cuales están diseñados
para realizar funciones de conectividad inalámbrica, los formatos multimedia y la
interfaz gráfica con la cual interactúa el usuario.

2.4.1 Android

Este SO está desarrollado por Open Handset Alliance y Google Inc., y su modelo de
desarrollo es FOSS (Free and Open Source Software), el cual está basado en un
lenguaje de programación C (núcleo), C++ (algunas bibliotecas de terceros), Java (UI),
con una licencia en Apache 2.0 y GNU GPL 2, además de contar con un núcleo en
Linux. [14]

Este SO está enfocado para ser utilizado en dispositivos móviles, tabletas y otros
dispositivos es un software de código libre por lo cual no tiene ningún costo su uso y
existe una gran cantidad de información para realizar su desarrollo.

2.4.2 iOS

Este SO está desarrollado por Apple Inc. y su modelo de desarrollo es Software


propietario de Apple, el cual está basado en un lenguaje de programación C, C++,
Objective-C, con una licencia en APSL y Apple EULA, además de contar con un
núcleo en Darwin BSD. [13]

9
iOS fue desarrollado originalmente para el iPhone, pero posteriormente, decidió
adaptarse para poder ser utilizado en otros dispositivos de Apple, como el iPod Touch,
iPad y Apple TV. Este SO viene restringido para impedir la instalación en equipos de
terceros. De igual manera, está restringida la instalación de aplicaciones, haciendo pasar
por un proceso de verificación y validación cada aplicación que se desee vender o
compartir por medio de la "iTunes Store".

2.4.3 BlackBerry OS

Este SO está desarrollado por Research In Motion (RIM) y su modelo de desarrollo es


código cerrado, el cual está basado en un lenguaje de programación Java, C++, con una
licencia en propia de RIM, además de contar con un núcleo basado en java. [12]

BlackBerry OS, es desarrollado por RIM, exclusivamente para sus propios


dispositivos móviles. Su principal atractivo fue la sincronización con aplicaciones como
Microsoft Exchange o Lotus Notes, haciéndolo resaltar como la opción principal para
muchos empresarios, para estar siempre en comunicación.

2.4.4 Windows Phone 7

Este SO está desarrollado por Microsoft y su modelo de desarrollo es software


propiedad de Microsoft, con una licencia de Microsoft CLUF (EULA), además de
contar con un núcleo basado en Windows CE 6.0 R3. [11]

Windows Phone es la solución que Microsoft ha decidido implementar para


incursionar en el mundo de los dispositivos móviles. Pasando por una transición de
comenzar por un mercado empresarial, actualmente ha decidido optar por un mercado
más general, adaptándolo con nuevas interfaces para la comodidad del usuario y así
tener una mejor aceptación.

La última versión de Windows Phone es una versión totalmente nueva, haciendo


incompatibles las aplicaciones que ya existían actualmente para este SO, obligando a los
desarrolladores a crear nuevas aplicaciones.

10
2.5 Ejemplo de aplicaciones

Google Goggles es un sistema de reconocimiento visual que, tomando una simple


fotografía nos permite traducir textos, identificar objetos, marcas e incluso resolver
sudokus. Todo el potencial del buscador fraguado en una aplicación muy potente y que
en líneas generales responde muy bien. [19, 20]

Layar es una aplicación que alberga miles de aplicaciones que utilizan Realidad
Aumentada, es una plataforma, en la cual se desarrollan las aplicaciones y se integran al
programa Layar para hacer uso de ellas en forma de capas. A esto se le adicionan
algunas otras características como lo es el uso de brújula, GPS y el uso de objetos 3D
para ayudar al usuario a localizar lugares cercanos como cafeterías, tiendas, aeropuertos,
entre otros establecimientos. [20, 21]

TwittARound es una aplicación disponible para iPhone en la cual emplea RA


para poder visualizar en tiempo real los Tweets que se presenten en la página de
Twitter, además de presentar su geo localización para saber quién publicó el tweet, esta
aplicación fue desarrollada por Michael Zoellner. [20, 21]

Augment es desarrollado por AugmentDev, esta aplicación está desarrollada con


la tecnología Vuforia. Augment permite utilizar cualquier imagen que se tenga en el
dispositivo móvil y utilizarla para simular como sería una imagen impresa y colocada en
un marco o poster en la pared del hogar u oficina. [22]

11
Figura 2. Ejemplo de imagen postrada en una mesa con Augment [22]

Wikitude World Browser es una aplicación que utiliza la realidad aumentada


para mantener informado al usuario, ya que lo ayuda a encontrar los eventos como
pueden ser tweets, artículos de Wikipedia, cajeros automáticos, restaurantes, entre otros,
todo esto ayudándose de los accesorios del dispositivo como la brújula, acelerómetro y
GPS. Desde Wikitude se puede buscar directamente en redes sociales o la red para
ayudar a encontrar un edificio o evento en específico al usuario, todo esto siendo
mostrado en la pantalla del dispositivo móvil gracias a la realidad aumentada. [23]

Figura 3. Wikitude mostrando información de la Estatua de la Libertad [23]

2.6 Librerías de desarrollo

FLARToolkit es una librería de libre uso para la creación de aplicaciones no


comerciales la cual se encuentra bajo la licencia de GLP, esta librería está basada en
ARToolKit que también es de libre uso y con licencia GLP, también puede llegar a
reconocer el marcador de imagen y calcular su orientación y posición en 3D.[18]

Slartoolkit es una biblioteca de Realidad Aumentada para el teléfono de


Silverlight y de Windows, este tiene como objetivo crear en tiempo real las aplicaciones
en RA de modo fácil y rápido, esta biblioteca se basa en NyARToolkit y ARToolKit, la
ventaja es que maneja una doble licencia, esto quiere decir que se pueden crear
aplicaciones de código libre o cerrado. [17]

NyARToolkit al igual que ARToolKit ha sido optimizado para poder ser


utilizado en diferentes plataformas y lenguajes de programación, esta dispone de una

12
licencia comercial o puede ser descargado gratuitamente utilizando la licencia
GPLv2LinceoVR es una librería para desarrollar aplicaciones de AR desarrollada por
seac02, aunque esta librería es de paga, resulta muy interesante ya que provee un gran
apoyo para realizar aplicaciones en tiempo real y de animación, inclusive compatible
con otras librerías que pueden manejar robots a control remoto. [15, 16]

Vuforia es desarrollada por la empresa Qualcomm y utiliza una licencia libre. Es


una librería que brinda alta tecnología al proporcionar reconocimiento de objetos
visuales en 2D, 3D, objetivos de imagen y marcadores 3D de configuración multi-
marcador. Tiene soporte para iOS, Android y unidades de 3D, por lo cual puede ser
utilizara en una gran cantidad de dispositivos. [24, 25]

Atomic es desarrollada por Sologico Libre, la cual es una comunidad para


apoyar la iniciativa de código libre. Esta librería provee las herramientas necesarias para
poder desarrollar aplicaciones utilizando realidad aumentada ya sea en Ubuntu,
Windows o Mac, se encuentra bajo licencia GPL, por lo cual es de uso libre. [26, 27]

Andar es desarrollado y mantenido por el equipo WisTa, esta librería provee lo


necesario para realizar aplicaciones de realidad aumentada utilizando marcadores en
2D. Utiliza una licencia GNU GPL v3, por lo cual puede utilizarse en cualquier
proyecto ya que es de código libre. [28]

13
Capítulo 3. Materiales y Método
En este capítulo hace referencia de los materiales empleados para el proyecto, así como
también se mencionará cual método se utilizó para el desarrollo del mismo.

3.1 Descripción del área de estudio


La realidad aumentada (RA) surge como un área de estudio gracias a la realidad virtual
(RV), en donde a diferencia de este último, no tiene que ser un entorno virtual en su
totalidad, si no que llega a combinarse con los elementos de un entorno real.

La tecnología RA genera una visión compuesta la cual es formada por la


combinación de un entorno real que puede visualizar el mismo usuario y una escena
virtual hecha por computadora, que es mejorada y mostrada en un único entorno,
gracias a esta combinación entre lo real y lo virtual, se puede llegar a realizar
interacciones en tiempo real.

Esto provoca que la información obtenida por el usuario, sea mejor aprovechada
logrando así una mejor optimización al comprender dichos datos y así también
provocando la alteración de la percepción del entorno real. Es decir que los objetos
virtuales, puedan interactuar con el mismo usuario en el mismo entorno real de una
manera natural. El objetivo es que el usuario no sea capaz de discernir entre lo real y lo
virtual

Para la realización del proyecto se estudiaron diferentes tipos de herramientas


para el desarrollo RA, como es el caso del software que empleara, las librerías que se
llegaran a utilizar y especificar qué tipo de hardware se requerirá para el manejo de la
aplicación.

3.2 Materiales

En esta sección se en listan las herramientas que se utilizaron para la elaboración de la


App, así como el hardware y el software.

• Computadora con las siguientes características:

14
o CPU Core i7 a 2.0 GHz

o 8 GB de RAM

o Sistema operativo Windows 7 Ultimate x64

o Tarjeta gráfica nVidia GeForce GTX 460M

• Equipo móvil con las siguientes características:

o 1 GB de RAM

o Procesador Cortex A9 dual-core 1.4 GHz

o Sistema operativo Android 4.0.1

• IDE Eclipse Indigo SR2

• Complemento Eclipse JDT

• Equipo para desarrollo en Java 6 (JDK 6)

• Herramientas para desarrollo en Android (complemento ADT)

• Equipo para el desarrollo de software para Android (Android SDK)

• Equipo nativo de desarrollo para Android (Android NDK 8)

• Equipo para el desarrollo de software para Vuforia (Vuforia SDK 1.5.9)

• Cygwin 2.774

• MySQL 5.5.2.7

• PHP 5.3.16

• Apache HTTP Server 2.2.2.2

3.3 Método

Se empleó el IDE por sus siglas en inglés (Integrated Development Environment),


Eclipse Indigo con los complementos para poder desarrollar en Android los cuales son:
Android SDK, Android NDK, JDK 6, Eclipse JDT, Android ADT, para poder crear la
aplicación denominada C.E.I.R.A (Catalogo de Equipo Informático con Realidad

15
Aumentada) (ver anexo 1), tanto como las funciones que utilizará dicha aplicación
como las vistas que desplegará en pantalla.

Para el manejo del equipo y para poder trabajar con la biblioteca de Vuforia,
como es el SDK y para utilizar las funciones de AR, así como Cygwin para poder hacer
la compilación de la aplicación para su funcionamiento en el entorno del sistema
operativo Android.

Por otra parte se trabajó también con un servidor de HTTP por sus siglas en inglés
(Hypertext Transfer Protocol) (ver anexo 2), para montar un servidor que pudiera
interpretar el lenguaje PHP, y se creó una base de datos en MySQL utilizando
phpMyAdmin para almacenar la información requerida por los técnicos, todo esto para
hacer una comunicación entre la aplicación para Android y el servidor web.

16
Capítulo 4. Resultados de la investigación
En este capítulo se darán a conocer los resultados obtenidos del proyecto.

4.1 Presentación de resultados


Se creó una aplicación la cual utilizando la RA, detecta un marcador y en base a este
marcador se obtiene un parámetro único, el cual utiliza para consultar la base de datos,
con esto se realiza una consulta, la cual recolecta la información del dispositivo,
posteriormente esta información se regresa a la aplicación y en una nueva ventana se
muestra en orden para que pueda ser consultada por el técnico que está utilizando la
aplicación.

Figura 4. Esquema de conexión entre Android, php y MySQL.

A continuación se presenta una breve explicación del uso de la aplicación en un


entorno de pruebas:
El usuario debe identificar la etiqueta que se encuentra en el equipo de red, ya
que por medio de esta etiqueta la aplicación reconocerá la información de dicho equipo
(ver Figura 5).

17
Figura 5. Etiqueta con la cual se realiza el reconocimiento del equipo.

El dispositivo móvil debe estar ejecutando la aplicación, para poder identificar la


etiqueta y así desplegar en pantalla por medio de RA, una ventana en la cual solicitara
una acción del usuario, ya sea ver la información del equipo o cerrar dicha ventana (ver
Figura 6).

Figura 6. Ventana donde se solicita acción del usuario.

Una vez que el usuario pulse sobre el botón para ver la información en pantalla,
se abrirá una ventana donde se mostrarán los datos el equipo, como son la dirección de
IP, sistema operativo instalado, RAM y NVRAM con la que se cuenta, además del
número de inventario y modelo del equipo (ver Figura 7).

18
Figura 7. Se visualizan las ventanas con la información correspondiente del equipo.

19
Capítulo 5. Discusiones, conclusiones y recomendaciones
En este capítulo se presentan las conclusiones extraídas de la investigación y del
desarrollo de la aplicación que se presenta como la solución propuesta, también se
discuten los resultados obtenidos.

5.1 Con respecto a las preguntas de investigación


Derivadas del problema planteado en el primer capítulo, surgieron algunas preguntas de
investigación (sección 1.3), a las cuales se dan respuesta a continuación:

Se cuestiono de qué manera se podría desarrollar una aplicación, la cual


proporcionara la información necesaria a los técnicos de la Coordinación de Redes y
Comunicaciones, a lo cual se estudiaron varias alternativas y se sugirió una aplicación
utilizando Realidad Aumentada instalada en equipos móviles, y una base de datos
almacenada en un servidor que almacenará la información que se desplegaría en la
pantalla del dispositivo.

También se preguntaba cuales herramientas pueden ser necesarias para


desarrollar esta aplicación en Android, así como el hardware necesario para instalar los
programas necesarios para el desarrollo y realizar pruebas de uso en un dispositivo
móvil, para garantizar el buen funcionamiento de la aplicación. A lo cual se optó por
utilizar software de licencias libres, los cuales cumplieran con los requerimientos para
poder cumplir con la solución propuesta.

Al momento que se buscaba aclarar las herramientas, se cuestionó cuales


librerías y complementos serían necesarios para realizar la aplicación con la capacidad
de utilizar la RA, para esto se estudiaron distintas librerías, y los complementos
requeridos para su utilización y ejecución, a lo cual se optó por Vuforia, ya que es una
librería de código abierto y muy potente.

Una vez obtenido las herramientas, se indagó la manera en que se puede


desarrollar esta aplicación, ya que algunas de las librerías requieren de algunos
complementos especiales para poder interpretar el lenguaje y de esta manera hacer el
uso de la Realidad Aumentada. Para esto, se estudió la manera de utilizar las distintas
20
herramientas para aprovecharlas, y de esta manera crear una aplicación que fuera
óptima para el uso de los técnicos pero, sencilla en su uso.

Por otra parte, se indagaba la forma en que la aplicación desarrollada tiene que
ser instalada, ya que las aplicaciones regularmente tienen que subirse a una tienda en
línea. Esta manera no es recomendable, ya que su instalación será requerida únicamente
en los equipos móviles pertenecientes a la Coordinación de Redes y Comunicaciones de
la UACJ, es decir, solamente los técnicos podrían hacer uso de esta herramienta.

Después de haber obtenido la información anterior, se preguntó sobre la


información que debería de desplegarse en la pantalla del dispositivo móvil, a lo cual, se
solicitó se enviara una lista de los datos necesarios a visualizar en la pantalla, esto, para
crear la base de datos con dichos campos.

Otro punto a cuestionar, es respecto a la seguridad de la aplicación, la cual solo


será de uso exclusivo para los técnicos de redes, con la finalidad de no presentarse fugas
de información de los servicios o procesos que estén ejecutando los equipos de red del
instituto. La base de datos, también contara con seguridad, esto para garantizar que sólo
los jefes de la Coordinación de Redes y Comunicaciones manipularan la información.

En base a la solución propuesta anteriormente en el primer capítulo, se preguntó


cuál sería el alcance que tendría el proyecto, a lo cual se decidió delimitarlo a mostrar
los campos requeridos e implementarlo para el Instituto de Ingeniería y Tecnología de la
UACJ. Sin embargo este proyecto podría extenderse a otros institutos posteriormente.

5.2 Con respecto al objetivo de la investigación


El objetivo de haber realizado la investigación fue con la finalidad de poder desarrollar
una aplicación móvil la cual empleará Realidad Aumentada, para ser utilizada como
herramienta de trabajo para la Coordinación de Redes y Comunicaciones de la UACJ y
así poder realizar eficazmente los procesos de revisión y mantenimiento a los equipo de
red del Instituto.
Para poder llevar a cabo el proyecto se tuvo que estudiar lo que es la RA,
comprender como funcionaba y que es lo que se requería para poder crear una

21
aplicación que la implementara. Se analizaron diferentes tipos de herramientas, en este
caso de uso libre, las cuales serían utilizadas para el desarrollo de la aplicación.
También se estudió como se realizaría la conexión con una base de datos la cual tendría
la información requerida por los técnicos de redes para realizar sus operaciones de
mantenimiento. Al integrar estas tecnologías se tuvo que hacer uso los conocimientos
adquiridos en los procesos de diseño, planeación y desarrollo de software.

Se implementaron los requerimientos solicitados por el personal de la


Coordinación de Redes y Comunicaciones, logrando así el cumplimiento y validación
del proyecto.

5.3 Trabajo a futuro


En cuanto a trabajo a futuro, es importante revisar otras librerías de RA, ya que algunas
cuentan con distintas herramientas que pueden dar una experiencia nueva o más robusta.

También es importante revisar alguna otra plataforma como lo puede ser iOS, ya
que Vuforia también se encuentra disponible para este sistema operativo para móviles,
lo cual podría aumentar la gama de dispositivos en los cuales se podría utilizar la
aplicación.

22
Referencias

[1] (2012, Mayo). Realidad Aumentada [Articulo en línea]. Disponible:


http://es.wikipedia.org/wiki/Realidad_aumentada
[2] (2012, Mayo). Realidad Aumentada [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/Realidad_aumentada
[3] Carlos Alcarria Izquierdo “Desarrollo de un sistema de Realidad Aumentada en
dispositivos móviles”, http://riunet.upv.es/bitstream/handle/10251/8597/PFC%20-
%20Desarrollo%20de%20un%20sistema%20de%20Realidad%20Aumentada%20en
%20dispositivos%20m%C3%B3viles.pdf, tesis licenciatura, Universidad
Politécnica de valencia, Valencia, España, 2010.
[4] (2012, Mayo). Realidad Aumentada [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/Continuo_de_la_virtualidad.
[5] (). The father of virtual reality [Articulo en línea]. Disponible:
http://www.mortonheilig.com/.
[6] (2012, Mayo). Tableta [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/Tableta.
[7] Michael Haller, Mark Billinghurst, Bruce Thomas, Table of contents for Emerging
technologies of augmented reality : interfaces and design, Ideal Group Publishing,
2007 ,p vi
[8] Andersen, Peter Bogh, Virtual applications : applications with virtual inhabited 3D
worlds London, Springer, 2004, pp. 258
[9] Arturo Baz, Irene Ferreira, María Álvarez, Rosana García "Dispositivos móviles",
http://156.35.151.9/~smi/5tm/09trabajos-sistemas/1/Memoria.pdf, Investigación,
Universidad de Oviedo, España, 2009.
[10] (2012, Enero) Realidad Mixta [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/Realidad_mixta
[11] (2012, Abril) Windows Phone [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/Windows_Phone
[12] (2012, Mayo) BlackBerry OS [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/BlackBerry_OS
[13] (2012, Mayo) iOS [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/IOS_(sistema_operativo)

23
[14] (2012, Mayo) Android [Articulo en línea]. Disponible:
http://es.wikipedia.org/wiki/Android
[15] (2012) NyARToolKit [Articulo en línea]. Disponible:
http://www.artoolworks.com/products/desk-top/nyartoolkit
[16] (2011) NyARToolkit project [Articulo en línea]. Disponible:
http://nyatla.jp/nyartoolkit/wp/?page_id=198
[17] (2012, Enero) SLARToolkit [Articulo en línea]. Disponible:
http://slartoolkit.codeplex.com/
[18] (2012) ARToolworks [Articulo en línea]. Disponible: http://www.artoolworks.com/
[19] (2011) Google Móviles [Articulo en línea] Disponible:
http://www.google.com/mobile/goggles/#text
[20] (2011) 13 aplicaciones de realidad aumentada [Articulo en línea]. Disponible:
http://www.americalearningmedia.com/component/content/article/69-tester/264-13-
aplicaciones-de-realidad-aumentada
[21] (2012, Enero) alt1040 "Las 5 mejores aplicaciones de Realidad Aumentada para
celulares" [Articulo en línea]. Disponible: http://alt1040.com/2010/01/las-5-
mejores-aplicaciones-de-realidad-aumentada-para-celulares
[22] (2012, Febrero) Google Play [Articulo en línea]. Disponible:
https://play.google.com/store/apps/details?id=com.ar.augment
[23] (2011, Mayo) Wikitude [Articulo en línea]. Disponible:
http://www.wikitude.com/tour/wikitude-world-browser
[24] (2012) Qualcomm [Articulo en línea] Disponible:
http://www.qualcomm.com/solutions/augmented-reality
[25] (2012, Mayo) Vuforia Augmented Reality SDK [Articulo en línea] Disponible:
http://en.wikipedia.org/wiki/Vuforia_Augmented_Reality_SDK
[26] (2011, Octubre) ATOMIC Authoring Tool [Articulo en línea] Disponible:
http://en.wikipedia.org/wiki/ATOMIC_Authoring_Tool
[27] (2011, Noviembre) Sologico libre [Articulo en línea] Disponible:
http://sologicolibre.org/
[28] (2012) Andar [Articulo en línea] Disponible: http://code.google.com/p/andar/
[29] (2009, Noviembre) Loogic [Articulo en línea] Disponible: http://loogic.com/pasado-
presente-y-futuro-de-la-realidad-aumentada/
[30] I. Sutherland, “A Head-Mounted Three Dimensional Display”, Proceedings of
Fall Joint Computer Conference, 1968, pp. 757-764
24
[31] T. P. Caudell, and D. W. Mizell, “Augmented Reality: An Application of Heads-
Up Display Technology to Manual Manufacturing Processes”, Proceedings of 1992
IEEE Hawaii International Conference on Systems Sciences, 1992, pp. 659-669.
[32] J. Rekimoto and K. Nagao, “The World through the Computer: Computer
Augmented Interaction with Real World Environments”, Proceedings of the 8th
annual ACM symposium on User interface and software technology (UIST '95),
1995, pp. 29-36.
[33] H. Kato and M. Billinghurst, Marker tracking and HMD calibration for a video-
based augmented reality conferencing system, Proceedings of the 2nd IEEE and
ACM International Workshop on Augmented Reality (IWAR 99), 1999, pp. 85-94
[34] T. Höllerer, S. Feiner, T. Terauchi, G. Rashid and D. Hallaway, Exploring MARS:
Developing indoor and outdoor user interfaces to a mobile augmented reality
system. Computers and Graphics, 1999, pp. 779–785. Vol. 23.
[35] G. Reitmayr, and D. Schmalstieg, “Mobile Collaborative Augmented Reality”,
Proceedings of the International Symposium on Augmented Reality, 2001, pp. 114-
123.
[36] M. Möhring, C. Lessig and O. Bimber, “Video See-Through AR on Consumer
Cell Phones”, Proceedings of the 3th IEEE/ACM international Symposium on
Mixed and Augmented Reality (ISMAR 04), 2004, pp. 252-253.
[37] A. Henrysson, M. Billinghurst, and M. Ollila, “Face to Face Collaborative AR
on Mobile Phones”, Proceedings of the 4th IEEE/ACM International Symposium on
Mixed and Augmented Reality (ISMAR 05), 2005, pp. 80-89.
[38] G. Reitmayr and T. Drummond, “Going Out: Robust Model- based Tracking for
Outdoor Augmented Reality”, Proceedings of 5th IEEE and ACM International
Symposium on Mixed and Augmented Reality (ISMAR 2006), 2006, pp. 109-118.
[39] (2010, Mayo) Wikitude World Browser [Articulo en línea] Disponible:
http://www.wikitude.com/

25
Anexos
Desarrollo de la aplicación

Como ya se mencionó en capítulos anteriores, se utilizó Vuforia, junto con su SDK, en


base a esto se estudiaron las distintas formas e interfaces que maneja Android para así
desarrollar una aplicación eficiente pero a su vez sencilla de utilizar. Es por esto que se
decidió utilizar “vistas” para visualizar la información en pantalla, ya que en estas se
pueden mostrar los campos requeridos por los técnicos para realizar la revisión de los
equipos de red (ver figura 8).

Figura 8. Campos reuqridos a mostar en la aplicación.

Para esto se utilizó un “manejador” de Android, ya que con este se puede


mandar a llamar la vista en la pantalla del dispositivo móvil, ya que Vuforia emplea una
forma de programación Java junto con programación C++, por lo cual se tiene que
utilizar JNI por sus siglas en inglés (Java Native Interface) para realizar la
comunicación (ver figura 9).

26
Figura 9. Manejador para enviar el mensaje hacia la actividad principal.

Una vez que se creó el manejador, se manda llamar desde la aplicación principal
en el evento “OnResume”, ya que de esta forma, se ejecutará la función al momento de
que detecté el marcador en la cámara (ver figura 10).

27
Figura 10. Función OnResume, trae el mensaje del manejador, se asigna el id y muestra
la vista en pantalla.

Para utilizar la vista, se creó un manejo de botones, en este manejo se asignaron


los “id” de los botones que se utilizarían, y la acción que ejecutaría cada uno de estos al
ser pulsado para el usuario (ver figura 11).

Figura 11. Código para el manejo de los botones.

Una vez que el usuario selecciona el botón “Información” en la pantalla del


dispositivo móvil, este ejecutará la función “dialogoEquipo” (ver figura 12), la cual
colocará la nueva vista en la pantalla en la que se mostrará la información, una vez que
muestre la pantalla, ejecutará la función “InformacionEquipo”, con esto se realizará la
conexión al servidor HTTP, buscará la información, la almacenará en un arreglo y se
asignará a cada objeto correspondiente de la pantalla (ver figura 13).

28
Figura 12. Función “dialogoEquipo” que colocará en la pantalla la vista “dialog” y
ejecutará la función “InformacionEquipo”.

Figura 13. La función “InformacionEquipo” realiza la conexión con el servidor y guarda


la información obtenida del mismo para asignar a los objetos donde se mostrarán en
pantalla.

29
Instalación del servidor HTTP

En este anexo, se dará una breve explicación de instalación del servidor HTTP. Para
esta instalación, se decidió utilizar la aplicación WampServer, ya que esta instala y
configura las herramientas necesarias para montar un servidor con base de datos en
Windows.

Se requiere asignar la carpeta donde se instalará y será la raíz del servidor (ver
figura14) , así como la dirección del explorador por default que se desea utilizar, y se
tendrá que asignar el servidor SMTP por sus siglas en inglés (Simple Mail Transfer
Protocol) y el correo el cual utilizará php en caso de utilizar la función “mail()” (ver
figura 15).

Figura 14. Asignación de carpeta de instalación para el servidor HTTP.

30
Figura 15. Asignación del servidor SMTP y dirección de correo para php.

31
Creación de marcadores

A continuación se dará una explicación de cómo se realiza la creación de las


marcadores.

Primero hay que situarnos en la página principal de Vuforia, una vez en la página, se
requiere iniciar sesión con una cuenta establecida, posteriormente seleccionar la opción
"My Trackables", una vez seleccionada la opción se nos despliega una ventana para
poder iniciar con la creación del proyecto pulsando sobre el botón “New Project” (ver
figura 16).

Figura 16. Menú principal de la página de Vuforia.

Una vez seleccionado el botón se desplegará una nueva ventana donde se le asignará el
nombre, tipo de etiqueta y tamaño del proyecto (ver figura 17).

Figura 17. Ventana de asignación de nombre, tipo y tamaño de marcador.

32
Una vez seleccionado el tipo de etiqueta, se desplegará una nueva ventana donde se
podrá seleccionar una imagen para su carga, dicha imagen será analizada y reconocida
por el sistema (ver figura 18), el sistema tomará la imagen y reconocerá puntos
específicos en toda esta, dichos puntos serán utilizados como referencia, las cuales
ayudarán a la aplicación a reconocerla, la imagen será desplegada mostrando los puntos
a reconocer (ver figura 19).

Figura 18. Pantalla para selecciona y subir imagen.

Figura 19. Asignación de los puntos de reconocimiento.

33
La imagen analizada con el sistema no solo nos da los puntos de reconocimiento, sino
también una calificación basada en estrellas del 1 al 5, entre más puntos de
reconocimiento obtenga la imagen será más alto su valoración y su rendimiento al
momento de realizar la detección, una recomendación que nos proporciona Qualcomm
es, que la calificación mínima requerida para la creación de una etiqueta debe ser 3
estrellas, esto es porque la imagen logra generar un numero promedio de puntos de
reconocimiento óptimo para ser utilizada como un marcador único.

Figura 20. Sistema de evaluación de marcadores.

34

También podría gustarte