Vous êtes sur la page 1sur 94

TRABAJO DE

DE

Red inalámbrica de sensores


inerciales para stream de registros
goniométricos en biomecánica

CONSULTOR: ALEIX LÓPEZ ANTÓN


ALUMNO: JORGE AVENTIN ROIG
FECHA: Junio de 2015

i
FICHA DEL TRABAJO

Red inalámbrica de sensores inerciales para


TITULO DEL TRABAJO: stream de registros goniométricos en
biomecánica

Nombre del autor: Jorge Aventin Roig

Nombre del consultor: Aleix López Antón

Fecha de entrega: 06/2015

Área del trabajo final: Desarrollo de aplicaciones electrónicas

Grado en tecnologías de telecomunicación.


Titulación:
Ingeniería telemática

Resumen del trabajo:

En ciertas especialidades médicas como: medicina deportiva, podología, fisioterapia,


medicina física y rehabilitación, traumatología y cirugía ortopédica, medicina del
trabajo o reumatología requieren el uso de registros goniométricos de diferentes
articulaciones. A veces estos registros deben ser obtenidos durante movimientos
dinámicos como durante la marcha, la carrera, el gesto deportivo o en el puesto de
trabajo. Estos registros proporcionan una información crucial para ayudar a los
clínicos en la caracterización de condiciones patológicas, así como el seguimiento de
la progresión de las enfermedades o la eficacia de un tratamiento.

ii
La Monitorización del movimiento humano se puede realizar mediante sensores
inerciales inalámbricos. Existen diferentes modelos, pero los portátiles se consideran
la mejor manera de hacer un análisis de la biomecánica del movimiento humano.
Consisten en acelerómetros, giroscopios y magnetómetro, ya que son altamente
transportables y no se necesitan unidades estacionarias, como receptores o cámaras
para la recolección de datos. Los últimos avances en la tecnología de fabricación de
dispositivos microelectromecánicos (MEM), han reducido considerablemente el
precio y el tamaño de los sensores. Sin embargo, los precios de los sistemas
completos, siguen siendo caros, costando alrededor de 8k euros.

Este proyecto lleva a cabo la implementación de una red inalámbrica mediante BLE
de dos sensores Axivity WAX9 de 10 ejes que se sitúan estratégicamente en la
exploración del sujeto a estudiar. Mediante labVIEW se lleva a cabo la configuración
de los sensores y la implementación del software capaz de graficar en tiempo real los
datos obtenidos por los sensores. Estos valores han sido validados mediante la
integración con un goniómetro tradicional y se ha realizado una prueba de simulación
de práctica real.

Abstract:

In certain medical specialties such sports medicine, podiatry, physiotherapy, physical


medicine, rehabilitation, orthopedics, occupational medicine or rheumatology
requires the use of goniometric records of different joints. Sometimes these records
must be obtained during dynamic movements like walking, running, fitness gesture
or in the workplace. These records provide crucial help to clinicians to characterize
pathological conditions information and monitoring the progression of a disease or
the efficacy of a treatment.

iii
Monitoring of human movement may be performed by wireless inertial sensors.
There are different models, but portable ones are considered the best way to make
an analysis of the biomechanics of human movement. They consist in
accelerometers, gyroscopes and magnetometers, as they are highly portable units,
and there is no need of cameras or receivers for data collection. Recent advances in
manufacturing technology microelectromechanical devices (MEM), have significantly
reduced the price and size of the sensors. However, the prices of complete systems,
remain expensive, costing around 8k euros.

This project carries out the implementation of a wireless network using two sensors
Axivity WAX9 of 10 axes throught BLE.

LabVIEW has been used to perform the sensor configuration and software
implementation. It is able to graph stream data collected by the sensors. These values
have been validated by integrating a traditional goniometer and a simulation of real
practice has been performed.

Palabras clave:

Sensor inercial, biomecánica, MEMS, goniometría dinámica, movimiento articular.

iv
Jorge Aventin Roig

INDICE

1. INTRODUCCION ....................................................................................................... 12

1.1 Contexto y justificación.................................................................................... 12

1.2 Objetivos principales........................................................................................ 13

1.3 Beneficios del proyecto ................................................................................... 13

1.4 Introducción a la Biomecánica ......................................................................... 14

1.5 Goniometría ..................................................................................................... 17

1.6 Posición neutra y posición anatómica ............................................................. 18

1.7 Planimetría ....................................................................................................... 20

1.7.1 Plano Sagital ............................................................................................. 22

1.7.2 Plano frontal o coronal ............................................................................. 22

1.7.3 Plano transversal y horizontal .................................................................. 23

1.8 Intrumentación para estudios del movimiento humano ................................ 24

2. ESTADO DEL ARTE ................................................................................................... 27

2.1 Sensores inerciales........................................................................................... 27

2.2 Introducción a los acelerómetros .................................................................... 27

2.3 Introducción a los giroscopios ......................................................................... 30

2.4 Introducción a los magnetómetros ................................................................. 31

2.5 Estado del arte sensores inerciales.................................................................. 32

2.6 Sensores SP-10C ............................................................................................... 35

2.6.1 Características del giroscopio .................................................................... 36

2.6.2 Características del magnetómetro ............................................................ 37

2.6.3 Características del acelerómetro ............................................................... 37

5|Página
Jorge Aventin Roig

2.6.4 Características del sensor de temperatura ................................................ 37

2.6.5 Características del sensor de presión ......................................................... 37

2.7 Bluetooth low energy ...................................................................................... 38

2.8 LabVIEW ........................................................................................................... 40

3. ELECCIÓN FINAL DE SENSORES ............................................................................... 42

4. CONFIGURACION DE LOS SENSORES....................................................................... 44

5. IMPLEMENTACION MEDIANTE LABVIEW ................................................................ 47

5.1 Implementación conexión ............................................................................... 47

5.2 Obtención de stream de datos ........................................................................ 49

5.3 Conversión de datos ........................................................................................ 55

5.4 Adecuación de los datos para registros de goniométricos .............................. 63

5.4.1 Adecuación de los registros del acelerómetro .......................................... 63

5.4.2 Adecuación de los registros del giroscopio ............................................... 72

5.5 Errores en las medidas ..................................................................................... 74

5.6 Corrección de errores ...................................................................................... 76

5.6.1 Eliminación de offsets ............................................................................... 76

5.6.2 Filtro complementario .............................................................................. 77

5.7 Graficación ........................................................................................................ 80

6. TESTS Y VALIDACION DE MEDIDAS ......................................................................... 81

7. SIMULACION EN PRACTICA REAL ............................................................................ 86

8. CONCLUSIONES ....................................................................................................... 89

9. TRABAJO FUTURO ................................................................................................... 90

BIBLIOGRAFIA ................................................................................................................. 90

ANEXOS ........................................................................................................................... 93

6|Página
Jorge Aventin Roig

INDICE DE ILUSTRACIONES

Ilustración 1: Lámina de una de las primeras obras de biomecánica (De Motu Animalium

de Giovanni Alfonso Borelli). .......................................................................................... 15

Ilustración 2: Diagrama de biomecánica ........................................................................ 16

Ilustración 3: Posición neutra o posición cero (posición 0). En el dibujo, nótese que el

pulgar apunta hacia delante. .......................................................................................... 18

Ilustración 4: Posición anatómica: la posición anatómica es similar a la posición neutra

con la diferencia de que las palmas de las manos miran hacia delante. ....................... 19

Ilustración 5: Posición funcional: las articulaciones se encuentran semiflexionadas.

Nótese en el dibujo, los dedos de la mano en semiflexión. ........................................... 20

Ilustración 6: Planos y ejes del cuerpo: a) el plano sagital divide al cuerpo en una parte

derecha y otra izquierda y es cruzado perpendicularmente por el eje mediolateral; b) el

plano frontal divide al cuerpo en una parte anterior y otra posterior y es cruzado

perpendicularmente por el eje anteroposterior, y c) el plano transversal divide al cuerpo

en una parte superior y otra inferior y es cruzado perpendicularmente por el eje vertical.

........................................................................................................................................ 21

Ilustración 7: Movimientos de flexión-extensión alrededor del eje mediolateral del

hombro derecho en el plano sagital. .............................................................................. 22

Ilustración 8: Movimientos de abducción-aducción sobre el eje anteroposterior del

hombro derecho en el plano frontal. ............................................................................. 23

Ilustración 9: Movimientos de rotación del hombro derecho sobre el eje vertical en el

plano transversal. ........................................................................................................... 24

Ilustración 10: Muybridge’s galloping horse series. ....................................................... 25

Ilustración 11: Ejes de medida de un acelerómetro....................................................... 28

7|Página
Jorge Aventin Roig

Ilustración 12: Sistema microelectromecánico .............................................................. 29

Ilustración 13: Sistema con tensión mecánica ............................................................... 29

Ilustración 14: Ejemplo giroscopio ITG-3200.................................................................. 30

Ilustración 15: Esquema funcionamiento giroscopio MEMS ......................................... 31

Ilustración 16: Sensor SP-10C de SENSOPLEX ................................................................ 35

Ilustración 17: Diagrama de bloques sensor SP-10C ...................................................... 36

Ilustración 18: Logotipo Bluetooth 4.0 ........................................................................... 38

Ilustración 19: Captura de pantalla de Labview ............................................................. 41

Ilustración 20: Sensor wax9 de Axivity ........................................................................... 42

Ilustración 21: Resumen especificaciones sensor WAX9 .............................................. 44

Ilustración 22: Comandos de configuración del WAX9 .................................................. 46

Ilustración 23: Ventana donde se muestra la conexión mediante Tera Term a uno de los

sensores. Se ha ejecutado el comando “settings” para observar la configuración actual

del sensor........................................................................................................................ 46

Ilustración 24: Función VISA Configure Serial Port......................................................... 47

Ilustración 25: Vista en panel frontal de la selección de puertos COM para realizar la

conexión con los sensores .............................................................................................. 48

Ilustración 26: Creación de dos conexiones serial. Vista bloque de diagramas de Labview

........................................................................................................................................ 48

Ilustración 27: Función VISA Write ................................................................................. 49

Ilustración 28: Visión de la utilización de la función Visa Write con la sentecia necesaria

para obtener los datos stream de los sensores. ............................................................ 49

Ilustración 29: Función VISA Read .................................................................................. 50

Ilustración 30: Bucle “While” con retardo de 10 milisegundos. Obsérvese que en la

función VISA Read se ha introducido un recuento de 50 bytes en el terminal de byte

count. .............................................................................................................................. 51

Ilustración 31: Función Mach Pattern ............................................................................ 52

8|Página
Jorge Aventin Roig

Ilustración 32: Tabla de ejemplos para expresiones regulares para la función Match

Pattern ............................................................................................................................ 53

Ilustración 33: Imagen en el diagrama de bloques de la utilización de las expresiones

regulares y de la función Match Pattern. ....................................................................... 54

Ilustración 34: Visión en el Front Panel de Labview del registro de una muestra realizado

por el acelerómetro y el giroscopio del sensor 1. .......................................................... 55

Ilustración 35: Orientación de los ejes de los sensores. ................................................ 56

Ilustración 36: Conversión para los valores del acelerómetro. ...................................... 56

Ilustración 37: Función Divide ........................................................................................ 57

Ilustración 38: Función Decimal String to Number ........................................................ 57

Ilustración 39: Diagrama de bloques de la conversión de los valores obtenidos por el

acelerómetro del sensor 1. ............................................................................................. 58

Ilustración 40: Valores obtenidos con el acelerómetro del sensor 1 cuando está situado

en el suelo con el eje Z perpendicular al suelo. ............................................................. 59

Ilustración 41: Valores obtenidos con el acelerómetro del sensor 2 cuando está situado

en el suelo con el eje Z perpendicular al suelo. ............................................................. 59

Ilustración 42: Conversión para los valores del giroscopio. ........................................... 60

Ilustración 43: Función Multiply ..................................................................................... 60

Ilustración 44: Diagrama de bloques para el giroscopio. ............................................... 61

Ilustración 45: Valores obtenidos con el giroscopio del sensor 1 cuando está situado en

el suelo con el eje Z orientado hacia arriba.................................................................... 61

