Sistema de posicionamiento interior basado en giroscopio y acelerómetro

Estoy desarrollando una aplicación de Android para seguir la posición de interior. Mi teléfono es un Google Nexus S que usa dos sensores, el primero es un acelerómetro y el segundo es un giroscopio.

Mi idea es que desde un punto de referencia de inicio (una posición conocida de GPS), usando los 2 sensores (acelerómetro para el movimiento y Gyro para las direcciones) rastrear el teléfono cuando se mueve. Y mostrar en un mapa cuando el usuario está yendo.

Pero el problema es que no tengo idea de cómo combinar ambos sensores para darme una posición real.

He leído un artículo en Internet que habla de “filtro kalman” y después de investigar un poco más descubrí que ese filtro es muy muy complejo / demasiado para mí) especialmente para codificarlo en Java para Android (asesino de la CPU)

¿Alguien tiene alguna experiencia que pueda compartir conmigo sobre el sistema de posicionamiento interior usando Gyro y acelerómetro?

Los giroscopios y los acelerómetros no son suficientes.

Obtienes posición integrando la aceleración lineal dos veces, pero el error es horrible. Es inútil en la práctica.

Aquí hay una explicación de (Google Tech Talk) a las 23:20. Recomiendo este video.

En cuanto al posicionamiento en interiores, he encontrado que estos son útiles:

  • Localización y seguimiento en interiores basados ​​en RSSI utilizando Smoman de Sigma-Point Kalman
  • Seguimiento de peatones con sensores inerciales montados en el calzado
  • Mejora del rendimiento de los podómetros con un solo acelerómetro

No tengo idea de cómo funcionarían estos métodos en aplicaciones reales o cómo convertirlas en una buena aplicación para Android.

Una pregunta similar es Cálculo de distancia dentro de un edificio .

Creo que esta es una excelente publicación respondiendo tu pregunta. Este filtro kalman combina datos de acelerómetros y giroscopios. Espero eso ayude.

Para otras lecturas interesantes sobre tecnologías de posicionamiento para interiores emergentes, consulte esta publicación de blog de Qubulus . Hay varias nuevas empresas y proyectos de investigación que intentan encontrar un buen reemplazo para el GPS en interiores. Los bashs van desde el cálculo de la cuenta muerto, a los códigos QR , a los pulsos de luz, a la toma de huellas digitales por radio. Parece que cualquier solución viable combinará múltiples tecnologías (similar a cómo la mayoría de los teléfonos inteligentes dependen de A-GPS, donde la señal satelital es asistida por la multilateración de torres de telefonía celular ).

¡Mucha suerte con tu aplicación!

Creo que es demasiado tarde para responder a esta pregunta, pero ahora, hay una buena solución llamada tecnología iBeacon.

Puede escanear dispositivos iBeacon desde su teléfono inteligente, y puede obtener el rssi desde iBeacon. Entonces, puedes calcular tu posición por esos rssi.

Para rastrear la posición interior comenzando desde un punto de referencia, solo el giroscopio y el acelerómetro no son suficientes. Con el acelerómetro puede calcular la velocidad, con el giro puede obtener la dirección del dispositivo móvil, pero para calcular la posición interior también necesita tener la dirección de movimiento, por lo que para este caso necesita usar un sensor magnético. Tal enfoque se llama método de cálculo de cuentas muerto y es bastante complejo combinar los 3 sensores para obtener la posición adecuada en el interior. Los filtros Kalman le permiten suavizar su medición y filtrar algo de ruido, pero no es el método para calcular la posición interior. Si quieres posicionarte en el interior, puedes probar el método iBeacon y el método Trilateration, hay algunas bibliotecas (como esta ) que ya tienen esta funcionalidad, por lo que puedes intentar investigar este método desde tales libs.