UNIVERSIDAD TECNOLÓGICA EQUINOCCIAL
FACULTAD DE CIENCIAS DE LA INGENIERÍA E
INDUSTRIAS
CARRERA DE INGENIERÍA INFORMÁTICA Y
CIENCIAS DE LA COMPUTACIÓN
Desarrollo de un prototipo experimental de posicionamiento
en interiores para sistema operativo Android, mediante el
uso de dispositivos Bluetooth
TRABAJO PREVIO A LA OBTENCIÓN DEL TÍTULO
DE INGENIERO EN INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN
EDWIN PATRICIO CABRERA GOYES
DIRECTOR: DR. DIEGO ANTONIO ORDÓÑEZ CAMACHO
DERECHOS DE AUTOR
© Universidad Tecnológica Equinoccial. 2017
FORMULARIO DE REGISTRO BIBLIOGRÁFICO
PROYECTO DE TITULACIÓN
DATOS DE CONTACTO CÉDULA DE IDENTIDAD: 1750205641
APELLIDO Y NOMBRES: Cabrera Goyes Edwin Patricio DIRECCIÓN: Barrio el Trigal
EMAIL: [email protected]
TELÉFONO FIJO: 3202400 TELÉFONO MOVIL: 0995624623
DATOS DE LA OBRA
TITULO: Desarrollo de un prototipo experimental de posicionamiento en interiores para sistema operativo Android, mediante el uso de dispositivos Bluetooth
AUTOR O AUTORES: Cabrera Goyes Edwin Patricio FECHA DE ENTREGA DEL PROYECTO
DE TITULACIÓN: Septiembre 2017 DIRECTOR DEL PROYECTO DE
TITULACIÓN: Dr. Diego Ordoñez
PROGRAMA PREGRADO POSGRADO TITULO POR EL QUE OPTA: Ingeniero en Informática y Ciencias de la
Computación
RESUMEN: El presente documento trata sobre la elaboración de un prototipo experimental de bajo presupuesto de un IPS Android utilizando el RSSI de dispositivos emisores con el objetivo de establecer la precisión de la posición calculada con respecto a una posición real.
Para conseguir el objetivo planteado se dividió la investigación en dos fases, la primera basada en la experimentación y con el fin de determinar las capacidades técnicas de los dispositivos Bluetooth y la relación que existe entre RSSI y distancia y la segunda con el fin de obtener el mejor método de posicionamiento y elaborar el prototipo final de la aplicación.
i
ÍNDICE DE CONTENIDOS
RESUMEN... 1
ABSTRACT ... 2
1. INTRODUCCIÓN ... 3
1.1 OBJETIVOS DEL PROYECTO ... 4
OBJETIVO GENERAL ... 4
OBJETIVOS ESPECÍFICOS ... 4
2. MARCO TEÓRICO ... 5
2.1 GPS (GLOBAL POSITIONING SYSTEM) ... 5
2.2 RF (SEÑALES DE RADIO FRECUENCIA) ... 5
2.3 RSSI (RECEIVED SIGNAL STRENGTH INDICATOR) ... 5
2.4 IPS (INDOOR POSITIONING SYSTEM) ... 6
IPS QUE NO UTILIZA NODOS ... 6
IPS QUE UTILIZA NODOS ... 6
2.5 BLUETOOTH ... 6
CLASES ... 7
VERSIONES ... 7
2.6 DESARROLLO DE APLICACIONES EN SISTEMAS OPERATIVOS MÓVILES ... 8
2.7 ANDROID ... 9
2.8 ANDROID BLUETOOTH API ... 10
2.9 MÉTODOS DE POSICIONAMIENTO ... 11
TRIANGULACIÓN ... 11
TRILATERACIÓN... 12
2.10 WEKA ... 13
2.11 APRENDIZAJE AUTOMÁTICO ... 13
2.12 TRABAJOS RELACIONADOS ... 13
IPS BLUETOOTH UNIVERSIDAD HANOVER ... 13
IPS BLUETOOTH ADAPTATIVO UNIVERSIDAD POLITECNICO DI MILANO ... 13
IPS BLUETOOTH UNIVERSIDAD MÄLARDALEN ... 13
ii
IPS WIRELESS ADAPTATIVO ... 14
3. METODOLOGÍA ... 15
3.1 MATERIALES ... 15
SOFTWARE ... 15
HARDWARE ... 15
3.2 FASE 1 ... 15
3.3 FASE 2 ... 16
4. RESULTADOS Y DISCUSIÓN ... 17
4.1 FASE 1 ... 17
EXPERIMENTACIÓN 1 ... 17
EXPERIMENTACIÓN 2 ... 17
EXPERIMENTACIÓN 3 ... 18
EXPERIMENTACIÓN 4 ... 20
4.2 FASE 2 ... 21
ESTRUCTURA DE LA APLICACIÓN ... 21
5. CONCLUSIONES Y RECOMENDACIONES ... 26
5.1 CONCLUSIONES... 26
5.2 RECOMENDACIONES ... 26
iii
ÍNDICE DE TABLAS
Tabla 1. Clases de Bluetooth ... 7
Tabla 2. Cuota de mercado de sistemas operativos móviles. ... 9
Tabla 3. Versiones de Android con su fecha de lanzamiento. ... 10
Tabla 4. Resumen de las experimentaciones realizadas ... 16
Tabla 5. RSSI recolectados por el Sony Xperia X Performance a 0.6m del Samsung Galaxy Ace ... 17
Tabla 6. Comparación del promedio de RSSI de dos receptores diferentes respecto a un emisor común en diferentes distancias ... 18
iv
ÍNDICE DE FIGURAS
Figura 1. Subversiones de Bluetooth y su compatibilidad ... 8
Figura 2. Código necesario en Android Manifest para poder utilizar Bluetooth ... 11
Figura 3. Representación de triangulación ... 11
Figura 4. Representación de Trilateración ... 12
Figura 5. RSSI vs distancia recolectados por un LG G3 desde un Samsung Galaxy s3 mini ... 19
Figura 6. Línea de tendencia lineal de los valores de RSSI vs distancia ... 20
Figura 7. Captura de pantalla del menú de la aplicación ... 22
Figura 8. Captura de pantalla de la opción configuración ... 22
Figura 9. Captura de pantalla de la opción calibración ... 23
Figura 10. Captura de pantalla de la opción ecuación ... 24
Figura 11. Estructura de circunferencias formadas por los datos de un emisor ... 25
Figura 12. Escala de colores utilizada en la aplicación ... 25
1
RESUMEN
El presente documento trata sobre la elaboración de un prototipo experimental de bajo presupuesto de un IPS Android utilizando el RSSI de dispositivos emisores con el objetivo de establecer la precisión de la posición calculada con respecto a una posición real.
Para conseguir el objetivo planteado se dividió la investigación en dos fases, la primera basada en la experimentación y con el fin de determinar las capacidades técnicas de los dispositivos Bluetooth y la relación que existe entre RSSI y distancia y la segunda con el fin de obtener el mejor método de posicionamiento y elaborar el prototipo final de la aplicación.
Se ha establecido que con las condiciones de la investigación la relación que existe entre distancia y RSSI es una relación lineal, como se tiene tres dispositivos receptores y un dispositivo emisor se ha escogido el método de posicionamiento de trilateración y se ha obtenido una precisión de 4.8m, que puede ser evidenciada en el prototipo de aplicación realizada fruto de la presente investigación.
2
ABSTRACT
This document discusses the elaboration of an experimental prototype of an IPS Android using RSSI of emitting devices with the aim of establishing the accuracy of the calculated position with respect to a real position.
In order to achieve the stated objective, the research was divided into two phases, the first based on experimentation and in order to determine the technical capabilities of Bluetooth devices and the relationship between RSSI and distance and the second phase in order to determine the best method of positioning and elaborate the final prototype of the application.
It has been established that with the research conditions the relationship between distance and RSSI is a lineal relationship in conjunction with the trilateration method can be obtained a pressure of 4.8m.
3
1. INTRODUCCIÓN
Desde la antigüedad ha sido importante para cada persona saber su ubicación, cómo llegar de un lugar a otro, qué caminos diferentes se pueden tomar, etc. Hace 5000 años ya existían los primeros dibujos de lo que después se conocería como mapa y las culturas primitivas ya habían descubierto que ciertos metales reaccionaban al campo magnético de la tierra, siglos después este descubrimiento se convertiría en la brújula.
A lo largo del tiempo la humanidad ha ido perfeccionando las técnicas de localización con diversos instrumentos como el sextante y el octante, algoritmos matemáticos como el de triangulación, mejores escalas y sistemas de coordenadas como el geográfico que utiliza latitud y longitud.
Con la llegada de la era digital y sobretodo de los teléfonos inteligentes muchos de los instrumentos utilizados han sido digitalizados, hoy en día prácticamente toda la población tiene acceso a un mapa digital y con GPS obtenemos nuestra ubicación e incluso podemos buscar el lugar al que deseamos ir y se nos trazará una ruta que nos indicará de forma relativamente precisa como llegar y en cuanto tiempo.
Actualmente GPS es el sistema de posicionamiento más utilizado a nivel mundial, pero su señal no es capaz de atravesar obstáculos físicos como edificios, razones por las cuales no es de utilidad cuando necesitamos ubicarnos en interiores como centros comerciales, institutos, museos, aeropuertos, etc. (Lu, Chen, Shen, Lam, & Liu, 2007; Rey, 2012).
Hoy en día se habla de los IPS (Indoor positioning system), sistemas que permiten posicionarse en interiores, estos sistemas que están surgiendo en el mercado son de gran utilidad puesto que, permiten a las personas que cuenten con un dispositivo móvil, encontrar lugares de manera rápida como por ejemplo la ubicación de una tienda dentro de un centro comercial o de un aula dentro de una universidad y además pueden mejoran la calidad de vida de personas con discapacidad visual.
Varios IPS exigen que los dispositivos móviles tengan sensores como magnetómetro o brújula para poder funcionar que (Pei et al., 2012), no todos los dispositivos cuentan con este tipo de sensores, pero el sensor Bluetooth se encuentra en la mayoría de dispositivos del mercado incluyendo no solo dispositivos móviles si no también computadoras y hasta electrodomésticos, por ende, utilizar este tipo de sensores reduce mucho el costo de un IPS.
4
1.1 OBJETIVOS DEL PROYECTO
OBJETIVO GENERAL
Desarrollar un prototipo experimental de bajo presupuesto de un IPS Android utilizando el RSSI de dispositivos Bluetooth cercanos para establecer la precisión de la posición calculada con respecto a una posición real.
OBJETIVOS ESPECÍFICOS
1. Determinar las capacidades técnicas de los dispositivos Bluetooth. 2. Determinar cuál es la relación que existe entre RSSI y distancia. 3. Seleccionar el método de posicionamiento más adecuado.
4. Desarrollar la aplicación que será instalada en el dispositivo receptor.
5
2. MARCO TEÓRICO
A continuación, se revisarán los conceptos necesarios para la elaboración del presente documento.
2.1 GPS (GLOBAL POSITIONING SYSTEM)
Es el sistema de posicionamiento gratuito más utilizado a nivel mundial, utilizando trilateración y una red de 24 satélites que orbitan la tierra a 20200 km de altura. Este sistema cuenta con una precisión entre 8 y 10 metros (Rey, 2012) y su señal no es capaz de atravesar obstáculos físicos como los presentes en las estructuras de los edificios así como lo menciona (Lu et al., 2007) y (Subhan, Hasbullah, Rozyyev, & Bakhsh, 2011).
2.2 RF (SEÑALES DE RADIO FRECUENCIA)
Las señales de radio frecuencia son ondas electromagnéticas generadas cuando una corriente alterna pasa a través de un conductor, se encuentran entre los 3 KHz y los 300 GHz.
Las RF tienen dos características que son la frecuencia y la longitud, estas características tienen una relación inversamente proporcional, es decir, a mayor frecuencia menor longitud.
Existen varias señales de radio frecuencia (RF) que permiten obtener datos para estimar posiciones, la principal desventaja en este tipo de aplicación es que, las señales de RF se ven afectadas por factores ambientales que influyen en su valor como, por ejemplo: variaciones de temperatura, humedad, apertura y cierre de puertas, cambios en el mobiliario, presencia y movimiento de seres vivos. (Rodas, Fernández, Iglesia, & Escudero, 2007)
2.3 RSSI (RECEIVED SIGNAL STRENGTH INDICATOR)
Es un indicador que indica la potencia recibida por un dispositivo, se encuentra presente en dispositivos inalámbricos de RF como WiFi o Bluetooth, por lo tanto, hereda las mismas ventajas y desventajas de las ondas de RF.
Los valores de RSSI están comprendidos en una escala de 0 a -100, expresada en dBm, cuanto más negativo mayor es la perdida de señal. No existe un estándar para la escala de valores del RSSI por lo que esta varía en función del fabricante y dispositivo.
6
2.4 IPS (INDOOR POSITIONING SYSTEM)
Los IPS son sistemas que permiten posicionarse en interiores en tiempo real. Entre los grupos de IPS que más destacan existen 2, los que utilizan nodos y los que no.
IPS QUE NO UTILIZA NODOS
Este grupo de IPS de varios tipos que utilizan características que no se encuentran en todos los dispositivos móviles como por ejemplo el giroscopio, la brújula y el magnetómetro, en este grupo los IPS más utilizados son lo que utilizan el propio campo magnético del edificio, etc. (Descamps, Pérez, & Conesa, 2013).
IPS QUE UTILIZA NODOS
Estos IPS trabaja en redes inalámbricas de Bluetooth, WiFi o una mezcla de ambas (Chico C., 2009), por lo general se prefiere utilizar IPS con Bluetooth porque tienen mayor precisión y realiza un menor consumo de energía que WiFi, algo que es muy importante cuando hablamos de dispositivos móviles (Liu, Jiang, & Striegel, 2014).
Los dispositivos de la red inalámbrica se dividen en los siguientes:
Emisor: dispositivo fijado en una posición conocida, utiliza señales de RF para enviar información a uno o varios dispositivos intermedios o receptores.
Receptor: Es el dispositivo con una aplicación instalada encargada de recolectar la información enviada por los nodos y por medio de técnicas de posicionamiento mediante algoritmos y cálculos matemáticos determinar la posición del usuario y transmitirle información generalmente en pantalla.
Dispositivo Intermedio: Se trata de uno o varios dispositivos que reducen la carga de trabajo de los dispositivos receptores realizando parte o la totalidad de los cálculos matemáticos necesitados para tener la posición fina, este tipo de dispositivos es de uso opcional por lo que la mayoría de IPS no cuenta con ellos.
2.5 BLUETOOTH
7
2010). Los dispositivos Bluetooth se clasifican de acuerdo a la clase y a la versión.
CLASES
Es una clasificación realizada en base a la potencia de transmisión del dispositivo mientras más alto el número de la clase, más bajo su alcance. Se puede interactuar entre dispositivos de clase diferente siempre que los dispositivos se encuentren en el rango de la clase más alta, la Tabla 1 muestra la potencia y el alcance de las clases de Bluetooth.
Tabla 1. Clases de Bluetooth Clase Potencia Alcance Clase 1 100 mW ~100 m Clase 2 2.5 mW ~20 m
Clase 3 1 mW ~1 m
Clase 4 0.5 mW ~0.5 m
VERSIONES
A lo largo de los años han salido al mercado nuevas versiones de Bluetooth la retro compatibilidad como característica común.
Bluetooth 1.0: Actualmente se encuentra obsoleta, tiene muchos problemas de comunicación entre dispositivos, carece de anonimato al realizar la conexión.
Bluetooth 1.1: Estándar IEEE 802.15.1-20022, corrige errores de la versión anterior, añade el RSSI y canales no encriptados.
Bluetooth 1.2: Estándar IEEE 802.15.1-2005, mejora la velocidad de conexión y de transmisión, añade el proceso de descubrimiento que es la capacidad de detección de dispositivos Bluetooth cercanos y la capacidad de obtener el valor de RSSI, para esto solo se necesita que el dispositivo emisor se encuentre en modo visible (Rodas et al., 2007) y esto es uno de los principales pilares en donde se apoyan los IPS que utilizan Bluetooth (Bargh & de Groote, 2008).
Bluetooth 2.0: Añade la característica EDR (Enhanced Data Rate) que se traduce en una mayor velocidad de transmisión y menor consumo de energía.
8
Bluetooth 3.0: Aumenta la velocidad de transmisión de datos, incluye una característica que hace uso de WiFi para él envió de paquetes de datos demasiado grandes.
Bluetooth 4.0: Esta versión aumenta la velocidad de transmisión y trae una serie de subversiones llamadas Bluetooth Smart Ready, Bluetooth Smart. Estas nuevas subversiones no son completamente compatibles entre sí debido a que algunas usan ciertos protocolos no presentes en otras, la Figura 1 muestra cómo se pueden utilizar estas subversiones. Adicionalmente existe otra subversión denominada Bluetooth Low Energy enfocada en el internet de las cosas.
Figura 1. Subversiones de Bluetooth y su compatibilidad
2.6 DESARROLLO
DE
APLICACIONES
EN
SISTEMAS
OPERATIVOS MÓVILES
En la actualidad existen varios sistemas operativos móviles con sus ventajas y desventajas, los desarrolladores más grandes lanzan aplicaciones a la mayor cantidad de sistemas operativos posibles mientras que otros desarrolladores con menos recursos se basan en varios factores para escoger el sistema operativo en cual desarrollar su aplicación.
9
Tabla 2. Cuota de mercado de sistemas operativos móviles. Sistema Operativo Cuota de mercado
Android 86.2%
IOS 12.9%
Windows Phone 0.6%
BlackBerry 0.1%
Otros 0.2%
El segundo factor es la facilidad para el desarrollo de aplicaciones, Android tiene el IDE de desarrollo Android Studio que puede ser descargado de manera gratuita sin necesidad de registrarse y que viene con un simulador virtual de capacidades limitadas pero permite utilizar cualquier dispositivo Android con el modo de desarrollo integrado en lugar del simulador, la documentación es abundante tanto oficial como por usuarios que realizan ejemplos prácticos y los suben a internet, por otra parte, IOS requiere de una suscripción gratuita para obtener documentación oficial y el IDE de desarrollo Xcode que viene un simulador virtual con capacidades limitadas y de una suscripción pagada si el desarrollador quiere instalar las aplicaciones en dispositivos que tienen que ser registrados previamente.
2.7 ANDROID
Sistema operativo móvil de código abierto que actualmente pertenece a Google basado en el núcleo Linux, permite desarrollar aplicaciones en una variación del lenguaje de programación java llamado Delvik que permite con sentencias de programación acceder a todas las funciones del dispositivo móvil.
La máquina virtual de Android basada en java permite que Android se encuentre disponible en un sin número de dispositivos con características de hardware muy diferente lo que conlleva su mayor ventaja, pero genera una fragmentación muy grande siendo esta su mayor desventaja, a más de las diferentes versiones que Google lanza con el pasar del tiempo, cada fabricante de hardware añade una capa de personalización del sistema operativo y en ciertos casos la operadora que comercializa el dispositivo también añade una capa de personalización lo que conlleva en un retraso en el que las actualizaciones llegan al usuario y en que muchas de estas no lleguen a varios dispositivos sobre todo los más antiguos.
10
Tabla 3. Versiones de Android con su fecha de lanzamiento.
Nombre Versión Fecha de lanzamiento API
Android 1.01 1.0 23/09/2008 1
Android 1.11 1.1 09/02/2009 2
Cupcake 1.5 27/04/2009 3
Donut 1.6 15/09/2009 4
Eclair 2.0 - 2.1 26/10/2009 5 - 7
Froyo 2.2 - 2.2.3 20/05/2010 8
Gingerbread 2.3 - 2.3.7 06/12/2010 9 - 10
Honeycomb2 3.0 - 3.2.6 22/02/2011 11 - 13
Ice Cream Sandwich 4.0 - 4.0.4 18/10/2011 14 - 15
Jelly Bean 4.1 - 4.3.1 09/07/2012 16 - 18
KitKat 4.4 - 4.4.4 31/09/2013 19 - 20
Lollipop 5.0 - 5.1.1 12/12/2014 21 - 22
Marshmallow 6.0 - 6.0.1 05/07/2015 23
Nougat 7.0 - 7.1.2 22/08/2016 24 - 25
2.8 ANDROID BLUETOOTH API
Esta API de Android nos permite realizar muchas cosas mediante las siguientes clases e Interfaces («Bluetooth | Android Developers», s. f.).
BluetoothAdapter: Clase que interactúa con el dispositivo Bluetooth local, con los métodos startDiscovery, cancelDiscovery y isDiscovering se puede realizar, cancelar y saber si hay activo un proceso de descubrimiento de dispositivos Bluetooth cercanos.
BluetoothDevice: Interface que permite recuperar información de dispositivos Bluetooth cercanos y establecer una sincronización con los mismos. Por medio de esta Interface se puede obtener el nombre y el RSSI sin necesidad de establecer una sincronización, para ello se usan las propiedades EXTRA_NAME Y EXTRA_RSSI respectivamente.
Adicionalmente se necesita utilizar la clase BroadcastReceiver que no pertenece a la Android Bluetooth API y permite en este caso particular recuperar datos del proceso de descubrimiento realizado por el BluetoothAdapter.
11
Figura 2. Código necesario en Android Manifest para poder utilizar Bluetooth
2.9 MÉTODOS DE POSICIONAMIENTO
Existen varias técnicas de localización que se basan en matemática y algoritmos para obtener la ubicación, estas técnicas tienen ventajas y desventajas. El grado de precisión de cada técnica varía según la situación por lo que en ciertas circunstancias es más conveniente utilizar una técnica frente a otras (Lui, Darabi, Banerjee, & Liu, 2007).
TRIANGULACIÓN
Como se muestra en la Figura 3, triangulación es un método de posicionamiento basado en las teorías de triángulos, partiendo de que la suma de los ángulos internos de un triángulo es igual a 180°, este método utiliza por lo menos dos ángulos y un lado del triángulo que se forma entre dos nodos y el punto a localizar y mediante funciones trigonométricas como seno, coseno y tangente además del teorema de Pitágoras y geometría se puede encontrar la posición del punto a localizar.
Este método también contempla que para obtener la posición se puede descomponer el triángulo grande en triángulos más pequeños.
12
TRILATERACIÓN
Es un método de posicionamiento que encuentra la posición de un punto desconocido o receptor mediante tres o más puntos conocidos o emisores y la distancia de cada emisor al receptor, este método es la base de todos los sistemas de navegación satelital.
Gráficamente la trilateración funciona de la siguiente forma, se trazan cirulos en cada uno de los nodos utilizando como radio la distancia que existe entre cada nodo y el receptor, la intersección de dichos círculos indica la posición del receptor, la Figura 4 muestra un ejemplo.
Figura 4. Representación de Trilateración
Analíticamente la trilateración es un sistema de ecuaciones, una por cada nodo y de dos incógnitas siento estas las coordenadas (x, y) del plano cartesiano que indican la posición del receptor.
La razón de que se necesite por lo menos tres emisores para que la trilateración funcione se ve reflejado tanto en su resolución gráfica como analítica, ya que, en ambas podemos observar que al utilizar solamente dos emisores existen dos posibles soluciones y al agregar un tercer emisor una de las soluciones es descartada quedando únicamente una solución posible.
13
2.10 WEKA
Es un software libre distribuido bajo la licencia GNU-GPL, que sirve para la minería de datos y el aprendizaje automático, este software se encuentra desarrollado en Java por lo que es portable y se puede ejecutar en muchos sistemas operativos.
2.11 APRENDIZAJE AUTOMÁTICO
Es un campo dentro de las ciencias de la computación que consiste en el desarrollo de técnicas que permitan a los dispositivos electrónicos aprender mediante modelos geométricos, probabilísticos y lógicos para en una etapa posterior poder predecir ciertas acciones. Entre las aplicaciones más comunes del aprendizaje automático se encuentran el reconocimiento de caracteres y de voz, utilizado hoy en día en cámaras de foto multas y asistentes virtuales respectivamente.
2.12 TRABAJOS RELACIONADOS
A continuación, se muestra una breve descripción de trabajos que comparten ciertas semejanzas con el presente documento, por lo general estos trabajos fueron obtenidos de tesis realizadas por estudiantes de distintas universidades del mundo.
IPS BLUETOOTH UNIVERSIDAD HANOVER
En el año 2003 la Universidad Hanover en Alemania publicó un artículo científico sobre un IPS Bluetooth que utiliza RSSI para obtener la posición, las principales características de este IPS son: receptores BT-DG02, un error de 2.06m y un alcance entre el receptor y el emisor de 8m (Feldmann, Kyamakya, Zapater, & Lue, 2003).
IPS BLUETOOTH ADAPTATIVO UNIVERSIDAD POLITECNICO DI MILANO
La Universidad Politecnico di Milano en Italia publicó una tesis desarrollada por el estudiante Nicola Cinefra en el año 2013, esta tesis muestra toda la investigación realizada para conseguir un IPS Beacons Bluetooth Low Energy que utiliza RSSI para estimar posiciones, las principales características de este IPS es que tienen una precisión de 1.5m (Cinefra, 2014).
IPS BLUETOOTH UNIVERSIDAD MÄLARDALEN
14
destaca el uso de técnicas para la reducción de ruido de las medidas RSSI (Torstensson, 2017).
IPS BLUETOOTH SMART UNIVERSIDAD CHALMERS
Erik Dahlgren estudiante de la Universidad de Chalmers en Suecia, público en 2014 su tesis acerca de un IPS que utiliza Bluetooth Smart, no está claro el nivel de precisión que pudo ser obtenido, pero realiza comparaciones entre las versiones de Bluetooth tradicional y Bluetooth Smart obteniendo como resultado que el hardware especializado puede obtener una mayor precisión (Dahlgren & Mahmood, 2014).
IPS WIRELESS ADAPTATIVO
15
3. METODOLOGÍA
Se dividió el desarrollo de la presente investigación en dos fases, la primera basada completamente en la experimentación y que tiene por fin cumplir con los dos primeros objetivos específicos planteados en la introducción y la segunda fase dedicada a la elaboración del prototipo final de la aplicación y con el fin de cumplir el tercer, cuarto y quinto objetivos específicos.
3.1 MATERIALES
SOFTWARE
Android Studio 2.2.1
Weka
HARDWARE
Laptop Toshiba, procesador Intel Core i7, Memoria RAM 8 GB
Dispositivos receptores
o Sony Xperia X Performance con Bluetooth 4.2 o LG G3 con Bluetooth 4.0
o Samsung Galaxy Note 3 con Bluetooth 4.0
Dispositivos emisores
o Samsung Galaxy s3 mini con Bluetooth 4.0 o Lg-p500h con Bluetooth 2.1
o Samsung Galaxy Ace con Bluetooth 2.1 o HTC Wildfire con Bluetooth 2.1
3.2 FASE 1
Con el fin de determinar las capacidades técnicas de los dispositivos Bluetooth, como interactúan entre ellos y la relación que existe entre el RSSI y la distancia, se realizó el primer prototipo de aplicación que realiza tomas de datos y las guarda en un archivo plano para su posterior análisis, la aplicación fue instalada en los dispositivos receptores. Se planteó una serie de experimentos con los siguientes parámetros:
Variable independiente: Distancia
Variable dependiente: RSSI
Obstáculos entre emisor y receptor: Ninguno.
16
estableció un cambio de posición y en cada cambio la aplicación instalada previamente en el dispositivo receptor realizó un bucle con cierto número de iteraciones y en cada una un proceso de descubrimiento para obtener el valor de RSSI del emisor.
Tabla 4. Resumen de las experimentaciones realizadas
Experimentación 1 2 3 4
Rango 0.6m 0 – 1m 1 – 5m 1 – 27m
Cambio de posición
N/A 0.1m 0.5m 1m
Iteraciones 1 10 20 20
Emisores Samsung Galaxy Ace Samsung Galaxy Ace Sony Xperia Z2 Samsung Galaxy Ace Samsung Galaxy s3 mini HTC Wildfire
Samsung Galaxy s3 mini LG-p500h
Receptores Sony Xperia X Performance
Sony Xperia X Performance
Sony Xperia X Performance LG G3 Samsung Galaxy Note 3
Sony Xperia X Performance Samsung Galaxy Note 3
Los datos obtenidos producto de la experimentación 4 fueron trasladados a un archivo .arff para su posterior análisis en Weka donde se utilizó métodos de clasificación como de árbol, Bayesiano y regresión lineal.
3.3 FASE 2
17
4. RESULTADOS Y DISCUSIÓN
A continuación, se analizarán los resultados después del análisis de los datos obtenidos.
4.1 FASE 1
Analizando las capacidades técnicas de los dispositivos Bluetooth se descubrió que algunos cuentan con una versión antigua del sistema operativo Android, es decir antes de la versión 5, no pueden permanecer en modo visible durante un tiempo indefinido mientras que los dispositivos que cuentan con una versión de Android más actual si lo pueden hacer, este problema está presente en dispositivos con otros sistemas operativos.
Se realizó el primer prototipo de la aplicación que permitiría la recolección de RSSI de un solo dispositivo mediante el nombre de este y guardaría los datos recolectados en un archivo plano. La aplicación utiliza el API 17 que quiere decir que puede ser utilizada en dispositivos con Android 4.2 Jelly Bean o superior.
EXPERIMENTACIÓN 1
En esta experimentación y como muestran los valores de la Tabla 5, se descubrió que el RSSI presenta una variabilidad significativa en sus valores incluso presentando valores atípicos como es -68 y -55, por lo que se determinó que una sola iteración es insuficiente para obtener una distancia precisa, se decidió que para la experimentación 2 se modificaría la aplicación para realizar más de una iteración de toma de datos y con estos un promedio, la misma idea fue aplicada por la investigación realizada en la tesis de Torstensson en donde se realizaron 3 tomas de medidas y posteriormente un promedio (Torstensson, 2017), pero debido a la variabilidad del RSSI encontrada en esta experimentación, se determinó que se necesitarán por lo menos 5 tomas de medidas antes de sacar un promedio.
Tabla 5. RSSI recolectados por el Sony Xperia X Performance a 0.6m del Samsung Galaxy Ace
-68 -62 -58 -60 -55 -60 -60 -62 -60 -61
EXPERIMENTACIÓN 2
18
Tabla 6. Comparación del promedio de RSSI de dos receptores diferentes respecto a un emisor común en diferentes distancias
Distancia Samsung Galaxy Ace Sony Xperia Z2
0 -17.0 -29.1
10 -32.2 -44.3
20 -35.0 -59.7
30 -35.9 -55.3
40 -42.3 -51.1
50 -44.5 -58.2
60 -47.3 -56.2
70 -48.3 -64.8
80 -53.8 -54.1
90 -51.9 -64.5
Los datos recolectados por la aplicación fueron trasladados a Excel y se observó su línea de tendencia determinando que un cambio de posición de 0.1m genera un margen de error muy grande por lo que es corto para establecer una relación entre RSSI y distancia.
EXPERIMENTACIÓN 3
En esta experimentación se incrementó el número de dispositivos emisores y receptores.
19
Tabla 7. Iteraciones realizadas por el dispositivo LG G3 recolectando RSSI del dispositivo Samsung Galaxy Ace en diferentes distancias
Distanncia 1 2 3 4 5 6 7 8
0.50 -65 -69 -59 -60 -80 -62 1.00 -70 -58 -57 -57 -59 -60 1.50 -70 -72 -72 -63 -83 -62 -70 -68 2.00 -62 -56 -59 -62 -62 -66 -62 2.50 -66 -63 -58 -67 -65 -66 -65 3.00 -66 -64 -66 -69 -72 -62 -62 -63 3.50 -68 -65 -58 -66 -64 4.00 -65 -63 -64 -65 -66 -66 -64 -70 4.50 -65 -70 -68 -68 -68 5.00 -77 -70 -70 -69 -74 -73 -70 -68
Como se indica en la Figura 5, los datos recolectados por la aplicación fueron trasladados a Excel y se observó su línea de tendencia determinando que un cambio de posición de 0.5m sigue siendo corto como para lograr establecer una relación entre RSSI y distancia.
Figura 5. RSSI vs distancia recolectados por un LG G3 desde un Samsung Galaxy s3 mini
-80 -70 -60 -50 -40 -30 -20 -10 0
20
EXPERIMENTACIÓN 4
Como se visualiza en la Figura 6, al no necesitar una sincronización entre el emisor y el receptor se puede obtener RSSI en distancias grandes, debido a las limitaciones físicas de la experimentación solo se pudo realizar tomas de datos hasta 27m, pero se presume que se podría llegar a mayor distancia y se desconoce el límite, según el artículo científico desarrollado en la universidad Hanover el RSSI tiene un límite de 8m lo que significa un alcance casi 4 veces menor que en el presente documento, se realizó una investigación acerca de los dispositivos BT-DG02 que se utilizaron en la investigación realizada en Hanover (Feldmann et al., 2003) y se encontró que estos dispositivos utilizan la versión de Bluetooth 1.1 y son de clase 2 que puede estar limitada entre 10 y 20m por lo que se concluye que la clase de los dispositivos es importante para un IPS.
Figura 6. Línea de tendencia lineal de los valores de RSSI vs distancia
Con los resultados arrojados por la aplicación Weka tomando en consideración el error absoluto similar con los tres algoritmos de clasificación y debido a la facilidad que existe para su implementación, se utilizará una regresión lineal que según Weka tiene un error absoluto de 4.8m, por lo que para la siguiente fase del experimento se propone realizar un proceso individual de calibración de cada receptor con cada emisor y con los datos obtenidos realizar una regresión lineal para obtener la ecuación de la recta y con esta la equivalencia del RSSI en distancia.
Según la tesis desarrollada por Cinefra en el Politecnico di Milano, se obtienen mejores resultados utilizando métodos Bayesianos y estadísticos en lugar de la regresión lineal teniendo un error absoluto de 1.5m, la diferencia que existe
y = -0.473x - 53.422
-80 -70 -60 -50 -40 -30 -20 -10 0
21
entre la tesis del Politecnico di Milano y el presente documento es que Cinefra utiliza Beacons Bluetooth Low Edition (Cinefra, 2014) y el presente documento utiliza Bluetooth tradicional de un dispositivo cualquiera, esto indica que con un hardware especializado se pueden obtener mejores resultados. Esta teoría también se comprueba con la investigación realizada por los autores de la universidad Chalmers en Suecia, en donde mencionan que con hardware especializado se pueden obtener mejores resultados, por ejemplo, ellos mencionan haber realizado comparaciones entre Bluetooth tradicional y Bluetooth Smart consiguiendo con este último un menor tiempo en el proceso de descubrimiento y por lo tanto mayor velocidad al momento de obtener la posición, los autores también mencionan que con hardware especializado se pueden disminuir muchas de las complicaciones de la programación y finalmente mencionan que para el desarrollo de un IPS se debería utilizar el apoyo de otras tecnologías que se encuentran en los dispositivos móviles como son el acelerómetro y el giroscopio (Dahlgren & Mahmood, 2014).
4.2 FASE 2
Con los resultados obtenidos en la fase 1 se determinó que el método de posicionamiento más útil es Trilateración puesto que al igual que se establece en el marco teórico, se cuenta con un número determinado de emisores con posición conocida y estos son capaces de decirle al emisor que distancia existe entre ellos. Debido a que el número mínimo para usar trilateración es de tres emisores, la aplicación fue concebida para este número de emisores.
ESTRUCTURA DE LA APLICACIÓN
22
Figura 7. Captura de pantalla del menú de la aplicación
Configuración: Como se muestra en la Figura 8, permite registrar el nombre de los emisores, sus coordenadas x y y en el plano cartesiano y las constantes a y b de su ecuación de la recta, esto último solo en caso de requerir utilizar una ecuación manual puesto que las opciones de calibración y ecuación permiten generarla. Todos los datos mencionados se guardan con un botón en las SharedPreferences de la aplicación.
23
Calibración: Como se puede observar en la Figura 9, esta opción permite seleccionar el emisor y la posición en la que se encuentra el receptor en una escala de 1 a 10m con saltos de 1m para posteriormente realizar 5 iteraciones en cuales se tomará el valor del RSSI y hacer un promedio de estos valores los cuales serán guardados en las SharedPreferences.
Figura 9. Captura de pantalla de la opción calibración
24
Figura 10. Captura de pantalla de la opción ecuación
Localizar: Recupera de las SharedPreferences los nombres de los emisores, los valores de las constantes a y b y las coordenadas x y y de los receptores, posteriormente se inicia en un Timer un bucle infinito donde se realizará un proceso de descubrimiento obteniendo el RSSI de los emisores cercanos. Se realizará cinco capturas de RSSI por cada emisor, con estos valores un promedio y con este promedio se calculará las distancias usando las variables a y b obtenidas anteriormente, con las distancias se empleará el método de posicionamiento trilateración. Se creó una matriz bidimensional de enteros con medida de 60 por 50, cada celda representa un cuadrado de espacio real de 0.5m por lado, esta matriz fue inicializada con cero en todas sus posiciones.
25
Figura 11. Estructura de circunferencias formadas por los datos de un emisor
Como en algún momento dos o las tres estructuras pueden superponerse se decidió sumar los pesos y para facilitar el análisis se decidió asignar una escala de colores para cada peso como se muestra en la Figura 12 indicando desde el número 1 una menor probabilidad de que el receptor se encuentre en la posición indicada por la aplicación hasta el número 6 con la máxima posibilidad.
Figura 12. Escala de colores utilizada en la aplicación
El resultado de todos los procesos mencionados es el que se muestra en la Figura 13.
26
5. CONCLUSIONES Y RECOMENDACIONES
5.1 CONCLUSIONES
De los resultados obtenidos por la investigación realizada y su comparación con otras investigaciones se han obtenido las siguientes conclusiones.
El RSSI arroja valores variables y es muy susceptible a cualquier factor ambiental.
La clase de los dispositivos Bluetooth es importante para el funcionamiento de un IPS, ya que influye directamente en la cantidad de dispositivos necesarios para cubrir un área.
Un IPS de bajos recursos tiene un error absoluto de 4.8m que es menor que la precisión de 10m que tiene GPS (Rey, 2012), GPS no funciona en interiores mientras que sería costoso implementar un IPS para exteriores por lo que se concluye que ambos sistemas son complementarios.
El hardware especializado obtiene mejores resultados que utilizar soluciones caseras de dispositivos Bluetooth (Dahlgren & Mahmood, 2014).
5.2 RECOMENDACIONES
Para cada una de las conclusiones se han realizado recomendaciones que ayudarán en futuros trabajos que sigan en la misma línea de investigación.
Se debe utilizar algoritmos que permitan reducir el ruido producido por factores ambientales así como se realizó en la tesis de (Torstensson, 2017), el resultado final se traducirá en mayor precisión.
Se recomienda al igual que en la investigación realizada por (Chen et al., 2011) el uso de dispositivos Bluetooth de clase 1 ya que se puede cubrir más espacio con menos dispositivos y evitar problemas de perdida de señal como sucedió en la investigación publicada por la universidad de Hanover (Feldmann et al., 2003).
Se debe utilizar IPS en interiores y GPS en exteriores en la medida de lo posible.
27
6. BIBLIOGRAFÍA
Bargh, M. S., & de Groote, R. (2008). Indoor localization based on response rate of bluetooth inquiries (p. 49). ACM Press. https://doi.org/10.1145/1410012.1410024
Bluetooth | Android Developers. (s. f.). Recuperado 29 de junio de 2016, a
partir de
https://developer.android.com/guide/topics/connectivity/bluetooth.html
Chen, L., Kuusniemi, H., Chen, Y., Pei, L., Kroger, T., & Chen, R. (2011). Information filter with speed detection for indoor Bluetooth positioning (pp. 47-52). IEEE. https://doi.org/10.1109/ICL-GNSS.2011.5955258
Chico C., A. (2009). Diseño y desarrollo de un sistema de posicionamiento en interiores basado en Wi-Fi con tecnología Android.
Cinefra, N. (2014). An adaptive indoor positioning system based on Bluetooth Low Energy RSSI. Recuperado a partir de https://www.politesi.polimi.it/handle/10589/92284
Dahlgren, E., & Mahmood, H. (2014). Evaluation of indoor positioning based on Bluetooth Smart technology. Master of Science Thesis in the Programme Computer Systems and Networks. Recuperado a partir de http://publications.lib.chalmers.se/records/fulltext/199826/199826.pdf
Descamps, L., Pérez, A., & Conesa, J. (2013). Integración de un sistema de posicionamiento indoor en aplicaciones SIG para dispositivo móvil. Recuperado a partir de http://dugi-doc.udg.edu/handle/10256/7651
Feldmann, S., Kyamakya, K., Zapater, A., & Lue, Z. (2003). An Indoor Bluetooth-Based Positioning System: Concept, Implementation and Experimental Evaluation. En International Conference on Wireless Networks (Vol. 272). Recuperado a partir de https://pdfs.semanticscholar.org/9f9a/84f89ae5fc5eab6b741436f9ef7f e721d18f.pdf
Gartner Says Five of Top 10 Worldwide Mobile Phone Vendors Increased Sales in Second Quarter of 2016. (s. f.). Recuperado 24 de julio de 2017, a partir de http://www.gartner.com/newsroom/id/3415117
28
Liu, S., Jiang, Y., & Striegel, A. (2014). Face-to-Face Proximity EstimationUsing Bluetooth On Smartphones. IEEE Transactions on
Mobile Computing, 13(4), 811-823.
https://doi.org/10.1109/TMC.2013.44
Lu, M., Chen, W., Shen, X., Lam, H.-C., & Liu, J. (2007). Positioning and tracking construction vehicles in highly dense urban areas and building construction sites. Automation in Construction, 16(5), 647-656. https://doi.org/10.1016/j.autcon.2006.11.001
Lui, H., Darabi, H., Banerjee, P., & Liu, J. (2007). Survey of Wireless Indoor Positioning Techniques and Systems. Recuperado a partir de http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=4343996&qu eryText=Survey%20of%20Wireless%20Indoor%20Positioning%20Tec hniques%20and%20Systems&newsearch=true
Pei, L., Liu, J., Guinness, R., Chen, Y., Kuusniemi, H., & Chen, R. (2012). Using LS-SVM Based Motion Recognition for Smartphone Indoor Wireless Positioning. Sensors, 12(5), 6155-6175. https://doi.org/10.3390/s120506155
Raghavan, A. N., Ananthapadmanaban, H., Sivamurugan, M. S., & Ravindran, B. (2010). Accurate mobile robot localization in indoor environments using bluetooth. En Robotics and Automation (ICRA), 2010 IEEE International Conference on (pp. 4391–4396). IEEE. Recuperado a partir de http://ieeexplore.ieee.org/abstract/document/5509232/
Rey, J. (2012). El Sistema de Posicionamiento Global - GPS. Recuperado a partir de http://edis.ifas.ufl.edu/in657
Rodas, J., Fernández, T., Iglesia, D., & Escudero, C. (2007). Sistema de Posicionamiento Basado en Bluetooth con Calibrado Dinámico.
Recuperado a partir de
http://gtec.des.udc.es/web/images/pdfConferences/2007/ursi_rodas_2 007.pdf
Subhan, F., Hasbullah, H., Rozyyev, A., & Bakhsh, S. T. (2011). Indoor positioning in Bluetooth networks using fingerprinting and lateration approach (pp. 1-9). IEEE. https://doi.org/10.1109/ICISA.2011.5772436
29