DESARROLLO DE UNA APLICACIÓN DE SENSADO Y MONITOREO DE
LAS CAÍDAS Y MARCHA HUMANA PARA TELÉFONOS INTELIGENTES.
CRISTIAN CAMILO BENAVIDES RAMON
DIRECTOR (A)
NUBIA RINCÓN
Proyecto de Grado en modalidad de Monografía para optar al título de
Ingeniero Electrónico
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS
FACULTAD DE INGENIERÍA
PROYECTO CURRICULAR DE INGENIERÍA ELECTRÓNICA
BOGOTA D.C.
DESARROLLO DE UNA APLICACIÓN DE SENSADO Y MONITOREO DE LAS CAÍDAS Y MARCHA HUMANA PARA TELÉFONOS INTELIGENTES.
CRISTIAN CAMILO BENAVIDES RAMON Código: 20061005010
Proyecto de Trabajo de Grado
Director(a) Nubia Rincón
Profesora Facultad de Ingeniería Licenciada en ingeniería electrónica
UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIERIA
PROYECTO CURRICULAR DE INGENIERÍA ELECTRÓNICA BOGOTA D.C.
Comisión de evaluación.
Esta tesis titulada “DESARROLLO DE UNA APLICACIÓN DE SENSADO Y MONITOREO DE LAS CAÍDAS Y MARCHA HUMANA PARA TELÉFONOS INTELIGENTES”, escrita por Cristian Camilo Benavides Ramón, ha sido aprobada en cuanto a estilo y contenido intelectual. Hemos leído esta tesis y la aprobamos.
____________________________ ____________________________ ____________________________ ____________________________ ____________________________ ____________________________ ____________________________
Ingeniero. Edmundo Vega Jurado
Licenciada. Nubia Rincón Directora.
3 de octubre de 2016
DEDICATORIAS Y AGRADECIMIENTOS.
Agradezco en primera instancia a la vida y al Universo por darme la sabiduría para llevar a feliz término este trabajo de grado y por brindar la más grande de sus bendiciones sobre mí; mi familia. No ha sido sencillo el camino hasta ahora, pero gracias a sus aportes, a su amor, a su inmensa bondad y apoyo, las complicaciones presentes para alcanzar esta meta se han hecho menos visibles.
TABLA DE CONTENIDO
Comisión de evaluación. ...5
DEDICATORIAS Y AGRADECIMIENTOS. ...7
TABLA DE CONTENIDO ...9
LISTA DE FIGURAS ... 12
LISTA DE TABLAS ... 14
1. RESUMEN ... 16
2. INTRODUCCIÓN ... 17
3. PLANTEAMIENTO DEL PROBLEMA ... 19
4. OBJETIVOS ... 21
4.1. Objetivo general. ... 21
4.2. Objetivos específicos. ... 21
5. ESTADO DEL ARTE ... 22
6. JUSTIFICACIÓN ... 25
7. MARCO TEÓRICO. ... 27
7.1. Sensores ... 27
7.2. Acelerómetro. ... 27
7.2.1. Teoría de los acelerómetros. ... 27
7.2.2. Modelo del acelerómetro. ... 28
7.2.3. Tipos de acelerómetros... 29
7.2.4. Aplicaciones de los acelerómetros. ... 32
7.2.5. Criterios para la elección del acelerómetro adecuado ... 32
7.3. Giroscopios... 32
7.3.1. Tipos de Giroscopios ... 33
7.3.2. Aplicaciones de los giroscopios. ... 34
7.4. Enfermedades detectadas por la anomalía en la marcha. ... 34
7.4.1. Enfermedad Parkinson ... 34
7.4.2. El trastorno de la marcha en la enfermedad de Parkinson (EP) ... 34
7.4.3. Parálisis cerebral ... 34
7.6. CAIDAS ... 36
7.6.1. Incidencia de las caídas ... 36
7.6.2. Física de la marcha ... 36
7.6.3. Consecuencias de las caídas ... 37
7.6.4. Factores que influyen en las caídas del anciano ... 38
7.6.5. Factores intrínsecos ... 39
7.6.6. Factores extrínsecos ... 40
7.7. Algoritmos de detección de caídas ... 40
8. DECISIONES DE DISEÑO. ... 42
8.1. Conceptos básicos de java ... 42
8.1.1. Clases ... 42
8.2. Excepciones ... 43
8.3. Métodos ... 44
8.4. Programación orientada a objetos ... 44
8.4.1. Abstracción. ... 44
8.4.2. Encapsulamiento ... 44
8.4.3. Polimorfismo ... 45
8.4.4. Herencia ... 45
8.4.5. Modularidad ... 45
8.4.6. Principio de ocultación ... 45
8.4.7. Recolección de basura ... 45
8.5. CONCEPTOS BÁSICOS DE XML ... 46
8.5.1. Tipos de software en XML ... 46
8.5.2. Estructura de un documento XML ... 46
8.6. Tipos de layout en Android ... 48
8.7. Uso de multilenguaje en android ... 49
8.8. Estilos en android studio ... 49
8.9. Androidmanifiest ... 50
8.9.1. Descripción de elementos básicos de Androidmanifiest ... 50
8.10. Componentes de una aplicación android ... 51
8.11. Servicio google maps ... 53
9.1. Inicio y presentación de la aplicación. ... 54
9.2. Menú principal de “FallRegister”. ... 55
9.3. Ingreso e identificación del usuario ... 56
9.4. Registro usuario nuevo ... 57
9.5. Configuración “Datos del usuario”. ... 60
9.6. Configuraciones del programa ... 62
9.7. Configuraciones del Acelerómetro. ... 65
9.8. Ubicación geográfica y mapas del aplicativo ... 67
9.9. Pruebas de los sensores ... 69
9.10. Llamada y solicitud de emergencia. ... 70
9.11. Notificaciones en la barra de estados. ... 71
9.12. Persistencia de los registros del detector de caídas. ... 72
9.13. Lanzamiento del servicio integrado a la aplicación. ... 74
9.14. Mensajes y llamadas de alerta. ... 75
9.15. Persistencia de las opciones y configuraciones del usuario. ... 76
10. ALGORITMO DE DETECCIÓN DE CAÍDAS. ... 77
11. RESULTADOS ... 81
11.1. Saltos ... 81
11.2. Detención forzada ... 81
11.3. Sentada ... 81
11.4. Acostarse ... 82
11.5. Caída del usuario ... 83
11.6. Caída del teléfono inteligente. ... 83
12. CONCLUSIONES Y TRABAJOS FUTUROS. ... 86
LISTA DE FIGURAS
Figura 1. Esquema básico del acelerómetro ... 28
Figura 2. Modelo del principio de un acelerómetro. ... 28
Figura 3. Variedad de estructuras de condensadores usados para medir posición. ... 29
Figura 4. Esquema y deformación de un sensor capacitivo. ... 30
Figura 5. Acelerómetro piezo-resistivo. ... 30
Figura 6. Acelerómetro piezoeléctrico. ... 31
Figura 7. Acelerómetro 3D. ... 31
Figura 8. Principio de conservación del momento angular. ... 33
Figura 9. Giroscopio vibratorio. ... 33
Figura 10. Icono lanzador de la aplicación. ... 54
Figura 11. Pantalla de inicio de la aplicación. ... 54
Figura 12. Instrucciones de navegabilidad de la aplicación. ... 55
Figura 13. Menú lateral del programa. ... 55
Figura 14. Pantalla de login. ... 56
Figura 15. Confirmación de datos obligatorios. ... 56
Figura 16. Registro de usuario nuevo. ... 57
Figura 17. Limitaciones para el usuario y la clave nueva . ... 57
Figura 18. Creación del nuevo usuario... 58
Figura 19. Confirmación del usuario creado. ... 58
Figura 20. Pestaña de usuario autentificado. ... 59
Figura 21. Página de login, con usuario autentificado. ... 59
Figura 22. Pantalla "datos de usuario". ... 60
Figura 23. Datos diligenciados de la pantalla "datos de usuario"... 60
Figura 24. Solicitud de contraseña para la realización de algún cambio o modificación. ... 61
Figura 25. Confirmación del almacenamiento de los datos de usuario... 61
Figura 26. Pantalla de configuración del programa. Elección de la sensibilidad ... 62
Figura 28. Configuraciones de llamadas. ... 63
Figura 29. Advertencia de datos incompletos. ... 64
Figura 30. Configuraciones del programa. ... 64
Figura 31. Proceso de calibración del sensor. ... 65
Figura 32. Error de calibración de los sensores. ... 66
Figura 33. Acelerómetro calibrado de manera satisfactoria. ... 66
Figura 34. Ubicación geográfica posición actual. ... 67
Figura 35. Ubicación geográfica del hospital o centro médico. ... 67
Figura 36. Marcación de la ubicación del hogar o ubicación del contacto. ... 68
Figura 37. Ampliación ubicación del hogar o ubicación del contacto. ... 68
Figura 38. Valores actuales de los sensores que posee el dispositivo del usuario. ... 69
Figura 39. Grafica en tiempo real de la norma del sensor acelerómetro. ... 70
Figura 40. Ventana de contactos "manual". ... 71
Figura 41. Advertencia de confirmación llamado emergencia. ... 71
Figura 42. Notificación del lanzamiento del servicio. ... 72
Figura 43. Notificación de la detección de una caída. ... 72
Figura 44. Archivos de texto almacenados. ... 73
Figura 45. Almacenamiento de los datos del sensor. ... 73
Figura 46. Proceso del servicio activo. ... 74
Figura 47. Llama de emergencia al seleccionar el contacto o al detectar una caída. ... 75
Figura 48. Formato del mensaje a enviar con la posición actual del paciente. ... 75
Figura 49. Archivos preference con los datos de configuración. ... 76
Figura 50. Almacenamiento de los datos del usuario. ... 76
Figura 51. Pasos para la detección de caídas ... 77
Figura 52. Diagrama de flujo del servicio de detección de caídas. ... 78
Figura 53.Diagrama de flujo Eliminación manual de falsos positivo. ... 79
Figura 54.Diagrama de flujo orden y ejecución de notificaciones. ... 80
Figura 55.Diagrama de flujo funcionalidad ubicaciones geográficas. ... 80
Figura 56. Grafica de aciertos pruebas de salto, sentada y detección forzada. ... 82
Figura 57. Grafica de aciertos prueba" acostada". ... 82
Figura 58. Grafica de aciertos simulación de caída. ... 83
LISTA DE TABLAS
Tabla 1. Mofificadores de acceso según la clase. (Fuente: (“Modificadores en Java,” n.d.)). ... 43
Tabla 2. Excepciones conocidas en Java (Fuente: (Cueto, n.d.)). ... 44
Tabla 3. Layouts comunes en android (Fuente: Autor, 2016). ... 49
Tabla 4. Prueba de saltos. ... 81
Tabla 5. Prueba de detención forzada. ... 81
Tabla 6. Prueba donde el usuario se sienta. ... 81
Tabla 7. Prueba donde el usuario se acuesta. ... 82
Tabla 8. Prueba de simulación de caída del usuario. ... 83
DESARROLLO DE UNA APLICACIÓN DE SENSADO Y MONITOREO DE
LAS CAÍDAS Y MARCHA HUMANA PARA TELÉFONOS INTELIGENTES.
1.
RESUMEN
El presente trabajo es una recopilación del desarrollo de un aplicativo móvil capaz de detectar y monitorear la marcha y las caídas de los usuarios. El aplicativo diseñado para Smartphone con sistema operativo Android 4.2 o superior, es capaz de detectar alguna caída o impacto en la actividad física del paciente, analizar los datos obtenidos por los sensores integrados en el celular y notificar el acontecimiento de manera automática a algún contacto o centro de emergencia. Cualquier usuario que posea un dispositivo móvil con acelerómetro y con la versión mínima de Android que soporta la aplicación, podrá llevar un control de las actividades o sucesos diarios a los que un paciente puede ser sometido o verse expuesto. Además, posteriormente tendrá la posibilidad de acceder a un registro completo de estos datos; registro útil para llevar un seguimiento del estado y las actividades del usuario. Este sistema no es invasivo y permitirá monitorear los acontecimientos del usuario en todo momento, así el dispositivo se encuentre en estado de inactividad.
En este trabajo se mostrará un copilado de las decisiones de diseño de la herramienta “Fall Register”, en donde se mostrara todas las funcionalidades adicionales con las cuales cuenta el aplicativo. El documento adicionalmente incluye un paso a paso del proceso, que el usuario debe seguir para el correcto funcionamiento del programa.
También se abordara de manera superficial el algoritmo de detección de caídas, mostrando a grandes rasgos los pasos que lleva a cabo internamente el programa, para decidir si ha detectado o no una caída. En este documento no se mostrarán códigos ni formulas finales, simplemente los análisis previos y los argumentos que llevaron a tomar determinadas decisiones de implementación y de diseño.
Palabras clave
2.
INTRODUCCIÓN
El rápido avance tecnológico producido en los últimos años, ha permitido que nuevas investigaciones y avances se enfoquen en temas cada vez más específicos y puntuales. Este fenómeno nos da la posibilidad de plantear y dar solución a innumerables problemas cotidianos; problemas que en su determinado momento, ya sea por complejidad o por falta de recursos, no podían si quiera ser abordados.
La disminución de los costos de fabricación ha dejado al alcance de la comunidad herramientas y conocimientos capaces de dar solución a casi todos los procesos imaginables; herramientas que cada vez son más completas, potentes y sobre todo económicas; suficientes para desarrollar cualquier proyecto o investigación. Las computadoras modernas, o sin ir más lejos, los Smartphone, cuentan con una velocidad y una capacidad de procesamiento inimaginable hace algunos años (Ohshima, n.d.). Estas máquinas cuentan cada vez, con más mecánicos e instrumentos de interpretación (sensores, transductores, cámaras, etc.), capaces de realizar mediciones de cualquier fenómeno o acontecimiento físico. De manera análoga, cuentan con mecanismos de procesamiento tanto en software, a la hora de tener la capacidad computacional de respuesta, como en el hardware, con programas capaces de interpretar y analizar los datos obtenidos.
Uno de los campos que más interesa en la investigación es la salud. En su búsqueda de crear mecanismos o herramientas capaces de prevenir, curar, o en general ayudar a aumentar la expectativa y la calidad de vida de las personas. La preocupación por una vida más saludable se puede atribuir al incremento de los riesgos potenciales que a diario enfrentan las personas; sin embargo, de la misma manera en que los riesgos aumentan, gracias al avance tecnológico pueden ser controlados o prevenidos con mayor facilidad y antelación.
El aumento de la población mayor o de tercera edad y la gran vulnerabilidad de ellos para determinadas acciones y eventos cotidianos, ha convertido a esta fracción de la población en un tema de alta prioridad para todos los países.
Para el año 2006, había alrededor de 600 millones de personas de avanzada edad, cifra que corresponde a algo más del 10% de la población mundial total. Según las Naciones Unidas, esta cifra tendería a aumentar a un poco más de 2.400 millones (de adultos mayores) para el año 2050. Debido a esto las Naciones Unidas dieron como prioritario, el desarrollo del envejecimiento del mundo; avanzando en la salud y el bienestar de la tercera edad, creando herramientas y ambientes de apoyo para estas personas (Khan & Sohn, 2011).
consecuencias post caídas a menudo suelen ser muy graves, requiriendo de tratamientos específicos y de terapias que necesitan un seguimiento detallado y oportuno. Lesiones severas tales como laceraciones, fracturas de cadera o traumas en la cabeza, suelen provocar un rápido deterioro de la salud y aumentar el riesgo de muerte temprana.
Uno de los peligros más graves de una caída es de pasar un largo período de tiempo en el suelo después del golpe. La mitad de los que experimentaron un tiempo prolongado post caída murió dentro de los siguientes 6 meses posteriores del accidente (Tolkiehn, Atallah, Lo, & Yang, 2011). La detección de una caída es, por tanto, de vital importancia para el cuidado de las personas mayores; ya sea para actuar en el momento del suceso, o para disminuir el tiempo de reacción ante dicho acontecimiento; ya que un oportuno aviso (a algún familia, vecino o profesional competente) para una inmediata acción, puede salvar la vida del paciente, especialmente para aquellos que demandan una atención especial y/o permanecen prolongados periodos de tiempo solos.
Otro de los factores de medida importantes es el patrón de marcha. Los resultados sugieren que algunos parámetros de la marcha registraron una herramienta aceptable para la detección y evolución de algunas enfermedades, como artritis reumatoide y la enfermedad de Parkinson (Yamada et al., 2012). Además, algunos artículos sugieren que el patrón de marcha es tan exacto y preciso que lo definen como la una huella dactilar en movimiento (Nickel, Derawi, Bours, & Busch, 2011). Su análisis y la posterior detección de anomalías, ya sea en la longitud, en frecuencia o en intensidad, pueden dar señales claras de la presencia de algunas enfermedades.
Muchos aparatos que ayudan a detectar y alertar las caídas o tipos de marcha, ya han sido diseñados y planteados; algunos como se verá posteriormente, poco fiables, costosos y algunos incomodos y hasta invasivos.
3.
PLANTEAMIENTO DEL PROBLEMA
El avance tecnológico ha puesto a disposición de la comunidad herramientas cada vez más potentes y eficientes para el desarrollo de cualquier problemática. Los celulares modernos o Smartphone son una clara muestra del desarrollo tecnológico de los últimos años (Ohshima, n.d.). Los teléfonos inteligentes son dispositivos que combinan una gran capacidad de procesamiento, con algunos sensores y transductores potentes, en tamaños cómodos y a precios muy accesibles. Esta gran capacidad es óptima para la implementación de programas y aplicaciones capaces de brindarle al usuario, la posibilidad de satisfacer todas sus necesidades; ya sean en el ámbito lúdico (con juegos, redes sociales etc.), en el académico (libros, desarrolladores, calculadoras etc.) o en salud y vida (ritmo cardiaco, quema de calorías, hábitos alimenticios, etc.) (Song, Wang, Yang, & Li, 2015). Todos estos recursos y posibilidades a costos muy bajos y en algunos casos hasta sin costo alguno.
Entre las aplicaciones destinadas a la salud, se encuentran aplicaciones capaces de sustituir hasta cierto punto, algunos controles médicos, o a lo sumo prevenir, apoyar y hasta corregir enfermedades, o malos hábitos (Song et al., 2015). Estas aplicaciones se desarrollan, ya sea con los sensores integrados del Smartphone, o con algunas piezas adiciones que aprovechan las múltiples plataformas de comunicaron y procesamiento del móvil. El hecho de tener en un solo dispositivo la capacidad de monitorear, procesar y comunicar, hacen de un Smartphone corriente la herramienta idónea para la generación de datos, control de sucesos y aviso o divulgación de algún acontecimiento. Esto nos ha hecho considerar los celulares inteligentes como el siguiente paso en la creación de nuevas tecnologías (Ohshima, n.d.) (Robinson & Weir, 2015). En esta monografía, se desarrolla una aplicación para Android capaz de monitorear, procesar, y almacenar los datos de caídas; y de procesar y almacenar (sin llegar a analizar) los tipos de marcha, para su análisis, tanto superficial e instantáneo (en el caso de las caídas, que demandan una acción inmediata), o para un análisis más profundo y diferido, ya sea al momento de censar la marcha, o en el momento de analizar los orígenes o las causas de las caídas.
Como se vio anteriormente, las caídas representan una gran problemática para la población mayor, con consecuencias que pueden llevar a un grave deterioro de la salud y en caso extremo a la muerte (Tolkiehn et al., 2011). Es importante por esta razón, tener un dispositivo capaz de realizar la detección de caídas de manera veloz y precisa. Si bien una detección oportuna del acontecimiento, dará la posibilidad de reaccionar de una manera rápida y eficiente; un análisis a posteriori permitirá detectar las posibles causas y plantear algunas soluciones. El análisis posterior permitirá determinar si hay algún tipo de patrón y por consiguiente el origen del acontecimiento; ya sea por algún problema de tipo físico, o por alguna enfermedad capaz de alterar los pasos o la marcha del usuario (“Analisis de la marcha,” n.d.).
4.
OBJETIVOS
4.1.
Objetivo general.
Diseñar un sistema de adquisición, procesamiento y análisis de la dinámica de la marcha humana en una aplicación para teléfonos móviles inteligentes en OS Android, como herramienta preventiva y diagnostica de detección de caídas.
4.2.
Objetivos específicos.
Desarrollar un programa no invasivo y de bajo costo de adquisición, almacenamiento y procesamiento, de los datos tomados por los sensores del teléfono de la dinámica de la marcha humana.
Almacenar de la manera más adecuada los datos obtenidos para su posterior análisis Implementar los algoritmos necesarios para la detección y análisis de la dinámica de la
marcha humana a partir de los datos obtenidos por los sensores, que permitan clasificar los diferentes tipos de eventos como caídas, anomalías, enfermedades y patrones de marcha.
5.
ESTADO DEL ARTE
Estos son algunas de las publicaciones y trabajos que se encontraron en la actualidad relacionadas directamente con el proyecto, tanto en el ámbito académico como industrial.
En (Bai et al., 2012), se desarrolló un dispositivo portátil que analiza el flujo de datos procedentes de un acelerómetro triaxial, para medir y evaluar caídas. Analiza los datos obtenidos del dispositivo (en forma de canguro), y determina si se presentó alguna caída e informa del acontecimiento. Los resultados fueron un sensor capaz de analizar los datos de manera local que envía únicamente los resultados del análisis de los datos obtenidos, con el objetivo de ahorrar energía. Su sistema de análisis evita las falsas alarmas al integrar algoritmos y umbrales adecuados. Se concluyó que en una nueva versión era necesario adicionar giroscopios, para una media más precisa.
En (Doukas & Maglogiannis, 2008), se informa de un estudio para determinar un umbral del algoritmo asociado a las caídas. Basado en cuatro acelerómetros colocados en diferentes lugares del cuerpo (tronco, muslos, cintura y muñeca); Los sensores se utilizaron para analizar y medir diferentes tipos de caídas. Los resultados de este estudio determinaron que en el tronco y la cintura, se encontraban los datos más relevantes para un posterior análisis.
En (Miura, Ohtaki, & Inooka, 2001), se analizaron las características cinéticas de la marcha humana y su viabilidad en la implementación en la cinética de la robótica moderna. Como resultado se encontraron los factores cinéticos esenciales, como el rango de movimiento del ángulo de la articulación, velocidad angular media y la posición del centro de gravedad.
En (Song et al., 2015), se presenta el estado del arte de varios sensores y dispositivos para la salud. Se clasificaron los resultados existentes por parte de sus objetivos de aplicación. En particular, los dispositivos, sistemas y algoritmos se dividieron en: i) detección de caídas, ii) análisis de la marcha, iii) cuantificación de la actividad física, iv) ritmo cardiaco v) sesiones de sueño. En este artículo se pudo determinar los sensores y algoritmos más efectivos para cada uno de los casos.
En (Perc, 2005), se implementó un sensor en forma de plantilla ortopédica, ubicado en el interior de un zapato. Éste permitía medir la fuerza, la presión y la marcha del paciente, para determinar anomalías en la marcha y las posibles causas. Se logró detectar varias anomalías y obtener una clasificación de estas.
En (Chen & Itoh, 2010), se realizó una plataforma que permitía a los usuarios de teléfonos inteligentes aprovechar el poder de la nube para liberarse de los límites de la potencia de procesamiento de sus celulares. Con esto se pueden realizar cálculos de gran procesamiento en dispositivos remotos, que son cálculos avanzados difíciles de procesar con las limitaciones de un Smartphone.
En (Tolkiehn et al., 2011), se desarrolló un sensor de caídas usando un acelerómetro de tres ejes y un sensor de presión barométrica. Estos valores eran enviados por medio de bluetooth a un dispositivo móvil basado en Android 3.2, el cual se encargaba de analizar y procesar los datos, así como de enviar señales de aviso. El celular en si solo aportaba la capacidad de procesamiento y envío de mensajes, pues el dispositivo requería hardware adicional. Los resultados que se obtuvieron con este dispositivo dieron una precisión de más del 90%.
En (Bai et al., 2012), se realizó una aplicación en Android que usaba los datos del acelerómetro del dispositivo y los comparaba con las actividades típicas de una persona, detectando con una gran precisión, cuándo se presentaba una caída. El dispositivo daba respuestas inmediatas pero no permitía un registro ni un análisis posterior de la información. La comparación de los datos se hacía previamente y se definían los umbrales, sin posibilidad de realimentación.
En (Yoneyama et al., 2014), se creó un algoritmo de análisis de marcha auto-adaptativo. Permite discriminar la marcha patológica de la marcha normal sobre la base de los picos extraídos. El dispositivo funciona con una red de sensores que recopilan la información necesaria; luego se procesan los datos desde un pc usando la herramienta Matlab.
En (Harbert et al., 2013), desarrollaron una Aplicación para Android que recibe y procesa los datos del dispositivo MiMiC a través de Bluetooth. Los sensores son correas en forma de manillas, que se pueden conectar en varias partes del cuerpo, para determinar la marcha y ritmo de viaje de las personas. Con esto obtuvieron un dispositivo de procesamiento de una red de señales cinéticas.
dispositivos pueden proporcionar datos significativos de los movimientos del usuario y pueden ser útiles para el análisis, evaluación y seguimiento de la marcha. El resultado muestra un 95% de precisión en la medición de zancadas, entre los dispositivos evaluados.
En (Zhang et al., 2013), se propone un sistema de detección de caídas en tiempo real, para distinguir varias caídas durante las actividades diarias. Las caídas se detectan en dos pasos: primero, un algoritmo jerárquico se utiliza para clasificar las posturas de movimiento; a continuación, analiza si las posturas actuales son normales o anormales. El algoritmo de detección de caídas fue desarrollado y evaluado dentro de un HTC (basado en Android) en tiempo real. El dispositivo está basado en los datos adquiridos desde el acelerómetro del teléfono y los sensores de orientación. El algoritmo no es adaptativo y no permite almacenar datos adquiridos ni los datos de las marchas.
6.
JUSTIFICACIÓN
Aprovechando el avance tecnológico de los nuevos dispositivos móviles, de sus sensores cada vez más precisos y económicos, de sus potentes procesadores, del aumento de su velocidad y capacidad de procesamiento; se realizara una aplicación capaz de reunir y aplicar varias de las tareas y funciones de un analizador de marcha médico y un dispositivo capaz de censar y detectar caídas y golpes, en un solo dispositivo; sin recurrir a elementos anexos que contraigan costos adicionales.
Como se puede observar en el estado del arte del presente trabajo, hay un gran avance en dispositivos encargados de resolver de manera parcial este inconveniente. Los dispositivos que se encuentran tanto en la parte comercial como en la parte académica, son variados tanto en su funcionamiento (ya sea invasivo, recurriendo a un celular, por procesamiento de imágenes, etc.), como en su costo; teniendo herramientas de celular de costo cero, hasta mecanismos de redes de cámaras o sensores de un costo bastante elevado.
Además, el objetivo o resultado final para la mayoría de las aplicaciones, se limita simplemente a generar una señal de alerta; señal que puede fácilmente ser ocultada u omitida por el usuario, esto debido a que las aplicaciones no tienen la posibilidad de almacenar (mucho menos de analizar) los antecedentes y los posibles causales. La información del acontecimiento y su posterior análisis médico, se reduce a la poca información que el usuario recuerde o quiera proporcionar. Las aplicaciones actuales desechan valores e información útil para un análisis posterior y profundo del suceso. Estas aplicaciones carecen de reportes que permitirían la realización de informes, para un posterior análisis o seguimiento. Tampoco dentro de la investigación se encontró una herramienta capaz de censar la marcha del usuario, herramienta que al estar al alcance de cualquier usuario, podrá prevenir enfermedades o daños desde la comodidad del hogar y a coste cero.
Para tratar de dar solución a todas estas problemáticas, la aplicación tiene las siguientes capacidades:
Capacidad de censar: Por medio del acelerómetro, el sensor de posición y el giroscopio, la aplicación será capaz de captar los datos suficientes para determinar cuándo, cómo y si en verdad hubo una caída, choque o un cambio brusco de posición del usuario.
Capacidad de procesar: Los algoritmos de detección de caídas ya desarrollados y el algoritmo de detección posición que se desarrollará en este trabajo, son de baja complejidad y no presentaran ningún inconveniente al ser procesados por un Smartphone.
un usuario predeterminado, o directamente a un centro de salud especializado dependiendo de la magnitud del acontecimiento.
Capacidad de almacenar y organizar información: El dispositivo será capaz de almacenar los datos tomados por sus sensores para su posterior análisis. Hasta ahora las herramientas móviles que se encuentran en el mercado y en las investigaciones académicas, no cuenta con esta capacidad, pues se limitan al procesamiento inmediato. Con estos datos obtenidos, clasificados y almacenados, se pretende determinar si el paciente tiene tendencia a sufrir alguna de las enfermedades detectables por su marcha (en el caso de la marcha, el proyecto llega únicamente hasta la obtención, filtrado y almacenamiento; el análisis de estos datos serian parte de otro proyecto o una continuación del actual, como se verá más detalladamente en los alcances y limitaciones). (Yamada et al., 2012) (Antonio Luque Estepa, 2014).
Capacidad de analizar: El dispositivo será capaz de analizar los datos previamente obtenidos y clasificados, para encontrar patrones y causales; así como la capacidad de alertar ante la posibilidad de una enfermedad de mayor gravedad (esto se implementó únicamente para el análisis de las caídas). Añadir las causales intrínsecas y extinticas de las caídas, el cómo sucedieron, su ubicación y entorno; ayudaría a realizar cambios y correctivos, para el bien del paciente. Estas nuevas herramientas, así como la capacidad de análisis posterior de los valores, permite tener una base de datos almacenada que pretende evitar que el usuario oculte información, de los acontecimientos, de su frecuencia y hasta de su gravedad; ya que muchas de las caídas o golpes dañinos son ocultadas a los doctores o al especialista del caso; evitándole y limitándolo a poder actuar o prevenir un daño aún mayor. Esto hace parte de una de las consecuencias psicológicas post caída que afectan al paciente, generándole miedos bien sea, de futuras caídas, de algún tipo de represarías, de perdida de libertades, de burlas o de casos de sobreprotección (Chan et al., 2012); que le obligan a ocultar este tipo de acontecimientos.
7.
MARCO TEÓRICO.
7.1.
Sensores
Un sensor se puede definir como un dispositivo que está en capacidad de detectar acciones o estímulos externos y responder en consecuencia. En pocas palabras, un sensor es capaz de medir un agente externo y transformarlo en una señal eléctrica. Las unidades de medición inerciales son instrumentos electrónicos que miden la velocidad, orientación y fuerza gravitacional aplicada en un objeto; por medio de acelerómetros y giroscopios. (Jogan & Olsson, 2005) (Ripka & Tipek, 2010).
7.2.
Acelerómetro
.
Los acelerómetros son dispositivos electromecánicos que detectan las fuerzas de aceleración, ya sea estática o dinámica. Las fuerzas estáticas incluyen la gravedad, mientras que las fuerzas dinámicas pueden incluir vibraciones y movimiento (“ABC del acelerometro,” n.d.).
7.2.1.
Teoría de los acelerómetros.
Estos dispositivos convierten la aceleración de la gravedad o de movimiento en una señal eléctrica analógica proporcional a la fuerza aplicada al sistema, o mecanismo sometido a vibración o aceleración. (Yang et al., 2010).
Figura 1. Esquema básico del acelerómetro
7.2.2.
Modelo del acelerómetro.
Existe un modelo general para representar un acelerómetro. Ver Figura 2
Figura 2. Modelo del principio de un acelerómetro.
7.2.3.
Tipos de acelerómetros
Existen diversos modelos de acelerómetros. A continuación se mencionan algunos cuantos y sus características principales. La siguiente información fue tomada de (Antonio Luque Estepa, 2014).
Acelerómetros mecánicos
Emplean una masa inerte y resortes elásticos. Los cambios se miden con galgas extensiométricos (matriz de bobinas o cable muy fino que varían sus resistencias linealmente en función de la carga aplicada al dispositivo), incluyendo sistemas de amortiguación que evitan la propia oscilación (Antonio Luque Estepa, 2014).
Acelerómetros capacitivos
Estos dispositivos varían la posición relativa de las placas de un microcondensador cuando se encuentra sometido a aceleraciones. Están integrados en chips de silicio, que les proporcionan, grandes ventajas como resistencia en cuestiones de humedad, temperatura, capacidades parásitas, número total de terminales, etc.).
Figura 3. Variedad de estructuras de condensadores usados para medir posición.
Figura 4. Esquema y deformación de un sensor capacitivo.
Acelerómetros piezo-resistivos
Su funcionamiento se basa en la propiedad de las resistencias eléctricas de cambiar su valor cuando el material se deforma mecánicamente. En lugar de tener un cristal piezoeléctrico, como los anteriores sensores, tienen sustrato formando parte de un circuito que mide la intensidad de corriente mediante un puente de Wheatstone.
Figura 5. Acelerómetro piezo-resistivo.
Acelerómetros piezoeléctricos
Figura 6. Acelerómetro piezoeléctrico.
Acelerómetros de placas calientes
A grandes rasgos, estos funcionan por medio de una masa suspendida y posicionada cerca de un disipador de calor. Esta masa luego es calentada a una temperatura específica donde, en caso de que no haya aceleraciones aplicadas, existirá un balance de temperaturas entre el disipador y la masa.
Acelerómetros micromecanizados (MEMS)
Se denomina MEMS (MicroElectroMechanichal Systems) o microsistemas electromecánicos, a una tecnología de base que se utiliza para crear dispositivos diminutos. Este tamaño puede oscilar en pocas micras pudiendo llegar hasta un milímetro de diámetro. Por lo general, estos mecanismos tienen un tamaño mayor al micrómetro (millonésima de metro) y menor al milímetro.
Acelerómetros 3D
El sensor de aceleración 3D es un monitor de movimiento completo de 3 ejes capaz de detectar la caída libre en todas las direcciones con la misma intensidad. Esta capacidad de supervisión, filtra con exactitud los pequeños movimientos de inclinación y detecta las vibraciones repentinas (Cao et al., 2012)
7.2.4.
Aplicaciones de los acelerómetros.
La aceleración es una magnitud física fundamental, manifestada de muchas maneras (gravedad, vibración, actividad sísmica). La medición de la aceleración de forma continua, exacta y a bajo coste, abre numerosas aplicaciones para los acelerómetros. Un acelerómetro puede detectar movimientos y contrarrestar los choques; análogo a esto, se podrían tener en el transporte de paquetes frágiles y delicados, en los que cualquier moviendo o golpe externo puede romper el contenido.
Por lo general, un acelerómetro siempre está vinculado a un giroscopio y se usan en su mayoría, para obtener la información de la velocidad y la posición de un objeto. Entre una de las aplicaciones más comunes están los sistemas inerciales de navegación; tales como el sistema de navegación “Gimbaled”, o el sistema de navegación “Strapdown”, los cuales son generalmente sistemas donde se usan los acelerómetros para medir velocidad y posición del objeto (Yang et al., 2010).
7.2.5.
Criterios para la elección del acelerómetro adecuado
En el mercado existen muchas posibilidades de sensores para medir la aceleración. La elección de uno de ellos depende de las características del sensor: los márgenes de valores de la aceleración que admite, capacidad para medir en continua o sólo en alterna, la máxima frecuencia a la que puede trabajar, los parámetros característicos del sensor tales como márgenes de temperatura, sensibilidad, consumo, peso y precio (Antonio Luque Estepa, 2014).
7.3.
Giroscopios
Figura 8. Principio de conservación del momento angular.
7.3.1.
Tipos de Giroscopios
Giroscopios rotatorios
Mejor conocidos como giroscopios mecánicos, estos han sido usados en aviación por muchos años. Una de las principales limitantes que tienen es que no son muy confiables. Este giroscopio está constituido por un disco el cual puede girar sobre un eje libremente, el cual está confinado dentro de otro.
Giroscopios vibratorios
Estos giroscopios utilizan una masa suspendida por resortes como se muestra en la figura 9. En vez de girar como un giroscopio normal, la masa vibra en un movimiento traslacional. Estos se basan en el principio de la generación y detección de la aceleración Coriolis (Chan et al., 2012) (Chen & Itoh, 2010).Una vez en funcionamiento, la masa es sensible a variaciones angulares inducidas sobre el eje z perpendicular al sustrato (Nickel et al., 2011).
7.3.2.
Aplicaciones de los giroscopios.
Algunas de las aplicaciones más comunes son: control de trayectoria, orientación autómata, estabilización de antenas y plataformas, sistemas de navegación, instrumentación, robótica y vehículos, agricultura de precisión, automatización de la fabricación, médico/ortopédico, etc.
7.4.
Enfermedades detectadas por la anomalía en la marcha.
7.4.1.
Enfermedad Parkinson
Las personas diagnosticadas con algún tipo de trastorno cognitivo, como la enfermedad de Parkinson, pueden sentir cierta pérdida de independencia debido a los problemas de movilidad asociados. Se ha propuesto un modelo matemático que examina múltiples factores relacionados con la marcha, tanto en sujetos sanos como en afectados. De forma inmediata y mediante una prueba de marcha simple, se puede conocer si una persona mayor presenta algún tipo de anomalía en este campo.
Las señales del acelerómetro se utilizaron para examinar tres aspectos del movimiento: los movimientos hacia delante y hacia atrás, de lado a lado y de arriba a abajo. Con esta información, los investigadores llevaron a cabo una serie de cálculos matemáticos. Estas medidas fueron capaces de discriminar diferencias en estos tres aspectos entre la población sana y la población clínica (“Revista Medica Ortopedia,” 2015).
7.4.2.
El trastorno de la marcha en la enfermedad de Parkinson (EP)
Es frecuente y es una de las principales causas de incapacidad. Aunque semiológicamente puede mostrarse de diferentes formas, cuando se analizan las variables de la marcha de forma cuantitativa, generalmente el patrón de la marcha en la EP se caracteriza por una disminución de la velocidad y de la longitud de zancada y un aumento del tiempo de doble apoyo. La cadencia es normal o incluso está algo aumentada para tratar de alcanzar una velocidad de marcha normal. Existe también una mayor variabilidad de la longitud de zancada. Los movimientos articulares están reducidos, las caderas y rodillas se encuentran ligeramente flexionadas durante todo el ciclo de la marcha (CORREIRA Claudia, 2009).
Existen también estudios que muestran la influencia de la levodopa en la marcha de estos pacientes. Varios trabajos han demostrado aumentos significativos tanto de la velocidad de marcha, como de la longitud de zancada y diversos efectos sobre la cadencia y el tiempo de doble apoyo.
7.4.3.
Parálisis
cerebral
rodilla. Esta extremidad puede arrastrar el pie durante la fase de balanceo o, como compensación, realizar circunducción de la extremidad. Se produce así una marcha inadecuada, cuya velocidad está disminuida, con una mayor excursión del centro de gravedad y un mayor consumo de energía (“Revista Medica Ortopedia,” 2015).
7.5.
La artritis reumatoide (AR)
Es una enfermedad inflamatoria crónica, de naturaleza autoinmune, caracterizada por manifestaciones en las articulaciones (como dolor, tumefacción y rigidez) y la presencia de síntomas generales (como cansancio, sensación de malestar, fiebre ligera, inapetencia y pérdida de peso corporal). Además, con el paso del tiempo es común la aparición de algunas manifestaciones extraarticulares, es decir, que afectan a sectores del organismo no relacionados con las articulaciones (como la piel, los vasos sanguíneos, el corazón, los pulmones, los ojos y la sangre).
Evolución de la AR.
Está ligada a la inflamación articular y es muy variable. En algunas personas, cesa de forma espontánea. Sin embargo, en la mayoría de los casos evoluciona durante muchos años, incluso de por vida, Sin el tratamiento oportuno, los brotes sintomáticos tienden a ser más frecuentes y duraderos, hasta provocar una progresiva limitación de la movilidad articular y la aparición de ciertas deformidades esqueléticas características (CORREIRA Claudia, 2009).
Afectados de la AR.
La AR es una enfermedad relativamente frecuente. Según datos estadísticos globales, afecta al 1% de la población, lo que significa que actualmente habría en todo el planeta entre 100 y 200 millones de personas que padecen este trastorno. El trastorno es más frecuente en las personas mayores, situándose su edad de inicio más frecuente entre los 40 y 60 años de edad (Sandoval, Capuñay, & Varela, 1996).
Síntomas de la AR.
En la mayoría de los casos, los primeros síntomas que se perciben con claridad son la tumefacción, el dolor y la rigidez matutina, que denotan la existencia de un proceso inflamatorio. Por lo general, se localizan en una sola o bien en unas pocas articulaciones pequeñas (en las manos y/o en los pies) y se van intensificando a lo largo de semanas o meses.
Las articulaciones de los pies resultan afectadas en el 90% de las personas con AR y a menudo ya están presentes desde el inicio de la enfermedad. También pueden comprometerse las articulaciones del dorso del pie y las que unen las falanges de los dedos, en especial en el dedo gordo. En cuanto a los tobillos, también están afectados en la mayoría de las personas con AR, concretamente en el 80% de los casos. Las rodillas se afectan en alrededor del 80% de los casos en las fases iniciales.
para la calidad de vida. Sin embargo, puede prevenirse mediante la instauración del tratamiento oportuno en las fases iniciales del trastorno.
Limitación del movimiento. Los tejidos no permiten una movilidad suficiente para adoptar posturas normales y rangos de movimiento fisiológicos durante la marcha. La contractura o retracción suele ser la causa más habitual a consecuencia de una inmovilidad prolongada, o como secuelas de una lesión (Ruderman Erick, 2012).
7.6.
CAIDAS
7.6.1.
Incidencia de las caídas
La incidencia de las caídas en la población anciana es mucho mayor que en el resto de la población.
Los ancianos muchas veces lo aceptan como parte inevitable del envejecimiento y por ello con mucha frecuencia dejan de consultar al médico sobre este hecho. Por ello, el médico de familia debe de forma activa pesquisar dentro de su población, aquellos pacientes con riesgo de sufrir caídas y con ello, evitar las consecuencias orgánicas y psicológicas que éstas acarrean. Para ello debe conocer las causas más frecuentes que las provocan y lo más importante, la prevención de las mismas.
Las caídas provocan lesiones importantes y fracturas que en los pacientes de edad geriátrica conllevan una larga y difícil rehabilitación, pudiendo llegar a ser en ocasiones fatales; además traen consigo, por leves que sean, factores físicos o psicológicos, pérdida de la movilidad y para las personas ancianas, esto es tan precioso como la vida misma (Bash, 2015).
7.6.2.
Física de la marcha
El mantenimiento de la posición erecta requiere del balance de la masa corporal, que tiene un centro de gravedad muy alto, sobre una base de sustentación muy pequeña. Este balance fino se mantiene con los músculos antigravitatorios y por la información sensorial que proviene de los músculos, articulaciones, piel y otros.
No son capaces de efectuar movimientos rápidos y adecuados de adaptación al cambio de posición y esto sería uno de los factores contribuyentes a que se produzcan caídas.
Otro factor importante que puede alterarse con la edad es la masa muscular. En el mantenimiento de la posición erecta y el caminar, participan los músculos de las piernas, principalmente los cuádriceps. Estos músculos se atrofian rápidamente con el desuso y el reposo en cama (González Sánchez, Rodríguez Fernández, Ferro Alfonso, & García Milián, 1999a).
7.6.3.
Consecuencias de las caídas
Las consecuencias de las caídas pueden ser muy limitadoras para las personas mayores y a menudo hasta fatales. Los principales problemas consecuentes, son lesiones graves como fracturas y traumatismo craneoencefálico, así como ansiedad, depresión y el llamado “miedo de caer”, que también puede acometer a ancianos que jamás han caído.
Entre los mayores de 64 años que viven en la comunidad, cerca del 20% de los que caen necesitan atención médica; el 5% sufren fractura ósea y del 5% al 10%, sufren otras lesiones como contusiones, laceraciones, esguinces y otras lesiones de los tejidos blandos, luxaciones articulares o lesiones graves en la cabeza. En residencias de ancianos y en el grupo de mujeres mayores que 75 años, los índices de lesión pueden ser más del doble.
Además, es importante señalar que las lesiones por caídas representan una de las causas más comunes de dolor de larga duración, limitación funcional, discapacidad y muerte en la población anciana. Las lesiones son la quinta causa de muerte en personas con más de 64 años de edad y las caídas son la causa más común de lesión fatal, siendo responsable del 70% de las muertes accidentales en personas con más de 74 años de edad. En el año subsiguiente a la caída, los ancianos que cayeron presentan mayor mortalidad en relación con los que no cayeron y de los que fueron hospitalizados por caída, el 50% mueren en el año siguiente año (Sandoval et al., 1996).
Consecuencias Físicas.
La fractura es la consecuencia más seria de las caídas. La tasa de mortalidad entre los enfermos que han sufrido una fractura de cadera es del 10-20% más alta que entre aquellas de igual sexo y edad que no la han sufrido. La mayor parte de estos fallecimientos ocurren en los 4 meses siguientes; además es causa de incapacidad física posterior, ya que la mitad de los que sobreviven tras ella, no recuperan nunca el nivel funcional que tenían antes. Otras consecuencias son daños de tejidos blandos, los traumas de tejidos nerviosos (poco frecuente, pero graves); así como la hipotermia, deshidratación, infecciones respiratorias y sobre todo, el tromboembolismo pulmonar y las úlceras de decúbito (González Sánchez, Rodríguez Fernández, Ferro Alfonso, & García Milián, 1999b).
cadera es del 12-20% más alta. Además existen las consecuencias indirectas de la inmovilidad; aumento del riesgo de presentar tromboembolismo pulmonar, úlceras por presión, etc. (González Sánchez et al., 1999a)
Consecuencias Psíquicas:
Generan miedo a caer otra vez, o un estado continuo de ansiedad, pérdida de confianza en sí mismo, aislamiento social, y restricción de las actividades de la vida diaria.
Consecuencias Sociales:
Los familiares ante una caída, con frecuencia reaccionan con ansiedad y se convierten en sobreprotectores que limitan la relativa autonomía del anciano (Sandoval et al., 1996).
Consecuencias a nivel psíquico y social.
La principal consecuencia a nivel psicológico es el síndrome post-caída. Fundamentalmente se trata de cambios en el comportamiento y actitudes de la persona que ha sufrido una caída y en su familia. Esto va a provocar una disminución en la movilidad y pérdida de las capacidades para realizar las actividades básicas e instrumentales de la vida diaria. Primero por el dolor por las contusiones, que actúa como elemento limitante de la movilidad y posteriormente por la ansiedad y el miedo a presentar una nueva caída. Respecto a la familia, tras el primer episodio de caída suele actuar sobreprotegiendo al anciano, aumentando la pérdida de movilidad del anciano (González Sánchez et al., 1999a).
7.6.4.
Factores que influyen en las caídas del anciano
Enfermedades crónicas: Enfermedad de Parkinson, demencias, enfermedad cerebrovascular. Alteraciones visuales: Cataratas, retinopatía, glaucoma, etcétera.
Sistema vestibular: La pérdida de equilibrio relacionada con la edad, puede ocurrir como resultado de osteoporosis con acúmulo de calcio en el órgano de corti; además puede ocurrir por traumatismos, infecciones del oído etcétera.
Sistema locomotor: Alteraciones osteo-musculares asociados directa o indirectamente con la edad, así como los problemas de los pies (hallux valgus, callos y otras deformidades).
Sistema neurológico: Cambios estructurales en la corteza cerebral, bien de causa vascular o degenerativa, trastornos de la vía piramidal, extrapiramidal o cerebelosos.
Polifarmacia: El 81% de los ancianos toman medicación y de ellos las dos terceras partes ingieren más de un fármaco habitualmente.
Uso incorrecto de los medicamentos: No es infrecuente en la población anciana el mal cumplimiento en la frecuencia de las dosis, la confusión entre distintos fármacos o la automedicación. (González Sánchez et al., 1999b).
7.6.5.
Factores intrínsecos
A. Inestabilidad. Dentro de los cambios propios del proceso del envejecimiento se produce un deterioro en dos mecanismos imprescindibles para la bipedestacion y la marcha estable como son el mantenimiento del equilibrio y la capacidad de respuesta rápida y efectiva ante su pérdida. El anciano presenta inestabilidad postural, cambios en la marcha: pasos más cortos, disminución de la excursión de cadera y tobillo, aumenta la separación de las puntas de los pies para así aumentar la base de sustentación, aumenta el periodo de latencia y respuesta reflejo motora inconstante ante los cambios posturales. Es decir, el anciano presenta más dificultad para mantener la estabilidad mecánica alrededor de la línea de gravedad, que es perturbada por el movimiento y tienen más dificultad para generar maniobras posturales reflejas correctoras.
Además de las alteraciones debidas al envejecimiento normal, la aparición de determinadas enfermedades que provocan alteraciones en la marcha como infartos cerebrales, enfermedad de Parkinson, deficiencias sensoriales, etc, aumenta la inestabilidad. (González Sánchez et al., 1999b) Alteraciones visuales, auditivas y vestibulares. Es típico en los grupos de edad avanzada la aparición de patologías en los sistemas vestibular y de visión (cataratas, empeoramiento de la agudeza visual, tolerancia a la luz y adaptación a la oscuridad, hipoacusias, angioesclerosis, etc.) que van a provocar una alteración en la capacidad de orientación de uno mismo con respecto a los objetos del entorno (Lázaro del Nogal; Montserrat, 2008).
Presencia de determinadas patologías crónicas. Patologías neurológicas como la enfermedad de Parkinson, las Demencias y enfermedad cerebrovascular; patologías cardiovasculares como la hipotensión, arritmias, insuficiencia cardíaca y los síncopes; y patologías musculoesqueléticas como la osteoartritis, deformidades de los pies, osteoporosis, fracturas, etc. muchas veces aparecen combinadas en los ancianos, hecho que provoca un riesgo para sufrir una caída.
Enfermedades agudas. Como deshidratación, anemias, cuadros febriles, etc (González Sánchez et al., 1999a)
supone que las reacciones adversas entre medicamentos sean más frecuentes en los ancianos y aumenten el riesgo de caída. (Mayté Vera Sánchez, 2003).
7.6.6.
Factores extrínsecos
Los factores extrínsecos se derivan de la actividad o del entorno. Respecto a la actividad, la mayoría de las caídas suceden mientras se realizan actividades usuales. Un pequeño porcentaje tienen lugar mientras el anciano realiza actividades peligrosas, como subirse a una silla, etc. Cabe destacar que una actividad potencialmente peligrosa es bajar escaleras (más que subirlas), siendo este lugar donde ocurren el 10% de las caídas.
La existencia de suelos irregulares o con desniveles, la falta de una iluminación adecuada, escaleras sin pasamanos ni descansillo o con escalones muy altos y cuartos de baño con lavabos y retretes muy bajos, sin barras en duchas y aseos, etc, son factores que van a aumentar el riesgo de producir una caída en el anciano. (Sandoval et al., 1996)
7.7.
Algoritmos de detección de caídas
Los algoritmos más comunes para la detección de caídas y movimientos, se rigen por los siguientes principios.
Detectar inclinación: el memsic no es capaz de diferenciar entre gravedad (utilizada para medir la inclinación) y aceleración dinámica, por lo que utilizar un acelerómetro para medir la inclinación sólo es útil si las condiciones de funcionamiento son conocidas, como por ejemplo un dispositivo que se ha de mantener en horizontal. La inclinación en sistemas con mucha aceleración
Detectar colisiones: simplemente se trata de detectar una aceleración muy grande. Puede realizarse midiendo el valor absoluto y considerando colisión al pasar de cierta cantidad de gs (aceleración, respecto a la gravedad), o como valor relativo de diferencia de valores en un intervalo de tiempo. En ambos casos lo que se pretende es “detectar el golpe”. Esta detección es apta para sistemas que posean una aceleración limitada y distinguible de golpes.
Detectar caídas: la detección de caídas es algo especial. El detectar caídas con 2 ejes es posible si el acelerómetro está configurado de manera que la gravedad es conocida y no hay efecto de aceleración estática con la que se pueda confundir. En este caso, cuando la medida correspondiente a la gravedad disminuya a 0g, significará que el dispositivo está en caída libre, durante todo el tiempo que dure dicha disminución. Es una simplificación muy concreta de un sistema de navegación inercial (Bash, 2015) .
Algoritmo 1: Detección de caídas basándose en la colisión, midiendo el valor absoluto del golpe: cuando la aceleración detectada es mayor que un determinado valor, se considera caída. En el caso de que la aceleración deseada sea de 2G (aceleración de la gravedad).
Ventajas: sencillez del algoritmo.
Desventajas: bajo el efecto de la gravedad, una aceleración de 1G contraria a la gravedad, haría que se considerase colisión. Es necesario determinar el valor óptimo para una caída desde cierta distancia y que no interfiera con un uso normal (Antonio Luque Estepa, 2014) (Kwon, Jamal, Zamba, Stumbo, & Samuel, 2010).
Algoritmo 2: Detección de caídas basándose en la colisión, midiendo el valor relativo del incremento de aceleración. Si en un cierto intervalo de tiempo la aceleración aumenta más de una cantidad, se considera colisión.
Ventajas: es independiente de la gravedad. El único caso en el que la gravedad influye es en el caso de que el acelerómetro rote rápidamente, de manera que la gravedad pase a hacer efecto, al mismo tiempo que recibe un impacto, es posible que el efecto final se considere colisión.
8.
DECISIONES DE DISEÑO.
8.1.
Conceptos básicos de java
La estructura del sistema operativo Android se compone de aplicaciones que se ejecutan en un framework Java de aplicaciones orientadas a objetos sobre el núcleo de las bibliotecas de Java en una máquina virtual Dalvik, con compilación en tiempo de ejecución hasta la versión 5.0, luego cambio al entorno Android Runtime (ART). (“Java (lenguaje de programación),” n.d.)
Java, es un lenguaje de alto nivel, que se compila para ejecutarse en una máquina virtual, desarrollado por Sun Microsystems, publicado en 1995. Se centra en la metodología conocida como programación orientada a objetos (POO o OOP en inglés) (López Carro, n.d.)
Los principales componentes de Java son descritos a continuación.
8.1.1.
Clases
Una clase es una representación abstracta de un elemento o entidad de la realidad que contiene la definición del conjunto de características y comportamientos esenciales del objeto que representa.
Java se basa en la creación de clases de objetos, entendidas como la abstracción que define un tipo de objeto especificando atributos o propiedades (denotados por sustantivos) y métodos, acciones o funciones (denotados por verbos), que resultan ser las operaciones disponibles que se van a tener. (López Carro, n.d.) (Rodríguez, n.d.).
Modificador de acceso public.
Permite a acceder al elemento desde cualquier clase, independientemente de que ésta pertenezca o no al paquete en que se encuentra el elemento.
Modificador de acceso private.
Modificador de acceso protected.
Este indica que los elementos sólo pueden ser accedidos desde su mismo paquete (como el acceso por defecto) y desde cualquier clase que extienda la clase en que se encuentra, independientemente de si ésta se encuentra en el mismo paquete o no. Este modificador, al igual que private, no tiene sentido a nivel de clases o interfaces no internas.
Modificador de acceso default o package-private.
Si no especificamos ningún modificador de acceso se utiliza el nivel de acceso por defecto, que consiste en que el elemento puede ser accedido sólo desde las clases que pertenezcan al mismo paquete.
En la Tabla 1, se muestra un resumen de los distintos modificadores de acceso.
La misma clase Otra clase del mismo paquete
Subclase de otro paquete
Otra clase de otro paquete
public x x x x
protected x x x
default x x
private x
Tabla 1. Mofificadores de acceso según la clase. (Fuente: (“Modificadores en Java,” n.d.)).
A través de la palabra reservada extends, se declara que una clase hereda de otra. La herencia es el proceso de transmitir atributos y métodos de una clase a otra, donde la clase que se toma como base se le denomina superclase y la que hereda se le llama subclase. La referencia super, es utilizada para representar a la superclase
8.2.
Excepciones
Cuando se está ejecutando un programa y ocurre un error, Java lanza una excepción que cuando no se captura, da lugar a un mensaje sobre lo ocurrido y detiene la ejecución del programa (es importante establecer que las excepciones se lanzan, no ocurren). Ahora, si se desea que la ejecución del programa no se detenga, se deberá capturar la excepción lanzada y manejarla. Existen diversos errores que pueden ocasionar que se lance una excepción en un programa, por ejemplo, una entrada incorrecta de datos (IOException), una división por cero (ArithmeticException) o una conversión de datos no válida (NumberFormatException). Para evitar que la ejecución de un programa se detenga debido a un error que lanza una excepción, se debe utilizar la sentencia try para alertar al programa acerca del código que puede ocasionar un error y utilizar la sentencia catch para capturar y manejar cada una de las excepciones que se pueda lanzar.
Excepción Descripción
ArithmeticException Una condición aritmética excepcional ocurrió.
NumberFormatException Se intentó convertir una cadena con un formato inapropiado a un número
IOException Problemas al realizar operaciones de entrada y salida de datos ArrayIndexOutOfBoundException Un arreglo fue accedido con un índice ilegal (fuera de los
límites permitidos)
NullPointerException Se intentó utilizar null donde se requería un objeto.
Tabla 2. Excepciones conocidas en Java (Fuente: (Cueto, n.d.)).
8.3.
Métodos
Un método es la abstracción de una acción, servicio, comportamiento o tarea que puede ser realizado por un objeto. Generalmente, un método manipula la información registrada en los atributos a través de una o más instrucciones. (García Llinás, 2010)
La definición de un método en Java requiere básicamente especificar:
El tipo de dato que retornará como resultado del método. Este tipo de dato puede corresponder a un tipo de dato primitivo, a cualquier tipo de dato de referencia, o en caso de no retornar ningún valor debe especificarse el valor de void.
El nombre del método. La comunidad de programadores en Java maneja una convención de nombramiento para los métodos, que establece que el nombre del método debe escribirse en minúsculas. Si el nombre de un método está compuesto por varias palabras; se unen las letras de todas las palabras (sin usar ningún carácter especial adicional) y se colocan en mayúsculas las primeras letras de cada palabra, a excepción de la primera letra del nombre del método.
8.4.
Programación orientada a objetos
Éste es un paradigma de programación el cual propone resolver problemas del mundo real a través de la identificación de objetos y declaraciones de colaboración entre ellos.
8.4.1.
Abstracción.
Es la capacidad de un objeto de cumplir con sus funciones, independiente del concepto en el que se utilice. Es el punto de partida en el desarrollo de un software orientado a objetos y consiste básicamente en analizar el problema y determinar los objetos, para luego representarlos por medio de un modelo abstracto en el ambiente computacional.
8.4.2.
Encapsulamiento
está en la facilidad para manejar y administrar eficientemente la complejidad en el desarrollo de software, ya que las clases se pueden ver como cajas negras, donde solo se les conoce el comportamiento, pero no los detalles internos de implementación. El encapsulamiento también es llamado “ocultamiento de la información”; ya que permite asegurar que el contenido de la información almacenada en los atributos, permanezca oculta en el cual cada atributo solo le pertenece a este objeto y únicamente puede ser manejado por él a través de sus métodos.
8.4.3.
Polimorfismo
Hace referencia al “desconocimiento” sobre la clase concreta desde la cual se ha creado un objeto, permitiendo intercambiar diferentes servidores (interfaces), que aplican diferentes métodos para resolver un problema. Esta propiedad indica la posibilidad de que un objeto tome muchas formas en términos de sus funcionalidades. En términos prácticos, el polimorfismo permite referirse a un objeto donde se puede realizar la misma operación de diferentes formas, es decir, la posibilidad de llamar a un mismo objeto y que éste se comporte de maneras diferentes de acuerdo a como y donde se utilice. El polimorfismo se implementa en los lenguajes orientados a objetos usando recursos tales como la sobrecarga y la sobreescritura de métodos.
8.4.4.
Herencia
Indica que una clase puede heredar todos los atributos y métodos de otra clase, que por lo general, es llamada superclase. Es la capacidad que tiene un “objeto hijo” generado a partir de una subclase, de utilizar las características y comportamientos de una clase padre denominada “superclase”. La herencia permite a los objetos ser construidos extendiendo y/o reutilizando las funcionalidades definidas en otros, ya que cuando se aplica este concepto, una clase superior, puede transferir sus atributos y métodos a otras clases de jerarquía inferior.
8.4.5.
Modularidad
Se refiere al hecho de poder definir una o un conjunto de funcionalidades, a través de partes independientes que se interrelacionan entre sí. De este modo, la modularidad permite subdividir una aplicación en partes más pequeñas denominadas módulos, donde cada una debe ser tan independiente como sea posible de la aplicación en sí y de las otras partes. Estas unidades o módulos tienen asociado un grado de cohesión y otro de acoplamiento.
8.4.6.
Principio de ocultación
Es un principio que consiste en no mostrar al exterior los datos o las funciones que no sean necesarias. Un módulo bien encapsulado que solo exporta la información necesaria, se puede rediseñar completamente sin afectar a su visión exterior. (Durán, Gutíerrez, & Pimentel, 2007)
8.4.7.
Recolección de basura
nuevo objeto y la liberará cuando nadie lo esté usando. En la mayoría de los lenguajes híbridos que se extendieron para soportar el Paradigma de Programación Orientada a Objetos como C++ u Object Pascal, esta característica no existe y la memoria debe desasignarse expresamente. (“Programación orientada a objetos,” n.d.).
8.5.
CONCEPTOS BÁSICOS DE XML
El XML (Extensible Markup Language, por sus siglas en inglés), es un lenguaje de marcado estructural o descriptivo, que fue diseñado para transportar, organizar y almacenar datos, no para mostrarlos.
Las dos metodologías que se utilizan para definir o crear documentos XML son la metodología DTD y el XSD o XML-Schema. Ambas metodologías tienen como función indicar como debe estar definido un documento XML. Sus principales diferencias son:
La DTD tiene una sintaxis específica mientras que el XSD utiliza sintaxis XML. Un XSD se puede manipular como cualquier otro documento XML.
Un XSD soporta tipos de datos (int, float, boolean, date, . . . ) mientras que las DTD tratan todos los datos como cadenas.
Un XSD soporta la integración de los espacios de nombres permitiendo asociar unidades estructurales de un documento con declaraciones de tipo de un esquema.
La DTD sólo permite una asociación entre un documento y su DTD. (Torjada, 2014) (Gortázar, Martínez, & Fernández, 2016)
8.5.1.
Tipos de software en XML
Los tipos de software en XML son:
Procesador XML: Módulo de software que proporciona acceso al contenido y estructura de un documento XML.
Aplicación XML: Emplea un procesador XML para acceder al contenido y estructura de un documento XML.
Analizador XML: es un componente que requiere el procesador para determinar la estructura de un documento XML y si es válido o no conforme a una DTD o XSD (XML Schema Definition).