Ilustración 46: Valores obtenidos con el giroscopio del sensor 1 cuando está situado en

el suelo con el eje Z orientado hacia arriba.................................................................... 62

Ilustración 47: Valores obtenidos con el acelerómetro del sensor 2 cuando está situado

en el suelo con el eje Z orientado hacia arriba después de haber multiplicado la salido

por 9,8............................................................................................................................. 64

9|Página
Jorge Aventin Roig

Ilustración 48: Valores obtenidos con el acelerómetro del sensor 1 cuando está situado

en el suelo con el eje Z orientado hacia arriba después de haber multiplicado la salido

por 9,8............................................................................................................................. 64

Ilustración 49: Output del acelerómetro en función del a posición del sensor ............. 65

Ilustración 50: Esquema acelerómetro con esfera situada en medio de un cubo sin el

efecto de la fuerza de la gravedad ................................................................................. 65

Ilustración 51: Representación de lectura del acelerómetro al aplicar una fuerza en el eje

X, sin tener en cuenta la fuerza de la gravedad ............................................................. 66

Ilustración 52: Representación fuerzas recibida por el acelerómetro en estática ........ 66

Ilustración 53: Esquema lectura acelerómetro girado 45 grados .................................. 67

Ilustración 54: Representación ejes del acelerómetro y vector que mide el acelerómetro

R ...................................................................................................................................... 68

Ilustración 55: Representación vector R medido por el acelerómetro y relaciones con los

diferentes ejes ................................................................................................................ 69

Ilustración 56: Función Inverse Cosine ........................................................................... 70

Ilustración 57: Calculo de R mediante labview .............................................................. 70

Ilustración 58: Implementación del cálculo del ángulo mediante los datos obtenidos del

acelerómetro del sensor................................................................................................. 71

Ilustración 59: Ejemplo de valores de los ángulos obtenidos mediante el acelerómetro

con el eje Z perpendicular al suelo ................................................................................. 71

Ilustración 60: Muestra de datos obtenidos con el giroscopio del sensor 1 en estática 72

Ilustración 61: Consideraciones del vector de rotación ................................................. 73

Ilustración 62: Función Función Node ............................................................................ 74

Ilustración 63: Diagrama de bloques mostrando la implementación de la función Funtion

Node ............................................................................................................................... 74

Ilustración 64: Gráfica de acelerómetro ......................................................................... 75

10 | P á g i n a
Jorge Aventin Roig

Ilustración 65: Valores obtenidos de una muestra obtenida del sensor 1 después de

haber eliminado el offset ............................................................................................... 76

Ilustración 66: Valores obtenidos de una muestra obtenida del sensor 2 después de

haber eliminado el offset ............................................................................................... 77

Ilustración 67: Diagrama basado en la fusión sensorial de filtro complementario ....... 78

Ilustración 68: Obtención del ángulo estimado ............................................................. 79

Ilustración 69: Función Waveform Charts ...................................................................... 80

Ilustración 70: Función Bundle ....................................................................................... 80

Ilustración 71: Obtención de la gráfica del ángulo estimado del sensor 1 .................... 81

Ilustración 72: Posición inicial del goniómetro a 0º ....................................................... 82

Ilustración 73: Posición final de goniómetro a 90º ........................................................ 82

Ilustración 74: Grafica medida de 0º a 90º eje X sensor 1 ............................................. 83

Ilustración 75: Grafica medida de 0º a 90º eje X sensor 2 ............................................. 83

Ilustración 76: Gráfica medida de 0º a 90º eje Y sensor 1 ............................................. 84

Ilustración 77: Gráfica medida de 0º a 90º eje Y sensor 2 ............................................. 84

Ilustración 78: Gráfica medida de 0º a 90º eje Z sensor 1 ............................................ 85

Ilustración 79: Gráfica medida de 0º a 90º eje Z sensor 2 ............................................. 85

Ilustración 80: Colocación de los sensores ..................................................................... 86

Ilustración 82: Gráfica goniometría de la rodilla segmentada a un paso y medio. Se

recoge el eje Z que corresponde a eje anteroposterior a través del cual se realiza el

movimiento de varo y valgo. .......................................................................................... 87

Ilustración 81: Gráfica goniometría de la rodilla segmentada a un paso y medio. Se

recoge el eje X que corresponde a eje transversal a través del cual se realiza el

movimiento de flexo-extensión...................................................................................... 87

Ilustración 83: Gráfica goniometría de la rodilla segmentada a un paso y medio. Se

recoge el eje Y que corresponde a eje vertical a través del cual se realiza el movimiento

de rotación...................................................................................................................... 88

11 | P á g i n a
Jorge Aventin Roig

INTRODUCCION

1.1 Contexto y justificación


En ciertas especialidades médicas como: medicina deportiva, podología,
fisioterapia, medicina física y rehabilitación, traumatología y cirugía
ortopédica, medicina del trabajo o reumatología requieren el uso de
registros goniométricos de diferentes articulaciones. A veces estos registros
deben ser obtenidos durante movimientos dinámicos como durante la
marcha, la carrera, el gesto deportivo o en el puesto de trabajo.

Estos registros proporcionan una información crucial para ayudar a los


clínicos en la caracterización de condiciones patológicas, así como el
seguimiento de la progresión de las enfermedades o la eficacia de un
tratamiento.

Gracias a los sensores inerciales se puede realizar este tipo de análisis en


laboratorios no especializados y mediante soluciones con precios alrededor
de 8k euros. Es por ello que el propósito de este trabajo nace fruto de la
necesidad de soluciones más rentables para que estos sistemas puedan
llegar a las consultas de cuantos más profesionales mejor, como si de un
fonendoscopio se tratase.

Para ello se pretende implementar una red inalámbrica mediante BLE dos
sensores WAX9 de Axivity de 10 ejes que se situaran estratégicamente en la
exploración del sujeto a estudiar. Para poner el proyecto en práctica se
utilizará el software LabVIEW, debido que es un lenguaje de programación
diseñado para ingenieros y científicos para desarrollo de pruebas, control y
aplicaciones de medición reduciendo drásticamente el tiempo de ejecución
y el costo.

12 | P á g i n a
Jorge Aventin Roig

1.2 Objetivos principales


• Configurar los sensores WAX9 de Axivity mediante BLE para poder ser
utilizados en aplicaciones de registros de stream en biomecánica.

• Obtener los algoritmos necesarios para obtener datos acerca de posición


angular, velocidad angular, aceleración ángular y vibración.

• Realizar una aplicación mediante labVIEW® que obtenga los datos de los
sensores y los grafique.

• Validar la fiabilidad de los sensores para aplicaciones clínicas.

• Obtener un sistema de sensores + software con valor inferior a un 5% de


los modelos que se comercializan actualmente.

1.3 Beneficios del proyecto


El coste de las innovaciones en aparatología médica es algo que siempre
preocupa a los administradores de empresas dedicadas a la salud. Siempre
el debate sobre la eficacia o necesidad de adquirir nuevos equipos a las
empresas pequeñas suscita como mínimo una cierta duda y es cierto que a
veces, la medida en la que el valor de un nuevo aparato mejora la calidad de
una acto exploratorio es mínimo en comparación con los beneficios que
aporta o sino comparándolo con el precio que se ha pagado. Teniendo en
cuenta que ciertos aparatos no están al alcance de ciertas empresas
pequeñas, debido como se ha dicho antes a el precio, a través de este
proyecto será posible encontrar una red de sensores para estudios de
biomecánica en cualquier centro o consulta que lo precise por pequeño que
13 | P á g i n a
Jorge Aventin Roig

sea sin tener que valorar la relación coste-beneficio de la compra. Por poner
un ejemplo es imposible acudir a una consulta donde el medico que nos
atiende no disponga de un fonendoscopio pero por el contrario sería fácil
encontrarnos que en esa consulta no disponen de un aparato de ecografía.
La razón sería bien sencilla, un fonendoscopio vale 70 euros y un aparato de
ecografía 30.000.

Por todo ello se puede concluir que el beneficio que aportara este proyecto
es el de dar acceso casi ilimitado a utilizar un sistema por un coste de
aproximadamente del 5% de lo que costaría en una empresa de soluciones
de ingeniería biomédica.

1.4 Introducción a la Biomecánica


La biomecánica es un área de conocimiento interdisciplinaria que estudia los
fenómenos cinemáticos y mecánicos que presentan los seres vivos considerados
como sistemas complejos formados por tejidos, sólidos y cuerpos mecánicos. Así
pues, la biomecánica se interesa por el movimiento, equilibrio, la física, la
resistencia, los mecanismos lesiónales que pueden producirse en el cuerpo humano
como consecuencia de diversas acciones físicas. Es una disciplina científica que tiene
por objeto el estudio de las estructuras de carácter mecánico que existen en los
seres vivos, fundamentalmente del cuerpo humano. Esta área de conocimiento se
apoya en diversas ciencias biomédicas, utilizando los conocimientos de la mecánica,
la ingeniería, la anatomía, la fisiología y otras disciplinas, para estudiar el
comportamiento del cuerpo humano y resolver los problemas derivados de las
diversas condiciones a las que puede verse sometido.

14 | P á g i n a
Jorge Aventin Roig

Ilustración 1: Lámina de una de las primeras obras de biomecánica (De Motu Animalium de Giovanni Alfonso
Borelli).

La Biomecánica está presente en diversos ámbitos, aunque cuatro de ellos son los más
destacados en la actualidad:

La biomecánica médica, evalúa las patologías que aquejan al hombre para generar
soluciones capaces de evaluarlas, repararlas o paliarlas.

La biomecánica fisioterapéutica, evalúa las disfunciones del sistema músculo-


esquelético en el ser humano, para poder observar, evaluar, tratar o disminuir dichas
disfunciones. Para realizar esta acción de una manera adecuada, la biomecánica
fisioterapéutica aborda la anatomía desde un punto de vista funcional, entiende el “por
qué” y el “como”, es decir, como funciona la articulación, analiza funciones articulares
como la estabilidad, la movilidad y la protección analizando el equilibrio que se da entre
ellas, todo esto, siguiendo términos anatómicos internacionales.

La biomecánica deportiva, analiza la práctica deportiva para mejorar su rendimiento,


desarrollar técnicas de entrenamiento y diseñar complementos, materiales y
equipamiento de altas prestaciones. El objetivo general de la investigación biomecánica
deportiva es desarrollar una comprensión detallada de los deportes mecánicos
específicos y sus variables de desempeño para mejorar el rendimiento y reducir la
incidencia de lesiones. Esto se traduce en la investigación de las técnicas específicas del
deporte, diseñar mejor el equipo deportivo, vestuario y de identificar las prácticas que
predisponen a una lesión. Dada la creciente complejidad de la formación y el desempeño

15 | P á g i n a
Jorge Aventin Roig

en todos los niveles del deporte de competencia, no es de extrañar que los atletas y
entrenadores estén recurriendo en la literatura de investigación sobre la biomecánica
aspectos de su deporte para una ventaja competitiva.

La biomecánica ocupacional, estudia la interacción del cuerpo humano con los


elementos con que se relaciona en diversos ámbitos (en el trabajo, en casa, en la
conducción de automóviles, en el manejo de herramientas, etc.) para adaptarlos a sus
necesidades y capacidades. En este ámbito se relaciona con otra disciplina como es la
ergonomía. Últimamente se ha hecho popular y se ha adoptado la Biomecánica
ocupacional que proporciona las bases y las herramientas para reunir y evaluar los
procesos biomecánicos en lo que se refiera a la actual evolución de las industrias, con
énfasis en la mejora de la eficiencia general de trabajo y la prevención de lesiones
relacionadas con el trabajo, esta está íntimamente relacionada con la ingeniería médica
y de información de diversas fuentes y ofrece un tratamiento coherente de los principios
que subyacen a la biomecánica bien diseñada y ergonomía de trabajo que es ciencia que
se encarga de adaptar el cuerpo humano a las tareas y las herramientas de trabajo.

La biomecánica forense, se ocupa de estudiar los mecanismos de lesión que se pueden


producir en el cuerpo frente a choques, colisiones, actuación de esfuerzos de
consideración. Aplica los conceptos biomecánicos con el fin de determinar mecanismos
causales, y aclarar el modo en que se pudieron producir las lesiones.

Ilustración 2: Diagrama de biomecánica

16 | P á g i n a
Jorge Aventin Roig

1.5 Goniometría[1,2,3]
Goniometría deriva del griego gonion (‘ángulo’) y metrón (‘medición’), es decir:
«disciplina que se encarga de estudiar la medición de los ángulos».

La goniometría ha sido utilizada por la civilización humana desde la antigüedad


hasta nuestro tiempo en innumerables aplicaciones, como la agricultura, la
carpintería, la herrería, la matemática, la geometría, la física, la ingeniería y la
arquitectura, entre otras.

Circunscrito a las ciencias médicas, goniometría es la técnica de medición de los


ángulos creados por la intersección de los ejes longitudinales de los huesos a nivel
de las articulaciones y tiene como objetivo:

 Evaluar la posición de una articulación en el espacio. En este caso, se trata de


un procedimiento estático que se utiliza para objetivar y cuantificar la ausencia
de movilidad de una articulación.
 Evaluar el arco de movimiento de una articulación en cada uno de los tres planos
del espacio. En este caso, se trata de un procedimiento dinámico que se utiliza
para objetivar y cuantificar la movilidad de una articulación.

Además posee las siguientes aplicaciones:

 En la industria biomédica, la goniometría se aplica en la fabricación y el diseño


de aparatos de medición, de instrumental quirúrgico, de prótesis y de órtesis.
 En Rehabilitación, se utiliza para determinar el punto de inicio de un
tratamiento, evaluar su progresión en el tiempo, motivar al paciente, establecer
un pronóstico, modificar el tratamiento o darle un punto final, y, finalmente,
evaluar la secuela.
 En Medicina del Deporte, se utiliza para cuantificar la evolución del
entrenamiento de los deportistas.
 En Ortopedia y Traumatología y en Reumatología, la goniometría se aplica para
describir la presencia de desejes a nivel del sistema osteoarticular con fines
diagnósticos, pronósticos, terapéuticos y de investigación.
 En Administración de Salud y en Epidemiología, el registro goniométrico
estandarizado facilita la revisión e interpretación de datos en las historias
clínicas.

17 | P á g i n a
Jorge Aventin Roig

 Por último, en Medicina Legal, en Medicina Previsional y en Medicina del


Trabajo, la goniometría se utiliza para la evaluación de incapacidades, producto
de secuelas de accidentes o enfermedades que afectan al sistema
osteoarticular.

1.6 Posición neutra y posición anatómica[1,2,3]


La posición neutra o posición cero (posición 0) es una posición humana de referencia
que se adopta como punto de inicio para realizar la medición goniométrica.

Ilustración 3: Posición neutra o posición cero (posición 0). En el dibujo, nótese que el pulgar apunta hacia delante.

En la posición neutra, el individuo se encuentra parado con la mirada hacia delante,


los brazos colgando al costado del cuerpo, los pulgares dirigidos hacia delante y los
miembros inferiores uno al lado del otro con las rodillas en extensión completa, con
los ejes de los pies paralelos y separados por un espacio igual a la distancia entre
ambas caderas. Debido a que en esta posición todas las articulaciones se
encuentran en 0°, también se la conoce como posición cero (posición 0). La posición
anatómica, en cambio, es una posición de referencia que se utiliza para estudiar

18 | P á g i n a
Jorge Aventin Roig

Anatomía. En esta posición, a diferencia de la posición neutra, las palmas de la


mano miran hacia delante.

Ilustración 4: Posición anatómica: la posición anatómica es similar a la posición neutra con la diferencia de que las
palmas de las manos miran hacia delante.

Por último, la posición funcional es aquella posición fisiológica que adoptan las
articulaciones naturalmente cuando están en reposo y obedece al tono muscular
normal, que coloca a todas las articulaciones en actitud de semiflexión.

19 | P á g i n a
Jorge Aventin Roig

Ilustración 5: Posición funcional: las articulaciones se encuentran semiflexionadas. Nótese en el dibujo, los dedos
de la mano en semiflexión.

1.7 Planimetría[1,2,3]
Es la descripción de los planos imaginarios que sirven de referencia para dividir el
cuerpo humano en diferentes zonas y facilitar su estudio. En el cuerpo humano, se
reconocen tres planos perpendiculares entre sí: plano sagital, plano frontal o
coronal y plano transversal o axial.

20 | P á g i n a
Jorge Aventin Roig

Cada uno de estos planos son cruzados perpendicularmente por un eje: eje
mediolateral, eje anteroposterior y eje vertical respectivamente. Sobre estos tres
ejes, se producen los movimientos articulares.

Ilustración 6: Planos y ejes del cuerpo: a) el plano sagital divide al cuerpo en una parte derecha y otra izquierda y
es cruzado perpendicularmente por el eje mediolateral; b) el plano frontal divide al cuerpo en una parte anterior y
otra posterior y es cruzado perpendicularmente por el eje anteroposterior, y c) el plano transversal divide al cuerpo
en una parte superior y otra inferior y es cruzado perpendicularmente por el eje vertical.

21 | P á g i n a
Jorge Aventin Roig

1.7.1 Plano Sagital

El plano sagital medio divide al cuerpo en dos mitades: una derecha, y la otra,
izquierda. Todos los planos paralelos al plano sagital medio se denominan planos
sagitales o parasagitales.
Todos los planos sagitales son cruzados perpendicularmente por el eje mediolateral
sobre el que se producen los movimientos de flexión y extensión, visibles en la
persona de perfil.

Ilustración 7: Movimientos de flexión-extensión alrededor del eje mediolateral del hombro derecho en el plano
sagital.

1.7.2 Plano frontal o coronal

El plano frontal o coronal es cualquiera de los planos perpendiculares a los planos


sagital y vertical que dividen al cuerpo en dos partes, una anterior y otra posterior.
Lo cruza perpendicularmente el eje anteroposterior sobre el cual se producen los
movimientos de abducción y aducción, inclinaciones de la columna y desviación
radial y cubital de la mano. Estos son visibles en la persona de frente.

22 | P á g i n a
Jorge Aventin Roig

Ilustración 8: Movimientos de abducción-aducción sobre el eje anteroposterior del hombro derecho en el plano
frontal.

1.7.3 Plano transversal y horizontal

El plano transversal u horizontal es cualquiera de los planos perpendiculares a los


planos medio y coronal que dividen al cuerpo en dos partes: una craneal o superior
y otra caudal o inferior. Lo cruza perpendicularmente el eje vertical, sobre el cual
se producen los movimientos de rotación que son vistos desde arriba o desde
abajo.

23 | P á g i n a
Jorge Aventin Roig

Ilustración 9: Movimientos de rotación del hombro derecho sobre el eje vertical en el plano transversal.

1.8 Intrumentación para estudios del


movimiento humano[4,5]
Los estudios modernos del movimiento humano se inician a través de las
publicaciones a finales del siglo 19 por Muybridge (1887 ) , Marey (1873 ) , y
Braune y Fisher (1895 ). Tal vez el más conocido es el de Eadweard Muybridge
consistente en una sucesiva exposición de fotografías para estudiar la
locomoción del caballo en 1878. El estudio se llevó a cabo mediante
diferentes componentes, incluyendo 12 cámaras, un mecanismo controlado
eléctricamente para poder disparar las cámaras, cables tendidos de forma
subterránea a lo largo de una pista a intervalos de 21 pulgadas para el disparo
de cada cámara. Las 12 fotos, tomadas en un período de 0,5 s, demostraron

24 | P á g i n a
Jorge Aventin Roig

que durante el galope de un caballo, hay un momento de suspensión, en el


que no hay ningún casco tocando en el suelo.

Ilustración 10: Muybridge’s galloping horse series.

El análisis de movimiento mediante las herramientas cinematográficas


antiguas estaba limitado generalmente a un plano y era extremadamente
laborioso realizar un sencillo estudio consumiendo mucho tiempo.

En la actualidad existen muchos métodos y sensores para estudiar y analizar


los movimientos humanos. Por ejemplo cámaras de video de alta velocidad,
los electrogoniómetros, los sensores inerciales MEMS.

Una de las técnicas más utilizadas son los MEMS, que constituyen una nueva
forma de analizar el movimiento humano. El sujeto que porte un sensor
inercial basado en MEMS puede realizar actividades cuotidianas, actividad
deportiva o gesto requerido para el estudio de forma confortable debido a
su bajo peso y pequeño tamaño.

25 | P á g i n a
Jorge Aventin Roig

El estudio del movimiento humando con sistemas inerciales basados en


MEMS se efectúa mediante acelerómetros, con giroscopios y
magnetómetros.

Las ventajas principales de los sensores inerciales son: Bajo consumo de


energía, tamaño de sólo unos milímetros, fácil disponibilidad en el mercado
y alta integración, actualmente es posible encontrar dispositivos MEMS que
incluyen acelerómetros triaxiales, giroscopios triaxiales, magnetómetros
triaxiales y sensores de temperatura en un solo chip que cabe en la uña del
dedo meñique.

Para el análisis del movimiento humano se requieren sensores que no


interfieran con el movimiento natural del cuerpo por lo que su tamaño y
peso deben ser mínimos, también es deseable que dichos sensores no sean
afectados por condiciones ambientales tales como luz, campos magnéticos,
temperatura, etc. Los sensores inerciales cumplen con la mayoría de estas
especificaciones.

Aunque actualmente existen sistemas para la adquisición de señales de


aceleración y velocidad angular comerciales, algunos tienen la desventaja de
conectarse a través de cables lo cual afecta el movimiento natural del
cuerpo, otros son inalámbricos pero su velocidad de muestreo es reducida y
no es apta para la medición de movimiento en las extremidades del cuerpo
y existen otros más que son relativamente pequeños, inalámbricos y con
velocidad de muestreo suficiente pero son demasiado caros (alrededor de
4000 USD por unidad necesitando un mínimo de dos).

26 | P á g i n a
Jorge Aventin Roig

1. ESTADO DEL ARTE

2.1 Sensores inerciales[6,7,8,9,10]


El avance en la fabricación de circuitos electrónicos utilizando tecnología MEMS
(Micro Electro Mechanical Systems) ha permitido el desarrollo de sensores y
sistemas de muy bajo costo y con prestaciones suficientes para aplicaciones
diversas especialmente en el campo de la medicina y automatización. Son
sensores que utilizan el principio físico de inercia para realizar mediciones de
aceleración lineal y velocidad angular son de los que más han experimentado
crecimiento.

Un sensor inercial es aquel que mide aceleración y velocidad angular y se utiliza


en aplicaciones de captura y análisis de movimiento. Está compuesto por
acelerómetros, giróscopos y magnetómetros. Los acelerómetros miden la
aceleración lineal con que se mueve el sensor, los giróscopos la velocidad
angular y los magnetómetros dan información acerca del norte magnético. Con
estos tres sensores es posible estudiar el movimiento del sensor inercial
completo en el plano o el espacio (esto depende de los ejes que posean los
sensores).

2.2 Introducción a los acelerómetros


Los acelerómetros son dispositivos que miden la aceleración, que es la tasa de
cambio de la velocidad de un objeto. Esto se mide en metros por segundo al
cuadrado (m/s²) o en las fuerzas G (g). Los acelerómetros son útiles para
detectar las vibraciones en los sistemas o para aplicaciones de orientación.

27 | P á g i n a
Jorge Aventin Roig

Ilustración 11: Ejes de medida de un acelerómetro

Son dispositivos electromecánicos que detectan las fuerzas de


aceleración, ya sean estáticas o dinámicas. Las fuerzas estáticas incluyen
la gravedad, mientras que las fuerzas dinámicas pueden incluir
vibraciones y movimiento. Los acelerómetros pueden medir la
aceleración en uno, dos o tres ejes. Los de tres ejes son más comunes
conforme los costos de producción de los mismos baja.

Generalmente, los acelerómetros contienen placas capacitivas


internamente. Algunos de estos son fijos, mientras que otros están
unidos a resortes minúsculos que se mueven internamente conforme las
fuerzas de aceleración actúan sobre el sensor. Como estas placas se
mueven en relación el uno al otro, la capacitancia entre ellos cambia. A partir de
estos cambios en la capacitancia, la aceleración se puede determinar.

28 | P á g i n a
Jorge Aventin Roig

Ilustración 12: Sistema microelectromecánico

Otros acelerómetros se pueden centrar en torno materiales piezoeléctricos.


Estos pequeña carga eléctrica de salida estructuras cristalinas cuando se coloca
bajo tensión mecánica (por ejemplo aceleración).

Ilustración 13: Sistema con tensión mecánica

29 | P á g i n a
Jorge Aventin Roig

2.3 Introducción a los giroscopios


Los giroscopios, o girómetros, son dispositivos que miden o mantienen el
movimiento de rotación. MEMS (sistemas microelectromecánicos) giroscopios
son pequeños sensores, de bajo costo para medir la velocidad angular. Las
unidades de velocidad angular se miden en grados por segundo (°/s) o
revoluciones por segundo (RPS). La velocidad angular es simplemente una
medida de la velocidad de rotación.

Ilustración 14: Ejemplo giroscopio ITG-3200

Un giroscopio MEMS de 3 ejes , similar a la que se muestra arriba en la imagen (ITG-


3200), puede medir la rotación en torno a tres ejes : X, Y , y Z . Algunos giroscopios
vienen en variedades de eje simple y doble, pero el giroscopio de tres ejes en un solo
chip son cada vez más pequeño, menos costoso y más popular.

Los giroscopios se utilizan a menudo en los objetos que no están girando muy rápido
del todo. Las aeronaves (con suerte) no giran. En se lugar giran unos pocos grados en
cada eje . Mediante la detección de estos pequeños cambios los giroscopios ayudan a
estabilizar el vuelo de la aeronave. Además, tenga en cuenta que la aceleración o la
velocidad lineal de la aeronave no afecta a la medición del giróscopo. Los giroscopios
sólo miden la velocidad angular.

30 | P á g i n a
Jorge Aventin Roig

Ilustración 15: Esquema funcionamiento giroscopio MEMS

El sensor MEMS dentro de un giroscopio es muy pequeño (entre 1 a 100


micrómetros , el tamaño de un cabello humano). Cuando se hace girar el
giroscopio, una pequeña masa de resonancia se desplaza con los cambios de
velocidad angular. Este movimiento se convierte en señales eléctricas de muy
bajas corrientes que se pueden amplificar para ser leídas por un
microcontrolador.

2.4 Introducción a los magnetómetros


Los magnetómetros miden el campo magnético en un punto determinado.
Existen dos tipos básicos de sensores magnetómetros, los que miden el campo
magnético absoluto, y los que miden el campo magnético vectorialmente. Este
último, se emplea para poder orientarse en un punto en el espacio. Puesto que
la dirección y amplitud del campo magnético de la Tierra es conocido en
cualquier punto del planeta gracias a la base de datos del ‘National Ocean and
Atmosphere Administration’ 5 (NOAA), se puede determinar la orientación de
un objeto a través de un magnetómetro triaxial.

31 | P á g i n a
Jorge Aventin Roig

Dentro de los sensores que miden campo magnético vectorialmente, se


encuentran entre otros los magnetómetros inductivos, de núcleo saturado
(fluxgate), superconductores, los de efecto Hall, los magnetoresistivos, etc. Uno
de los más usados para poder medir movimiento humano es el
magnetoresistivo, en particular el magnetómetro con magnetoresistencia
anisotrópica (AMR). En este tipo de magnetómetro de la resistencia que se mide
es directamente proporcional al ángulo entre la magnetización de la resistencia
y la dirección del campo magnético que circula por ésta.

Los magnetómetros se emplean para determinar la orientación de un objeto,


por lo que tienen múltiples aplicaciones relacionadas con la navegación,
estabilidad y seguridad, en automóviles, robótica y ámbitos militares. Además
se emplea para la detección de objetos metálicos, así como para minería. Sin
embargo, estos sensores son susceptibles a ruidos, además, el valor de la
resistencia en los sensores AMR pueden variar con mucha facilidad al detectar
un objeto ferromagnético en su cercanía. Dado que la orientación con
magnetómetros se determina a través del campo magnético de la Tierra, no
conviene estar cerca de elementos ferromagnéticos al realizar una medida, a
que alteran considerablemente las medidas, y se obtendría el campo magnético
de la Tierra sumado al campo magnético que fluye por el elemento
ferromagnético.

2.5 Estado del arte sensores inerciales

En este apartado se introducen las unidades de medida inercial (IMU). Solo se


ha colectado información acerca de aquellos IMUs que permitan stream de
datos y que la frecuencia de muestreo sea igual o superior a 100 Hz.

A continuación se describen algunos de los sistemas inerciales comerciales:

32 | P á g i n a
Jorge Aventin Roig

 MTw, MTi-G y MVN BIOMECH de Xsens (Enschede, Países Bajos):


La empresa Xsens ha desarrollado uno de los sensores más dedicados a
aplicaciones de investigación. Entre los sensores desarrollados por Xsens, se
encuentra el MTw, el cual es un IMU inalámbrico de 10 ejes, que incluye un
sensor de presión, además de 3 sensores triaxiales: acelerómetro, giroscopio y
magnetómetro. Su tamaño es de 34.5x57.8x14.5 mm3 y su peso, con batería, de
27 g. Dado que su tamaño es reducido y hace uso de una comunicación
inalámbrica, su capacidad es de tan sólo 3.5 horas muestreando a 120 Hz. Su
autonomía hace pensar que el uso de este IMU es para tomas de datos en
periodos de muy corta duración. Este dispositivo no dispone de una unidad de
almacenaje, por lo que los datos sólo se pueden tratar con un terminal externo
que recibe los datos inalámbricamente. Entre los muchos sensores desarrollados
por Xsens, un IMU interesante para seguimiento al aire libre es el MTi-G, cuya
principal característica es la inclusión de un módulo GPS. Sin embargo el MTi-G
tiene un consumo de 610-690 mW y picos de 910 mW. Aunque no se informa de
la autonomía, se estima algo mayor que el MTw, puesto que no dispone de
módulo de radio frecuencia para transmitir los datos continuamente. Tampoco
tiene capacidad de almacenamiento de datos, por lo que es necesario conectar
un cable para poder capturar los datos a través de la comunicación RS-232.

 Shimmer, (Shimmer sensing, Dublin, Irlanda):


Otro sensor inercial destacado en el mercado es el Shimmer, cuyo acrónimo
proviene de ‘Sensing Health with Intelligence, Modularity, Mobility and
Experimental Reusability’. Este IMU tiene 9 ejes de medida, provenientes de un
acelerómetro, giroscopio y magnetómetros triaxiales. Este IMU está formado
por dos módulos: la plataforma de la unidad central del IMU, y la plataforma
donde está el sensor de 9 ejes y el módulo para establecer comunicaciones
inalámbricas con otro terminal. En este módulo, se incluye un conector para
poder usar la tarjeta μSD para realizar bases de datos además de un módulo
Bluetooth. Su frecuencia de muestreo es programable para cada sensor

33 | P á g i n a
Jorge Aventin Roig

independientemente entre 5-50 Hz aunque, si sólo se usa el acelerómetro, su


frecuencia de muestreo alcanza los 100 Hz. La autonomía no se indica, aunque
la hoja de datos aclara que se incluye una batería de 450 mAh de capacidad.

 KineO, Technoconcept (Mane, Francia):


El KineO también proporciona 9 ejes de medida como el Shimmer, sin embargo
su autonomía es de 4 horas muestreando a 100 Hz y enviando continuamente
los datos a través de Bluetooth a otro terminal.

 Dynaport (McRoberts, La Haya, Países Bajos):


Otro dispositivo que mide la actividad física en forma de gasto energético esel
Dynaport, que entre otras características, su frecuencia de muestreo es de 100Hz
y tiene una autonomía de 72 horas.

 Physilog, de EPFL (Lausanne, Suiza):


Uno de los sensores con más prestaciones y utilizado para capturas de larga
duración es el Physilog en su tercera versión. Es un IMU de 6 ejes (3 de
acelerómetro y 3 de giroscopio) capaz de capturar datos a 200 Hz. Tiene un
consumo medio de 71.9 mA, lo que significa que con una supuesta batería de
1130mAh de capacidad, el IMU lograría una autonomía de 15.9 horas.

34 | P á g i n a
Jorge Aventin Roig

2.6 Sensores SP-10C

Se consideró la utilización de este sensor para la elaboración del presente


trabajo, pero el hecho de que no utilizaba un protocolo de comunicación
estándar BLE y que el objetivo no era el desarrollarlo del mismo se abandonó.

El sensor SP-10C proporciona 10 ejes de medidas. Posee un acelerómetro, un


giroscopio y un magnetómetro, además de un sensor de presión y uno de
temperatura. Cada uno de los sensores inerciales con tres convertidores AD
para digitalizar las medidas obtenidas. El modulo envía los datos en forma de
bursts mediante tecnología Bluetooth Low Energy. Tiene una medida de 12,8
mm x 30 mm y una batería de li-ion.

Ilustración 16: Sensor SP-10C de SENSOPLEX

35 | P á g i n a
Jorge Aventin Roig

Ilustración 17: Diagrama de bloques sensor SP-10C

2.6.1 Características del giroscopio

 Tres ejes de medición con salida digital X,Y y Z de la velocidad


angular.
 Programable ±500, ±1000 y ±2000 °/seg y 16-bit ADC integrado.
 Filtro pasa-bajos digitalmente programable.
 Integrado self-test

36 | P á g i n a
Jorge Aventin Roig

2.6.2 Características del magnetómetro


 MEMS de tres ejes de efecto Hall con concentrador magnético.
 Resolución de salida de 16-bit (0.15 μT por LSB).
 Rango de escala de medidas ±4800 μT.
 Función Self-test.

2.6.3 Características del acelerómetro


 Tres ejes con salida digital.
 Programable digitalmente a ±2g, ±4g, ±8g y ±16g.
 Salida digital 16-bit
 Interrupciones programables
 Funcion wake-on-motion para modo de bajo consumo.
 Función de self-test.

2.6.4 Características del sensor de temperatura


 Rango de operación –40 a 85 °C.
 Precisión absoluta (typ@25 °C): +0.5 °C.
 Resolución 0.1 °C.

2.6.5 Características del sensor de presión


 Rango de presión de 300 a 1100 hPa (+9000m a -500m por
encima del nivel del mar).
 Precisión absoluta (typ @25 °C): -1 hPa.
 Resolución 0.01 hPa.

37 | P á g i n a
Jorge Aventin Roig

2.7 Bluetooth low energy[10]


Bluetooth es una tecnología inalámbrica de corto alcance que posibilita la
transmisión de audio y datos entre varios dispositivos. La estructura uniforme
de su especificación, que actualmente se encuentra en la versión 4.0, permite
albergar comunicaciones en un amplio abanico de equipos.

Ilustración 18: Logotipo Bluetooth 4.0

“Bluetooth Low Energy” (en adelante BLE) es una nueva prestación de la


especificación Bluetooth v4.0 orientada principalmente a aplicaciones de bajo
consumo y que no requieren una elevada tasa de transmisión de datos. Estas
nuevas características abren la puerta a un amplio abanico de posibilidades en
objetos más pequeños como los que existen en el ámbito médico, deportivo, de
la seguridad o de la domótica.

El funcionamiento de BLE es muy parecido al del Bluetooth clásico en cuanto a


los procedimientos, utilizando los mismos procedimientos de “anuncio” y
“sincronización”. Con este fin, BLE cuenta con una serie de protocolos para
asegurar la correcta comunicación entre dispositivos. En lo que respecta a los
perfiles, no hay todavía un acuerdo en el Bluetooth SIG sobre su definición, lo
que significa que no hay información pública al respecto. Los perfiles sobre los
que se trabaja actualmente son arbitrarios y propios de cada fabricante de chips.

38 | P á g i n a
Jorge Aventin Roig

Respecto a la tecnología de transmisión, BLE utiliza la misma técnica del salto de


