Source: http://docplayer.es/558378-Aplicacion-de-la-realidad-aumentada-para-un-sistema-de-entrenamiento.html
Timestamp: 2018-04-24 16:53:43+00:00

Document:
Aplicación de la realidad aumentada para un sistema de entrenamiento - PDF
Aplicación de la realidad aumentada para un sistema de entrenamiento
Download "Aplicación de la realidad aumentada para un sistema de entrenamiento"
Sebastián Herrero Montoya
1 Aplicación de la realidad aumentada para un sistema de entrenamiento Ingeniería Técnica Informática de Gestión, Junio 2011 Proyectista: Carlos Machado Marcos Director: Pau Fonseca i Casas
2 Índice 1. Introducción general i objetivo 1 2. Realidad Aumentada (RA) Elementos necesarios Métodos de visualización Aplicaciones de la RA Cirugía Publicidad Redes Sociales Simulación y entrenamiento Sistema operativo (SO) y dispositivos Android RIM Blackberry Apple iphone iphone 3G iphone 3GS iphone Symbian 24 i
3 3.5. Windows Phone Pocket PC Pocket PC Windows Mobile 2003 y SE Windows Mobile Windows Mobile Windows Phone Creando la aplicación Objetivo de la aplicación Instalar el entorno de trabajo Paso 1: Requisitos del sistema Paso 2: Descarga del Software Paso 3: Instalación del software Paso 4: Ejecutar el software Microsoft Visual Studio Express for Windows Phone Windows Phone Emulator Desbloqueo del dispositivo Paso 1: Darse de alta como desarrollador de aplicaciones de WP Paso 2: Registrarse en DreamSpark Paso 3: Finalizar registro como desarrollador 50 ii
4 Paso 4: Envío de aplicación Detalles de la aplicación Diagrama de caso de uso Pantalla Inicial Menú Funcionamiento Informe económico y sostenibilidad Calendario Conclusiones Bibliografía 63 Anexos 1. Código archivo MainPage.xaml 2. Código archivo MainPage.xaml.cs y SocketClient.cs 3. Pequeños proyectos para aprendizaje del lenguaje C# iii
5 1. Introducción general i objetivo Desde tiempos inmemoriales el ser humano ha hecho uso de la tecnología para hacerse la vida más fácil y cómoda. El descubrimiento de nuevos conocimientos ha permitido crear una serie de elementos de carácter tecnológico y a su vez gracias a la tecnología se han podido realizar estudios para avances científicos. La tecnología avanza cada día más rápido, con la aparición de Internet en el año 1969 ha surgido un nuevo mundo de recursos y ventajas. En la actualidad cualquier persona puede acceder a una gran cantidad de información de casi todos los temas y disciplinas sin moverse de casa. Unos años más tarde, en el 1983, sin saber que más adelante se convertiría en una auténtica revolución, aparece el teléfono móvil. Este dispositivo que previamente se inventó solo con la intención de hacer y recibir llamadas, en la actualidad con la integración de Internet, ya sea por WIFI o por 3G, el hecho de hacer llamadas ha pasado a un segundo plano y las verdaderas protagonistas son la inmensa cantidad de aplicaciones que existen para éstos, que mediante Internet y otros componentes ofrecen casi las mismas prestaciones que un ordenador de sobremesa. Pero la tecnología va más allá y cada vez se orienta más a dar información al usuario sea cual sea su ubicación y a representar situaciones virtuales en la propia realidad. El objetivo de este proyecto es la de implementar el software necesario para que un sistema de realidad aumentada pueda mostrar información de un sistema de entrenamiento. Se quiere crear un sistema que permita representar, a través de la realidad aumentada, la información que se obtiene de una traza de un modelo de simulación. Se decidió realizar este proyecto porque hoy en día la realidad aumentada ofrece muchas posibilidades y es una tecnología muy potente que aún no está explotada. Con este proyecto se aprenderán nuevos conocimientos y se instalaran las bases para poder construir otros sistemas similares al de este proyecto que hagan uso de la realidad aumentada. 1
6 2. Realidad Aumentada (RA) La realidad aumentada, como su propio nombre sugiere, es una tecnología que mezcla la propia realidad física con elementos virtuales, obteniendo como resultado una realidad mixta a tiempo real. No se tiene que confundir con el término realidad virtual, ya que en ésta no interviene la realidad física, es decir, la realidad aumentada sobrepone los elementos virtuales en la propia realidad física, y en el caso de la realidad virtual todos sus elementos son ficticios Elementos necesarios Para poder hacer uso de la realidad aumentada se necesitan una serie de elementos y dispositivos. Los imprescindibles son los siguientes: - Monitor: es el elemento básico dónde se muestra la mezcla de realidad y componentes virtuales. Hay distintos tipos de monitores que van desde los más futuristas (Img. 1) a los más convencionales. Se dará una explicación más detallada sobre técnicas y métodos de visualización en un apartado posterior. (Ver 2.2) Img. 1: Dispositivo headset para realidad aumentada 2
7 - Cámara: dispositivo que toma la información del mundo real y la transmite al monitor. En el mayor número de casos, los elementos virtuales dependen de los elementos físicos, es por eso que se usaran cámaras web (Img. 2) para poder transmitir la imagen al monitor. En el resto de casos, será la propia vista la que jugará este papel. Img. 2: Cámara web convencional - Software: programa que toma los datos reales y los transforma en realidad aumentada. Hay distintos programas que permiten trabajar con realidad aumentada, uno de ellos muy conocido es Flash. Otros software disponibles son: o ARviewer 1 : editor de libre distribución que permite crear aplicaciones fácilmente integrables en dispositivos con sistema operativo Android o ARToolkit 2 : librería muy extensa de software para desarrollar aplicaciones de realidad aumentada. o D.A.R.T 3 : sistema de programación que ayuda a añadir a los software la funcionalidad de visualizar la mezcla de objetos reales y virtuales. Además incorpora librerías de acciones ante estímulos que permiten seguir a objetos con un marcador en un video y reaccionar con información a tiempo real según sea su marcador
8 - Marcadores: los marcadores básicamente son imágenes de símbolos que el software interpreta y de acuerdo a un marcador específico realiza una respuesta específica. Es un recurso muy utilizado y que se está imponiendo actualmente en la publicidad, de lo cual se hablará más adelante (Ver 2.3.2) Hay diversos tipos de marcadores, los más comunes son los llamados marcadores de códigos matriciales (Img. 3). Este tipo de códigos no fueron diseñados para el uso en la realidad aumentada, si no que fueron inventados para ser el equivalente al código de barras. Se decidió crear, porque el código de barras al ser leído genera una serie de números que se buscan en una base de datos para relacionarlo con el producto. Pero el problema reside en que hay muchos productos y sus Img. 3: Clásico marcador del tipo QR números pueden repetirse de código mundialmente. Por esto, en el 1994 en se inventaron los códigos matriciales o código QR (Quick Response). Aunque no todos los marcadores tienen esta apariencia. Como los marcadores los lee el software (a través de la imagen que ve la webcam) pueden ser de cualquier tipo, como por ejemplo cromos. Img. 4: Cromo de realidad aumentada, donde el propio cromo hace el papel de marcador 4
9 2.2. Métodos de visualización A pesar de ser conceptos diferentes, en cuanto a métodos de visualización la realidad aumentada y la virtual se parecen bastante. Ambas necesitan un dispositivo para poder visualizar los elementos virtuales. En el caso de la RA, el monitor sería el dispositivo de uso más frecuente para poder mezclar realidad y ficción. Aunque cada día la lista es más larga incluyéndose muchos más dispositivos como pueden ser cascos (headsets), gafas, móviles (smartphones) e incluso displays espaciales. Sea cual sea el dispositivo de visualización, todos se rigen por el mismo esquema, el esquema de la RA: Img. 5: Esquema sencillo del concepto realidad aumentada A continuación se explican con más detalle algunos de estos dispositivos: - Headsets: los headsets son cascos o gafas (HMD Head-Mounted Display) compuestos de pantallas de cristal líquido que se colocan en frente de los ojos para que el software plasme en ellas las imágenes virtuales. Estas pantallas no son opacas, ya que deben dejar que la vista pueda apreciar la realidad física y a su vez que los elementos virtuales se puedan reproducir y verse como si estuvieran sobrepuestos. Algún ejemplo de headset de tipo casco y gafas podrían ser estos: Img. 6: Distintos dispositivos headset. Pueden ser más sofisticados como el primer (izquierda) hasta de carácter más artesanal como el que se muestra en la última imagen (derecha) 5
10 - Smartphones: Otra manera de poder experimentar la realidad aumentada es a través de los móviles de tipo Smartphone, ya que éstos poseen cámara, una pantalla y la posibilidad de descargar e instalar aplicaciones para el funcionamiento de la RA. Aunque como se dijo en la introducción, la RA se está orientando mucho a proporcionar información en tiempo real al usuario. Este tipo de información suele ser acerca del lugar donde se encuentra, es por esto que además de los elementos mencionados anteriormente, también necesitará: o GPS: Sera necesario que el dispositivo móvil tenga un gps para poder localizar al usuario y más importante aún poder cargar la información vía Internet del lugar donde se encuentra. o Brújula: Además de localizar el dispositivo también se necesita saber la orientación de éste. Esto se puede realizar gracias a una brújula digital, su funcionamiento consiste en la de un pequeño chip que permite mediante una calibración inicial detectar la posición que ocupa el móvil con respecto al campo magnético terrestre. o Acelerómetro: Es un dispositivo que se usa para medir aceleraciones, en el caso de un móvil se usa para saber cuál es la posición de éste respecto a los ejes X, Y, Z. Los móviles que tienen incorporado un acelerómetro, suelen tener un nivel (Img. 7) en cada uno de los ejes, parecido a los que se usan en el ámbito de la construcción para saber si una pared esta recta, donde la burbuja de aire en este caso es de gas y mediante un sensor se sabe cuál es su posición. Img. 7: Nivel de burbuja para saber la posición del dispositivo, en este caso del eje X. 6
11 - Displays espaciales: La Realidad Aumentada Espacial (SAR) hace uso de proyectores digitales para mostrar información gráfica sobre los objetos físicos. La principal ventaja es que el display no está asociado a ningún usuario y así pueden hacer uso todos a la vez y trabajar en grupo, y también que no depende de la resolución de pantalla donde vaya a reproducirse. Además SAR permite al usuario no tener la necesidad de llevar equipo encima como los anteriormente mencionados, ya que gracias al proyector, la imagen virtual se puede reflejar en una pared, una mesa, o incluso en la propia piel. A continuación se muestran y explican una serie de proyectos y aplicaciones que trabajan con la tecnología SAR como máxima protagonista. Seabird 4 Este es el nombre del prototipo de móvil de la compañía Mozilla. En este móvil las pantallas táctiles son secundarias frente a la tecnología SAR que emplea. El Seabird, a parte de una cámara de 8 mpx también poseerá dos picoproyectores de 45 lúmenes y resolución de 960 x 600 píxeles uno a cada lado con los que se reflejará un teclado con el que se podrá escribir como si de un teclado normal se tratará, y en la parte inferior del móvil aparece un touchpad virtual. Img. 8: Prototipo Seabird proyectando un teclado QWERTY y un touchpadh 4 Este móvil fue diseñado por Billy May, el cual trabaja en un en un proyecto dentro de la organización llamado Open Web Concept Phone. El sistema operativo del seabird se basaría en Andorid. Cabe recordad, que este diseño es solo un prototipo, una idea, de cómo Mozilla Labs ve los teléfonos móviles en el futuro. 7
12 Mozilla también propone poder navegar por internet sin la incomodidad de hacerlo en una pantalla pequeña, pues los dos proyectores, aparte de reflejar un teclado también pueden reflejar el contenido de la pantalla. Img. 9: Modalidad de proyección de pantalla y teclado. Además de estas novedades, incluirá un manos libres Bluetooth que también se podrá usar como mouse para controlar el móvil. Img. 10: Manos libres del Seabird con capacidad de ser utilizando como ratón. 8
13 Twinkle Es una interfaz diseñada por investigadores de Tokyo y Keio de realidad aumentada que usa un proyector (Img. 11), a modo de linterna, y una cámara. Su funcionamiento es simple, mediante el proyector reflejan una imagen de un personaje en alguna superficie y la cámara detecta la posición de éste y los obstáculos que tiene a su alrededor. Este tipo de obstáculos pueden ser objetos dibujados en la superficie o incluso sombras reflejadas, ya que también distingue proximidad. Img. 11: Proyector con cámara incorporada para captar las imágenes de éste. La imagen, una vez proyectada puede interactuar con los objetos o las sombras que haya en la superficie tal como esté programado. La cámara detecta que tipo de objeto es y el software se encarga de hacer que el personaje se mueva en consecuencia. Img. 12: El objeto interactúa con las gotas de agua y se moja. 9
14 Skinput Con la colaboración del investigador Chris Harrison de la Universidad de Carneige Mellon y Dan Morris y Desney Tan del laboratorio de Microsoft Research de la ciudad de Redmon se presentó el proyecto de realidad aumentada skinput, el cual trata sobre un sistema en el que el cuerpo humano se convierte en pantalla táctil. A diferencia de los otros dispositivos, la idea de éste se basa en unos sensores acústicos (Img. 13) que captan los sonidos de baja frecuencia cuando hay contactos con la piel. Luego, según unos patrones el software sabe dónde se ha tocado y la acción que tiene que realizar. Img. 13: Brazalete con sensores acústico El sistema es capaz de detectar hasta 5 interacciones próximas entre sí con una precisión del 95%, incluso estando el sujeto en movimiento. El dispositivo tiene forma de brazalete el cual colocado en el bíceps proyecta los elementos virtuales en el antebrazo. En este caso, no se necesita cámara para captar la interacción del usuario ya que este brazalete cuenta con los sensores. Pero sí que se necesita enviar los datos recibidos a un ordenador o móvil que tenga la base de datos de tipos de toques con la piel. Esto se realiza gracias a la conexión Bluetooth de la que dispone el dispositivo. Img. 14: Proyección de un menú en el antebrazo 10
15 2.3. Aplicaciones de la RA Después de la invención de una tecnología surgen muchas aplicaciones para darle uso. El caso más actual es el Iphone, el cual aparte de tener la funcionalidad de teléfono, gracias a sus prestaciones (conexión a Internet, GPS, Brújula, pantalla multitouch, cámara, etc.) dispone de centenares de aplicaciones que hacen uso de ellas. Aplicaciones de ocio, entretenimiento, navegación, calendarios, juegos, etc. En el caso de la realidad aumentada sucede lo mismo, existen muchas aplicaciones de distintos ámbitos. A continuación se describen algunas de ellas: Cirugía En el ámbito de la cirugía la realidad aumentada resulta de lo más útil ya que en el mismo paciente se podría tener información como por ejemplo su tensión arterial, sus pulsaciones y muchos más datos sin levantar la vista a un monitor. Además, también se podría obtener información sobre qué zona es mejor para realizar una incisión, o delimitar los bordes limpios de un tumor invisibles a simple vista, o incluso sobreponer una radiografía. Con todo esto, se minimizaría mucho el impacto de la cirugía en el paciente (Img. 15). Además en ámbitos educativos los alumnos podrán ver desde todos los ángulos el funcionamiento de un cuerpo humano pudiéndolo incluso atravesar. Img. 15: Operación donde se sobrepone a la piel del paciente sus órganos internos 11
16 2.3.2 Publicidad Cada día son más las empresas que hacen uso de la realidad aumentada para anunciar sus productos. Es mucho más visual y entendedor para un consumidor poder ver lo que desea comprar si lo ve desde cualquier perspectiva y en 3D. Ofreciendo además la posibilidad de interactuar con el objeto. Este tipo de publicidad, además de ser más atractiva, despierta más interés y curiosidad en el usuario, y es más probable que éste se interese en el producto y lo compre. Por ejemplo la marca italiana de automóviles FIAT, para anunciar su Fiat 500 propuso a los usuarios crear su propio anuncio con el que solo necesitaban una webcam e imprimirse el marcador de FIAT. Enfocando la webcam al marcador aparecía en el monitor el automóvil y al mismo tiempo el usuario. Otro ejemplo es el de la revista Esquire, en la que se publican muchos códigos QR que se podían visualizar con la ayuda de una webcam y el software adecuado, pudiendo así ver los productos publicitados. Y por último, la empresa danesa de cerveza Carlberg, para mostrar su nueva botella, también hizo uso de un marcador (Img. 16) que gracias al software descargable de su página web podías visualizar. Img. 16: Marcador de la nueva botella de Calsberg 12
17 Redes Sociales La RA también se refleja en el impacto que han tenido las redes sociales. Gracias al elevado número de aplicaciones que existen para dispositivos móviles y gracias también a la geolocalización, surgen muchas más aplicaciones que usan la realidad aumentada para proporcionar información de contactos, lugares, etc. Algunas de ellas son: AugmentedID es una aplicación en la que el usuario que la utiliza debe hacerse una foto para que sea cargada en la base de datos del programa. Luego tiene que decidir qué información (perfil, facebook, twitter, ) desea compartir con el resto de usuarios. A partir de ese momento, cualquier persona que disponga también del software solo tendrá que enfocarlo con la cámara de su dispositivo móvil para poder acceder a su información. Img. 17: Al enfocar a una persona registrada, se muestran sus participaciones en redes sociales 13
18 TwittARound: Twitter es una red social que tiene alrededor de 100 millones de usuarios en el mundo, y la realidad aumentada no ha pasado por alto esa cifra. TwittAround es una aplicación que sobrepone en la pantalla los twits que han sido publicados en la dirección donde enfoca la cámara del dispositivo. Para ello usa el acelerómetro, la brújula y el GPS (también Internet). Es una aplicación que según muchos usuarios no tiene mucha utilidad, pues no consigues nada sabiendo la posición de los usuarios que publican twits. Pero está claro que es otro ejemplo de lo que realidad aumentada puede hacer. Hay otras aplicaciones que usan el mismo método pero para usos más útiles. Layar es una de ellas, y al igual que TwittARound hace uso del GPS para localizar el dispositivo, de la brújula para orientarse y del acelerómetro para saber el ángulo con respecto al suelo. Ésta aplicación da información de edificios, restaurantes, farmacias, paradas de autobús, etc. así como de su localización. También tiene la opción de poder llevar al usuario al punto de interés escogido. Además permite añadir nuevas 5 capas como Wikipedia o Tweetmondo, que tiene la misma función que TwittAround. Es una gran aplicación y sobre todo de gran utilidad ya que en un futuro se podrán añadir nuevas capas con zonas de interés para los usuarios. Otra aplicación muy parecida a Layar es Wikitude, tiene más o menos las mismas funcionalidades pero con otra interfaz y diferentes capas. Con solo un vistazo a la pantalla del dispositivo, se pueden, por ejemplo, localizar hoteles y hostales y saber el número de habitaciones disponibles. 5 Para la adición de nuevas capas se tiene que esperar a que salgan actualizaciones de la versión de la aplicación. No se pueden conseguir de forma individual. 14
19 Simulación y entrenamiento El concepto de simulación es muy amplio y existen muchas definiciones para este término, aunque R.E. Shannon en su libro IEEE Transactions on Systems, Man and Cybernetics 6 da una definición muy completa, la describe como el proceso de diseñar un modelo de un sistema real y llevar a término experiencias con él, con la finalidad de comprender el comportamiento del sistema o evaluar nuevas estrategias -dentro de los límites impuestos por un cierto criterio o un conjunto de ellos - para el funcionamiento del sistema. Para diseñar el modelo del sistema real, la simulación también hace uso de la realidad aumentada. Gracias a ella el modelo se acerca aún más a la realidad ya que ésta interviene en la simulación del proceso, y además ofrece la posibilidad de que el ser humano pueda interactuar también. Esto es una gran ventaja puesto que en un modelo de simulación lo que más dificultad conlleva es simular el comportamiento de las personas, no pudiendo llegar nunca a una aproximación completa a la realidad. Existen infinidad de situaciones que se pueden simular, pero una de las más interesantes es la de sistemas de entrenamiento. Es muy importante el hecho poder practicar antes de enfrentarse a situaciones reales y es aquí donde la realidad aumentada juega un papel muy importante. Actualmente muchos de los simuladores de entrenamiento hacen uso de la realidad virtual, lo cual está bien ya que recrean de manera muy precisa la realidad y los posibles problemas que pueda haber. El problema irradia en que recrean la realidad, nunca trabajan con ella directamente, cosa que la realidad aumentada sí que hace. Algún ejemplo donde el entrenamiento con realidad aumentada aportaría mucho y sería de gran ayuda sería en la policía. Ya que actualmente disponen de campos de tiro y circuitos de entrenamiento donde para practicar disparan a blancos inanimados, sin la posibilidad de que éstos disparen contra ellos. En cambio con realidad aumentada, podrían entrenan contra personas virtuales que tuvieran inteligencia artificial y pudieran interactuar con el entorno e incluso disparar contra los agentes (de forma virtual). 6 Shannon, Robert; Johannes, James D. (1976). «Systems simulation: the art and science». IEEE Transactions on Systems, Man and Cybernetics 6(10). pp
20 Otro ejemplo es la aplicación de la realidad aumentada al entrenamiento de los bomberos. Siempre se ha asociado a los bomberos con la función de apagar fuegos, aunque tengan muchos otros tipos de trabajos. Uno de estas tareas, por ejemplo, es la de rescatar personas de estructuras, para esta labor pueden entrenarse en cualquier tipo de estructura que incluso ellos mismos pueden escoger. Pero a la hora de apagar un incendio, solo pueden practicar de manera casi exacta a la realidad con fuegos en edificios o casas, pero qué sucede cuando el incendio es en un bosque? No pueden escoger parcelas de bosque y prenderles fuego para luego apagarlo y así entrenar. Es aquí donde entra la realidad aumentada, pudiendo conseguir un sistema para poder incendiar una parcela de bosque real con llamas virtuales. 16
21 3. Sistema operativo (SO) y dispositivos Tuvieron que pasar 37 años desde la aparición del primer computador, el ENIAC, para que un ordenador contara con un sistema operativo. Éste vino de la mano de Microsoft con Windows 1.0 en el 1983, el cual era distribuido en 5 diskettes de 5¼ de 360 KB cada uno. Por otro lado, en el 1983, Richard Stallman creó el proyecto GNU con el objetivo de desarrollar un sistema operativo libre, ya que Windows se tenía que comprar. Fue así como nació el sistema operativo Linux y sus múltiples distribuciones: Ubuntu, Kubuntu, Debian, Suse, etc. Por último, Steve Jobs y Steve Wozniak con la ayuda económica de Mike Markkula fundaron en el 1 de abril de 1976 Apple Computer, teniendo como máximo protagonista al Apple I, una computadora por la que Jobs tuvo que vender su camioneta y Wozniak su calculadora HP para crear el prototipo. Estos tres sistemas operativos son los que actualmente rivalizan por ganar usuarios de ordenadores personales y portátiles. Pero qué sucede con los móviles? Desde hace unos años, todos los móviles disponen de un sistema operativo, y al igual que con los ordenadores se pelean entre ellos para tener la mayor cuota de mercado, actualmente en EE UU Android lidera la lista de SOs con un 31,2 %, le sigue RIM de Blackberry con un 30,4%, luego Apple con un 24,7% y finalmente Microsoft con su Windows Phone y Symbian con un 8% y 3,2% respectivamente. A continuación se hará una pequeña explicación de cada uno de estos SO: 17
22 3.1 Android Android fue desarrollado por Android Inc, una empresa que en el año 2005 compró Google. Este sistema operativo es el producto estrella de la Open Handset Alliance, un conjunto de desarrolladores de software y hardware, así como también de fabricantes y operadores de servicio. Tiene un núcleo Linux, lo que dio un soplo de aire fresco a la industria de la telefonía móvil y el hecho de que sea abierto fue una de las claves de su éxito, aunque no es completamente libre. Es la primera vez que Android se convierte en el SO más usado en smartphones en Estado Unidos. Un dato curioso es que una gran parte de la gente desconoce el sistema operativo Linux, y un tercio de ésta lo usa diariamente en su dispositivo Android. Además posee una gran comunidad de desarrolladores de aplicaciones, actualmente el número está sobre las Al ser open source, Android tiene una página web donde se puede descargar el kit de desarrollo de software Android [http://developer.android.com/sdk/index.html ]. Android Market es la tienda administrada por Google responsable de distribuirlas en línea, aunque también se puede obtener el software de manera externa. Todos estos programas tienen en común a Java como su lenguaje de programación, al cual se le puede sacar mucho partido gracias a los procesadores de 1 GHz como el del Sony Ericcson Xperia X10 o el de la HTC Desire. Img. 19: Sony Ericsson Xperia X10 Img. 18: HTC Desire 18
23 La arquitectura de Android se compone por diversos elementos, los más importantes son los que se muestran a continuación: - Las aplicaciones base de cualquier dispositivo con SO Android incluyen un cliente de correo electrónico, capacidad de enviar SMS, calendario, agenda de contactos, mapas, etc. - La arquitectura del armazón de aplicaciones está diseñada para simplificar la reutilización de componentes, es decir, una aplicación puede mostrar sus capacidades y otra luego poder usarlas. El usuario puede reemplazar componentes gracias a este mecanismo. - En cuando a las librerías, Android incluye un conjunto de éstas de C y C++. Algunas de estas librerías son SQLite, librerías para el uso del 3D así como de gráficos, etc. - Runtime de Android: cada aplicación Android tiene su propia instancia en la máquina virtual Dalvik, es decir, que cada una corre su propio proceso. Dalvik, compuesto de registros y con clases compiladas en Java, está escrito de tal forma que optimiza el uso de memoria mínima. - Por último, como se ha mencionado anteriormente, los sistemas Android poseen en su interior un núcleo Linux, que se encarga de los servicios bases de seguridad, gestión de memoria y de procesos, pila de red, etc. Además el núcleo actúa de capa de abstracción entre el hardware y el resto de software. 19 Img. 20: Arquitectura de un SO basdo en Android
24 3.2. RIM Blackberry RIM (Research In Motion) es una compañía canadiense fundada en 1984 de telecomunicaciones más conocida por ser la creadora de los dispositivos Blackberry. Antes de embarcarse en este proyecto, RIM trabajaba con la compañía Ericsson y con memoria RAM de datos móviles para competir contra el SkyTel de Motorola. Los dispositivos Blackberry cuentan con un sistema operativo que trabaja en un entorno multitarea. El SO está diseñado para dar soporte a Java MIDP 1.0 y WAP 1.2. El actual SO, el 5.0, proporciona un subconjunto de MIDP 2.0 y permite la sincronización con Microsoft Exchange Server para el correo electrónico, calendario, citas, tareas, etc y además añade soporte para Lotus Notes y Novell GroupWise. Está todo escrito en Java, así pues se pueden crear y ejecutar aplicaciones con el estándar J2ME de java. En cuanto a la CPU, los primeros dispositivos Blackberry utilizaban un chip Intel La serie 8000 de Blackberry inlcuido el Pearl ya utilizaban un ARM XScale, ARMv5TE y PXA 900 de 312 MHz, a excepción del 8707 que usaba un chip Qualcomm 3250 ya que el PXA 900 no soportaba la tecnología 3G. En Mayo de 2008, la Research In Motion introdujo en las series 9000 de Blackberry un XScale de 624 HMz. En la actualidad, los smartphones de Blackberry más comprados son el modelo Storm (Img. 21) con una CPU Qualcomm a 528 MHz igual que el modelo Curve 8530 con otro Qualcomm, el MSM7600, el modelo Bold 9000 (Img. 22) con un procesador algo superior, un Intel XScale PXA270 con 624MHz. Y finalmente el modelo no tan visto, el Torch (9800) que aunque es de una gama más alta que el Bold, conserva el mismo procesador a 624 MHz. Img. 21: Blackberry Storm 20 Img. 22: Blackberry Bold
25 3.3. Apple Apple Inc., con su sede en California, siempre se ha caracterizado por tener un software y hardware muy novedosos y con las últimas tecnologías, así como también por sorprender con unos diseños inverosímiles. Un buen ejemplo de esto es uno de sus nuevos productos, el MacBook Air, un finísimo ordenador portátil, pero con unas prestaciones muy potentes. Apple no quiso quedarse fuera del mercado de la telefonía móvil, esperándose así hasta la aparición de los teléfonos inteligentes, para lanzar al mercado lo que aún a día de hoy es una auténtica revolución, el iphone. Este dispositivo posee un sistema operativo llamado ios que ocupa menos de 500 MB. Es una variante del Mac OS X que se encuentra en los ordenadores Mac. El ios tiene 4 capas de abstracción: - La capa del núcleo del sistema operativo - La capa de servicios principales - La capa de medios de comucación - La capa de chocolate touch Al igual que en el caso de Android, Apple tiene la tienda virtual Apple Store para poder descargarse aplicaciones, algunas son de pago, de todo tipo: juegos, entretenimiento, navegación, utilidades, de cámara, bolsa, climatología, etc. Y entre estas aplicaciones también están las de realidad aumentada, como pueden ser Layar o Wikitude comentadas en un apartado anterior. Por otra parte, como sucede en el caso de Android, el propio usuario puede crear sus propias aplicaciones teniendo conocimientos de Objective-C, variante del C, que es el lenguaje de programación que usan las aplicaciones de iphone. 7 Además, existe el proceso Jailbreak, comúnmente conocido por piratear el iphone, que permite instalar aplicaciones no autorizadas por Apple, aunque sean las mismas que están en Apple Store. El mayor inconveniente es que al utilizar este recurso, se pierde toda garantía y soporte de la casa Apple, pero en contraposición se puede hacer un restaurado del sistema dejándolo tal y sale de fábrica. A pesar de que parezca un procedimiento ilegal, tras una resolución judicial, el Jailbreak es declarado totalmente legal. 7 El SDK se puede encontrar en [http://developer.apple.com/xcode/]. 21
26 Igual que otras compañías, Apple ha ido actualizando su único dispositivo móvil. A continuación se muestran y explican cada una de las versiones con sus principales características: iphone Este fue el primer dispositivo móvil que Apple lanzó al mercado. Con una apariencia muy similar al ipod, el iphone hizo que millones de personas salieran a la calle para hacer largas horas de cola con tal de conseguir uno de éstos. Algunos elementos a destacar son la pantalla capacitiva, el altavoz y micrófono, una humilde cámara de 2 MPX, un jack de 3,5 mm para auriculares y conectividad EDGE y WI-Fi. En cuanto a procesador contaba con un ARM11 a 412 MHz iphone 3G Muy parecido a su antecesor con la única diferencia de incorporar conectividad 3G y una nueva carcasa enteramente de plástico a diferencia del primero que tenía la parte delantera metálica y un procesador ARM11 a 667 MHz, solo que funcionaba a 412 MHz ya que el iphone 3G se underlockea para ahorrar batear iphone 3GS En esta actualización se aprecian muchas más diferencias que del primero al segundo. Es el doble de rápido que el 3G, de ahí viene la S, de Speed. Además de la velocidad, posee grabación de video, algo que se echó mucho en falta en las anteriores versiones, con una cámara de 3 MPX con autofocus y balance de blancos. También posee brújula, comandos de voz, y la capacidad de copiar y pegar. Otro punto a favor es la prolongación de la batería. Cuenta además con un procesador ARM Cortex-A8 a 620 Mhz a pesar de que su frecuencia normal fuera de 833 MHz. 22
27 iphone 4 La última versión del smartphone de Apple ya presenta muchas mejoras respecto a sus hermanos pequeños. A simple vista se nota un cambio considerable en el diseño: tanto la parte frontal como dorsal están hechas de vidrio con silicato de aluminio que hace mucho más resistente la pantalla contra ralladuras y golpes. Además todo él está rodeado por un marco de acero inoxidable que también hace a la vez función de antena. En cuanto la pantalla, decir que es de 3,5 pulgadas y con 960x640 PX, denominada por Apple como retina display tiene el cuádruple de resolución que la del 3GS. Algo que también se echaba de menos era poder realizar videoconferencias y es por esto que el iphone 4 ya incorpora una cámara frontal, además de la trasera de 5 MGX con un led flash. Otras características son la integración de GPS, memoria RAM de 512 MB, un procesador Apple A4 a 1 GHz (pero debido al underlock para ahorrar batería, igual que en el 3G, funciona a 800 MHz), y la capacidad de reproducir y grabar videos en HD 720p, y al igual que todos sus predecesores, pantalla multitouch. A pesar de un pequeño problema de cobertura que se solucionó con unas fundas que regalaba Apple y el despido del ingeniero responsable de tal error, el iphone 4 es un dispositivo muy completo. Img. 23: Iphone 3G Img. 24: Iphone 3GS 23 Img. 25: Iphone 4
28 3.4. Symbian Symbian Ltd. es una empresa de desarrollo de software con sede en Londres. Aunque desarrolla otros tipos de software, es conocida por ser la creadora del sistema operativo Symbian OS. En sus inicios, en el 1998, estableció una alianza con Ericsson, Nokia, Motorola y Psion, para poder competir con los sistemas operativos de Palm y Windows Mobile. Nokia tenía el 56,3% de la empresa, por lo que finalmente en el 2008 compró las acciones que no poseía haciéndose así con la totalidad de la empresa. A partir de ese momento todos los dispositivos móviles Nokia pasaron a tener Symbian OS. Éste cuenta con 6 tipos distintas de interfaces de usuario o plataformas para su sistema operativo: - Serie 60, Serie 80, Serie 90: Son las series que usan la mayoría de los móviles con Symbian. La Serie 60 en Img. 26: Nokia 5800 xpress Music concreto, fue el sistema operativo que propuso Symbian para sus Smartphones. Está compuesto por un conjunto de bibliotecas y aplicaciones informáticas estándar. - UIQ: desarrollada por UIQ Technology, es la que usan principalmente Sony Ericsson y Motorola - MOAP: usada por algunos móviles con tecnología 3G de NTT-Docomo. El SDK de Symbian es el estándar de C++ aunque este tipo de sistema operativo, soporta aplicaciones escritas en Java MIDP 2.0, flash y pyhton. En cuanto al kernel de Symbian, es un microkernel que contiene solo lo mínimo, órdenes primitivas básicas y de funcionalidad para ofrecer máxima robustez y una rápida capacidad de respuesta. Además contiene un planificador, un gestor de memoria y controladores de dispositivos, con servicios de apoyo a la creación de redes. 24
29 Symbian se creó en base a la integridad y seguridad de los datos del usuario. Para esto el microkernel de Symbian mantiene la separación entre la interfaz de usuario y el motor del sistema. Además el SO está optimizado para el rendimiento en dispositivos de bajo consumo alimentados por batería, por lo que la CPU del dispositivo se cambia a modo de bajo consumo cuando no hay aplicaciones en foreground. Por otro lado, el sistema operativo sigue un modelo de capas, desde la más alta hasta la más baja, esta sería su composición: Marco de la interfaz del usuario Capa de servicios de la aplicación o Java ME Capa de servicio del SO o Servicios genéricos del SO o Servicio de comunicaciones o Servicio de gráficos y multimedia o Servicios de conectividad Capa de servicios base Capa de interfaz hardware y servicios del kernel Igual que en los otros sistemas operativos, los teléfonos Nokia disponían de la tienda OVI (OVI Suite) donde poder comprar y descargar aplicaciones de todo tipo, aunque igual que en Android había otros métodos para descargarlas e instalarlas. En la actualidad y tal como adelantaba The Wall Street Journal, la compañía Nokia integrará en sus dispositivos Windows Phone, así como algunas de sus aplicaciones como el Microsoft Marketplace y los mapas de Bing. Img. 27: Sony Ericsson Vivaz 25
30 3.5. Windows Phone Este es el sistema operativo en el que más énfasis se pondrá en la explicación, ya que el objetivo de este proyecto es la creación de una aplicación de realidad aumentada para un dispositivo móvil con Windows Phone. Anteriormente llamado Windows Mobile, Windows Phone es la propuesta de la multitudinaria empresa dirigida por Bill Gates por hacerse un sitio entre los primeros en el mercado de los smartphones. Este SO se basa en el sistema operativo Windows CE y como el resto cuenta con unas aplicaciones básicas, solo que estas utilizan las API de Windows. Han sido muchas las versiones que han ido apareciendo de Windows para móviles, desde Pocket PC 2000 hasta el actual Windows Phone 7. A continuación se hará un breve recorrido por cada una de ellas mostrando además una imagen de la pantalla inicial para que se pueda apreciar un poco más los cambios que ha habido: Pocket PC 2000 Como su nombre indica se empezó a comercializar en Abril del 2000 bajo el sobrenombre de Rapier, y se lanzó con la intención de que fuera el sucesor del sistema operativo que funcionaba en los equipos Palm. La única resolución compatible con este SO era de 240x320 (QVGA) y, en cuanto a la utilización de memorias externas, solo permitía el uso de tarjetas CompactFlash y MultiMedia. Además, como en ese momento no se había normalizado aun una CPU para los dispositivos Pocket PC, se publicaron múltiples arquitecturas de CPU como SH-3, MIPS y ARM. Algunas de las características y aplicaciones integradas en Pocket PC 2000 fueron: Pocket Office Pocket IExplorer Windows Media Player Microsoft Reader Img. 28: Pantalla inicial de Pocket PC
31 Pocket PC 2002 Originalmente con nombre Merlin el Pocket PC 2002 fue lanzazo al mercado en abril de Igual que su antecesor fue impulsado por Windows CE 3.0 y la máxima resolución que soportaba era 240x320 (QVGA). Fue la primera vez que también se podía usar este SO en smartphones, básicamente los dispositivos GSM. En cuanto a la apariencia, intentó parecerse al recien lanzado Windows XP. Algunas de sus aplicaciones y características eran: Interfaz de usuario mejorada Corrector ortográfico Posibilidad de guardar las descargas Sincronización con carpetas MSN Messenger Servicios de Terminal Server Mejora en Pocket Outlook Microsoft Reader 2 Img. 29: Pantalla inicial de Pocket PC Windows Mobile 2003 y SE La tercera y renombrada versión del sistema operativo de Windows fue lanzada en abril de 2003 con el nombre en código de Ozono, y llego en cuatro ediciones distintas: para pocket PC (Premium Edition, Professional Edition y Phone Edition) y para Smartphone. Las diferencias más significativas están en que la Phone Edition es una edición diseñada especialmente para teléfonos móviles, y luego la edición Premium tenía un cliente de VPN L2TP/IPSec. que la Professional no tenía. 27
32 Algunas características: Apoyo a la extensión de teclados Bluetooth para auriculares Mejores en el Bluetooth Mejora de IExplorer Pocket Outlook con apoyo vcard y vcal Windows Media Player 9.0 Soporte para archivos MIDI Se tuvo que esperar hasta Marzo de 2004 para ver una nueva versión del SO de Microsoft. El Windows Mobile 2003 Second Edition se mostró en un Dell Axim x30. Esta fue la última versión que permitía hacer copias de seguridad y restaurar todo el sistema a través de ActiveSync. Alguna de las novedades fue la posibilidad de poner la pantalla apaisada (en horizontal), el diseño en columna única del IExplorer, resoluciones de pantalla VGA (640x480), (176x220), (240x240) y (480x480), y por último protección WPA para conexiones Wi-Fi. Img. 30: Pantalla inicial de Windows Mobile 2003 Img. 31: Dell Axim X3 28
33 Windows Mobile 5 La versión de Windows Mobile 5 fue presentada en el Microsoft s Mobile and Embedded Developers Conference en Las Vegas el 9 de Mayo de Se mostró rodando dentro de un dispositivo Dell Axim x51. Entre algunas mejoras, este SO incluye mejoras de funcionalidad en Microsoft Exchange en comparación con la versión de 2003, además con las actualizaciones de WM 5.0 AKU2 todos los dispositivos podían soportar y ser compatibles con DirectPush. Otra mejora importante en este sistema operativo es la prolongación de la batería gracias a la capacidad de almacenaje persistente, ya que en las versiones anteriores hasta el 50% de la carga de la batería se encargaba de mantener los datos en la memoria RAM volátil. A partir de ese momento todas las versiones de Windows Mobile hacían uso de la memoria RAM como medio de almacenamiento primario combinado con una memoria flash. Los programas y datos de uso más frecuente se almacenaban en la RAM y el resto de datos en la memoria flash. Por último cabe a destacar que cualquier copia de seguridad que se hiciera, se guarda en la memoria flash a diferencia de las versiones anteriores que lo hacían en la RAM, así pues se conservaran todos los datos en todo caso. Algunas aplicaciones y actualizaciones: Nueva versión de Office, Office Mobile Windows Media Player 10 Identificación de llamada por fotografía Mejorado el soporte Bluetooth GPS ActiveSync 4.2 con un incremento del 15% en la velocidad de sincronización. Img. 32: Pantalla inicial de Windows Mobile 5 29
34 Windows Mobile 6 Se tuvo que esperar hasta el 12 de febrero de 2007 para que en la 3GSM World Congress se presentara el nuevo sistema operativo de Microsoft, el Windows Mobile 6 bajo el sobrenombre de Crossbow, en un SPV E650. Se lanzó en tres versiones diferentes, una para smartphones (Windows Mobile 6 Standard), otra para PDAs con función de teléfono (Windows Mobile 6 Professional) y la última para PDAs sin función de teléfono (Windows Mobile 6 Classic), todos ellos en base a Windows CE 5.2 y con claros dejes con Windows Vista, Windows Live, Microsoft Office y Exchange Img. 33: Pantalla inicial de Windows Mobile 6 Igual que en la versión de Pocket PC 2002 que intentó parecerse a la versión de Windows XP, el Windows Mobile 6 hizo lo mismo pero con la última versión del sistema operativo de Windows, el Vista. Funcionalmente se asemeja mucho a Windows Mobile 5 pero con varias mejoras en estabilidad. En cuanto a especificaciones: Soporte para resoluciones 800x480 y 320x320 Desarrollo y distribución de aplicaciones más rápido Windows Live para Windows Mobile Operating System Live Update Outlook con soporte para HTML Soporte para AJAX, JavaScript y XMLDOM.NET Compact Framework v2 SP1 en la ROM SQL server Compact Edition en la ROM Opción de 1:1 en páginas web Soporte VoIP con los códec ce audio AEC y MSRT Img. 34: SPV E650 30
35 Casi un año más tarde, el 1 de abril de 2008, salió la primera actualización de Windows Mobile 6. Esta actualización, la 6.1, trae consigo varias mejoras de rendimiento y en la Standar Edition una nueva pantalla inicial con fichas horizontales que se expanden al hacer clic para tener más información. También se añadió un programa de primeros pasos, como una especie de Paseo por Windows. Algo importante a destacar es que la Standar Edition tiene la característica de crear vínculos automáticos para los números de teléfono almacenados en Tareas y Citas que permite la fácil comunicación con Outlook. Además se mejoró el ancho de banda optimizando en el protocolo de push- ActiveSync. Img. 35: Pantalla inicial de Windows Mobile 6.1 En el año 2009, más concretamente el 7 de Mayo, apareció la actualización 6.5. En esta actualización considerada menor, se aprecia una nueva interfaz gráfica de usuario (GUI) y un nuevo navegador web con una interfaz mejorada y más intuitiva. Esta versión fue diseñada para que el uso de la pantalla táctil fuera más sencillo. Por otro lado, SkyMarket pasó a llamarse a Windows Marketplace, y aparece la Microsoft My Phone que permite disponer de 200 MB para hacer copias de backup. Img. 36: pantalla inicial de Windows Mobile
36 Más tarde apareció la versión la cual trae una interfaz de usuario mucho más amena y amigable para el uso con los dedos además de los botones basados en imágenes que hay en la pantalla. A parte de esto da apoyo para el A-GPS por parte de Microsoft en lugar de por parte del operador telefónico, mejoras en cuanto a la escritura de mensajes de texto (SMS) y optimizaciones de rendimiento. El 2 de febrero de 2010, presentado en el Sony Ericsson Aspen apareció la versión 6.5.3, aunque extraoficialmente ya circulaba por algunos dispositivos. Esta nueva versión, igual que en las anteriores, trae mejoras en la interfaz de usuario como el uso aún más fácil de la pantalla táctil, soporte multitouch y la capacidad de manejarla con los dedos en vez de con un lápiz, además incorpora la capacidad de poder arrastrar elementos al menú inicio. Por otro lado Internet Explorer Mobile 6 también trae mejoras reduciendo el tiempo de carga de la página y de gestión de memoria. En cuanto a Microsoft Office, esta nueva versión trae Office Mobile Img. 37: Pantalla inicial de Windows Phone Al margen de esta última actualización reconocida por Windows, han parecido de manera no oficial algunas otras versiones desde la aparición de la 6.5. Como no son oficiales, se denominan como versión 6.5.x donde x puede cambiar dependiendo del autor de la actualización. De manera resumida, a todas estas versiones se les llama
37 Windows Phone 7 Windows Phone 7 fue anunciado el 15 de Febrero de 2010 en el Mobile World Congress en Barcelona, bajo el nombre en clave de Photon. Este sistema operativo, a diferencia de sus sucesores está más enfocado para el consumo comercial y no tanto para el empresarial. Además con esta edición Microsoft buscará unos estándares mínimos de calidad así como unas configuraciones de hardware muy concretas, y anuncian que para finales de 2011 habrá una gran actualización que será capaz de competir con los sistemas operativos ios y Android. Igual que pasó en la transición de Pocket PC 2002 a Windows Mobile 2003, se vuelve a renombrar al nuevo sistema operativo como Windows Phone Serie 7, pero tras una serie de polémicas y quejas de lo largo y complicado que era el nombre, la multinacional decidió prescindir de la palabra Serie quedándose solo en Windows Phone 7. Microsoft lo justificó diciendo que: Los clientes quieren poderlo decir de una manera simple y coherente, pero que lo importante era mantener la marca Windows Phone. Una de las novedades más interesantes es la nueva interfaz de usuario que se aprecia en la imagen posterior, conocida como Metro, que comparte características visuales con la interfaz de Zune HD (PONER RESEÑA). A primera vista lo que más sorprende es la pantalla inicial, la cual está compuesta por mosaicos que cambian de manera dinámica mostrando información personalizable por el usuario. Dicha información puede ser desde SMS o mails pendientes, citas, juegos, etc. Además estos mosaicos pueden arrastrarse y colocarse donde más se desee. Img. 38: Dispositivo con sistema operativo Windows Phone 7 33
38 Estos son los requisitos hardware para instalar un WP7 en un dispositivo, según Microsoft son altos, pero justos : Requisitos hardware para WP7 Pantalla capacitiva con resolución WVGA (800x480) con 4 puntos multitouch 1 GHz ARM v7 Cortex/Scorpion GPU DirecX 9 con capacidad de representación 256 MB de RAM con al menos 8 GB de memoria flash Acelerómetro con brújula, sensor de luz, sensor de proximidad y A-GPS Cámara de 5 MPX con flash FM Radio 6 botones dedicados: Volver, Inicio, Buscar, On/Off, cámara, volumen up/down Otra gran novedad es la denominada hub. La función de los hubs es clasificar y agrupar acciones y aplicaciones en grupos que tengan una actividad determinada, es decir, se tendrá un hub para contactos, otro para redes sociales, otro para imágenes y videos, etc. La gran ventaja de este sistema es que, en el hub de imágenes y videos por ejemplo, se tendrán juntos videos, fotografías y aplicaciones para edición de éstos /-as. Así pues, sucede lo mismo en el hub de contactos, donde además de tener la agenda de contactos, se pueden tener almacenados los comentarios que han hecho en Facebook o Windows Live. Con el hub de música sucede lo mismo, dentro de éste se tienen las listas de reproducción y todas las canciones y en adición se pueden tener podcasts, el servicio Zune, y multiples aplicaciones de edición o distribución de contenido multimedia. 34
39 La plataforma de este sistema operativo está basada en ARM, más concretamente con instrucciones ARMv7. En cuanto a la arquitectura, decir que WP7 es un sistema operativo de 32 bits de doble capa y está basado en Windows Embedded CE 6.0 a diferencia de los Windows Mobile 6.x que tienen un kernel construido en Windows CE 5.0. Una de las principales ventajas de que sea de 32 bits es que esto permite un direccionamiento de hasta 4 GB. Img. 39: Arquitectura del kernel del sistema operativo Windows Phone 7 En esta primera imagen se puede apreciar la arquitectura del kernel compuesta de dos capas distinas: la del espacio de usuario y la capa del núcleo. Dentro del espacio de usuario se encuentran los servicios del sistema operativo, el Shell, etc. Y dentro de la capa del núcleo se pueden ver el kernel, el sistema de archivos, el renderizado de gráficos, la radio, los drivers, etc. 35
40 Img. 40: Espacio de memoria del kernel En esta segunda imagen se puede apreciar el espacio de memoria del kernel de 2GB, la cual está dividida en tres partes: el área de System Trap de 256 MB, una memoria virtual del kernel que puede llegar hasta 1GB y el área de mapeo directo a la memoria física. Además, WP7 contará con dos tipos de archivos distintos: IMGFS para archivos de sistema y TextFAT para archivos de usuario. Estos últimos son una versión ampliada del sistema de ficheros FAT capaz de hacer frente a archivos de 4 GB. Sin embargo Microsoft ha optado por un enfoque de almacenamiento unificado, es decir, que las aplicaciones y los usuarios no distinguen entre los archivos de almacenamiento local o de una tarjeta de memoria. Por lo que surge el problema que si una tarjeta de memoria contiene archivos clave y se formatea o se pierde, el teléfono quedaría inutilizado solamente pudiendo realizar llamadas de emergencia. 36
41 Por último se hará un breve comentario sobre los gráficos, a continuación se muestra el esquema. Img. 41: Esquema sobre el sistema de gráficos Windows Phone 7 utiliza por defecto una versión de Direct3D 11, basado en DirectX 10, para trabajar con 3D, lo que permite a los fabricantes poder escribir sus propios drivers en 2D y 3D a través del marco de trabajo que ofrece Microsoft. Lo único que sorprende es que el hardware trabaja con la versión Direct3D 9 que es anterior, aunque a pesar de ello, como muestra la imagen, la API permite trabajar sin problema con una versión anterior. 37
42 4. Creando la aplicación 4.1. Objetivo de la aplicación Tal y como se ha estado explicando a lo largo de todo este documento, se desea implementar una aplicación para Windows Phone 7 que use la realidad aumentada. El objetivo es sobreponer a la visión en pantalla de la cámara una imagen concreta que será recibida a través de un socket cliente TCP/IP así como las coordenadas y los datos necesarios para ubicarla. El uso de la aplicación será sencillo, al iniciarse aparecerá una pantalla en negro con un botón que será el que iniciará la cámara y abrirá el socket que espera conexiones entrantes. Una vez viéndose la imagen que muestra la cámara, por cada conexión entrante la aplicación enviará un mensaje por pantalla diciendo si se desea aceptar o no. En caso que se diga que si, la aplicación mostrara la imagen recibida en las coordenadas recibidas, en caso contrario, se hará caso omiso a la conexión entrante. Img. 42: Posible pantalla inicial de la aplicación Img. 43: Posible pantalla de ejecución de la aplicación 38
43 4.2. Instalar el entorno de trabajo Para poder trabajar y crear aplicaciones de Windows Phone 7, lo primera que se tiene que hacer es descargarse el software necesario, en este caso el Microsoft Phone Developer Tools, el cual incluye: Visual Studio 2010 Express for Windows Phone Windows Phone Emulator Silverlight for Windows Phone XNA Game Studio 4.0 Expression Blend 4.0 for Windows Phone Para ello se describirán a continuación los pasos necesarios para poder descargarlo e instalarlo: Paso 1: Requisitos del sistema Antes de instalar el software es necesario saber que solo se podrá instalar si se cumplen una serie de premisas: Sistema operativo: o Windows 7 (x84 y x64) exceptuando la versión Starter Edition. o Windows Vista (x84 y x64) con Service Pack 2 exceptuando la versión Starter Edition Hardware: o Memoria mínima de 2GB de RAM o La instalación requiere de 3 GB de disco duro o Tarjeta gráfica: DirectX 10 o posterior con el driver WDDM 1.1 NO SOPORTA: o Windows XP y Windows Server o Virtual PC e Hyper-V 39
44 Paso 2: Descarga del Software Una vez cumplidos los requisitos de hardware y software, se puede proceder a descargarse los programas necesarios para poder desarrollar aplicaciones de WP7. Para ello se debe entrar en la siguiente página [http://www.microsoft.com/express/phone/] y clicar en Get Started. Aunque se recomienda bajárselo de aquí [http://www.microsoft.com/express/downloads/#2010-visual-phone] ya que permite escoger el idioma del software, en cambio en el primer link está por defecto en inglés Paso 3: Instalación del software La instalación es muy sencilla, haciendo doble clic en el archivo ejecutable que se ha descargado en el paso anterior, aparecerán las típicas ventanas extrayendo el contenido del paquete, y a continuación aparecerá esta ventana: Img. 44: Ventana de descarga de software Este proceso automatizado descargará todos los programas anteriormente mencionados pertenecientes al Microsoft Phone Developer Tools. Son 491 MB, dependiendo de la conexión la descarga será más o menos rápida. 40
45 Una vez descargados todos los paquetes necesarios, comenzará el proceso de instalación con una ventana muy similar a la anterior: Img. 45: Ventana de instalación de software Paso 4: Ejecutar el software Al finalizar la instalación aparecerá la ventana conforme el proceso ha finalizado y el software ya está listo para usarse: Img. 46: Ventana de instalación finalizada 41
46 4.3. Microsoft Visual Studio Express for Windows Phone Después de finalizar la instalación del software, ya se puede proceder a abrir la aplicación con la que se realizará la aplicación, la cual no deja de ser el propio Visual Studio 2010 pero especializado para Windows Phone. La pantalla inicial se muestra a continuación: Img. 47: Pantalla inicial de Visual Studio 2010 Express for Windows Phone Ésta permite iniciar un nuevo proyecto, abrir uno de existente, y también permite la navegación entre sus pestañas para obtener información orientativa y recursos así como las últimas noticias acerca del producto. Además, dado la novedad del nuevo sistema operativo de Windows para móviles y a su vez la creación de este software, en esta pantalla inicial también se puede obtener información acerca del nuevo.net Framework 4 y lo nuevo de Visual C#. 42
47 En cuanto a la distribución de las secciones que componen el editor es similar a la de cuando se inicia un nuevo proyecto, a continuación se van a describir las cuatro secciones que lo componen: Img. 48: Pantalla de Visual Studio 2010 Express for Windows Phone con un proyecto abierto Sección 1 En esta sección se muestra la lista de herramientas, es decir, los elementos que se pueden añadir al emulador, como por ejemplo: botones, cuadros te texto, imágenes, pases de diapositivas, etc. Una vez seleccionado el elemento deseado se debe arrastrar a la pantalla del emulador de la sección 2 para poderlo insertar en el diseño y poderlo editar. Al mismo tiempo que se añade el elemento de manera visual a la pantalla del dispositivo, se añade en formato código en la sección 3. 43
48 Sección 2 En ésta se muestra la parte frontal de un dispositivo móvil con Windows Phone 7, el cual tiene los 3 botones obligados (atrás, menú y búsqueda) y muestra la estructura que tienen las aplicaciones de Windows Phone 7: un título, un subtítulo y un espacio más grande para el cuerpo de la aplicación. También incluye detalles como la cobertura, la batería restante y la hora (inanimados). Permite además, poder insertar y editar (cambio de posición, tamaño, etc.) los elementos del cuadro de herramientas, al mismo tiempo, cualquier cambio realizado en la pantalla del emulador se realizará simultáneamente en código reflejado de la sección 3. Sección 3 Esta es la sección más importante de todas ya que en ella se escribe el código de la apariencia (archivo.xaml) y funcionalidad (archivo de C#) de la aplicación. De la misma manera que insertando elementos a la pantalla del emulador se añade el código correspondiente, ocurre de manera recíproca al realizarlo al revés. De todos modos, se recomienda diseñar la apariencia de la aplicación añadiendo los elementos desde la caja de herramientas que no insertando código, salvo que ya se tenga cierto dominio. Por otro lado, en esta misma sección también se pueden visualizar los códigos del funcionamiento en sí de la aplicación. Estos códigos están escritos en C# (.cs), y pueden ligarse a las funcionalidades de los elementos de la pantalla, es decir, en el archivo.xaml se tiene la apariencia pero no la funcionalidad. Para darle una determinada acción a un elemento se usan los archivos de C# relacionando las acciones con los elementos visuales. Sección 4 Se muestra en forma de árbol la estructura del proyecto. Esta estructura incluye las clases, los paquetes (references) a los que se hace referencia para el uso de las diferentes características del dispositivo como puede ser la cámara, las imágenes que se muestran en la aplicación, el archivo.xaml de apariencia, etc. 44
49 Sección 5 En esta última sección se muestran los errores, las advertencias (warnings) y los mensajes que se puedan producir a la hora de compilar y ejecutar el código, indicando el archivo, la fila y la columna donde se ha producido el error. También tiene la característica de mostrar el output si es que así lo establece el código de la aplicación. Por último, en la imagen anterior donde están señaladas todas las secciones, también hay una elipse roja que rodea una lista desplegable. En esta lista se puede seleccionar donde se desea ejecutar la aplicación, ya sea en el emulador o en un dispositivo real. Para poder ejecutar el código en este último, es necesario descargarse el software Zune. Este es el software que se perfila para hacerle la competencia a Itunes de Apple. Análogamente Zune tendrá su Zune MarketPlace donde se podrá descargar y comprar música y videos. Aunque no solo se tratará de un software, Zune HD también es el nombre del nuevo reproductor de Microsoft que combatirá en el mercado con el Ipod. Algunas de sus características son: - Pantalla OLED de 3,3 pulgadas multitouch con resolución de 480x272 - Conexión WIFI - Navegador web con teclado en pantalla - HD Radio - Conectividad con TV con posibilidad de visualizar videos en HD 720p Img. 49: Reproductor multimedia Zune HD 45
50 4.4. Windows Phone Emulator Dentro del paquete de software Windows Phone Developer Tools se encuentra la aplicación Windows Phone Emulator. Esta aplicación, como su propio nombre indica, es un emulador de un dispositivo móvil dotado de sistema operativo Windows Phone. Para poderlo usar, es imprescindible tener una seria de requisitos, los más importantes se citan a continuación: Sistema operativo: Windows 7 (32-bit y 64-bit), Windows Vista (32-bit y 64-bit) Memoria: 2GB de RAM y a su vez, 1.5GB libres Emulador GPU: Tarjeta gráfica DirectX 10 o DirectX 11 con WDDM 1.1 o posterior y DDI 10 Paquetes.xap: El tamaño máximo de un paquete.xap es 225MB para aplicaciones de Silverlight y aplicaciones XNA Framework Multi-Touch: La simulación de multi-touch con el ratón no es compatible, se requeriría un equipo host que admitiera entrada multi-touch Almacenamiento: Durante el funcionamiento del emulador los datos guardados se mantienen, una vez cerrado el emulador, se pierde todo. Acelerómetro, GPS y cámara: Actualmente no soportado Por otra parte, permite las siguientes características: Emulación de dispositivos periféricos Emulación del procesador, de la memoria RAM, de la pantalla y GPU Almacenamiento persistente (mientras está en funcionamiento el emulador) Creación de redes Uso de teclado Implementación Depuración (Debuggin) 46
51 4.5. Desbloqueo del dispositivo Para poder probar las aplicaciones creadas en un dispositivo, primero de todo se tiene que desbloquear (es decir, hacerse administrador del dispositivo). En el software Windows Phone Developer Tools viene un pequeño programa llamado Windows Phone DeveloperRegistration con el cual, habiendo cumplido una serie de premisas, se puede desbloquear el terminal. A continuación se hará una descripción de los pasos que se tienen que seguir para cumplir estas premisas ya que todo el proceso es algo confuso: Paso 1: Darse de alta como desarrollador de aplicaciones de WP7 Para darse de alta se ha de entrar en la siguiente página web [http://developer.windowsphone.com]. En la esquina superior derecha hay un apartado que pone Sign in en el cual se tendrá que acceder mediante una ID de Windows Live (la cuenta de Hotmail por ejemplo), si no se tiene uno, también permite la opción de crearse una cuenta nueva. Una vez iniciado sesión, aparecerá una pantalla como esta: Img. 50: Pantalla de selección de país y tipo de cuenta para darse de alta como desarrollador 47
52 En esta pantalla primero de todo se tiene que seleccionar el país donde se reside o en el caso de ser una empresa el país donde está ubicada ésta. Después se ha de seleccionar el tipo de cuenta que se desea, existen tres tipos: compañía (empresa), desarrollador individual, o estudiante. Para la realización de este proyecto se ha escogido el tipo estudiante, lo cual conlleva tener que registrarse en otra web llamada DreamSpark. Además, es la única gratuita ya que tanto para compañías y desarrollador individual se tiene que pagar una cierta cantidad Paso 2: Registrarse en DreamSpark DreamSpark es un programa de ayuda de Microsoft, que provee gratuitamente herramientas de diseño y desarrollo a estudiantes de múltiples países del mundo, su página web es [https://www.dreamspark.com]. En esta web hay un apartado llamado Get Started en el que en tres pasos, se puede dar de alta como estudiante. Igual que se ha hecho en la web anterior de desarrolladores de WP7, lo primero de todo es identificarse con el Windows Live ID. Una vez Img. 51: Sección donde se ven los pasos que ya están completos registrado, se procederá a realizar el paso 2, en el cual Microsoft verifica que realmente la persona que va a darse de alta es estudiante. Para ello aparece la siguiente pantalla: Img. 52: Pantalla de elección de país, y tipo de cuenta de DreamSpark 48

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución