Sistema de conexión inalámbrico entre un brazalete Myo y una prótesis de miembro superior por medio de bluetooth de baja energía
65
0
0
Texto completo
(2)
(3) Sistema de conexión inalámbrico entre un brazalete Myo y una prótesis de miembro superior por medio de Bluetooth de baja energía. Deycy Camila Arias Villamil Fabian David Barreto Sanchez. Trabajo de grado presentado como requisito parcial para optar al título profesional en: Ingeniería Electrónica. Director: MSc. Julián Camargo Codirector: MSc. Cesar Perdomo. Línea de Investigación: Bioingeniería y sistemas embebidos. Grupo de Investigación: Laboratorio de Automatización, Sistemas Embebidos y Robótica LASER. Universidad Distrital Francisco José de Caldas Facultad de Ingeniería, Departamento de Ingeniería Electrónica Bogotá, Colombia 2018.
(4) (Dedicatoria). A nuestros padres por su apoyo incondicional. Uno sabe cuándo empieza pero no cuándo ni en qué acaba Jorge Reynolds.
(5) Agradecimientos. Los autores agradecen al director Julian Rolando Camargo López y al ingeniero Cesar Andrey Perdomo Charry, por su orientación, dedicación y apoyo en el desarrollo del proyecto.. Al ingeniero Oscar Julian y al grupo de investigación LASER, por las recomendaciones, correcciones y acompañamiento en la implementación del prototipo.. Por último, agradecen al laboratorio de prototipado de la universidad a cargo del ingeniero Wilson Ricardo López Sánchez por la orientación y colaboración en técnicas de impresión 3D y circuitos PCB.. Sin la colaboración de ustedes esta monografía no hubiese sido posible..
(6) 6. Resumen La pérdida de un miembro superior representa una reducción en la calidad de vida del ser humano. Las nuevas tecnologías como la comunicación Bluetooth de baja energía, sistemas embebidos y desarrollos de prótesis con tecnología de impresión 3D, facilitan la creación de prótesis de miembro superior mioeléctricas. El propósito principal de este documento es presentar el desarrollo de un sistema de conexión inalámbrica entre un brazalete MYO y un sistema embebido implementado en una prótesis de miembro superior mioléctrica con comunicación Bluetooth de baja energía(BLE). La integración de distintos sistemas (comunicación, microprocesadores, impresión 3d, control y energía) generó dificultades pues implicó manejo de muchas variables. La solución planteada estuvo basada en métodos de desarrollo de sistemas embebidos, caracterizaciones de sistema y diseños asistidos por computadoras. El prototipo final obtuvo cinco grados de libertad, ocho presiones y gestos. Los actuadores fueron lineales y se implementó en el microcontrolador PSoC. Palabras clave: Bluetooth, CAD (diseño asistido por computadoras), Prótesis, Actuadores, PSoC,. sistema embebido.. Abstract The loss of a superior member represents a reduction in the quality of life of the human being . New technologies such as Bluetooth low energy, embedded systems and developments of prostheses with 3D printing technology, facilitate the creation of upper limb myoelectric prostheses . The main purpose of this document is to present the development of a wireless connection system between a MYO armband and an embedded system implemented in a upper-limb prosthesis with Bluetooth low energy communication (BLE). Integration of different systems (communication, microprocessors, 3d printing, control and energy) generated difficulties because it involved handled many variables. The proposed solution was based on methods of embedded system development, system characterizations and computer-aided designs. The final prototype obtained five degrees of freedom, eight pressures and gestures. The actuators were linear and implemented in the PSoC microcontroller. Keywords:Bluetooth, CAD (computer-aided design), Prostheses, Actuators, PSoC, embedded. system..
(7) Índice general. Agradecimientos. 5. Resumen. 6. 1. Generalidades 1.1. Definición del problema . . . 1.2. Enfoque del problema . . . . 1.3. Justificación . . . . . . . . . . 1.4. Objetivos . . . . . . . . . . . . 1.4.1. Objetivo general . . . 1.4.2. Objetivos específicos . 1.5. Estado del arte . . . . . . . . . 1.6. Alcances y limitaciones . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. 2. Marco de referencia 2.1. Comunicación inalámbrica y gestión de información . 2.1.1. Bluetooth Low Energy . . . . . . . . . . . . . . . . 2.1.2. Arquitectura de aplicación . . . . . . . . . . . . . 2.1.3. Brazalete Myo (Myo Gesture control armband) 2.2. Sistema Embebido . . . . . . . . . . . . . . . . . . . . . . 2.2.1. Metodología de desarrollo . . . . . . . . . . . . . 2.3. Fisiología y biomecánica del miembro superior . . . . . 2.3.1. Fisiología de la mano . . . . . . . . . . . . . . . . 2.4. Prótesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1. Sistemas Protésicos . . . . . . . . . . . . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . . . .. . . . . . . . . . .. 3. Comunicación brazalete y microcontrolador 3.1. Parámetros de fábrica y comunicación del brazalete . . . . 3.1.1. Directivas del compilador: optimización de código 3.1.2. Firmware HM11 . . . . . . . . . . . . . . . . . . . . . 3.2. Librería PSoC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1. Comunicación UART . . . . . . . . . . . . . . . . . . . 3.3. Errores, conexión y resultados de la librería . . . . . . . . . 7. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . .. . . . . . .. . . . . . . . .. 11 11 12 12 13 13 13 13 17. . . . . . . . . . .. 18 18 18 20 21 22 22 23 24 26 27. . . . . . .. 29 30 31 33 35 37 38.
(8) 8 4. Prótesis de miembro superior 4.1. Sistema de diseño asistido (CAD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2. Modelos de prótesis de miembro superior libres . . . . . . . . . . . . . . . . . . . . 4.3. Elección de modelo de prótesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 41 41 42 44. 5. Sistema embebido: control y energía 5.1. Caracterización de actuadores . . . . . . . . . . . . 5.2. Implementación controlador PSoc: discretización 5.3. Sistema completo . . . . . . . . . . . . . . . . . . . . 5.4. Gestos implementados . . . . . . . . . . . . . . . . . 5.5. Discusión de resultados . . . . . . . . . . . . . . . .. . . . . .. 46 46 48 51 57 59. 6. Conclusiones 6.1. Trabajos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 61 62. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . .. . . . . ..
(9) Índice de figuras. 1.1. 1.2. 1.3. 1.4.. Prototipo tesis de maestría. Universidad del Cauca . . . . . . . . . . . . . . . . . . . Prótesis de código abierto hechas por medio de impresión 3D. . . . . . . . . . . . Prótesis desarrolladas por DARPA, grados de libertad y componentes principales Prótesis con comunicación brazalete MYO, desarrollada por el Laboratorio de Física Aplicada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 16. Pila de protocolos en Bluetooth . . . . . . . . . . . . . . . . . . . . . . Resumen operación GAP, roles y estados para formar una conexión Estándar ISO/IEC/IEEE 29148 . . . . . . . . . . . . . . . . . . . . . . . Estructura ósea y articulaciones . . . . . . . . . . . . . . . . . . . . . . movimientos del dedo pulgar . . . . . . . . . . . . . . . . . . . . . . . . Taxonomía de clasificación de prensiones humanas . . . . . . . . . . Estructura de poleas del dedo . . . . . . . . . . . . . . . . . . . . . . . Estructura de una prótesis mioeléctrica . . . . . . . . . . . . . . . . . .. . . . . . . . .. 19 20 23 24 25 26 27 28. Estructura del perfil GATT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Información de identificación básica del brazalete . . . . . . . . . . . . . . . . . . . Servicios GATT, protocolo de comunicación . . . . . . . . . . . . . . . . . . . . . . . Estructura ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comparación organización en memoria de estructura ejemplo con diferentes directivas de compilador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6. Alineamiento en memoria por medio de directivas del compilador . . . . . . . . . 3.7. Resumen de comandos definidos por el fabricante . . . . . . . . . . . . . . . . . . . 3.8. Explicación Firmware módulo BLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.9. Estructura de datos dentro del firmware del módulo . . . . . . . . . . . . . . . . . 3.10.Jerarquía de librerías en el PSoC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.11.Código ejemplo empleando apuntadores a funciones . . . . . . . . . . . . . . . . . 3.12.Lectura y escritura buffer RX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.13.Metodología propuesta para encontrar errores de comunicación . . . . . . . . . . 3.14.Seguimiento de paquetes en comunicación punto a punto . . . . . . . . . . . . . . 3.15.Prueba de conexión con el brazalete, información básica . . . . . . . . . . . . . . . 3.16.Prueba de envío de datos, reconocimiento de gestos . . . . . . . . . . . . . . . . . .. 30 30 31 32. 2.1. 2.2. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8.. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. . . . . . . . .. 3.1. 3.2. 3.3. 3.4. 3.5.. 4.1. Modelo de prótesis Flexy-Hand 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2. Modelo de prótesis ADA Hand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9. 14 15 16. 32 33 33 34 35 37 37 38 39 39 40 40 43 44.
(10) 10. ÍNDICE DE FIGURAS 5.1. Curvas características actuadores lineales en lazo abierto. . . 5.2. Diagrama de bloques caracterización en lazo cerrado . . . . . 5.3. Caracterización del actuador . . . . . . . . . . . . . . . . . . . . 5.4. Respuesta de la planta promedio . . . . . . . . . . . . . . . . . . 5.5. Simulación de la planta . . . . . . . . . . . . . . . . . . . . . . . 5.6. Código del controlador . . . . . . . . . . . . . . . . . . . . . . . . 5.7. Diagrama de bloques del funcionamiento general ADC . . . . 5.8. Diagrama de bloques del ADC delta sigma. . . . . . . . . . . . 5.9. Implementación control actuadores . . . . . . . . . . . . . . . . 5.10.Implementación PSoC . . . . . . . . . . . . . . . . . . . . . . . . 5.11.Etapa Puente H y actuadores . . . . . . . . . . . . . . . . . . . . 5.12.Diagrama de bloques rutina de control de posición. . . . . . . 5.13.Tarjeta controladora del prototipo . . . . . . . . . . . . . . . . . 5.14.Módulo mano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.15.Diseño antebrazo, adaptador y soporte bateria . . . . . . . . . 5.16.Simulación ensamblaje soporte-antebrazo . . . . . . . . . . . . 5.17.Adaptador batería-sistema . . . . . . . . . . . . . . . . . . . . . . 5.18.Posiciones con las que se prueba la comunicación Myo-PSoC 5.19.Prototipo final implementado . . . . . . . . . . . . . . . . . . . . 5.20.Pruebas de gestos de la protesis . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. 47 47 47 48 49 49 50 51 52 52 53 53 54 54 55 56 57 57 59 60.
(11) 1 Generalidades. Contenidos del capítulo 1.1. Definición del problema 1.2. Enfoque del problema 1.3. Justificación 1.4. Objetivos 1.5. Estado del arte 1.6. Alcances y limitaciones. 1.1.. Definición del problema. La situación descrita en el Informe Mundial sobre la discapacidad revela que más de 200 millones de personas presentan discapacidades que limitan su funcionamiento. De igual forma, precisa que dichas limitaciones hacen que personas con discapacidad tengan peores resultados sanitarios, académicos, menor participación económica y tasas de pobreza más altas que las personas sin discapacidad [1]. A nivel global, la discapacidad es considerada como un problema de salud pública y estamentos internacionales como la Asamblea Mundial de la Salud, la OMS y el Banco Mundial han propuesto normativas y políticas para facilitar el acceso a educación, salud, y trabajo [2]. Particularmente, en Colombia, se cuenta con un sistema de información denominado Registro para la localización y caracterización de las personas con discapacidad (RLCPD) que permite agrupar datos para conocer e identificar las acciones inclusivas que se pueden desarrollar a nivel distrital y nacional. En el año 2015, junto con el Departamento Administrativo Nacional de Estadística (DANE), se estimó que existen 3’051.217 de personas con limitaciones permanentes, lo que representa el 6.3 % de la población nacional [3]. Ahora bien, de dicho porcentaje, el 14.6 % registra una discapacidad causada por una deficiencia de un miembro superior [3]. Teniendo en cuenta este panorama, y, con el fin de evitar pérdida de movilidad y capacidades motrices, se puede recurrir a prótesis que puede ser mecánica o mioeléctrica dependiendo del tipo de amputación. 11.
(12) 12. Generalidades. Aparece, entonces, una barrera económica que limita el acceso de las personas con discapacidad a dichas tecnologías, especialmente en países de ingreso bajo-mediano [1]. Los costos de producción derivados de los materiales tradicionales, cableado, sistemas de comunicación y adquisición de señal dificultan la búsqueda de una solución. No obstante, dicha barrera puede disminuir con el desarrollo de sistemas embebidos que tengan bajo consumo de energía, fiabilidad en la transmisión de datos y portabilidad con los diferentes dispositivos electrónicos habituales. En el año 2013, la empresa Thalmic Labs creó un brazalete que ofrece la posibilidad de controlar diferentes dispositivos y programas informáticos con las señales electromiográficas [4]. Emplea Bluetooth Low Energy 4.0 (BLE 4.0) [en español, Bluetooth de Baja Energía] y un sistema operativo como medio de interacción entre la persona y el dispositivo. De igual forma, brinda la posibilidad de crear nuevas protocolos de comunicación pues, su código es libre y es posible obtener las señales y el movimiento realizado por medio de sus librerías.. 1.2.. Enfoque del problema. Bajo el paradigma de comunicación presentado, los dispositivos que incluyan el brazalete involucran entornos en tiempo real, lo que implica poca portabilidad y alta dependencia a un equipo como un computador. Por lo mismo se ve necesario investigar en busca de un sistema embebido que disminuya la complejidad en la forma de comunicación y ejecución de órdenes obtenidas por el sistema BLE 4.0 desde el brazalete, para aprovechar lo ofrecido por el mismo y poder implementar sistemas controlados con los datos obtenidos desde las señales mioelétricas. Para el caso, controlar una prótesis por medio de una conexión inalámbrica.. 1.3.. Justificación. En Colombia, la Asociación Colombiana de Medicina Física y Rehabilitación estima que la incidencia de amputaciones es de 200 a 300 personas por cada 100.000 habitantes [5]. Estas cifras motivan a la búsqueda de una solución que sea de bajo costo y permita suplir las funciones de un miembro superior perdido. Además, revelan una oportunidad para aplicar los conocimientos adquiridos en el transcurso de nuestra carrera como estudiantes de Ingeniería Electrónica. Esperamos con este proyecto, implementar protocolos de comunicación que permitan diseñar sistemas más compactos, portátiles y con posible impacto positivo en el mercado. Es importante mencionar que, como integrantes del grupo de investigación LASER (Laboratorio de Automatización, Sistemas Embebidos y Robótica) de la Universidad Distrital F.J.C, es relevante aplicar nuestro conocimiento adquirido para desarrollar una herramienta que sirva como base para futuros proyectos de investigación dentro del mismo, pues, al hacer uso de dispositivos como el brazalete Myo y protocolos de comunicación BLE 4.0, se pueden diseñar sistemas que aporten soluciones a campos como biomédica, automatización de hogares, celulares, y demás dispositivos electrónicos de consumo [4]. Por otra parte, con la implementación de nuevas tecnologías de fabricación, el costo de sistemas embebidos como las prótesis mioeléctricas reduce considerablemente. Ejemplo de ello son las prótesis fabricadas por medio de la impresión 3D. Iniciativas como [6] han permitido que per-.
(13) 1.4. OBJETIVOS. 13. sonas que no podían acceder a costosos sistemas, cuenten con prótesis impresas en 3D, lo que les brinda una oportunidad para continuar con las funciones de sus manos que veían perdidas. De manera que, si en este proyecto se logran unir dichas tecnologías, se puede presentar un prototipo que represente un impacto social y económico favorable en las personas en situación de discapacidad. Por último, el presente proyecto investigativo pretende brindar una herramienta que contribuya al desarrollo de nuestra nación. Así pues, como estudiantes de ingeniería, somos conscientes de nuestro compromiso con la sociedad y creemos que está en nuestras manos generar soluciones que mejoren las condiciones de vida en aquellos sectores del país que estén en busca de tecnología a su favor.. 1.4.. Objetivos. 1.4.1.. Objetivo general. Diseñar e implementar un sistema embebido que comunique por medio del protocolo Bluetooth de baja energía (BLE 4.0) el brazalete comercial Myo con una prótesis mioeléctrica.. 1.4.2.. Objetivos específicos. Estudiar y analizar los conceptos que implica el protocolo Bluetooth de baja energía (BLE 4.0) y relacionarlo e identificarlo en la estructura de configuración del brazalete. Establecer comunicación punto a punto entre el brazalete Myo y un microcontrolador. Implementar un prototipo de prótesis de miembro superior por medio de impresión 3D. Realizar pruebas de comunicación entre el brazalete Myo y el sistema embebido que involucre la prótesis mioeléctrica.. 1.5.. Estado del arte Diseño y construcción de una prótesis robótica de mano funcional adaptada a varios agarres [7]. Tesis de maestría, prototipo de una mano con agarres prensiles a partir de órdenes efectuadas desde un sistema de mando. El diseño comenzó con el prototipo de un dedo antropomórfico similar al dedo índice, teniendo en cuenta las medidas antropométricas promedio del mismo, los motores utilizados fueron motorreductores DC miniatura de dimensiones (2,387cmx1cmx1,2cm), con piñonería metálica la cual ofreció robustez y mayor vida útil. Dichos motores pueden operar entre 3v y 9v (con voltaje recomendado de 6V ), tienen una reducción 298 : 1, la velocidad es 100r pm y el torque es de 6,5K g − cm. De igual forma, desarrollaron una interfaz para conectar la mano robótica con el sistema de mando por medio de una tarjeta de desarrollo de Microchip dspicDEM 1.1 Plus. El primer prototipo de mano fue una mano de tres dedos artificiales que contó con 6 motores DC incrustados en su estructura, con lo que mantuvieron una dimensión comparable con la mano humana..
(14) 14. Generalidades Resultados y trabajos futuros La mano resultante del proyecto tuvo 6 grados de libertad, los dedos podían realizar movimientos de flexo-extensión y además el dedo pulgar podía realizar movimientos de prono-supinación. La mano estuvo equipada de sensores de fuerza y de posición. Por último, la interfaz hardware/software resultante permitió conectar el prototipo de mano a un computador para obtener la realimentación sensorial y enviar órdenes para realizar posturas de agarre como los agarres de pinza, cilíndrico, esférico, lateral y gancho. En sus trabajos futuros tienen en mente que el prototipo de mano pueda ser controlador a partir de señales electromiografícas (EMG) adquiridas del antebrazo del paciente. Para esto sería conveniente validar algoritmos de identificación de posturas de agarres a partir de señales EMG. En la figura 1.1 tomado de [7], se puede apreciar el prototipo final del proyecto de grado.. Figura 1.1: a) Prototipo prótesis mano. b) Interfaz final del proyecto de grado. Tomado de 1.1. Prótesis creadas por medio de impresión 3D [6] [8]. Organizaciones sin ánimo de lucro que crean prótesis por medio de modelos opensource para impresión 3D El objetivo principal de estas organizaciones es brindar opciones accesibles de bajo costo para personas que necesitan prótesis. Están hechas por medio de impresión 3D y cada diseño cuenta con licencias de uso libre. En el caso de [6], las prótesis son totalmente mecánicas, el movimiento se realiza por medio de tendones ajustados al antebrazo. Tienen dos grados de libertad y permite hacer agarre cilíndrico. En Colombia, Give me Five y Fabrilab emplean este modelo de creación. Por otro lado, la organización [8], tiene como misión crear prótesis robóticas de bajo costo. Emplean plataformas de desarrollo y software libre para compartir los diseños. Uno de sus diseños tiene 5 grados de libertad, está compuesta por 5 actuadores lineales ubicados en la palma junto con una placa programable de código abierto, cuenta con comunicación USB para controlar los movimientos de la mano. En la figura 1.2, tomada de [6] y [8], se observan las prótesis finales..
(15) 1.5. ESTADO DEL ARTE. 15. Figura 1.2: Prótesis de código abierto. a) Prótesis mecánica, Enabling the Future. b) Prótesis Ada V1.1, Open hand project. Imágenes tomadas de [6] y [8] Desafío revitalizando prótesis creado por DARPA [9]. Proyecto de investigación y creación de prótesis para miembro superior, Laboratorio de física aplicada Universidad Johns Hopkins. En el año 2009, la Agencia de Proyectos de Investigación Avanzados de Defensa (DARPA) creó un programa para desarrollar una prótesis de miembro superior de nueva generación. El Laboratorio de Física Aplicada (APL)[en inglés, Applied Physics Laboratory] formó un equipo internacional con más de 30 aliados empresariales, gubernamentales y académicos, para desarrollar un sistema que imitara las funciones de una extremidad humana. Dentro de las características que debía cumplir el diseño, estaban: arquitectura modular, configurable para distintos tipos de amputación; 22 grados de libertad, movimiento natural, velocidad, y que ofreciera la posibilidad de realizar tareas diarias. En la segunda fase de desarrollo diseñaron dos opciones para la mano: una con motores integrados (intrínseca) y otra controlada desde el antebrazo (extrínseca). La primera solución fue más compleja y la distribución de peso no era la mejor, pero fue modular y permitió ubicar una tarjeta de control en la palma, de igual forma, podría ser usada incluso por pacientes con amputación transradial. La segunda solución tenía mejor distribución de peso y era controlada de forma similar a la mano humana, con tendones desde el antebrazo, pero limitaba su uso a personas con amputación completa de antebrazo. En conjunto obtuvieron 21 grados de libertad, por medio de más de 21 motores de precisión. La prótesis fue controlada con múltiples sensores en la piel, y los gestos reconocidos por medio de algoritmos de reconocimiento. En la figura 1.3, tomada de [9] se observan las características de los diseños de la fase II..
(16) 16. Generalidades. Figura 1.3: Características y comparación de diseños, fase II. Tomada de [9]. - Enfoque con reconocimiento de gestos por medio del brazalete Myo [10] Recientemente, el APL empleó una técnica quirúrgica que permite incrustar el módulo protésico al miembro superior, lo que permita mayores rangos de movimientos y comodidad. Además, elimina el arnés que puede llegar a causar dolor si no se adapta bien al paciente. La prótesis es controlada por dos brazaletes Myo ubicadas en el brazo en el cual va la prótesis. Los datos de los sensores del brazalete son enviados a un computador y este al reconocer el movimiento que quiere hacer el paciente, envía la señal de control a la protesis. En la figura 1.4, tomada de [10] se observa la prótesis implementada.. Figura 1.4: Prótesis mioléctrica controlada por brazalete Myo. Tomadas de [10].
(17) 1.6. ALCANCES Y LIMITACIONES. 1.6.. 17. Alcances y limitaciones. Alcances Este proyecto tiene como alcance desarrollar un prototipo de un sistema de comunicación inalámbrica entre un brazalete Myo y una prótesis de miembro superior, dicho prototipo contará con un módulo BLE 4.0 conectado a un sistema embebido encargado de controlar la prótesis acorde al gesto suministrado por el brazalete Myo; es importante aclarar que la implementación del prototipo se hará por medio de un diseño opensource de un prototipo de miembro superior, el cual integrará el sistema embebido, sistema de alimentación del prototipo final. En cuanto a los aspectos puntuales de la investigación, se procederá a la implementación del módulo de comunicación por medio de un sistema integrado bluetooth de baja energía comercial, por lo que se hará una revisión sobre los protocolos que este sistema requiere para establecer la comunicación y el envío de parámetros. Para el desarrollo del sistema embebido se buscará un microcontrolador que cumpla con las funciones requeridas, evitando así, el sobre-dimensionamiento de la placa del circuito impreso y el prototipo final. Limitaciones Las limitaciones que se nos podrán presentar en el desarrollo de nuestro proyecto están relacionadas al desempeño del tiempo de respuesta de los motores implementados en el prototipo, pues la selección de estos dependen del tamaño, costo y rendimiento que se adapten a la necesidad del proyecto. El método de fabricación de la prótesis será impresión 3D, esto con el fin de brindar una solución de bajo costo. Por lo que, la resistencia del prototipo estará definida por el tipo de plástico usado para el proceso de impresión. De igual forma, el diseño base será un modelo de uso libre, disponible en [8] o en [6], se especificarán las modificaciones de ser necesario. Este proyecto, busca, en mayor medida, comunicar el brazalete Myo con un microcontrolador y un sistema embebido, por lo mismo, ese será el enfoque principal del proyecto. Por último, es importante mencionar que, la adquisición de señal y reconocimiento de los gestos se hará por medio del brazalete, por dicha razón, no se incluirá una etapa de procesamiento de la señal EMG. Los alcances, entregables y limitaciones están resumidos en la siguiente tabla:. Alcances. Comunicación BLE 4.0. Alcances y Limitaciones Prototipo Sistema embebido y sistema de alimentación. Entregables. Documentación final. Prototipo prótesis mioeléctrica. Limitaciones. Tiempo de respuesta motores. Resistencia del prototipo. Prótesis del miembro superior Manual de operación Adquisición y reconocimiento de la señal EMG: Myo. Tabla 1.1: Alcances y Limitaciones del proyecto de grado.
(18) 2 Marco de referencia. Contenidos del capítulo 2.1. Comunicación inalámbrica y gestión de información 2.2. Sistema Embebido 2.3. Fisiología y biomecánica del miembro superior 2.4. Prótesis. En este trabajo se busca establecer una conexión inalámbrica entre un sistema embebido que integre una prótesis mioeléctrica y el brazalete Myo, empleando el protocolo Bluetooth de baja energía (BLE 4.0). Se presentan a continuación los temas relevantes que permiten comprender el proyecto y generar las bases para su correcto desarrollo. Para abordar el tema se debe hacer una revisión desde los conceptos básicos del protocolo, hasta la tecnología usada por el brazalete Myo. Por otro lado, a modo de contextualización, se presenta al lector conceptos relacionados con la mano y las prótesis en general.. 2.1.. Comunicación inalámbrica y gestión de información. Las tecnologías definidas en el estándar IEEE802.15.4 que hacen parte de las Redes Inalámbricas de Área Personal (WPAN, por sus siglas en inglés) son las que se emplean cuando la distancia es corta y el manejo de energía es un factor importante en los enlaces de comunicación. Dentro de éstas se encuentra Bluetooth. Fue desarrollado por el Bluetooth Special Interest Group (SIG) [11] y está definido en el estándar IEEE802.15.1 [12]. Opera en la banda reservada internacionalmente para uso no comercial de radiofrecuencia electromagnética en áreas industrial, científica y médica (ISM) a 2.4 GHz. Con el fin de brindar un nuevo estándar pensado para Internet de las Cosas, SIG anunció Bluetooth Low Energy (BLE) o Bluetooth versión 4.0. El cual se caracteriza por bajo consumo de energía, baja latencia, y operación en rangos cortos con pequeñas baterías [13]. Combina una técnica adaptativa de salto de frecuencia que disminuye la interferencia con CRC de 24-bits para mejorar la fiabilidad de los enlaces.. 2.1.1.. Bluetooth Low Energy. Según [11], Bluetooth es una tecnología empleada en la transmisión de audio, datos e información entre dispositivos. Es un componente del núcleo del internet de las cosas, y su uso más popular ha sido la transmisión de audio de forma inalámbrica. En dicha versión, se usa 18.
(19) 2.1. COMUNICACIÓN INALÁMBRICA Y GESTIÓN DE INFORMACIÓN. 19. Basic Rate/Enhanced Data Rate (BR/EDR), lo que permite conexión inalámbrica sin interrupciones, gracias a que usa una topología de red punto a punto (P2P) para comunicar uno-a-uno los dispositivos. Ahora bien, en la versión 4.0 se introduce la funcionalidad de baja energía. Bluetooth Low Energy permite conexiones inalámbricas por medio de ráfagas cortas de información y múltiples topologías de red, incluyendo punto-a-punto, broadcast (uno-a-muchos) y mesh (muchos-a-muchos) entre los dispositivos. BLE 4.0 está construido sobre un framework de desarrollo usando Generic Attributes (GATT), los GATT son una colección de características y relaciones entre los otros servicios; describe casos de uso, roles, y comportamiento general de un dispositivo. Ofrece, entonces, un perfil para que los desarrolladores integren fácilmente los dispositivos con aplicaciones en celulares inteligentes, computadores o tablets. Es importante tener en cuenta que un dispositivo Bluetooth puede ser configurado en modo dual, soportando BR/EDR y BLE, o, configurado solamente para soportar BLE 4.0. En cuanto a la arquitectura de BLE, se tiene que los GATT son implementados sobre el Protocolo Atributo (ATT) el cual permite definir la manera como dos dispositivos que usen bluetooth de baja energía envíen y reciban mensajes estándar. En la figura 2.1, se compara la arquitectura de la tecnología Bluetooth de baja energía y las demás configuraciones posibles.. Figura 2.1: Pila de protocolos en Bluetooth. Diferentes modos de configuración dispositivos. Imagen tomada de [14]. Dentro de la especificación de las características de operación y conceptos relacionados con BLE 4.0 [15] se encuentran: Formas de acceso al medio: se definen 40 canales físicos, separados 2 MHz entre sí. Para datos, se emplean 37 canales y para anuncios, 3 canales. Los anuncios permiten generar conexión entre los dispositivos. Los dispositivos que no tienen intención de conectarse se denominan Escáneres, por el contrario, los dispositivos que necesitan formar una conexión se denominan Iniciadores. Arquitectura de transporte de datos: La capa L2CAP provee un servicio para tráfico de datos asíncrono e isócrono. No es posible que los canales sean orientados a la conexión por lo que, esta tecnología es poco fiables. Para contrarrestar esto, se agregan niveles de protección y seguridad en cada capa..
(20) 20. Marco de referencia Procedimientos: En Bluetooth de baja energía se puede realizar un filtro de dispositivos para disminuir el consumo de potencia en el bloque controlador. De igual forma se tienen procedimientos de anuncio, escaneo, descubrimiento y conexión. Seguridad: El objetivo es mantener al mínimo el costo y la complejidad del controlador por lo que implementa modos de asociación, generación de claves entre dispositivos, cifrado, datos firmados y función de privacidad.. 2.1.2.. Arquitectura de aplicación. La interoperabilidad en un sistema bluetooth se logra por medio de perfiles. El perfil base se define como GAP (Generic Access Profile), especifica las demás capas y está relacionado directamente con la funcionalidad de conexión, por lo mismo define 4 roles en los que puede configurarse un dispositivo, los mismos son mostrados en la figura 2.2(a). De igual forma, provee los modos de acceso y maneja los procedimientos mencionados en las generalidades del protocolo. Para realizar la conexión, los dispositivos cambian de rol como se observa en la figura 2.2(b). El dispositivo anunciante muestra su estado de posible conexión mientras los dispositivos en modo escáner buscan dicha respuesta. Una vez encuentran el anuncio, envían la solicitud de conexión, convirtiéndose en iniciadores. Por último, cuando se forma la conexión pasa a ser maestro.. (Esclavo) Periférico. Piconet #1. (Esclavo) Periférico. Observador (Scanner) Broadcaster (Anunciante). Central. Piconet #2. (Maestro). (a). (b). Figura 2.2: Resumen operación GAP. (a) Roles definidos en General Access Profile (GAP) para un dispositivo BLE. (b) Estados para formar una conexión Por otra parte, el perfil que está relacionado con la comunicación y trasferencia de datos entre dos dispositivos es el Generic Attribute Profile (GATT, por sus siglas en inglés). Descubre la jerarquía de los servicios, características y atributos usados. Los datos son enviados a través de las características. Dentro de los conceptos importantes de esta capa se encuentra: Roles definidos: cliente y servidor. Estos roles no son fijos en los dispositivos pues, cambian una vez el procedimiento termine. El cliente inicia comandos y solicitudes al servidor, el servidor por el contrario, acepta las solicitudes y envía las respuestas al cliente. Identificador único universal (UUID, por sus siglas en inglés): Cada atributo y servicio tiene un identificador único. Su valor es de 128 bits aunque puede ser predefinido en.
(21) 2.1. COMUNICACIÓN INALÁMBRICA Y GESTIÓN DE INFORMACIÓN. 21. valores de 16 bits si es un servicio estándar. Por medio de este identificador se puede acceder al tipo, valor, permisos y puntos de control del atributo. Características y atributos: Se consideran características a la agrupación de atributos, mientras que, los atributos son la información trasferida entre los dispositivos. Los atributos incluyen el valor, la declaración, y la configuración del cliente. Servicios: Definido como una colección de características, se pueden agrupar dentro de un perfil y pueden ser estándar o creados por el fabricante del dispositivo.. 2.1.3.. Brazalete Myo (Myo Gesture control armband). El producto final fue creado después de dos años de pruebas y diferentes prototipos. Según [16], el primer prototipo estaba constituido por sensores ECG de uso médico y algunos amplificadores, su única función era mostrar la señal en el computador y comprobar que era posible crear una forma de mantener los sensores cerca al brazo. En la siguiente versión, se mejoró el diseño pero todavía dependía de una conexión USB para ver los datos en el computador. Evaluando sus versiones, fijaron como objetivos principales: portabilidad e independencia del usuario que la usara. Incluyeron, entonces, un módulo bluetooth y, cambiaron el material del brazalete. Enfrentaron retos de diseño a la hora de crear una estructura flexible y soportes para los circuitos electrónicos pero, gracias a su equipo de ingenieros mecánicos y diseñadores, obtuvieron la versión final. Características y funcionamiento El brazalete Myo es un dispositivo inalámbrico que permite controlar aplicaciones por medio de señales mioeléctricas. Internamente está constituido por: 8 sensores EMG, una unidad de medición inercial o IMU [del inglés inertial measurement unit] de 9 ejes, un procesador Cortex M4 de bajo consumo y un módulo bluetooth low energy tranceiver/processor, entre otros [17]. En cuanto al funcionamiento, el brazalete está basado en los impulsos eléctricos generados por los músculos; por medio de los 8 sensores EMG responde y reconoce cada gesto. Por lo que es necesario que cada usuario calibre el brazalete, pues, los sensores responden de acuerdo al tamaño del músculo y tipo de piel [18]. La empresa permite observar las señales y los parámetros sensados en tiempo real por medio de su página de diagnóstico y, de igual forma cuenta con un Kit de desarrollo de software (SDK) disponible para la mayoría de los sistemas operativos del mercado (Windows, Mac, iOs, Android y Unity). De acuerdo con [19], el núcleo del SDK Myo es la librería libmyo. Dicha librería permite a las aplicaciones interactuar con el brazalete Myo; está definida a través de C API, pero, normalmente las aplicaciones no acceden por el API directamente. En su lugar, usan conectores [bindings, en inglés] para interactuar con el lenguaje de programación de la misma. Protocolo de comunicación En el año 2015, el fabricante Thalmic Labs liberó la especificación BLE que emplea el brazalete en forma de cabecera escrita en c++. En dicha especificación se encuentra el formato de envío de datos que usa el brazalete. Está compuesto en mayor parte por enumeraciones, estructuras y macros de configuración. En capítulos posteriores se encuentran secciones dedicadas al protocolo y su funcionamiento..
(22) 22. Marco de referencia. 2.2.. Sistema Embebido. Un sistema embebido se define como un sistema electrónico de procesamiento de datos, programado para efectuar funciones o tareas con el fin de cumplir un objetivo específico. Estos sistemas pueden contar, además de software, con elementos de hardware como partes mecánicas, eléctricas y electromecánicas [20]. Cada sistema embebido contiene un microprocesador o microcontrolador; sin embargo, no ejecutará tantas tareas como un computador. En la actualidad existen un número considerable de aplicaciones de sistemas embebidos, desde comunicaciones, telefonía celular, electromedicina, sistemas de seguridad, antenas, procesamiento de datos, entre otras [21]. Los sistemas embebidos presentan unas características básicas, las cuales son [22]: La fiabilidad, en inglés reliability R(t), es la probabilidad de que el sistema trabaje correctamente dado que está funcionando en t = 0. La mantenibilidad, en inglés Maintainability M(d), es la probabilidad de que el sistema vuelva a trabajar correctamente de unidades de tiempo después de un fallo. La disponibilidad, en inglés Availability A(t), es la probabilidad de que el sistema esté funcionando en el tiempo t. Deben ser eficientes en cuanto a la energía, al tamaño de código, al peso y al costo. Un sistema embebido esta conformado por un microprocesador y un software que se ejecuta sobre el microprocesador, por lo que requiere de una memoria RAM o ROM para almacenar las funcionalidades del sistema. De igual manera cada sistema embebido cuenta con periféricos de entrada/salida (I/O), los cuales soportan sensores, actuadores del dispositivo a controlar y los recursos complementarios necesarios [22]. Dentro de las características de los microprocesadores y los microcontroladores están: su arquitectura base, Von Neumann o Harvard; el set de instrucciones, CISC (Complex Instruction Set Computer) y más a menudo RISC (Reduced Instruction Set Computer). Ejemplo de ello son las familias más populares de procesadores: ARC (ARC International), ARM (ARM Holdings), AVR (Atmel), PIC (Microchip), MSP430 (TI) entre otros.. 2.2.1.. Metodología de desarrollo. Para el diseño y posterior implementación de un sistema embebido, es necesario emplear el estándar ISO / IEC / IEEE 29148 de 2011, esta norma internacional proporciona un manejo unificado de los procesos y productos que intervienen en requisitos de ingeniería en todo el ciclo de vida de sistemas y software [23]. Aparece como resultado la unión de los estándares como: ISO/IEC 12207:2008, ISO/IEC 15288:2008, ISO/IEC/IEEE 15289:2011, ISO/IEC TR 19759, IEEE Std 830, IEEE Std 1233, IEEE Std 1362, ISO/IEC TR 24748-1, e ISO/IEC/IEEE 24765 [24]. Este estándar internacional se aplica a aquellos proyectos que tratan con sistemas artificiales, sistemas embebidos, desarrollos de software y hardware, y servicios relacionados con esos sistemas y/o productos, este estándar no depende de variables del proyecto como el alcance del proyecto, producto , metodología, tamaño o complejidad. El ciclo de vida representa el eje central del estándar, este ciclo expone un diagrama de flujo con el cual el proyecto se rige, las.
(23) 2.3. FISIOLOGÍA Y BIOMECÁNICA DEL MIEMBRO SUPERIOR. 23. etapas de análisis, diseño, desarrollo, pruebas e implementación, comprenden el ciclo de vida de este estándar. La figura 2.3 presenta un resumen del ciclo de vida.. Figura 2.3: Ciclo de vida para el desarrollo de proyectos de ingeniería según el estándar ISO/IEC/IEEE 29148. 2.3.. Fisiología y biomecánica del miembro superior. Las características principales del miembro o extremidad superior son la movilidad y la capacidad para sujetar y manipular. En mayor parte brindada por la mano. El miembro superior no contribuye en el soporte del peso, y su estabilidad se sacrifica en aras de la movilidad. Los dedos de la mano (incluido el pulgar) son los más móviles, pero otras partes también lo son con respecto a los elementos homólogos del miembro inferior. El miembro superior se compone de cuatro segmentos [25]: La cintura escapular o anillo aseo, incompleto por la cara posterior, formado por las escápulas y las clavículas, que se completa por delante con el manubrio del esternón. El brazo, parte comprendida entre el hombro y el codo, que contiene el húmero y comunica el hombro con el codo. El antebrazo, que comunica el codo con la muñeca y el contiene el cúbito y el radio. La mano o parte del miembro superior distral al antebrazo, donde se encuentra el carpo, el metacarpo y las falanges; se compone de muñeca, palma, dorso de la mano y dedos, incluido el pulgar..
(24) 24. 2.3.1.. Marco de referencia. Fisiología de la mano. Como se mencionó anteriormente, la mano es el órgano terminal de la extremidad superior y representa una de las partes más importantes del cuerpo. Por su funcionalidad, es una parte fundamental en los aspectos sensitivos pues permite realizar diversos movimientos y acciones necesarias para la supervivencia y relación con el medio ambiente [26]. Está compuesta de 27 huesos, que a su vez pueden dividirse en tres grupos: el carpo, los metacarpianos y las falanges, se conecta a la muñeca a través de la palma y es capaz de brindar veinte GDL (grados de libertad) accionados por cerca de cuarenta músculos [27]. La estructura ósea de la mano se muestra en la figura 2.4. Existen cuatro articulaciones que conforman cada dedo, en secuencia desde las articulaciones proximales a distales: CMC, metacarpofalángica (MCP), interfalángica proximal (PIP) e interfalángica distal (DIP), la articulación metacarpofalángica (MCP) permiten movimientos de flexión de 90◦ de extensión de 20 a 30◦ observando desde un punto neutro del plano sagital. El rango de flexión difiere entre los dedos, respecto al dedo índice cuenta con el ángulo de flexión más pequeño de 70◦ y el dedo meñique muestra el ángulo más grande de flexión de 95◦ [26]. Las articulaciones IP están conformadas por las articulaciones bisagra, pues solo cuentan con flexión y extensión. Cada dedo tiene dos articulaciones IP, la PIP y la DIP, excluyendo el dedo pulgar que cuenta con tan solo uno. Los ligamentos volares y colaterales, conectados con las hojas de expansión de los tendones extensores, no permiten el movimiento de los dedos de lado a lado. El mayor rango de flexión de 100 a 110◦ se logra en las articulaciones PIP, por lo contrario en las articulaciones DIP se presenta un rango de flexión de 60 a 70◦ [26].. Figura 2.4: Estructura ósea y ubicación de articulaciones de la mano derecha (vista palmar). Modificada de [26].
(25) 2.3. FISIOLOGÍA Y BIOMECÁNICA DEL MIEMBRO SUPERIOR. 25. Cada dedo está compuesto por tres falanges (Distal, Intermedia y proximal), a excepción del dedo pulgar que solo tiene dos (Distal y Proximal). El dedo pulgar esta fijo por debajo de los otros dedos y puede realizar los movimientos de cierre y rotación, debido a la gran movilidad de su metacarpo [26]. Esto permite variar la orientación en que se desarrolla el movimiento de doblado y extensión del dedo pulgar, propiedad a través de la cual es posible oponer el dedo pulgar a los otros dedos. El dedo pulgar es el agente de la pinza pulgar-dedos, sin él, los movimientos de los dedos constituirían solo presiones globales en vez de movimientos precisos. El dedo pulgar puede realizar los siguientes movimientos [28]: Abducción-extensión (figura 2.5 a) que separa el dedo pulgar del eje de la mano, su amplitud es de 35◦ a 40◦ , este movimiento abre la mano. La aducción (figura 2.5 b) que aproxima el dedo pulgar al eje de la mano. Su amplitud es de 35◦ a 40◦ . La oposición (figura 2.5 c) que combinada con la flexión del dedo pulgar, lo conduce frente al dedo meñique. Se trata de un movimiento de prensión o cierre de la mano y presenta una amplitud de 45◦ a 60◦ . La reposición (figura 2.5 d) devuelve el dedo pulgar a su posición inicial de partida, su amplitud es necesariamente igual a la del movimiento precedente.. Figura 2.5: Movimientos del dedo pulgar, (a) abducción, (b) aducción, (c) oposición y (d) reposición. Tomada y modificada de [29]. La presencia de los músculos y articulaciones de la mano ofrece una gran gama de prensiones humanas. En el año 1989, Cutkosky realizó un estudio en el cual clasificó la destreza de las manos humanas y las agrupó en dos categorías principales [30]: las prensiones de poder y las prensiones de precisión. En las prensiones de poder predominan acciones de estabilidad y seguridad, se caracterizan porque existen grandes superficies de contacto entre los objetos sujetados y el área de los dedos y palma, además por la poca capacidad de movimientos que integren los dedos. Dentro el grupo de prensiones de poder existen dos subgrupos: no prensil.
(26) 26. Marco de referencia. y prensil, los movimientos prensiles son en los que un objeto es agarrado y mantenido parcial o totalmente dentro de la mano y los no prensiles son los cuales no son realizadas acciones de agarre pero los objetos pueden ser manipulados, empujados o levantados con la mano entera o con los dedos individuales. La clasificación de las prensiones humanas se resumen en la figura 2.6, normalmente, esta clasificación es usada para evaluar prótesis robóticas.. Figura 2.6: Taxonomía de clasificación de prensiones humanas según Cutkosky. Imagen adaptada y modificada del artículo original [30]. Por último, las poleas se dividen en tres tipos según su ubicación: una polea de aponeurosis palmar, cinco poleas anulares (tienen forma de anillo) (A1, A2, A3, A4 y A5) y tres poleas cruzadas (forma de cruz) (C1) , C2 y C3). Las poleas A2 y A4 están ubicadas en las falanges proximal y media, mientras que las poleas A1, A3 y A5 están ubicadas en la superficie palmar de las uniones MCP, PIP y DIP [26]. Las poleas A2 y A4 son las más importantes para el funcionamiento normal de la mano y una articulación estable, con A3 y otras poleas que entran en juego cuando los A2 y A4 han sido dañados. Estos daños suelen ser ocasionados por sobrepeso en los dedos. La distribución de la poleas se pueden apreciar en la figura 2.7 la cual fue tomada de [26].. 2.4.. Prótesis. Cuando se estudia la fisiología de la mano humana se encuentra que abarca un complejo sistema de sensores y mecanismos biológicos, con los que logra diferentes agarres en situaciones de la vida cotidiana. Básicamente, las funciones de la mano son la prensión y el tacto. Por medio de éstas el ser humano puede convertir ideas en diseños, y otorgar significado a las palabras. El sentido del tacto desarrolla totalmente la capacidad de la mano, sin éste sería imposible medir.
(27) 2.4. PRÓTESIS. 27. Figura 2.7: Estructura que integra el sistema de polea del dedo (A = anular, C = cruzado). Tomada de [26]. la fuerza prensora. Vale resaltar que el pulgar es el miembro más importante de la mano, sin éste la capacidad de la mano se reduce hasta en un 40 %. Ahora bien, con el paso de los años se ha avanzado en el manejo de materiales creados por el hombre lo que ha permitido mejorar el diseño y la implementación de prototipos. En campos enfocados en el desarrollo de prótesis esto ha significado un gran avance tecnológico y ha permitido el desarrollo de la biomecánica del cuerpo humano. Las prótesis son elementos que buscan reemplazar una parte o miembro perdido emulando alguna funcionalidad del mismo. Ayudan a mitigar el impacto causado en el paciente y con el tiempo, cambia la perspectiva y brinda la sensación de recuperación de movilidad.. 2.4.1.. Sistemas Protésicos. Los sistemas de prótesis artificial pueden ser activos o pasivos. Se denomina sistemas activos a aquellos que requieren de una fuente de alimentación para obtener la energía y ejecutar su función. Adicionalmente, requieren de un sistema de transmisión de datos, un sistema de acción y un dispositivo sujetador. Estas prótesis desempeñan un papel fundamental cuando se trata de amputaciones o cualquier tipo de displasia del paciente. A continuación se presentan algunas generalidades sobre los diferentes tipos de prótesis que se han desarrollo hasta el momento. Prótesis Mecánicas Las prótesis mecánicas se definen como los dispositivos más simples del mercado. Se caracterizan por emplear mecanismos de cierre o apertura. La forma en la que es trasmitida la acción de control es por medio de un equipo sujeto al paciente, el cual, puede estar ubicado en los hombros, en el pecho o en alguna parte del brazo del mismo. Normalmente, cuentan con una mecanismo similar a polea que se extiende y genera la acción de abrir y cerrar. Los movimientos son inversos y son resultado de la contracción y relajación del músculo. Los elementos que conforman estas prótesis son resguardados con un guante; así logran obtener una apariencia más estética. Son prótesis que se limitan a agarres de poder y no permiten efectuar agarres de precisión [31]. Prótesis Eléctricas Estas prótesis cuentan con motores eléctricos y baterías recargables para la alimentación en su diseño final. La forma de control varía de acuerdo con condiciones del paciente. Dentro de las más relevantes se encuentran: por servocontrol, por medio de un botón pulsador o con un.
(28) 28. Marco de referencia. botón incrustado en el arnés. Algunas veces se usan varias formas de control para mejorar la funcionalidad del prototipo. Se implementa mediante un socket, es decir, se emplea un dispositivo intermedio entre la prótesis y el muñón que permite la suspensión de éste por medio succión. Es más costosa su adquisición y mantenimiento, y el paciente debe ser cuidadoso con el cuidado en la exposición a medios que tengan ambientes húmedos. [31]. Prótesis neumáticas Las prótesis neumáticas presentan una considerable creación de energia que se traduce en una fuerza superior con relación a otras tipo de prótesis, estas prótesis implementan mecanismos neumáticos que obtienen la energia a partir de un agente químicos como el ácido carbónico, desafortunadamente estas presentan desventajas en la construcción de la prótesis, adaptación de accesorios y posibles contando de los químicos con los pacientes [32]. Prótesis Mioeléctricas Las Prótesis mioeléctricas son sistemas eléctricos controlados por señales electromiográficas; las señales electromiográficas, son aquellas que se producen al tensionar o distensión de un músculo, y resultan de la actividad química producida por la proteína fibrosa miosina. Al contraer los músculos, se genera una señal eléctrica de unos cuantos microvoltios [33]. Las prótesis mioeléctricas (figura 2.8, tomado de: [32]) son hoy en día el tipo de miembro artificial que presenta mayor grado de rehabilitación en los pacientes. El uso de sensores llamados electrodos que entran en contacto con la superficie de la piel permite registrar la señal EMG. Esta señal se amplifica y se procesa por un controlador que conmuta los motores encendiéndolos y apagándolos en la mano, la muñeca o el codo para producir movimiento y funcionalidad [32].. Figura 2.8: Composición básica de una prótesis mioeléctrica, sus partes principales son: sujetador o arnés, electrodos, sistema embebido y actuadores. Tomado de [32]. Dentro de las ventajas que ofrece este tipo de prótesis está que genera acondicionamiento sistema-paciente: al flexionar los músculos del brazo se puede recuperar el funcionamiento de la mano del miembro perdido durante una amputación, permitiendo así, una mejor rehabilitación del paciente. Por otra parte, elimina el arnés de soporte ya que puede emplear bloqueo de tejidos blandos-esqueleto o succión, en su reemplazo.Tienen como desventaja que usa un sistema de batería que requiere mantenimiento para su recarga, descarga y reemplazo..
(29) 3 Comunicación brazalete y microcontrolador. Contenidos del capítulo 3.1. Parámetros de fábrica y comunicación del brazalete 3.2. Librería PSoC 3.3. Errores, conexión y resultados de la librería. Como se mencionó en 2.1.3 la especificación del brazalete fue liberada bajo licencia de uso libre con reconocimiento por parte de los autores 1 , por lo mismo, se puede tener acceso a la estructura de envío de información y datos del brazalete. En el año 2015, Valentin Roland creó e implementó un firmware que tuvo como objetivo comunicar el módulo BLE HM-11 (CC2541 SOC) con el brazalete, esta librería fue producto de un trabajo de investigación en la Universidad Victoria en Wellington y está disponible en [34]. La característica principal de esta librería es que permite que cualquier dispositivo obtenga datos y envíe solicitudes al brazalete por medio del protocolo de comunicación serial (UART, por sus siglas en inglés). Teniendo esto en cuenta, se utiliza el firmware y se plantea como objetivo desarrollar una librería escrita en C para que pueda ser empleada en la mayoría de microcontroladores. A lo largo de este capítulo se exponen al lector las generalidades y los resultados obtenidos durante el desarrollo de la misma. Ahora bien, junto con la librería, el autor presenta un conector ejemplo desarrollado para ARDUINO . Escrita en C++ y bajo el paradigma de programación orientada a objetos dificulta la implementación en sistemas embebidos de bajo nivel. ARDUINO es una plataforma de desarrollo de código abierto que tiene como base microcontroladores de 8-bits de la familia AVR por lo que limita su uso a aplicaciones que no requieran escalabilidad y rendimiento. El manejo de memoria tiene mayores restricciones y no es posible hacerlo de forma eficiente. Por estas razones, no se toma como una opción viable para el desarrollo del presente trabajo. Por el contrario se propone crear una librería a partir de lo proporcionado por Roland pero esta vez, pensada para ser usada en arquitectura de 32 bits de la familia ARM. De acuerdo con la metodología planteada en la sección 2.2.1 las etapas de diseño pueden ser divididas en desarrollo de hardware, software y cada una de ellas debe tener espacio para pruebas, correcciones y ajustes. Por lo mismo, se plantea en un principio desarrollar la librería de conexión para luego conocer las limitaciones y alcances del prototipo. 1. Licenciada bajo la licencia BSD-3-Clause. 29.
(30) 30. 3.1.. Comunicación brazalete y microcontrolador. Parámetros de fábrica y comunicación del brazalete. La estructura principal de la cabecera del protocolo está compuesta por definiciones de tipos de datos a partir de estructuras y enumeraciones. Las enumeraciones incluyen los servicios y características relacionados dentro del perfil de atributos GATT. Tiene 4 servicios privados y 1 servicio estándar de los dispositivos BLE. En la figura 3.1 se resume los servicios del brazalete.. Figura 3.1: Estructura del perfil GATT, servicios y su identificador único universal.. De igual forma, por medio de NRF CONNECT FOR MOBILE, una aplicación de escaneo y monitoreo de dispositivos BLE se comprueba y observa la organización del perfil configurado en el dispositivo. Esta herramienta permite ver todos los servicios y banderas; una vez establecida la conexión se puede acceder al perfil de atributos completo. Dentro de la especificación de BLE se tiene que cada componente de la arquitectura de aplicación debe ser identificado por medio de una dirección única. Dicha dirección es de 128 bits y puede ser formada por medio de una dirección base. Estos datos junto con las banderas del dispositivo se muestran por medio del perfil GAP. En la figura 3.2 puede verse las primeras capturas realizadas en la aplicación y los identificadores a tener en cuenta a la hora de realizar la librería.. (a). (b). Figura 3.2: Información de identificación básica del brazalete. (a) Perfil GAP, nombre del dispositivo e identificadores. (b) Dispositivo de baja energía, no soporta configuración bluetooth BR. Capturas desde nRF.
(31) 3.1. PARÁMETROS DE FÁBRICA Y COMUNICACIÓN DEL BRAZALETE. 31. Después de obtener los primeros parámetros de identificación lo que se busca es realizar una conexión con el dispositivo para acceder a las características del mismo. En la figura 3.3a se resume los pasos realizados por el dispositivo (rol central) para conectarse al brazalete (periférico). En la primera parte del diagrama se muestra el acceso al perfil GAP, una vez realizada la conexión se intercambian datos por medio del perfil GATT. Como puede comprobar el lector, el identificador único del que se habla es d5060001-a904-deb9-4748-2c7f4a124842 relacionado en figura anterior y en el encabezado mostrado en la figura 3.3b.. (a). (b). Figura 3.3: Servicios GATT. (a) Protocolo de comunicación entre dispositivo central y periférico. (b) Relación captura hecha en NRF CONNECT con encabezado BLE dada por el fabricante. Se concluye entonces el proceso de obtención de información y análisis de la especificación del brazalete, por consiguiente, se plantea analizar los parámetros a tener en cuenta para implementar la librería en un microcontrolador y fijar las bases para el desarrollo de un sistema embebido de comunicación a partir de las especificaciones del fabricante.. 3.1.1.. Directivas del compilador: optimización de código. Un aspecto importante en el diseño de sistemas embebidos es el manejo de memoria dentro del microcontrolador, por lo mismo, es necesario conocer la organización de datos y la agrupación dentro del dispositivo. Según la guía del compilador de ARM, es posible reducir la cantidad de memoria requerida por la aplicación usando un tipo de dato llamado estructuras. Especialmente en casos como este que se necesitan manejar grandes cantidades de datos [35]. Las estructuras pueden estar conformadas por diferentes tipos de datos y es posible acceder a ellas por medio de apuntadores de memoria..
(32) 32. Comunicación brazalete y microcontrolador. Normalmente, el compilador organiza las estructuras siguiendo la naturaleza de los tipos de datos que la componen; en ocasiones, esto agiliza el acceso a los mismos pero ocupa más espacio del necesario. Los compiladores ofrecen alternativas de optimización de espacio en memoria por medio de directivas. Para ilustrar lo mencionado, en la figura 3.5 se compara el tamaño ocupado por la misma estructura (definida como se ve en la figura 3.4) con diferentes formas de alineamiento en memoria empleando directivas. Dentro de las directivas del compilador están #pragma pack (n) y __attribute__((packed)). Con el primero, el alineamiento en memoria de cada miembro es configurado a n bytes; el segundo, es el equivalente a la directiva anterior con alineamiento de 1 byte. En las figuras 3.5a y 3.5d el alineamiento de la estructura es el del miembro más grande, para el caso, toma el alineamiento del tipo de dato entero (int) con 4 bytes, ocupando 12 bytes en total. En la figura 3.5c se emplea alineamiento de 2 bytes por medio de la directiva #pragma pack (2) por lo que ocupa 10 bytes. Por último, en 3.5b se obtiene el menor espacio en memoria pues ocupa 8 bytes. Esto se logra empleando #pragma pack (1) o __attribute__((packed)) #Estructura ejemplo struct ejemplo{ char uno; short dos; char tres; int cuatro; }. Figura 3.4: Estructura ejemplo. (a). (b). (c). (d). Figura 3.5: Comparación organización en memoria de estructura ejemplo con diferentes directivas de compilador. (a) Sin directiva (b) Alineamiento de 1 byte (c) Alineamiento de 2 bytes (d) Alineamiento 4 bytes. Imágenes modificadas de la guía del compilador [35] Ahora bien, estas directivas se observar en el código del fabricante en el macro llamado MYOHW PACKED, por medio de éste le dicen al compilador la forma en la que debe organizar las estructuras en el microcontrolador del brazalete. En el fragmento de código de la figura 3.6 se observa que dependiendo de la arquitectura en donde se compile, se usa una directiva. Lo importante de este fragmento es que indica que debe compilarse evitando el espacio [padding, en inglés] entre datos de las diferentes estructuras. Para terminar, en la figura 3.7 se presenta el resumen.
(33) 3.1. PARÁMETROS DE FÁBRICA Y COMUNICACIÓN DEL BRAZALETE. 33. #if defined(_MSC_VER) || defined(_WIN32) # pragma pack(push, 1) # define MYOHW_PACKED #else # define MYOHW_PACKED __attribute__ ((__packed__)) #endif // _MSC_VER # define MYOHW_STATIC_ASSERT_SIZED(type, size). Figura 3.6: Directivas de compilador que alinean estructuras dentro de la librería. Archivo base dado por el fabricante. de los datos definidos por el fabricante. Esto para tenerlos en cuenta pues permiten conocer qué información brinda el brazalete. Dentro de los mismos se tiene que se puede acceder a: la información de fábrica; datos de movimiento, relacionados a la unidad inercial IMU; datos de dirección del brazalete; clasificación de gestos y a los datos puros de las señales electromiográficas de los 8 sensores integrados. Para más información el lector puede ir a la documentación de la librería presentada en [34].. Figura 3.7: Resumen de comandos definidos por el fabricante. Imagen modificada de [34].. 3.1.2.. Firmware HM11. En cuanto a la comunicación con el brazalete, el firmware desarrollado por Roland fija el flujo de comunicación y abre posibilidades de desarrollo alrededor del mismo. El módulo seleccionado está basado en el microcontrolador CC2541 del fabricante TEXAS INSTRUMENTS. Es un sistema en chip [SoC, por sus siglas en inglés] optimizado para bajo consumo de potencia y para operar en aplicaciones de bluetooth de baja energía. Dentro de las ventajas de este microcontrolador está que puede ser programado por medio de comando AT y todo su firmware puede ser cambiado por perfiles personalizados. Ahora bien, a modo de resumen, en la figura 3.8 se presenta el diagrama de flujo que describe la forma en la que se establece la comunicación con el brazalete -claramente relacionada con la presentada en la sección 2.1.2. Por otra parte en la tabla 3.1 se presenta al lector las peticiones y las respuestas obtenidas después de solicitar los diferentes comandos del brazalete..
(34) 34. Comunicación brazalete y microcontrolador. Figura 3.8: Explicación Firmware módulo BLE. Diagrama de flujo del firmware. Modificado desde información original [34]. Flujo de comando de comunicación Comando Comando Dispositivo Host MYO Psoc MYB_RSP_STATUS N/A Actualizaciones de estado asíncronas MYB_RS_STATUS MYB_CMD_GET_STATUS Actualizaciones de estado MYB_CMD_PING MYB_RSP_PING Comando Ping MYB_RSP_VALUE MYB_CMD_READ_CHAR Leer Características MYB_RSP_PING MYB_CMD_WRITE_CHAR Escribir Características MYB_RSP_PING MYB_CMD_SET_ASYNC_STATUS Set CCCD (interrupción de notificación / indicación BLE) Tabla 3.1: Respuestas a peticiones y solicitudes desde microcontrolador hacia brazalete..
(35) 3.2. LIBRERÍA PSOC. 35. Lo presentado hasta este punto indica una organización de la información predefinida por el firmware. Por lo que la librería debe respetar dicha estructura y debe seguir el protocolo del módulo HM11. Adicionalmente, se debe tener en cuenta que la información es trasmitida en forma de paquetes. Un paquete, dentro del firmware, se define como en la figura 3.9, inicia con la letra ‘P’ y termina con la letra ‘E’. El segundo byte enviado corresponde al tamaño de los datos que seguirán dentro del paquete, de esta manera, se puede identificar el comando y captar la información dentro del mismo.. Figura 3.9: Estructura de un paquete del firmware del módulo HM11.. 3.2.. Librería PSoC. Una vez entendida toda la información obtenida en las secciones anteriores, se procede a desarrollar la librería de comunicación bajo la arquitectura de 32 bits. El microcontrolador elegido es un sistema programable en chip [Programable System on Chip, PSoC por sus siglas en inglés] desarrollado por CYPRESS SEMICONDUCTOR. Es totalmente programable y solapa funciones digitales con funciones analógicas. El lenguaje programación es C y dentro del entorno de desarrollo se pueden incluir las librerías estándar, crear componentes, adicionalmente, por medio de su API permite implementar protocolos de comunicación es transparente para el programador. La familia a la cual pertenece el microcontrolador es 5LP y la referencia específica es: CY8C5888LTI-LP097 Características principales La arquitectura base es de 32-bits Arm Cortex-M3 con acceso directo a la memoria por medio de controladores DMA, tiene filtros digitales y el reloj puede ser programado hasta 80 MHz. Está pensado para industria de bajo consumo de energía. Dada su forma altamente configurable es útil para el diseño de sistemas embebidos. A continuación se presentan las características expuestas por el fabricante. 1. Características de operación Rango de voltaje: 1.71 a 5.5 V Rango de temperatura: –40 to 85 °C Reloj: DC a 80 MHz.
(36) 36. Comunicación brazalete y microcontrolador Regulador elevador desde 0.5 V a 5V 2. Rendimiento ARM Cortex-M3 con 32 entradas de interrupción 24 canales de acceso directo a memoria DMA 3. Memoria 256 KB flash programable 64 KB RAM 2 KB EEPROM. Consideraciones de diseño Para el desarrollo del proyecto los módulos principales son el de comunicación serial (UART) y el módulo de temporizador (Timer). La comunicación serial está planteada para manejo de muchos datos, por lo mismo, la velocidad de transmisión es 115200 bps. Dentro de las configuraciones básicas se tiene que se debe habilitar interrupciones de recepción y los métodos a tener en cuenta son: lectura, escritura, bytes disponibles y almacenamiento de datos. Por otro lado, el temporizador se utiliza para llevar el tiempo desde que se inicia la ejecución del programa en el microcontrolador hasta un punto dado, esto para registrar tiempos de desconexión, recepción y respuesta del brazalete hacia el microcontrolador. Se configura con el periodo máximo: 232 y el reloj del mismo se ajusta a 1 kHz. Para este módulo el método más importante es el que permite saber cuánto tiempo ha trascurrido en milisegundos desde la ejecución del programa. En lo que respecta al lenguaje en sí mismo, se debe mencionar que las diferencias entre C++ y C, están relacionadas al paradigma de programación y a las referencias de variables, en otras palabras, en C no es posible trabajar objetos y los punteros no pueden ser usados como una referencia. Tomando esto en cuenta, se desarrollan los métodos propios del firmware(recibir paquetes, enviar comandos, entre otros) en lenguaje C para luego, adaptar las funciones mediante los módulos del PSoC. La jerarquía de las librerías del programa desarrollado puede verse en la figura 3.10.. –Apuntadores a funciones Durante el desarrollo de la librería se emplean apuntadores y funciones con apuntadores para manejar variables y funciones desde el lenguaje C. Estos permiten trabajar sobre las direcciones de memoria y encapsular el comportamiento de las mismas. En este lenguaje no existe un tipo específico para String pues se trabaja como si fuera un cadena de caracteres, y las funciones no son tratadas como variables, pero es posible definir punteros a funciones, los cuales permiten asignar y usar las funciones en diferentes momentos del flujo del programa. El código de la figura 3.11 muestra un ejemplo de la declaración y uso de un apuntador a funciones..
Figure
+7
Documento similar