frecuencia de espectro ensanchado y opera en la misma banda de frecuencias
ISM que el Bluetooth clásico (2.4 a 2.48 Ghz). No obstante, utiliza una
distribución distinta de canales: en Bluetooth clásico se utilizan 79 canales de 1
Mhz de ancho de banda mientras que en BLE se utilizan 40 de 2 MHz de ancho
de banda.

Respecto a la transmisión de datos, BLE permite una velocidad máxima de 1Mbit


por segundo con una transmisión de información útil (o “throughput”) de hasta
0.2Mbits por segundo. El alcance teórico de los dispositivos BLE es de 50 metros.

En cuanto a la arquitectura, en BLE no se permiten las “redes de dispersión” o


“scatternet” del Bluetooth tradicional, siendo en topología de estrella el único
modo de creación de redes. Aún así, un solo “máster” podría tener
prácticamente ilimitados esclavos (la asignación de direcciones se realiza con 48
bits, lo que supone alrededor de 218 billones de direcciones distintas).

BLE está diseñado para ser implementado de dos modos: modo “single” (sencillo)
o “dual”. La diferencia principal entre ambos modos es que el primero de ellos
(“single”) está pensado y diseñado para permitir comunicaciones solo en el
marco del protocolo BLE, mientras que el modo “dual” permitiría a un dispositivo
comunicarse con otro utilizando BLE o Bluetooth clásico, indistintamente y
dependiendo del dispositivo al que se quiera conectar. Para entenderlo mejor,
imaginemos el ejemplo de tener una impresora equipada con Bluetooth clásico,
un sensor cualquiera con un chip “single” BLE y un ordenador portátil con un
módulo “dual” BLE/Bluetooth: el portátil podría recoger los datos del sensor
mediante BLE para luego mandarlos por Bluetooth a la impresora, pero el sensor
y la impresora nunca podrían comunicarse entre ellos. Esta separación permite,
por un lado, que los dispositivos pequeños como relojes o sensores disfruten de
las ventajas de un bajo consumo y de unos circuitos muy compactos. Por otro
lado, en las implementaciones “duales” BLE estará integrado en la circuitería
Bluetooth, por lo que los chips utilizarán la misma antena y la nueva pila de
protocolos BLE les proporcionará nuevas posibilidades.

39 | P á g i n a
Jorge Aventin Roig

2.8 LabVIEW[11]

LabVIEW constituye un revolucionario sistema de programación gráfica para


aplicaciones que involucren adquisición, control, análisis y presentación de
datos. Las ventajas que proporciona el empleo de LabVIEW se resumen en las
siguientes:

 Se reduce el tiempo de desarrollo de las aplicaciones al menos de 4 a 10


veces, a que es muy intuitivo y fácil de aprender.
 Dota de gran flexibilidad al sistema, permitiendo cambios y
actualizaciones tanto del hardware como del software.
 Da la posibilidad a los usuarios de crear soluciones completas y
complejas.
 Con un único sistema de desarrollo se integran las funciones de
adquisición, análisis y presentación de datos.
 El sistema está dotado de un compilador gráfico para lograr la máxima
velocidad de ejecución posible.
 Tiene la posibilidad de incorporar aplicaciones escritas en otros
lenguajes.

LabVIEW es un entorno de programación destinado al desarrollo de aplicaciones,


similar a los sistemas de desarrollo comerciales que utilizan el lenguaje C o BASIC.
Sin embargo, LabVIEW se diferencia de dichos programas en un importante
aspecto: los citados lenguajes de programación se basan en líneas de texto para
crear el código fuente del programa, mientras que LabVIEW emplea la
programación gráfica o lenguaje G para crear programas basados en diagramas
de bloques.

Para el empleo de LabVIEW no se requiere gran experiencia en programación, ya


que se emplean iconos, términos e ideas familiares a científicos e ingenieros, y

40 | P á g i n a
Jorge Aventin Roig

se apoya sobre símbolos gráficos en lugar de lenguaje escrito para construir las
aplicaciones. Por ello resulta mucho más intuitivo que el resto de lenguajes de
programación convencionales.

LabVIEW posee extensas librerías de funciones y subrutinas. Además de las


funciones básicas de todo lenguaje de programación, LabVIEW incluye librerías
específicas para la adquisición de datos, control de instrumentación VXI, GPIB y
comunicación serie, análisis presentación y guardado de datos.

LabVIEW también proporciona potentes herramientas que facilitan la


depuración de los programas .

Ilustración 19: Captura de pantalla de Labview

41 | P á g i n a
Jorge Aventin Roig

2. ELECCIÓN FINAL DE SENSORES

3.1 Descripción de los sensores

Ilustración 20: Sensor wax9 de Axivity

Los sensores WAX9 es una combinación de sensores para recolectar datos en


streaming en variedad de entornos.

Posee un acelerómetro de 3 ejes:

 Sistema de acelerómetro en 3 ejes fabricado con tecnología MEMS.


 Ajustable a valores de sensibilidad de ±2g, ±4g y ±8g.
 Integra 3 conversores analógico digital de 16 bits, uno por cada eje.
 Dispone de interrupciones programables.

42 | P á g i n a
Jorge Aventin Roig

 Detección de caída libre, vibraciones y movimiento 0.


 Dispone de self-test programable.

Un de giróscopo en 3 ejes fabricado con tecnología MEMS.

 Puede ser ajustado a valores de ±250, ±500, ± 1000, y ±2000 °/s.


 Integra 3 conversores analógico digital de 16 bits, uno por cada eje.
 Dispone de un filtro paso bajo programable
 Dispone de self-test programable.n giroscopio de 3 ejes:

Otras características:

 Magnetómetro de 3 ejes.
 Sensor de temperatura.
 Sensor de presión
 Filtros programables por el usuario para los acelerómetros, los giróscopos
y el sensor de temperatura.
 Interface de comunicación bluetooth y BLE.
 Batería de Li-Polymer recargable mediante un conector micro USB posee
una autonomía de alrededor de 5 horas.
 Tamaño 35.8x24.6x9.1 mm

43 | P á g i n a
Jorge Aventin Roig

Ilustración 21: Resumen especificaciones sensor WAX9

3. CONFIGURACION DE LOS SENSORES

Los sensores del dispositivo WAX9 (acelerómetro, giroscopio y magnetómetro) son


todos digitales y poseen propios relojes de independientes de muestreo
independientes. Esto hace que la sincronización de todos los sensores sea
imposible, pero puede ser resuelto por la siguiente solución:

Los sensores pueden configurarse en “oversample” a una velocidad más alta que el
reloj de muestreo y se vuelven a muestrear de forma sincrónica utilizando el reloj de
precisión. Esto ofrece frecuencias de muestreo muy precisas, latencia mínima de la
señal y obtención de datos del sensor síncronos. La desventaja es que un error de
temporización hasta el intervalo de muestreo interna del sensor puede estar

44 | P á g i n a
Jorge Aventin Roig

presente. Por ejemplo Si el acelerómetro y giroscopio usan frecuencias de muestreo


internos ajustado a 200 Hz y la velocidad de datos de salida es de 150 Hz, una
muestra puede contener datos del acelerómetro y del giroscopio de hasta 5 ms
(1/200 Hz) de antigüedad o de hasta 5 ms de diferencia. Para algunas aplicaciones,
como es el caso de la presente, es necesario usar altas proporciones de
“oversample” para eliminar este error a expensas de la vida de la batería ligeramente
más corta.

Una vez los dispositivos están cargados mediante el cable microUSB, estos se hacen
visibles mediante el gestor de conexiones bluetooth del SO Windows 8.1. Mediante
el puerto COM que utiliza al ser emparejado y el programa Teraterm podemos usar
comandos mediante serial para configurar los sensores para customizarlos.

De esta manera es conveniente configurar los sensores con los siguientes


parámetros:

 Acelerómetro: Encendido, “internal rate” 200 Hz y “sensor range” a 8 g para


ofrecer mayor precisión.
 Giroscopio: Encendido, “internal rate” 200 Hz y “sensor range” a 2000 dps para
obtener mayor precición.

45 | P á g i n a
Jorge Aventin Roig

Ilustración 22: Comandos de configuración del WAX9

El “data rate” se configura mediante la variable RATEX en muestras por segundo,


esta está configurada por defecto en 50 Hz por lo se dejará configurada en 100 Hz.

Ilustración 23: Ventana donde se


muestra la conexión mediante Tera
Term a uno de los sensores. Se ha
ejecutado el comando “settings” para
observar la configuración actual del
sensor.

46 | P á g i n a
Jorge Aventin Roig

4. IMPLEMENTACION MEDIANTE LABVIEW

5.1 Implementación conexión


Para llevar a cabo la inicialización del puerto COM para realizar la comunicación
con los sensores se debe utilizar la función VISA Configure Serial Port VI, que es
el acrónimo de Virtual Instrument Software Architecture y que sirve para
configurar y programar sistemas de instrumentación mediante diferentes
interfaces. Mediante esta función se puede configurar los parámetros de la
conexión como la paridad, control de errores, baud rate y el flow control. Por
otro lado en el terminal VISA resource name, mediante la creación de un menú
de control nos mostrará las conexiones detectadas por Labview en los diferentes
puertos COM, para seleccionar aquel que estén utilizando los sensores en
cuestión.

Ilustración 24: Función VISA Configure Serial Port

Debido a que se necesitan dos sensores para para realizar un registro


goniómetrico de una extremidad se deben crear almenos dos conexiones serie.

47 | P á g i n a
Jorge Aventin Roig

La necesidad de utilizar dos sensores esta justficada debido a que si por ejemplo
se quiere estudiar la flexión de la muñeca de forma aislada necesitamos situar
otro sensor en el antebrazo para que, de esta forma al sensor de situado en el
carpo se le reste el movimiento angular generado por el sensor situado en el
antebrazo y que correspondería con una flexión del codo y no de la muñeca. De
esta forma no se tendrían en cuenta movimientos de otras articulaciones no
implicadas en el estudio, lo que generaría un error de medición.

Ilustración 26: Creación de dos conexiones serial. Vista bloque


de diagramas de Labview

Ilustración 25: Vista en panel frontal de la selección de puertos COM para realizar la
conexión con los sensores

48 | P á g i n a
Jorge Aventin Roig

5.2 Obtención de stream de datos

Una vez establecida la conexión debemos escribir en el buffer de escritura


hacia el dispositivo el comando basado en texto “stream” (tal y como se
indica en el “datasheet” del fabricante de los sensores) para que el sensor
inicie la transmisión de datos. Para ello utilizaremos la función VISA Write.
Para que sea enviado de forma correcta por labview se deberá escribir
<stream\r\n> en el terminal de Write Buffer.

Ilustración 27: Función VISA Write

Ilustración 28: Visión de la utilización de la función Visa Write con la


sentecia necesaria para obtener los datos stream de los sensores.

49 | P á g i n a
Jorge Aventin Roig

Una vez ejecutado el comando los sensores deberían empezar a enviar datos.
Para que Labview pueda leer los datos mediante la conexión serial que se ha
creado se utilizará la función VISA Read que incluiremos dentro de un bucle
“while” para que se vaya ejecutando la función VISA Read de forma
repetitiva. El blucle “while” se configurara con un retardo de 10
milisegundos, que corresponderían a una frecuencia de 100 Hz. Cabe
recordar que se ha realizado un “oversample” de los sensores para evitar
errores de sincornización. Los sensores están configurados con una
frecuencia de muestreo de 200 Hz, la frecuencia de salida a 150 Hz y por
último el bucle “while” a 100 Hz.

Ilustración 29: Función VISA Read

Mediante esta función se leerá un número específico de bytes desde el


dispositivo para retornarlos en el buffer de lectura. Este número de bytes se
introduce mediante una constante en el terminal “byte count” y debe ser de
50 bytes.

50 | P á g i n a
Jorge Aventin Roig

Ilustración 30: Bucle “While” con retardo de 10


milisegundos. Obsérvese que en la función VISA Read se ha
introducido un recuento de 50 bytes en el terminal de byte
count.

Los datos son enviados por los sensores en modo de texto, incluyendo una
coma entre cada valor (CSV):

N,Ax,Ay,Az,Gx,Gy,Gz,Mx,My,Mz,Batmv,Temp0.1C,PresPa,Ia<CR><LF>
0,101,-25,4050,12,-61,37,-2078,187,3698,3890,205,100257,0<CR><LF>

“N” indica el número de muestra para identificar si existe alguna perdida.


“A”, “G” y “M” seguido de “x”, “y” y “z” indica el valor leído de dicho eje por
el acelerómetro, giroscopio y magnetómetro respectivamente.
“Batmv” indica el estado de la batería del dispositivo en mv. “Temp0.1C”
indica la temperatura del sensor en tramos de 0.1 ºC. “PresPa” indica la
presión en Pascales y por último “Ia” indica el tiempo que el sensor ha estado
inactivo.
Si se observa la función VISA Read se puede ver que existe un terminal de
salida “read buffer” que contendrá los datos leídos por el buffer.

51 | P á g i n a
Jorge Aventin Roig

Una vez llegados a este punto, se deben separar los datos que contiene el
buffer de lectura de tal forma que obtengamos de forma separada los bytes
que son del número de muestra, los que son del acelerómetro separados por
sus respectivos ejes, los que provienen del giroscopio también separados por
las mediciones de cada eje y por último los que indica el magnetómetro en
su eje X, Y y Z.
Para ello se debe utilizar la función Match Pattern.

Ilustración 31: Función Mach Pattern

Se conecta la salida del buffer de lectura al terminal “string” de esta función


para realizar búsquedas de expresiones regulares en la cadena de string que
se ha obtenido. Si se encuentra una coincidencia, se dividirá la cadena en tres
subcadenas de strings. Para obtener la expresión regular se requiere una
combinación específica de caracteres y de coincidencia de patrones como las
que muestra la siguiente tabla de ejemplos de expresiones que pueden
utilizar con esta función.

52 | P á g i n a
Jorge Aventin Roig

Ilustración 32: Tabla de ejemplos para expresiones regulares para la función Match Pattern

Una vez se ha llegado a este punto y teniendo en cuenta que los datos son
enviados en modo de texto por el sensor, incluyendo una coma entre cada
valor (CSV) de la forma
N,Ax,Ay,Az,Gx,Gy,Gz,Mx,My,Mz,Batmv,Temp0.1C,PresPa,Ia<CR><LF> se
introducirá en el terminal “regular expression” la siguiente expresión:
[-]?[.]?[0-9]+[.]?[0-9]*
De esta manera por un lado se obtiene el primer valor antes de la primera
coma que servirá de output para el terminal “match substring” que
corresponderá con el número de muestra. Desde el terminal “after
substring” se obtiene una cadena de string que corresponderá a:
Ax,Ay,Az,Gx,Gy,Gz,Mx,My,Mz,Batmv,Temp0.1C,PresPa,Ia<CR><LF>
Como se puede ver el valor N que corresponde al número de muestra ha
desaparecido.
Ahora para obtener los valores que ha obtenido el acelerómetro se debe
conectar el terminal de “after subtring” al “string” de una nueva función
Match Pattern. Se utilizará la misma expresión regular [-]?[.]?[0-9]+[.]?[0-

53 | P á g i n a
Jorge Aventin Roig

9]* en el terminal “regular expression” para de esta forma obtener el valor


del eje X del acelerómetro,
Ax,Ay,Az,Gx,Gy,Gz,Mx,My,Mz,Batmv,Temp0.1C,PresPa,Ia<CR><LF>
obteniéndose por el terminal “match substring”. Por el terminal “after
substring” del mismo modo que ha ocurrido se tendrá una cadena de string
configurada de la siguiente manera:
Ay,Az,Gx,Gy,Gz,Mx,My,Mz,Batmv,Temp0.1C,PresPa,Ia<CR><LF>
Nótese que en este momento el valor Ax ya no está presente.
Según se puede deducir se irán concatenado funciones Match Pattern para
ir extrayendo la información de cada eje de cada uno de los sensores.

Ilustración 33: Imagen en el diagrama de bloques de la utilización de las expresiones regulares y de la función Match
Pattern.

54 | P á g i n a
Jorge Aventin Roig

Una vez realizadas todas las llamadas a la función Match Pattern para aislar
todos los datos obtenidos por cada uno de los sensores ejecutamos el
programa para ver cómo responde. En la ilustración siguiente vemos un
ejemplo de obtención de los datos relativos al acelerómetro y al giroscopio
del sensor 1.

Ilustración 34: Visión en el Front Panel de Labview del registro de una muestra realizado por
el acelerómetro y el giroscopio del sensor 1.

5.3 Conversión de datos

Todos los sensores tienen una salida digital que puede ser transformada en
unidades del sistema internacional mediante algunas pequeñas operaciones.

55 | P á g i n a
Jorge Aventin Roig

La salida del acelerómetro esta expresada como tres números enteros


firmados de 16-bit en el orden X, Y, Z donde los ejes están orientados de la
siguiente manera:

Ilustración 35: Orientación de los ejes de los sensores.

El sensor mide la aceleración lineal en cada uno de tres ejes. La resolución


acelerómetro es de 14 bits justificada en todos los modos de resolución, esto
hace que los dos últimos bits de la salida del sensor siempre sea cero. El
ajuste del rango del acelerómetro determina el factor de escala necesario
para convertir el número entero a unidades estándar como se describe en la
siguiente ilustración.

Ilustración 36: Conversión para los valores del acelerómetro.

Debido a que se ha configurado el acelerómetro con un valor de 8g el valor


obtenido mediante las funciones VISA Read y Match Pattern deberán ir
divididos por 4096. Para ello el valor obtenido en los diferentes terminales

56 | P á g i n a
Jorge Aventin Roig

“match substring” de las diferentes llamadas a la función Match Pattern de


los que se obtienen los valores de los diferentes ejes del acelerómetro se
deberán dividir mediante la función Divide.

Ilustración 37: Función Divide

En el terminal “x” ira conectado al terminal “match substring” de la función


Match Pattern y en el terminal “y” crearemos una constante con el valor
𝑥
4096 para que de esa manera se obtenga 𝑦.

Antes de realizar la función Divide se debe realizar una conversión del tipo
de variable que estamos usando de string a number, para ello se utilizará la
función de conversión Decimal String to Number.

Ilustración 38: Función Decimal String


to Number

57 | P á g i n a
Jorge Aventin Roig

En la siguiente ilustración se muestra como queda en el diagrama de bloques:

Ilustración 39: Diagrama de bloques de la conversión de los valores obtenidos por el acelerómetro
del sensor 1.

Para hacer una comprobación rápida de los valores obtenidos por el


acelerómetro lo colocamos en el suelo orientado con el eje Z hacia arriba.
De esta manera deberíamos obtener para los valores del acelerómetro del
eje Z un 1, para el X un 0 y para el eje Y un 0.

58 | P á g i n a
Jorge Aventin Roig

Ilustración 40: Valores obtenidos con el


acelerómetro del sensor 1 cuando está
situado en el suelo con el eje Z perpendicular
al suelo.

Ilustración 41: Valores obtenidos con el


acelerómetro del sensor 2 cuando está
situado en el suelo con el eje Z perpendicular
al suelo.

En la ilustración anterior se observa que los valores son cercanos a los


esperados y que las pequeñas variaciones que se encuentran puede ser
debido a interferencias o ruidos que probablemente sean necesarios filtrar
más adelante.

La salida del sensor de giroscopio se expresa como tres números enteros de


16 bits firmados en el orden X, Y, Z. La orientación del eje del sensor es el
mismo que la del acelerómetro. La salida del giroscopio es proporcional a la

59 | P á g i n a
Jorge Aventin Roig

velocidad angular alrededor de cada eje y por lo general se describe en


grados por segundo (gps). La conversión a gps depende del ajuste del rango
del sensor como se resume a continuación:

Ilustración 42: Conversión para los valores del giroscopio.

Debido a que se ha configurado el giroscopio con un valor de 2000 el valor


obtenido mediante las funciones VISA Read y Match Pattern deberán ir
multiplicados por 0.07. Para ello el valor obtenido en los diferentes
terminales “match substring” de las diferentes llamadas a la función Match
Pattern de los que se obtienen los valores de los diferentes ejes del
giroscopio se deberán multiplicar mediante la función Multiply.

Ilustración 43: Función


Multiply

En el terminal “x” ira conectado al terminal “match substring” de la función


Match Pattern y en el terminal “y” crearemos una constante con el valor 0.07
para que de esa manera se obtenga x·y.

60 | P á g i n a
Jorge Aventin Roig

Al igual que sucedía con la función Divide se debe realizar una conversión
del tipo de variable que estamos usando de string a number, para ello se
utilizará la función de conversión Decimal String to Number.

Ilustración 44: Diagrama de bloques para el giroscopio.

Para hacer una comprobación rápida de los valores obtenidos por el


giroscopio lo colocamos en el suelo orientado con el eje Z hacia arriba. De
esta manera deberíamos obtener para los valores del giroscopio del eje Z un
0, para el X un 0 y para el eje Y un 0.

Ilustración 45: Valores obtenidos con el


giroscopio del sensor 1 cuando está
situado en el suelo con el eje Z orientado
hacia arriba.

61 | P á g i n a
Jorge Aventin Roig

Ilustración 46: Valores obtenidos con el


giroscopio del sensor 1 cuando está situado
en el suelo con el eje Z orientado hacia
arriba.

En la ilustración anterior se observa que los valores son cercanos a los


esperados y que la pequeña variación del eje X puede ser debido a
interferencias o ruidos que probablemente sea necesario filtrar más
adelante.

La salida del sensor del magnetómetro se expresa como tres enteros


firmados 16 bits en el orden X, Y, Z. La orientación de los ejes X e Y están
alineados con el acelerómetro y el giroscopio. Sin embargo, el eje z está en
la dirección opuesta a los otros dos sensores. Es fácil de corregir esto
cambiando el signo de la salida del eje Z es decir Z = -Z.
Para resolver esto utilizaremos la función Multiply.
En este caso, en el terminal “x” crearemos una constante con el valor -1 y
en el terminal “y” se conectará al terminal “match substring” de la función
Match Pattern para obtener (-1) · y = -Z.

Del mismo modo que se debía realizar con los strings obtenidos de
acelerómetro y del giroscopio se debe realizar una conversión del tipo de
variable que estamos usando de string a number, para ello volvemos a utilizar
la función de conversión Decimal String to Number.

62 | P á g i n a
Jorge Aventin Roig

5.4 Adecuación de los datos para registros de


goniométricos

5.4.1 Adecuación de los registros del


acelerómetro[12,13,14,15,16]

Una vez realizadas las operaciones para realizar las transformaciones a


unidades del sistema internacional se deberá decidir que cuales son las
unidades se quieren utilizar para graficar las mediciones obtenidas por los
sensores.
En el caso de la aceleración nos viene dada en unidades de fuerza g. Las
unidades para expresar la aceleración serán m/s² unidades de velocidad
divididas por las unidades de tiempo, así que la medida obtenida en el
apartado anterior la multiplicaremos por 9,8 puesto que un una fuera g
equivale a 9,8 m/s². Así que se utilizará la función Multiply, donde en su
terminal “x” conectaremos la salida de la función Multiply utilizada para
normalizar los valores obtenidos por el acelerómetro en cada uno de sus
respectivos ejes y en el terminal “y” crearemos una constante que será 9,8.

63 | P á g i n a
Jorge Aventin Roig

Ilustración 48: Valores obtenidos con el


acelerómetro del sensor 1 cuando está situado
en el suelo con el eje Z orientado hacia arriba
después de haber multiplicado la salido por 9,8.

Ilustración 47: Valores obtenidos con el


acelerómetro del sensor 2 cuando está situado en
el suelo con el eje Z orientado hacia arriba
después de haber multiplicado la salido por 9,8.

Pues bien, para disponer de datos goniométricos es preciso obtener los


ángulos creados por la intersección de los ejes longitudinales de los
huesos a nivel de las articulaciones. Para ello podemos usar las lecturas
del acelerómetro para saber cuál es el ángulo de inclinación respecto al
eje X , Y o Z.

64 | P á g i n a
Jorge Aventin Roig

Supongamos que el sensor esté perfectamente alineado con el suelo.


Entonces, el eje Z marcará 9.8, y los otros dos ejes marcarán 0. Ahora
supongamos que giramos el sensor 90 grados. Ahora es el eje X el que
está perpendicular al suelo, por lo tanto marcará la aceleración de la
gravedad y los otros dos 0.

Ilustración 49: Output del acelerómetro en función del a posición del sensor

Esto también se puede representar mediante una esfera situada en el


centro de un cubo. En el ejemplo de a continuación no se tiene en cuenta
la fuerza de la gravedad:

Ilustración 50: Esquema acelerómetro con


esfera situada en medio de un cubo sin el efecto
de la fuerza de la gravedad

65 | P á g i n a
Jorge Aventin Roig

Si se aplicara una fuerza en el sentido del eje X de una fuerza hipotética


de 1 g obtendríamos lo que se representa a continuación:

Ilustración 51: Representación de lectura del


acelerómetro al aplicar una fuerza en el eje X,
sin tener en cuenta la fuerza de la gravedad

Ahora, si teniendo en cuenta a la fuerza de gravedad que genera la tierra,


en un estado de reposo el acelerómetro detectaría una de 1g en el eje Z
aunque el sensor este estático.

Ilustración 52: Representación fuerzas recibida por el


acelerómetro en estática

66 | P á g i n a
Jorge Aventin Roig

Hasta ahora se ha analizado la salida que tendría el acelerómetro en un


solo eje. El valor real de los acelerómetros triaxiales proviene del hecho
de que pueden detectar las fuerzas de inercia en los tres ejes. Volviendo
al ejemplo de cubo y si se girar 45 grados a la derecha. La esfera tocará
dos paredes: Z y X como se muestra en la siguiente imagen:

Ilustración 53: Esquema lectura acelerómetro girado 45 grados

El valor de 0.71 no es arbitrario, es una aproximación para la raíz cuadrada


de ½, relacionado con el teorema de Pitágoras en 3D. En los últimos 2
ejemplos que se han ilustrado se ha analizado la producción en 2 posiciones
diferentes del cubo, mientras que el vector de fuerza se ha mantenido
constante. Esto era útil en la comprensión de cómo el acelerómetro

67 | P á g i n a
Jorge Aventin Roig

interactúa con las fuerzas externas, pero es más práctico para realizar
cálculos si fijamos el sistema de coordenadas de los ejes del acelerómetro y
se hace que el vector de fuerza gire alrededor.

Ilustración 54: Representación ejes del acelerómetro y vector que mide el acelerómetro R

En esta representación cada eje es perpendicular a las respectivas caras del


cubo de los modelos anteriores. El vector R sería el vector que el
acelerómetro está midiendo en un instante. Rx, Ry y Rz son las proyecciones
del vector R en los diferentes ejes X, Y y Z.
De esta forma y según un equivalente al teorema de Pitágoras en 3D
obtenemos la siguiente ecuación:

R2 = Rx2 + Ry2 + Rz2

Los ángulos que interesan son los situados entre X, Y, Z y el vector R. Se


pueden definir estos ángulos como Axr, Ayr y Azr.

68 | P á g i n a
Jorge Aventin Roig

Ilustración 55: Representación vector R medido por el acelerómetro y relaciones con los
diferentes ejes

En la imagen anterior se puede ver el triángulo rectángulo generado por R y


Rx, de donde podríamos extraer:

Axr = ArcCos (Rx/R)

Y de forma similar:

Ayr = ArcCos (Ry/R)


Azr = ArcCos (Rz/R)

De donde podemos observamos:

Cos X = Cos (Axr) = Rx/R


Cos Y = Cos (Ayr) = Ry/R

69 | P á g i n a
Jorge Aventin Roig

Cos Z = Cos (Azr) = Rz/R

Este grupo de ecuaciones se conoce como Cosenos directores y básicamente


representan el vector director. Esto se puede verificar observando que la
raíz cuadrada de la suma de los cosenos de los tres ángulo es igual a 1.

Para calcular el ángulo mediante Labview se utilizará la función Invers


Cosine, en el terminal “x” se conectará el resultado de aplicar la función
Divide del valor obtenido en el eje correspondiente por el vector R.

Ilustración 56: Función Inverse Cosine

El vector R se calculara de la siguiente manera, teniedo en cuenta que R2 =


Rx2 + Ry2 + Rz2:

Ilustración 57: Calculo de R mediante


labview

70 | P á g i n a
Jorge Aventin Roig

Después de aplicar la función Invers Cosine obtenemos el ángulo en


radianes de la inclinación del sensor. Para convertirlo en grados solo será
necesario multiplicarlo mediante la función Divide por π y posteriormente
dividirlo con la función Multiply por 180. Esto sería el resultado de aplicar
una regla de tres que se ha obtenido teniendo en cuenta que π radianes
equivale a 180 grados.

Ilustración 58: Implementación del cálculo del ángulo mediante los datos obtenidos
del acelerómetro del sensor

Con el sensor situado encima de una superficie plana y con el eje Z orientado
perpendicular al suelo obtenemos los siguientes valores:

Ilustración 59: Ejemplo de valores de


los ángulos obtenidos mediante el
acelerómetro con el eje Z perpendicular
al suelo

Estos valores se tendrán en cuenta a la hora de eliminar el offset del


acelerómetro.
71 | P á g i n a
Jorge Aventin Roig

5.4.2 Adecuación de los registros del


giroscopio[16,17,18]

Con el giroscopio se ha medido la velocidad angular. Si sabemos el ángulo


inicial del sensor, podemos sumarle el valor que marca el giroscopio para
saber el nuevo ángulo a cada momento. Supongamos que iniciamos del
sensor a 0º. Si el giroscopio realiza una medida cada segundo, y marca 3 en
el eje X, tendremos el ángulo con esta sencilla fórmula:

Ángulo = Angulo0 + W · (t-t0)

Donde ángulo es el ángulo en el instante que se mide, ángulo0 es el ángulo


anteriormente medido, W es la velocidad ángular y t es el tiempo
transcurrido desde la última medición.
Teniendo en cuenta que se habrá fijado el output de los sensores a 100 Hz,
t siempre será igual al valor anterior más 0,01 segundos. Se deberá crear una
variable donde almacenar los valores de incremento del ángulo para obtener
el total.

Ilustración 60: Muestra de datos


obtenidos con el giroscopio del sensor 1
en estática

72 | P á g i n a
Jorge Aventin Roig

Estos valores se tendrán en cuenta a la hora de eliminar el offset del


giroscopio.

Por otro lado si se considera un vector arbitrario r y definimos sus


coordenadas en tiempo como r(t) se pueden considerar las siguientes
notaciones:
r = r(t); r’=r (t + dt); dr=r’-r:

Ilustración 61: Consideraciones del


vector de rotación

Para obtener mediante labview el incremento del ángulo se utiliza la función


Formula Node. Esta función permite la utilización de dos variables, una de
entrada y otra de salida. De forma que la variable de entrada x contendrá el
valor obtenido por el giroscopio en grados/segundos multiplicado por 0,01
segundos que sería el periodo de obtención de una muestra puesto que la
frecuencia que se ha fijado es de 100 Hz. Una vez ha entrado en el nodo de
la función Formula Node la variable x debemos crear otra variable de salida
que además guardara el ultimo valor de la variable x, de forma que se podrá
ir adquiriendo el incremento del ángulo que va registrando el sensor.

73 | P á g i n a
Jorge Aventin Roig

Ilustración 62: Función Función Node

Ilustración 63: Diagrama de bloques mostrando la implementación de la


función Funtion Node

5.5 Errores en las medidas[18,19,20]

El problema principal es que el acelerómetro es muy sensible todas las


aceleraciones lineales (vibraciones y desplazamientos lineales) por lo que los
parámetros de salida serán muy ruidosos y con errores durante los ciertos
desplazamientos.
Si se dibuja un gráfico de las medidas de un acelerómetro en función del
tiempo, se puede ver algo parecido a la gráfica de la figura marcada en rojo,
mientras que en azul se observan las medidas ideales.

74 | P á g i n a
Jorge Aventin Roig

Ilustración 64: Gráfica de acelerómetro

El acelerómetro también detecta cualquier aceleración que no sea la de la


gravedad. Por tanto, si se mueve el sensor sin girarlo, al aplicar una
aceleración en otro eje, este lo detectará como un cambio de rotación.

Por otro lado, el giroscopio, a diferencia del acelerómetro, da las medidas


con mucha más precisión. Pero al realizar los cálculos del ángulo es inevitable
que se produzca un pequeño error, producido por una deriva temporal que
los inutiliza y que con el tiempo va acumulándose hasta perder similitud con
la realidad. Este fenómeno se denomina “drift”.

75 | P á g i n a
Jorge Aventin Roig

5.6 Corrección de errores

5.6.1 Eliminación de offsets

Para la eliminación de los offsets de los diferentes ejes del acelerómetro y


según los valores obtenidos en apartados anteriores, a los valores enviados
por los sensores, ya una vez multiplicados por la fuerza de la gravedad se les
realiza las siguientes operaciones:
Al eje X del sensor 1 se le debe sumar 0.153, al eje Y se le debe restar 0,277
y al eje Z se le suma 0,058. Para el sensor 2 se debe restar 0.127 al eje X,
0.235 al eje Y y para el eje Z se debe sumar 0.118.
En el caso del giroscopio del sensor 1 el eje X no tiene offset, al eje Y se le
debe restar 1 y al eje Z se le resta también 1. Para el sensor 2 al eje X se
sumará 1, al eje Y no es necesario realizarle ninguna operación y al eje Z se
le restará 1.

Ilustración 65: Valores obtenidos de una muestra obtenida del sensor 1 después
de haber eliminado el offset

76 | P á g i n a
Jorge Aventin Roig

Ilustración 66: Valores obtenidos de una muestra obtenida del sensor 2 después de
haber eliminado el offset

5.6.2 Filtro complementario[20,21]

Como ya se ha visto, el uso de los ángulos obtenidos mediante las funciones


de los apartados anteriores pueden presentar problemas o inconvenientes
como ruidos de las medidas con los acelerómetros, que pueden indicar
valores falsos, o derivas producidas al tener que integrar los valores del
giróscopo. Para poder obtener medidas que se ajusten lo máximo posible a
la realidad del sistema, necesitaremos de algún otro medio como el filtro
complementario.
El uso de este método requiere de un acondicionamiento previo de los
valores obtenidos, en primer lugar deben ser eliminados los offsets de los
sensores. También es necesario ajustar o escalar los datos obtenidos por los
sensores de una forma adecuada, esto se hará teniendo en cuenta la
sensibilidad de obtención de ángulos. Obtendremos así los datos de ángulo
deseados.

El filtro complementario basa su actuación en los siguientes puntos:

 Fórmula: Ángulo = (valor filtro paso alto)*(ángulo + valor integrado


del giróscopo) + (valor filtro paso bajo)*(valor del acelerómetro);

77 | P á g i n a
Jorge Aventin Roig

 Filtro paso bajo: este tipo de filtro no deja pasar cambios rápidos,
como en la medida obtenida de los acelerómetros. De esta manera
eliminamos el ruido propio de este sensor.
 Integración: como se ha comentado previamente, este elemento es
necesario para obtener el ángulo a partir de medidas de velocidad
angular.
Ángulo giróscopio = ángulo previo +valor del giróscopo * tiempo
 Filtro paso alto: es el método empleado para eliminar la deriva de los
giróscopos. Este tipo de filtro funciona de manera contraria al paso
bajo,permitiendo el paso de cambios rápidos y evitando el de
cambios lentos (deriva o “drift”).
 Constante de tiempo: A la hora de obtener los valores para los filtros,
es tenido en cuenta la velocidad a la que se muestrea el sistema o se
realiza el bucle de medida, así como hasta que punto actuará en las
señales de los sensores.
 Constante de tiempo = (valor filtro paso alto * tiempo de
muestreo)/(1 – valor filtro paso alto).
 Complementario: indica que las 2 partes que componen el filtro
suman 1. Apreciable en los términos (valor filtro paso alto) y (1 –valor
filtro paso alto)

Ilustración 67: Diagrama basado en la fusión sensorial de filtro complementario

78 | P á g i n a
Jorge Aventin Roig

Como se ha visto el Filtro Complementario es en realidad una unión de dos filtros


diferentes: un High-pass Filter para el giroscopio y un Low-pass Filter para al
acelerómetro.

La fórmula resultante de combinar (complementar, de aquí el nombre) los dos


filtros es:

Ángulo = (valor filtro paso alto)*(ángulo + valor integrado del giróscopo) + (valor
filtro paso bajo)*(valor del acelerómetro)

El valor del filtro paso alto se fija en 0,98 y el filtro pasa bajas en 0,02, de forma
que 0,98+0,02=1.

De esta forma para hallar el ángulo estimado de cada sensor se utiliza la


implementación en labview que se muestra en la ilustración siguiente:

Ilustración 68: Obtención del ángulo estimado

79 | P á g i n a
Jorge Aventin Roig

5.7 Graficación

La función Waveform Chart muestra una o más mediciones uniformemente


muestreadas. Solo muestra funciones de un solo valor, como en y = f(x), con puntos
distribuidos uniformemente a lo largo del eje x, en forma de onda.

Ilustración 69: Función Waveform Charts

Para mostrar más de un plot en la gráfica se debe crean un array de clusters mediante
la función Bundle. A esta función se le conecta cada uno de los valores que se quieren
graficar y plotear en una misma gráfica. Posteriormente se conecta el terminal de
salida, output cluster a la función Waveform Chart.

Ilustración 70: Función Bundle

80 | P á g i n a
Jorge Aventin Roig

En la siguiente ilustración se muestra como quedaría implementado en labview, para


obtener la graficación del ángulo estimado del sensor 1.

Ilustración 71: Obtención de la gráfica del ángulo estimado del sensor 1

5. TESTS Y VALIDACION DE MEDIDAS

Para comprobar y validar el correcto funcionamiento de los sensores se han


realizado varios tests. Para ello se ha utilizado un goniómetro tradicional al que se
ha adherido el sensor a testar. Este se ha pegado al goniómetro mediante cinta
adhesiva de doble cara quedando tal y como se puede ver en la ilustración 72 y 73.

Las medidas se han testado aislando cada eje por separado e intentado que el eje
que se está valorando siempre este perpendicular al suelo, de forma que es más fácil
aislar las medidas de los otros ejes, que deberían ser cercanas a cero.

81 | P á g i n a
Jorge Aventin Roig

Al iniciarse el sensor la posición del goniómetro debe ser de 0º. Se realiza un


movimiento hasta llegar a los 90º. De este movimiento se obtiene una gráfica,
así como la segmentación correspondiente al inicio y al final del movimiento.

Ilustración 72: Posición inicial del goniómetro a 0º

Ilustración 73: Posición final de goniómetro a 90º

82 | P á g i n a
Jorge Aventin Roig

Gráfica obtenida en la medición del movimiento de 0 a 90º en eje X sensor 1:

Ilustración 74: Grafica medida de 0º a 90º eje X sensor 1

Gráfica de 0 a 90º en eje X sensor 2:

Ilustración 75: Grafica medida de 0º a 90º eje X sensor 2

83 | P á g i n a
Jorge Aventin Roig

Gráfica de 0 a 90º en eje Y sensor 1:

Ilustración 76: Gráfica medida de 0º a 90º eje Y sensor 1

Gráfica de 0 a 90º en eje Y sensor 2

Ilustración 77: Gráfica medida de 0º a 90º eje Y sensor 2

84 | P á g i n a
Jorge Aventin Roig

Gráfica de 0 a 90º en eje Z sensor 1

Ilustración 78: Gráfica medida de 0º a 90º eje Z sensor 1

Gráfica de 0 a 90º en eje Z sensor 2

Ilustración 79: Gráfica medida de 0º a 90º eje Z sensor 2

85 | P á g i n a
Jorge Aventin Roig

6. SIMULACION EN PRACTICA REAL

Se ha practicado un estudio goniométrico dinámico en 3D de la articulación de


la rodilla durante la marcha en un sujeto.
Para ello se utiliza una red de dos sensores. Un sensor deberá quedar situado
por encima de la rodilla y otro por debajo. A los valores obtenidos por el sensor
situado en la parte inferior de la articulación se le deberán restar los obtenidos
por el sensor situado por encima, de manera que los datos obtenidos
correspondan exclusivamente a la rodilla y no se tengan en cuenta los grados
de rotación generados en la articulación de la cadera o en la columna vertebral.
El sensor 1 es el que se coloca por encima de la articulación y el sensor 2 por
debajo.
La forma adecuada de colocar los sensores para realizar un estudio de la
biomecánica de la rodilla es la que se muestra en la ilustración 80.

Ilustración 80: Colocación de los sensores

86 | P á g i n a
Jorge Aventin Roig

A continuación se muestra una segmentación de un paso y medio de la señal


obtenida durante 5 segundos. Se han graficado cada uno de los ejes de
movimiento de forma aislada.

Ilustración 82: Gráfica goniometría de la rodilla segmentada a un paso y medio. Se recoge el eje X que corresponde
a eje transversal a través del cual se realiza el movimiento de flexo-extensión.

Ilustración 81: Gráfica goniometría de la rodilla segmentada a un paso y medio. Se recoge el eje Z que corresponde
a eje anteroposterior a través del cual se realiza el movimiento de varo y valgo.

87 | P á g i n a
Jorge Aventin Roig

Ilustración 83: Gráfica goniometría de la rodilla segmentada a un paso y medio. Se recoge el eje Y que corresponde
a eje vertical a través del cual se realiza el movimiento de rotación.

88 | P á g i n a
Jorge Aventin Roig

7. CONCLUSIONES

La elaboración de este proyecto ha supuesto una manera muy interesante y

entretenida de conjugar mi trabajo actual como consultor de biomecánica clínica

con los estudios de grado en telecomunicaciones. Ha servido además como una

primera toma de contacto para la realización de aplicaciones en las que

personalmente estoy muy interesado, que son aquellas que requieren de la

creación de alguna clase de dispositivo electrónico dedicado a objetivar medidas

relacionadas con la locomoción del ser humano. Dentro de estas aplicaciones

destacarían los siguientes puntos tratados en el proyecto y que han resultado de

especial interés:

 Selección y configuración de sensores.

 Comulación entre sensores y el PC.

 Diseño del instrumento de obtención de registros mediante labVIEW.

 Eliminación de offsets y aplicaciones de filtro complementario para

obtener los valores adecuados.

89 | P á g i n a
Jorge Aventin Roig

8. TRABAJO FUTURO

Se debe realizar un estudio con más gestos con rangos mayores, puesto que

hay que verificar que los valores que se obtienen mediante la programación

que se ha implementado es correcta. Podría ser que la implementación que

se ha utilizado mediante el filtro complementario no fuera adecuada para

algunos movimientos y que fuera preciso utilizar ángulos de Euler o

cuaterniones.

Algunas mejoras que se podrían contemplar seria la utilizar de un filtro de

Kalman. Con este sistema se ganaría algo de rapidez a la hora de obtener el

ángulo ya que el filtro complementario puede resultar ser algo lento para

aplicaciones como esta.

BIBLIOGRAFIA

1. Norkin C, White J. Measurement of Joint Motion : A Guide to Goniometry, 4th


Edition Spiral-bound, July 1, 2009.
2. Clarkson H. Musculoskeletal Assessment: Joint Motion and Muscle Testing
(Musculoskeletal Assesment) Spiral-bound, February 15, 2012.

90 | P á g i n a
Jorge Aventin Roig

3. Taboadela, Claudio H. Goniometría : una herramienta para la evaluación de las


incapacidades laborales. - 1a ed. - Buenos Aires : Asociart ART, 2007.
4. A. Godfrey, R. Conway, D. Meagher, and G. ÓLaighin, “Direct measurement of
human movement by accelerometry,” Medical Engineering & Physics, vol. 30,
no. 10, pp. 1364–1386, Dec. 2008.
5. Development of a Low-Cost Attitude and Heading Reference System Using a
Three-Axis Rotating Platform. Ying-Chih Lai, Shau-Shiun Jan and Fei-Bin
Hsiao.Sensors 2010, 10, 2472-2491.

6. Biomechanics and Motor Control of Human Movement, 4th Edition. David A.


Winter. 2009. John Wiley & Sons, INC.
7. Development of motion analysis protocols based on inertial sensors. P.
Garofalo. Ph.D. Thesis in Bioengineering, University of Bologna. 2010, Italy.
8. Development of a Low-Cost Attitude and Heading Reference System Using a
Three-Axis Rotating Platform. Ying-Chih Lai, Shau-Shiun Jan and Fei-Bin
Hsiao.Sensors 2010, 10, 2472-2491.
9. Rodríguez D. Contribución al análisis del movimiento humano aplicado a la
identificación de posturas y bloqueos de la marcha en pacientes con Parkinson.
Tesis doctoral. Abril 2014.
10. Master Table of Contents & ComplianceRequirements. BLUETOOTH
SPECIFICATION Version 4.0.
11. LabVIEWTM Getting Started with LabVIEw, June 2013.

12. Willemsen, ATM; Frigo, C; Boom, HBK. Lower extremity angle measurement
with accelerometers-error and sensitivity analysis. IEEE Trans Biomed Eng 1991,
38, 1186–1193.
13. Heyn, A; Mayagoitia, RE; Nene, AV; Veltink, P. The kinematics of the swing
phase obtained from accelerometer and gyroscope measurements.
Proceedings of 18th Annual International Conference of the IEEE Engineering in
Medicine and Biology Society, Amsterdam, The Netherlands, 31 October–3
November 1996; pp. 463–464.

91 | P á g i n a
Jorge Aventin Roig

14. Mirabella, O.; Brischetto, M.; Mastroeni, G. “MEMS based gesture recognition”,
2010 3rd Conference on Human System Interactions (HSI), Page(s): 599 – 604,
Publication Year: 2010
15. Ari Yosef Benbasat,” An Inertial Measurement Unit for User Interfaces” Máster
tesis, MASSACHUSETTS INSTITUTE OF TECHNOLOGY, Septiembre 2000
16. Keogh, E.; Chu, S.; Hart, D.; Pazzani, M.; “An online algorithm for segmenting
time series”, Proceedings IEEE International Conference on Data Mining, 2001.
ICDM 2001, Page(s): 289 – 296, Publication Year: 2001.
17. N. Krahnstoever M. Yeasin R. Sharma, ”Automatic Acquisition and Initialization
of Kinematic Models”, IEEE Conference on Computer Vision and Pattern
Recognition, CVPR 2001, Kauaii, Hawaii, USA.
18. Jean-Christophe Lementec and Peter Bajcsy, “Recognition of Arm Gestures
Using Multiple Orientation Sensors: Gesture Classification”, 2004 IEEE
Intelligent Transportation Systems Conference, Washington, D.C., USA,
October 3-6, 2004.
19. En Wei Huang, Li Chen Fu, “Gesture Stroke Recognition Using Computer Vision
and Linear Accelerometer”, 2008.
20. XindongWu, Vipin Kumar, J. Ross Quinlan, Joydeep Ghosh, Qiang Yang, Hiroshi
Motoda, Geoffrey J. McLachlan, Angus Ng, Bing Liu, Philip S. Yu, Zhi-Hua Zhou,
Michael Steinbach, David J. Hand, Dan Steinberg. “Top 10 algorithms in data
mining”, Springer-Verlag London Limited 2007,
21. Michael Hoffman, Paul Varcholik, Joseph J. LaViola Jr. “Breaking the Status Quo:
Improving 3D Gesture Recognition with Spatially Convenient Input Devices”,
IEEE Virtual Reality 2010 20 - 24 March, Waltham, Massachusetts, USA, 2010.
22. Ruize Xu, Shengli Zhou, and Wen J. Li, “MEMS Accelerometer Based Non -
Specific Specific -User Hand Gesture Recognition”, IEEE 2011.Sensors Journal,
IEEE Volume: PP, Issue:99.

92 | P á g i n a
Jorge Aventin Roig

ANEXOS

Imagen Front Panel del programa

93 | P á g i n a
Jorge Aventin Roig

Imagen Diagrama de Bloques

94 | P á g i n a

Vous aimerez peut-être aussi