47
UNIVERSIDAD DE BUENOS AIRES FACULTAD DE INGENIERÍA C ARRERA DE E SPECIALIZACIÓN EN S ISTEMAS E MBEBIDOS MEMORIA DEL T RABAJO F INAL Control de prótesis de mano Autor: Ing. Telmo Moya Grondona Director: Mg. Bioing. Eduardo Filomena (UNER) Jurados: Esp. Ing. Danilo Zecchin (FIUBA) Esp. Ing. Eric Pernia (UNQ, FIUBA) Esp. Ing. Sergio R. De Jesus Melean (FIUBA) Este trabajo fue realizado en la Ciudad de Salta, entre mayo de 2018 y diciembre de 2018.

Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

UNIVERSIDAD DE BUENOS AIRES

FACULTAD DE INGENIERÍA

CARRERA DE ESPECIALIZACIÓN EN SISTEMAS

EMBEBIDOS

MEMORIA DEL TRABAJO FINAL

Control de prótesis de mano

Autor:Ing. Telmo Moya Grondona

Director:Mg. Bioing. Eduardo Filomena (UNER)

Jurados:Esp. Ing. Danilo Zecchin (FIUBA)

Esp. Ing. Eric Pernia (UNQ, FIUBA)Esp. Ing. Sergio R. De Jesus Melean (FIUBA)

Este trabajo fue realizado en la Ciudad de Salta, entre mayo de 2018 y diciembrede 2018.

Page 2: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una
Page 3: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

III

Resumen

Esta memoria describe el diseño e implementación de un sistema de controlmioeléctrico para prótesis de mano accesible y escalable como para permitir al

Centro de Rehabilitación Física de la Provincia de Salta avanzar con lasactividades de investigación que viene llevando adelante.

El hardware está basado en la CIAA—Z3R0 dado su bajo costo, disponibilidaden el mercado local y reducido consumo eléctrico. Para el trabajo se utilizaronelementos de planificación de proyectos, ingeniería de software, protocolos de

comunicación y sistemas de control de versiones.

Page 4: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una
Page 5: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

V

Agradecimientos

A Eduardo Filomena, por la EduCIAA, con la que tanto me divierto y por susenseñanzas en las escuelas de sistemas embebidos.

A Eric Pernia por el desarrollo de la sAPI y a todos los que contribuyen al pro-yecto CIAA, porque sin su aporte este trabajo no hubiera sido posible.

A María Bertoni, Estéban Corces y el resto del plantel del Centro de RehabilitaciónFísica de la Provincia de Salta, por el trabajo que realizan, por todo lo que meenseñaron y por haber confiado en un desarrollo local.

Page 6: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una
Page 7: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

VII

Índice general

Resumen III

1. Introducción General 11.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2. Prótesis mioeléctricas . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3. Objetivos y alcance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2. Introducción Específica 52.1. Descripcion detallada . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.1.1. Origen de las señales mioeléctricas . . . . . . . . . . . . . . . 52.1.2. Señales mioeléctricas superficiales . . . . . . . . . . . . . . . 62.1.3. Factores que influyen sobre la señal mioeléctrica . . . . . . . 72.1.4. Detección de la actividad muscular . . . . . . . . . . . . . . 72.1.5. Sistema embebido propuesto . . . . . . . . . . . . . . . . . . 8

Adquisición de datos . . . . . . . . . . . . . . . . . . . . . . . 9Procesamiento digital de datos . . . . . . . . . . . . . . . . . 9Generación de señales para el actuador . . . . . . . . . . . . 9

2.2. Requerimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.3. Planificación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3.1. Activity On Node . . . . . . . . . . . . . . . . . . . . . . . . . 102.3.2. Diagrama de Gantt . . . . . . . . . . . . . . . . . . . . . . . . 11

3. Diseño e Implementación 133.1. Diseño de hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.1.1. Componentes seleccionados . . . . . . . . . . . . . . . . . . . 13Adquisición de datos . . . . . . . . . . . . . . . . . . . . . . . 13Procesamiento digital de datos . . . . . . . . . . . . . . . . . 14Actuador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15Batería . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Cargador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3.1.2. Integración de los componentes . . . . . . . . . . . . . . . . 183.2. Diseño de firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2.1. Herramientas utilizadas . . . . . . . . . . . . . . . . . . . . . 203.2.2. Arquitectura del sistema . . . . . . . . . . . . . . . . . . . . . 213.2.3. Modelado del sistema . . . . . . . . . . . . . . . . . . . . . . 213.2.4. Adquisición de datos . . . . . . . . . . . . . . . . . . . . . . . 223.2.5. Control basado en señales sEMG . . . . . . . . . . . . . . . . 22

Calibración . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23Detección . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23Cálculo de la varianza . . . . . . . . . . . . . . . . . . . . . . 24

3.2.6. Manejador del actuador . . . . . . . . . . . . . . . . . . . . . 26

4. Ensayos y Resultados 27

Page 8: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

VIII

4.1. Pruebas funcionales del hardware . . . . . . . . . . . . . . . . . . . 274.1.1. Módulo sensor . . . . . . . . . . . . . . . . . . . . . . . . . . 274.1.2. Adquisición de la señal . . . . . . . . . . . . . . . . . . . . . 284.1.3. Verificación de autonomía . . . . . . . . . . . . . . . . . . . . 28

4.2. Pruebas funcionales del firmware . . . . . . . . . . . . . . . . . . . . 284.2.1. Pruebas del manejador del actuador . . . . . . . . . . . . . . 294.2.2. Requerimiento temporal . . . . . . . . . . . . . . . . . . . . . 29

4.3. Pruebas de campo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294.3.1. Determinación de los parámetros de calibración . . . . . . . 294.3.2. Determinación de los parámetros de detección . . . . . . . . 314.3.3. Validación del sistema . . . . . . . . . . . . . . . . . . . . . . 31

5. Conclusiones 335.1. Conclusiones generales . . . . . . . . . . . . . . . . . . . . . . . . . 335.2. Próximos pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Bibliografía 35

Page 9: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

IX

Índice de figuras

1.1. Prótesis de mano diseñada en Salta . . . . . . . . . . . . . . . . . . . 11.2. Diagrama de bloques de una prótesis mioeléctrica. . . . . . . . . . . 21.3. Brazo ortopédico mioeléctrico fabricado en Argentina . . . . . . . . 3

2.1. Unidad motora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2. Composición de la señal mioeléctrica superficial . . . . . . . . . . . 62.3. Forma de onda de la señal EMG . . . . . . . . . . . . . . . . . . . . . 62.4. Sistema embebido propuesto . . . . . . . . . . . . . . . . . . . . . . 82.5. Diagrama de tareas AON . . . . . . . . . . . . . . . . . . . . . . . . 112.6. Diagrama de Gantt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.1. Módulo sensor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2. CIAA Z3R0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3. Servomotor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.4. Batería de litio-polímero . . . . . . . . . . . . . . . . . . . . . . . . . 163.5. Cargador de baterías . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.6. Diagrama de conexiones . . . . . . . . . . . . . . . . . . . . . . . . . 183.7. Curva de descarga de celda litio-polímero. . . . . . . . . . . . . . . 193.8. Fotografía del prototipo . . . . . . . . . . . . . . . . . . . . . . . . . 203.9. Módulo sensor con electrodos autoadhesivos . . . . . . . . . . . . . 203.10. CIAA Software IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.11. Patrón arquitectónico . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.12. Diagrama de flujo de datos del sistema . . . . . . . . . . . . . . . . . 223.13. Diagrama de bloques del detector . . . . . . . . . . . . . . . . . . . . 243.14. Señal de control del servomotor . . . . . . . . . . . . . . . . . . . . . 26

4.1. Gráfica de la varianza en función del tamaño de ventana . . . . . . 304.2. Gráfica de errores de detección . . . . . . . . . . . . . . . . . . . . . 31

Page 10: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una
Page 11: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

XI

Índice de Tablas

3.1. Especificaciones del módulo sensor Myoware . . . . . . . . . . . . . 143.2. Especificaciones CIAA Z3R0 . . . . . . . . . . . . . . . . . . . . . . . 153.3. Especificaciones del servomotor . . . . . . . . . . . . . . . . . . . . . 163.4. Especificaciones de la batería . . . . . . . . . . . . . . . . . . . . . . 17

Page 12: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una
Page 13: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

1

Capítulo 1

Introducción General

Este capítulo introduce al lector al tema abordado en este trabajo, su propósito ysu alcance.

1.1. Motivación

El Centro de Rehabilitación Física de la Provincia de Salta (Ceprefis) es un orga-nismo público destinado a mejorar la calidad de vida de los sectores sociales másvulnerables a través del trabajo de un grupo de expertos en mecánica y movili-dad anatómica. En el año 2017 el equipo de rehabilitación del Ceprefis presentóuna prótesis de mano hecha en una impresora 3D con materiales de bajo costoy accesibles en el país. En la figura 1.1 se ve un niño salteño a quien tuvieronque amputarle la mano derecha por un accidente, con la prótesis especialmentediseñada para él en el Ceprefis.

FIGURA 1.1: Fotografía de prensa de una prótesis de mano fabri-cada en el Centro de Rehabilitación Física de la Provincia de Salta.1

Dicho diseño constaba de la parte mecánica y estética y requería de un sistemade mando. Dentro de ese contexto se planteó el principal objetivo de este trabajo:

1https://www.eltribuno.com/salta/ttag/centro-de-rehabilitacion

Page 14: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

2 Capítulo 1. Introducción General

el diseño de un sistema embebido para el control mioeléctrico de una prótesis demano que le permita al Centro de Rehabilitación Física de la Provincia de Saltaavanzar con las actividades de investigación que lleva adelante.

Siguiendo con la premisa de hacer accesibles las prótesis, se propuso para este tra-bajo el uso de tecnología de bajo costo y alta disponibilidad. Esto condujo a elegircomo plataforma de hardware la CIAA—Z3R0, una versión de la ComputadoraIndustrial Abierta Argentina que destaca por su bajo precio, reducidas dimensio-nes y bajo consumo. Esto último resultó también muy conveniente por tratarsede un sistema que debe funcionar con baterías.

1.2. Prótesis mioeléctricas

Las prótesis activas son miembros artificiales compuestos por elementos mecá-nicos y elementos electrónicos. Básicamente funcionan con baterías e incorporanun sistema de mando que acciona dispositivos eléctricos como motores o alam-bres musculares, es decir que brindan al paciente alguna funcionalidad utilizan-do energía extracorpórea. También es importante que la prótesis sirva para res-tablecer la imagen corporal y satisfaga las exigencias del paciente con respecto aconformación, aspecto, confort y peso.

Según el tipo de displasia o el nivel de amputación existen diferentes opcionesprotésicas activas, actualmente las prótesis mioeléctricas son las que ofrecen elmás alto grado de rehabilitación para miembros anteriores artificiales.

Las prótesis mioeléctricas son controladas muscularmente, para lo que se utilizanelectrodos colocados sobre la piel que captan la actividad bioeléctrica de las ma-sas musculares del muñón. Un sistema electrónico amplifica y procesa las señalesobtenidas para accionar los elementos prensores de la prótesis produciendo mo-vimiento y funcionalidad. La figura 1.2 muestra un diagrama de bloques de unaprótesis compuesta por sensores mioeléctricos, sistema de control y actuadores.

FIGURA 1.2: Diagrama de bloques de una prótesis mioeléctrica.

Lamentablemente la accesibilidad de este tipo de prótesis se ve restringida sensi-blemente debido a su alto precio. En la actualidad una prótesis de mano impor-tada cuesta alrededor de U$S 10.000.

Tras la aparición de las impresoras 3D, han surgido multitud de diseños de pró-tesis de mano que incorporan dispositivos prensores, los cuales son adaptables y

Page 15: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

1.3. Objetivos y alcance 3

pueden ser impresos a muy bajo costo. Sin embargo a la hora de obtener alterna-tivas de bajo costo para el sistema de mando las opciones no son tantas y menosaún para un mando mioeléctrico práctico y escalable.

En Argentina un grupo de bioingenierios de la Facultad de Ingeniería de la Uni-versidad Nacional de Entre Ríos, crearon en 2009 un brazo ortopédico mioeléctri-co, que actualmente comercializan a través de la firma Bioparx, a un precio que es75 % menor que el de un producto similar importado [1]. Mediante financiaciónestatal realizaron un prototipo para los ensayos necesarios a la hora de registrarloy cumplir con otras cuestiones regulatorias. La figura 1.3 muestra el brazo orto-pédico de Bioparx, el cual dispone de una pinza tridigital.

FIGURA 1.3: Brazo ortopédico mioeléctrico fabricado en Argenti-na por Bioparx.2

1.3. Objetivos y alcance

El trabajo realizado incluyó el hardware y el software necesarios para la captacióny el procesamiento de señales mioeléctricas así como la generación de la señal decontrol para el actuador de una prótesis desarrollada por el Centro de Rehabili-tación Física de Salta. Se trata de una prótesis para una amputación a nivel deantebrazo realizada con una impresora 3D.

Teniendo en cuenta el rol social que cumple el Centro se puso especial énfasis enla accesibilidad, lo que se manifestó en el bajo precio de la solución ofrecida y enla disponibilidad de los componentes.

Otro aspecto importante es que la prótesis se encuentra todavía en desarrollo,por lo que se buscó una solución escalable y portable que facilitara el proceso de

2http://www.bioparx.com/

Page 16: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

4 Capítulo 1. Introducción General

transferencia de tecnología al equipo de investigación y su eventual migracióna otra plataforma. Los aspectos mecánicos y estéticos ya estaban resueltos e in-cluían todos lo relacionado al mecanismo de acople al muñón, adaptación a laantropometría del paciente y cosmética funcional para lo cual utilizaron fundasque dan volumen y una apariencia natural a la prótesis.

Quedó fuera del alcance de este trabajo todo lo referido a los requerimientos mé-dicos y al entrenamiento posterior del paciente, lo que fue llevado a cabo por elCentro. Tampoco se contempló ningún aspecto referido a la inscripción o habilita-ción como producto médico ante la Administración Nacional de Medicamentos,Alimentos y Tecnología Médica (ANMAT).

Page 17: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

5

Capítulo 2

Introducción Específica

Este capítulo provee una introducción más detallada de todo el trabajo realizado.Se presenta al lector los requerimientos de aceptación fijados sobre el proyecto,una explicación de las tecnologías adicionales involucradas en el desarrollo y laplanificación de tareas.

2.1. Descripcion detallada

2.1.1. Origen de las señales mioeléctricas

La menor unidad funcional que describe el control neuronal del proceso de con-tracción muscular se llama unidad motora. La figura 2.1 muestra esta unidadmotora, compuesta por una neurona motora y todas las fibras musculares queinerva. Cuando una unidad motora se activa, un impulso llamado potencial deacción se desplaza de la neurona motora hacia el músculo. El área donde el nerviohace contacto con el músculo se llama unión neuromuscular. Después de que elpotencial de acción se transmite a través de la unión neuromuscular, se obtieneun potencial en todas las fibras musculares inervadas por la unidad motora par-ticular. La suma de toda esta actividad eléctrica se conoce como “potencial motorde la unidad de acción”, o en inglés "motor unit action potential"(MUAP).

FIGURA 2.1: Unidad motora: las motoneuronas parten desde lamédula espinal hasta la unión nueromuscular donde hacen con-

tacto con las fibras musculares.

Page 18: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

6 Capítulo 2. Introducción Específica

2.1.2. Señales mioeléctricas superficiales

Para obtener las señales mioeléctricas pueden utilizarse electrodos de superficieque se colocan en la piel que recubre el músculo o por medio de electrodos deagujas que se colocan directamente en el músculo. En general para las protesis seprefieren los primeros por ser no invasivos. La señal así obtenida se llama señalmioeléctrica superficial.

Como puede verse en la figura 2.2, la señal mioeléctrica superficial está confor-mada por la sumatoria del potencial motor de todas las unidades motoras bajoel electrodo, es decir múltiples MUAPs superpuestos. La señal obtenida tambiénestará limitada en frecuencia debido a que el tejido conectivo y la piel se compor-tan como un filtro pasa-bajos. Típicamente las señales leídas tienen un rango dehasta +/-5000 µV (para un atleta) en una banda que va de los 6 a los 500 Hz [2].

FIGURA 2.2: Señal mioeléctrica superficial compuesta por la su-perposición de múltiples potenciales motores.

La figura 2.3 muestra la señal EMG para un músculo sano. Mientras el músculopermanece relajado la señal toma valores debidos al ruido, en lo que se conocecomo línea base, o en inglés "baseline". La cantidad de ruido de la línea basedependerá de la calidad del amplificador, del ruido ambiente y de la calidad delas condiciones de detección. Sus valores normales rondan los 3 a 5 µVpico, siendolo deseable 1 o 2 µVpico [2].

FIGURA 2.3: Señal EMG para un músculo relajado (baseline) y lue-go con actividad muscular.

Page 19: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

2.1. Descripcion detallada 7

2.1.3. Factores que influyen sobre la señal mioeléctrica

En su camino desde la membrana muscular hasta el electrodo la señal mioeléctri-ca puede ser influenciada por varios factores:

Características del tejido: el cuerpo humano es buen conductor eléctrico,pero desafortunadamente la conductividad eléctrica varía con el tipo de te-jido, el espesor, los cambios fisiológicos y la temperatura. Estas condicionespueden variar ampliamente de sujeto a sujeto al punto de hacer que no seaposible una comparación cuantitativa directa de los parámetros de la señalmioeléctrica.

Diafonía fisiológica: músculos vecinos al de interés pueden producir unacantidad significativa de señal mioeléctrica que también es leída por el elec-trodo. Típicamente esa diafonía no debería exceder el 15 % del total de laseñal.

Cambios en la geometría entre el músculo y el electrodo: cualquier cambioen la distancia entre el punto en que se genera la señal y el lugar donde sedetecta alteran la lectura. Este es un problema inherente a todos los casosen que existen movimientos y también puede ser causado por una presiónexterna.

Ruido externo: debe tenerse especial cuidado en ambientes eléctricamenteruidosos. Incluso el ruido de la línea eléctrica debe ser filtrado de la señal.

Electrodo y amplificadores: la calidad de los electrodos y el ruido internode los amplificadores pueden agregar contenido a la línea base de la señal.Los estándares ISEK1recomiendan que el ruido interno del amplificador noexceda los 5 µVrms [3].

2.1.4. Detección de la actividad muscular

Para la detección de la actividad muscular a partir de señales mioeléctricas su-perficiales el enfoque más común e intuitivo es establecer un umbral de amplitudfijo en el tiempo, es decir observar si la señal recibida supera o no un cierto valorconstante. El problema de esto y de otras técnicas que utilizan un único umbrales que no nos permiten fijar la probabilidad de detección y la probabilidad defalsas alarmas en forma independiente. Esto resulta en un sistema en el que laefectividad de la detección está dada sólo por la relación señal/riudo.

Esto ha llevado a evaluar otras posibles formas de resolver el problema: trans-formadas de la señal, umbrales adaptativos, búsqueda de patrones y diversascombinaciones de ellas [4].

Transformadas de la señal: la FFT (Transformada rápida de Fourier) brindainformación espectral de la señal y si bien resulta útil para determinar el ín-dice de fatiga muscular, donde se presenta un desplazamiento del espectro,no es suficientemente efectiva para la detección del inicio de la actividadmuscular. Esto se debe principalmente a que las señales mioléctricas no sonestacionarias [5].

1International Society of Electrophysiology and Kinesiology

Page 20: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

8 Capítulo 2. Introducción Específica

La transformada wavelet u onditas ofrece información sobre la variacióntemporal del espectro de la señal, brindando una representación de la ener-gía contenida en la señal. Su uso para el tratamiento de señales mioeléctricases campo de estudio actual.

Umbrales adaptativos: son umbrales variables, que cambian el en tiemposegún la evolución que va teniendo la señal. Normalmente se calculan di-námicamente computando alguna variable estadística, como la varianza ola desviación estándar de la amplitud de la señal o de una función de laseñal, como la transformada wavelet por ejemplo.

Métodos de doble umbral: se utilizan dos umbrales que pueden ser fijos oadaptativos. Cuando la señal supera el primer umbral se genera un estímu-lo, luego este estímulo debe superar un segundo umbral. Así, al incrementarlos grados de libertad, es posible disminuir el número de falsos positivos yaumentar la sensibilidad de detección de forma independiente [6].

2.1.5. Sistema embebido propuesto

El sistema de control para la prótesis activa mioeléctrica en cuestión debía poderaccionar un elemento prensor en presencia de una determinada actividad mus-cular del paciente. Esto condujo a tres principales acciones necesarias:

1. Obtención de señales

2. Procesamiento de las señales para obtener información de control

3. Manejo del actuador

La figura 2.4 muestra un diagrama de bloques del sistema embebido propuestopara la implementación, el que consta de tres subsistemas:

1. Adquisición de datos

2. Procesamiento digital de datos

3. Generación de señales para el actuador

FIGURA 2.4: Sistema embebido propuesto con sus subsistemas.

A esto debe agregarse que por tratarse de un sistema portátil debía operar conbaterías, cumpliendo también con requerimientos de dimensiones, peso máximoy autonomía.

En los siguientes párrafos de detallan los subsistemas electrónicos necesarios.

Page 21: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

2.1. Descripcion detallada 9

Adquisición de datos

Para maximizar la relación señal/ruido se utilizan amplificadores diferencialescon alto rechazo al modo común. Por eso es normal encontrar disposiciones detres electrodos: dos para el modo diferencial y un tercero de referencia. Como lamayor parte de la energía de las señales se ubica en la banda entre 10 y 250 Hzlas recomendaciones científicas indican una banda de amplificación entre 10 y500 Hz [3]. Luego de esta amplificación diferencial es necesario incluir etapas defiltrado de tipo pasabajos y notch en la frecuencia de red de 50 Hz.

Es también importante la ubicación y la disposición de los electrodos, que debensituarse alineados al segmento muscular de interés manteniendo entre ellos unadistancia de 20 mm. Con esto se maximiza la señal obtenida y se minimiza ladiafonía ocasionada por la actividad de otros músculos cercanos.

Dada la naturaleza analógica de las señales mioeléctricas se requiere de una con-versión analógico/digital para su procesamiento digital. Como la máxima fre-cuencia de interés es de 500 Hz resulta una frecuencia de muestreo de 1000 Hz.

Procesamiento digital de datos

La elección del método de procesamiento, su implementación y ensayo fueron lastareas de mayor complejidad del trabajo con la consecuente demanda de tiempo.Este subsistema debía ser capaz de discriminar la voluntad del paciente de activaruna determinada acción de la prótesis en base a la información contenida en lasseñales obtenidas. Esto plantea un problema que no es trivial dada la naturalezaestocástica de las señales mioeléctricas superficiales.

Para el presente trabajo se optó por un sistema de doble umbral como el propues-to por Bonato, D’Alessio y Knaitz [6], que como se mencionó en la subsección2.1.4, permite fijar el número de falsos positivos y la sensibilidad de detección deforma independiente.

Para detectar la actividad muscular los algoritmos que fueron desarrollados cal-culan la varianza de la señal para una ventana de tiempo. En caso de que esevalor calculado supere un umbral fijo se incrementa un contador, el que que de-berá superar un segundo umbral también fijo. Esto ha demostrado ser una formarelativamente simple pero efectiva de predecir la actividad muscular en base a lasseñales mioeléctricas.

Esta detección puede hacerse utilizando distintas variables estadísticas. Si bien lapredicción es más temprana utilizando la desviación estándar que utilizando lavarianza [4], se prefirió usar esta última ya que no requiere el cálculo de la raízcuadrada, el cual es computacionalmente demandante para un sistema embebidofuncionando en tiempo real.

Generación de señales para el actuador

La prótesis de mano desarrollada por el Centro se adapta mejor al uso de un ser-vomotor. Esto simplificó la generación de la señal de control ya que este tipo demotores se manejan mediante una única señal digital de ancho de pulso variable,no siendo necesaria una conversión digital/analógica. Los servomotores también

Page 22: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

10 Capítulo 2. Introducción Específica

incorporan la electrónica necesaria para ubicarse y mantenerse en una determi-nada posición.

La operación con baterías presentó una situación de compromiso entre la auto-nomía y los requerimientos de dimensiones y peso de la batería. La carga de labatería se decidió hacerla mediante un cargador externo no incluido en la próte-sis.

2.2. Requerimientos

En base a lo manifestado por el Ceprefis, la investigación sobre el estado del artey el tiempo disponible para el presente proyecto se establecieron los siguientesrequerimientos funcionales:

1. El sistema debe funcionar utilizando señales mioeléctricas superficiales.

2. El sistema debe detectar por sí o por no la presencia de actividad muscular.

3. El sistema debe poseer un mecanismo de calibración.

4. El sistema debe trabajar en tiempo real, siendo 100 ms el máximo tiempo derespuesta.

5. El sistema deberá funcionar con baterías que le brinden una autonomía de12 horas.

Con el fin de facilitar la transferencia de tecnología al equipo de I+D del Ceprefisse establecieron los siguientes requerimientos:

1. El software debe ser portable: Escrito en lenguaje de alto nivel (preferente-mente C).

2. Debe incluirse la documentación completa del código fuente, diagramas deconexiones, manual de operación y manual de instalación.

3. Debe entregarse un prototipo funcional del sistema de control al Ceprefis.

Tal como se mencionó, el Ceprefis pretende ofrecer prótesis que resulten accesi-bles para pacientes de escasos recursos, por lo que el costo de las mismas es deespecial importancia. A tal fin, se establecieron los siguientes requerimientos:

1. El precio de los componentes electrónicos del prototipo debe ser de hastau$s 100.

2. El hardware utilizado debe estar disponible en el mercado nacional.

2.3. Planificación

2.3.1. Activity On Node

La figura 2.5 muestra el diagrama de las tareas AoN (Activity on Node). Estediagrama es el conjunto de tareas interrelacionadas que debieron efectuarse parafinalizar el proyecto y permitió estimar la duración mínima del mismo. Con lí-neas rojas se muestra el camino crítico, que es el sub conjunto de tareas sucesivas

Page 23: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

2.3. Planificación 11

de mayor duración que vinculan el primer y el último acontecimiento del pro-yecto. El atraso en cualquiera de estas tareas hubiera significado un atraso en lafinalización del proyecto.

FIGURA 2.5: Diagrama de tareas AON (Activity On Node).

2.3.2. Diagrama de Gantt

En la figura2.6 se muestra el diagrama de Gantt. En él se expuso el tiempo dededicación previsto para las diferentes tareas. Fue útil para llevar un control, por-que al trazar una línea vertical en un momento cualquiera, se podía ver qué tareasdebían estarse realizando, y qué grado de avance debía tener cada una. Hay quetener en cuenta que debido a que hubo otras responsabilidades involucradas nosiempre fue posible dedicar 8 hs diarias al proyecto, requiriéndose el uso de losfines de semana. De esta manera el proyecto pudo ser finalizado a tiempo.

Page 24: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

12 Capítulo 2. Introducción Específica

FIGURA 2.6: Diagrama de Gantt.

Page 25: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

13

Capítulo 3

Diseño e Implementación

En este capítulo se detalla el diseño e implementación del proyecto. Se comienzamostrando la selección de componentes de hardware y el prototipo. Luego semuestra la metodología de diseño y desarrollo del firmware.

3.1. Diseño de hardware

3.1.1. Componentes seleccionados

Adquisición de datos

Se seleccionó un módulo sensor Myoware para electromiografía superficial. Elmismo dispone de tres electrodos, dos de ellos fijos ubicados a 20 mm entre síy un tercero cableado de referencia.

Tiene integrada toda la electrónica de acondicionamiento necesaria: amplificacióndiferencial y filtros. En la figura 3.1 se muestra el módulo y en la tabla 3.1 suspricipales especificaciones.

FIGURA 3.1: Módulo sensor Myoware para electromiografía super-ficial.

Page 26: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

14 Capítulo 3. Diseño e Implementación

TABLA 3.1: Especificaciones del módulo sensor Myoware

Alimentación 2,9 a 5,7 VGanancia AjustableImpedancia de entrada 110 GΩRechazo en modo común (CMRR) 110Corriente requerida 9 mADimensiones 52,3 mm x 20,7 mm x 8 mmPeso 28 g

Los principales motivos para su elección fueron:

1. Se trata de una solución robusta y suficientemente confiable.

2. Calidad de las señales gracias a su alta impedancia de entrada y alto rechazoen modo común.

3. Bajo consumo.

4. Disponibilidad en el mercado local.

5. Dimensiones y peso.

En el marco del sistema embebido propuesto este componente implementa:

1. Electrodos

2. Filtro pasa bajos

3. Filtro de ranura 50 Hz

4. Salida analógica entre 0 y 3,3 V

Procesamiento digital de datos

Se seleccionó una placa CIAA Z3R0, de diseño y fabricación nacional. En la figura3.2 se muestra la placa y en la tabla 3.2 sus pricipales especificaciones.

FIGURA 3.2: CIAA Z3R0 basada en un procesador de 32 bits ARMCortex M0+ @ 25 MHz.

Page 27: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

3.1. Diseño de hardware 15

TABLA 3.2: Especificaciones CIAA Z3R0

Alimentación 5 VMicrocontrolador 32 bits ARM Cortex M0+ @ 25 MHzMemoria interna de programa 64 KB FlashMemoria RAM interna 8 KBCorriente del uC ejecutando código 2,8 mACorriente del uC en reposo 20 nAADC: 12 bits, 1 Msamples/sCanales al ADC 6, configurables como 3 diferencialesGPIO 27 pinesDimensiones 51,81 mm x 18,8 mm x 3 mm

Los principales motivos para su elección fueron:

1. Capacidad de cómputo suficiente

2. Entorno de desarrollo libre

3. Bajo consumo

4. Precio y disponibilidad

5. Dimensiones y peso

En el marco del sistema embebido propuesto este componente implementa:

1. Procesamiento digital

2. Conversor analógico/digital

3. Salida digital de ancho de pulso variable para controlar el servomotor

Actuador

Se seleccionó un servomotor Tower Pro Mg995 de 10 kg x cm de torque con en-granajes metálicos. En la figura 3.3 se muestra el servomotor y en la tabla 3.3 suspricipales especificaciones.

FIGURA 3.3: Servomotor Tower Pro Mg995 de 10 kg x cm de torquecon engranajes metálicos.

Page 28: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

16 Capítulo 3. Diseño e Implementación

TABLA 3.3: Especificaciones del servomotor

Voltaje de operación 4,0 V a 7,4 VCorriente de operación sin carga 170 mACorriente en reposo 10 mAVelocidad de operación 0,20 s / 60

Torque 10 kg x cmDimensiones 40,6 mm x 19,8 mm x 42,9 mmPeso 55 gMaterial de los engranajes Metal

Los principales motivos para su elección fueron:

1. Robustez.

2. Velocidad de respuesta.

3. Consumo.

4. Disponibilidad en el mercado local.

5. Dimensiones y peso.

Batería

Se seleccionó una batería de litio polímero de 7,4 V, suficiente para alimentar loscomponentes del sistema: placa microcontrolador, módulo sensor y servomotor.En la figura 3.4 se muestra la batería y en la tabla 3.4 sus pricipales especificacio-nes.

FIGURA 3.4: Batería de litio-polímero de 7,4 v y 1600 mAh.

Los principales motivos para su elección fueron:

1. Capacidad de carga

2. Alta tasa de descarga

3. Eficiencia

4. Peso y dimensiones

Page 29: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

3.1. Diseño de hardware 17

TABLA 3.4: Especificaciones batería litio-polímero

Capacidad 1600 mAhConfiguración 2S1P / 7,4 v / 2 CeldasDescarga constante 20 CPico de descarga (durante 10 s) 30 CPeso 81 gDimensiones 89 mm x 30 mm x 16 mm

La ecuación 3.1 permite calcular la autonomía del sistema η con la carga de labatería y con los requerimientos de corriente de los componentes:

- Servomotor con carga (estimada): 300 mA

- µC durante ejecución de código: 2,8 mA

- Módulo sensor: 9 mA

η = 1600mAh/(2, 8mA+ 9mA+ 300mA) = 5, 13h (3.1)

El valor así obtenido corresponde al funcionamiento permanente de todos loscomponentes, lo cual no se condice con el uso normal en el que el servomotor seactiva eventualmente. La ecuación 3.2 incorpora δ, el ciclo de trabajo del servomo-tor, el que es función de los demás parámetros. El valor máximo de δ resulta ser29 %, es decir que de las 16 horas de autonomía el servomotor puede funcionarhasta 4,64 horas.

1600mAh/16h > (2, 8mA+ 9mA+ 300mA ∗ δ) (3.2)

Usando modos de bajo consumo del µC el valor de δ se eleva a 30,3 %, lo querepresentaría un incremento de 13 minutos.

Cargador

En la figura 3.5 se muestra el cargador de baterías seleccionado.

FIGURA 3.5: Cargador balanceador de baterías Li-Po Turnigy.

Page 30: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

18 Capítulo 3. Diseño e Implementación

Es un cargador balanceador para batería Li-Po de 7,4 V externo a la prótesis ypor lo tanto independiente de los requerimientos de dimensiones y peso. Es aptopara la batería seleccionada y para conectarse a la red eléctrica argentina.

3.1.2. Integración de los componentes

Se desarrolló un prototipo del sistema embebido propuesto que permitiera reali-zar los ensayos necesarios al hardware y al firmware. En la figura 3.6 se muestrael diagrama de conexiones utilizado.

FIGURA 3.6: Diagrama de conexiones del prototipo.

A continuación se hace una reseña de los aspectos más relevantes que fuerontenidos en cuenta:

1. Conversor analógico-digital: el conversor de la CIAA Z3R0 utiliza una ten-sión de referencia de 3,3 V. Por su parte el módulo sensor entrega una señalanalógica, proporcional al potencial de la señal mioeléctrica, que es una ten-sión entre 0 y el voltaje de alimentación del módulo. Haciendo coincidir esevoltaje de alimentación con la referencia de tensión del conversor se apro-vecha completamente su resolución y es por eso que se optó por alimentarel módulo sensor con 3,3 V.

A la hora de elegir los pines se tuvo en cuenta la recomendación del fa-bricante de no utilizar pines desocupados del multiplexor del ADC paraseñales de comunicaciones [7].

2. Alimentación: La batería utilizada está conformada por dos celdas en serie,cada una de esas celdas tiene una tensión nominal de 3,7 V. En la figura 3.7puede verse la curva típica de descarga de una celda litio-polímero. Cuandola celda está totalmente cargada y en vacío puede entregar 3,9 V, pero alconectar una carga ese valor rápidamente desciende al nominal. Cuando la

Page 31: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

3.1. Diseño de hardware 19

batería ha agotado su carga el voltage descendiende a 3 V. Por lo tanto elvoltaje nominal de la batería de dos celdas es de 7,4 V y el voltaje mínimo 6V.

Esto hizo posible conectar directamente la batería a la placa CIAA-Z3R0,que para su funcionamiento dispone de un regulador de tensión de 3,3 Vque admite hasta 16V de entrada. Igualmente sucedió con el servomotor,que tal como se ve en la tabla 3.3, tiene un rango de voltaje de operaciónque va de 4 V a 7,4 V.

La alimentación del módulo sensor se toma de una salida de 3,3 V que en-trega la CIAA-Z3R0. El requerimiento de corriente del sensor es muy bajo,9mA tal como se indica en la tabla 3.1, y tolerado por el mencionado regu-lador de tensión.

FIGURA 3.7: Curva típica de descarga de una celda litio-polímero.1

En la figura 3.8 se ve una fotografía de los componentes del hardware interconec-tados en una primera versión del prototipo que se alimentaba desde el progra-mador de la CIAA Z3R0 y con un servomotor diferente al que se finalmente seusó.

La figura 3.9 muestra la forma en que va dispuesto el módulo sensor utilizandoelectrodos autoadhesivos.

1http://prototalk.net/forums/showthread.php?t=22

Page 32: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

20 Capítulo 3. Diseño e Implementación

FIGURA 3.8: Primer prototipo, puede observarse la CIAA Z3R0con su programador, el módulo sensor, los electrodos autoadhesi-

vos y un servomotor.

FIGURA 3.9: Módulo sensor con electrodos autoadhesivos.

3.2. Diseño de firmware

3.2.1. Herramientas utilizadas

Para la programación y depuración se utilizó el CIAA Software IDE, un entornode desarrollo libre basado en Eclipse. Se instaló en un sistema operativo Linux si-guiendo los pasos detallados en la documentación del proyecto CIAA2. Esta ins-talación permite usar el depurador libre OpenOCD3(Open On-Chip Debugger).En la figura 3.10 puede verse una captura de pantalla del IDE.

Se utilizó la sAPI4 (simple application programming interface), una bibliotecadesarrollada por Eric Pernia que implementa una capa de abstracción de hard-ware (HAL) para microcontroladores. Posee módulos de alto nivel y módulospara el manejo de periféricos internos y externos.

A fin de reducir costos la CIAA Z3R0 no incluye un programador en la placa, porlo que debe utilizarse un progrmador/depurador externo, en este caso se usó elST Link V2 que es el que recomienda la documentación.

2http://www.proyecto-ciaa.com.ar3http://openocd.org/4https://github.com/epernia/sAPI

Page 33: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

3.2. Diseño de firmware 21

FIGURA 3.10: Entorno de desarrollo CIAA Software IDE corriendosobre Linux.

3.2.2. Arquitectura del sistema

Por tratarse de un sistema de adquisición de datos se utilizó un patrón arquitec-tónico de segmentación de procesos como el que se muestra en la figura 3.11. Elmismo cuenta con un proceso que se encarga de tomar los datos de los sensores,otro que se encarga de procesarlos y uno que maneja los actuadores en base a losdatos procesados. Entre los procesos pueden existir buffers para sincronizarloscuando la velocidad del flujo de datos de un productor no es la misma que la desu consumidor.

FIGURA 3.11: Patrón arquitectónico utilizado.

3.2.3. Modelado del sistema

Para la implementación del patrón arquitectónico elegido se debió tener en cuen-ta que la CIAA Z3R0 cuenta con sólo 8 KB por lo que se decidió no utilizar buf-fers entre los procesos. Esto implicó que los procesos deban estar sincronizados,

Page 34: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

22 Capítulo 3. Diseño e Implementación

es decir que los consumidores puedan manejar los datos a la velocidad que losproductores los entregan.

La figura 3.12 muestra el diagrama de flujo de datos del sistema. El ritmo al quedeben adquirirse los datos está dado por la frecuancia de muestreo de la señalmioeléctrica que es de 1000 Hz, como se vió en la la subsección 2.1.5. Es decirque cada 1ms se muestrea un dato, se hacen los cálculos para la detección de laactividad muscular y se maneja el actuador.

FIGURA 3.12: Diagrama de flujo de datos del sistema.

3.2.4. Adquisición de datos

Como se puede ver en la tabla 3.2 el microcontrolador de la CIAA Z3R0 disponede un conversor analógico digital de 12 bits que puede tomar hasta 1 millón demuestras por segundo. Esto resulta suficiente para representar las señales sEMGque, como se dijo en la sección 2.1.5, son de baja frecuencia y es suficiente mues-trearlas a 1 KHz. También se vio en la sección 3.1.2 que el prototipo utiliza todoel rango de entrada del conversor.

Con esas consideraciones se diseñó una función que realiza la conversión analógico-digital cada 1 ms. Para su implementación se usó el soporte de la sAPI para elmanejo del SysTick Timer del microcontrolador, que permite fijar su frecuencia yun callbak de interrupción.

Para el manejo del ADC se utilizaron tres funciones de la sAPI:

1. adcConfig: Energiza el ADC y fija la base de tiempo.

2. adcInputConfig: Permite seleccionar el canal que se utilizará configurandola función del pin correspondiente.

3. adcRead: Fija la tensión de referencia y la resolución y luego inicia una con-versión. Como es bloqueante espera a que finalice la conversión y devuelveel resultado.

3.2.5. Control basado en señales sEMG

El proceso de control implementado consta de un detector de actividad muscu-lar con un mecanismo de calibración. Recibe el flujo de datos provenientes delproceso de adquisición de datos y debe procesarlos al mismo ritmo ya que noexiten buffers intermedios. Esto representa un requerimiento temporal para este

Page 35: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

3.2. Diseño de firmware 23

proceso que como se verá es el encargado de realizar el cómputo de las variablesestadísticas necesarias.

La detección requiere de una calibración previa del sistema, lo que dió lugar ados estados de funcionamiento:

Calibración

Detección

Una vez concluída la calibración el sistema pasa al estado de detección en el quepermanecerá indefinidamente.

Calibración

Durante la calibración el sistema realiza una caracterización de la baseline. Esto esnecesario porque sus niveles varían de individuo a individuo y durante el uso,por ejemplo a causa del cambio de la resistencia de contacto del electrodo enpresencia de sudor.

Por una decisión de diseño el sistema se inicia en el modo calibración, ya que seasume que las señales presentes en el momento inicial corresponden al baseline,es decir ausencia de actividad muscular. En base a esto determina el primer um-bral, que es el que luego deberán sobrepasar los niveles de señal correspondientesa la actividad muscular durante el estado detección.

El valor del primer umbral será proporcional a la varianza de las muestras de laseñal obtenidas durante una determinada ventana de tiempo, que denominamosventana de calibración.

Surgen de aquí como parámetros a determinar la constante de proporcionalidadentre varianza y umbral y el tamaño de la ventana de calibración.

Esta asunción de inicio sin actividad muscular tiene dos implicancias sobre lasque el paciente deberá ser instruido:

1. Que inmediatamente después del reset del sistema los electrodos deben es-tar correctamente ubicados y el músculo encontrarse distendido.

2. Que ante la presencia de falsos positivos o falsos negativos del sistema dedetección es posible recalibrar el sistema reiniciándolo.

Este estado finaliza cuando se obtiene el valor del primer umbral.

Detección

En el estado detección el sistema obtiene muestras de la señal que pueden corres-ponder a ausencia o presencia de actividad muscular. Para poder discernir lo quehace es computar la varianza de los niveles de la señal en una ventana de tiempoy compararlos con el primer umbral determinado en el estado calibración. En casode haberse superado ese umbral se incrementa un contador y en caso contrariose lo pone a cero. Cuando ese contador supera un determinado valor, que es elsegundo umbral, el sistema asume la presencia de actividad muscular.

Page 36: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

24 Capítulo 3. Diseño e Implementación

Surgen aquí como parámetros a determinar el valor del segundo umbral y el ta-maño de la ventana de detección.

La figura 3.13 muestra un diagrama de bloques del detector con todas las señalesy parámetros relacionados.

FIGURA 3.13: Diagrama de bloques del detector de actividad mus-cular con sus señales y parámetros.

La determinación de los valores óptimos de estos parámetros se llevó a cabo enlas pruebas de campo.

La salida del detector confora el flujo de datos que entrega este proceso al siguien-te, de manejo de actuadores. En este caso tampoco hay buffers intermedios, peroesto no representa una exigencia dada la baja frecuencia de los cambios.

Cálculo de la varianza

Como se vió la calibración y la detección utilizan como variable estadística lavarianza de las muestras obtenidas en una ventana de tiempo. Su cálculo no estrivial en un sistema embebido y por lo tanto en esta subsección se describe cómofue implementada.

La varianza es una medida de cuánto difiere un conjunto de datos de su media,nos dice cuán dispersos están los datos. Un conjunto de datos agrupados alrede-dor de un punto tendrán una varianza pequeña, al contrario de un conjunto dedatos que esté distribuido por todo el mapa. Matemáticamente se expresa como:

σ2 =1

n− 1

n∑i=1

(xi − µ)2 (3.3)

Computar la varianza utilizando la ecuación 3.3 implica disponer de todo el con-junto de datos y hacer dos pasadas sobre ellos, una para calcular la media µ y otrapara la varianza σ2. Esto no se ajusta a la arquitectura elegida ni a la disponibili-dad de memoria del sistema embebido propuesto.

Los algoritmos que se implementaron utilizan el método de Welford [9] presenta-do en el libro The Art of Computer Programming [10]. Éste utiliza una relación derecurrencia que permite computar la varianza inspeccionando cada nuevo datoque llega, sin tener que almacenarlo. Tiene propiedades numéricas superiores a

Page 37: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

3.2. Diseño de firmware 25

otras soluciones similares ya que evita los errores por desbordamiento aritméticoo excepciones por raices negativas [11].

El algoritmo para el método de Welford es el siguiente:

Inicializar:M1 = x1 (3.4)

S1 = 0 (3.5)

Para los subsiguientes valores de x usar las fórmulas recurrentes:

Mk = Mk−1 + (xk −Mk−1)/k (3.6)

Sk = Sk−1 + (xk −Mk−1) ∗ (xk −Mk) (3.7)

La k-ésima estimación de la varianza estará dada por:

σ2k =Sk

(k − 1)(3.8)

Como en este caso sólo nos interesa el último valor de varianza calculado y notodos los anteriores podemos expresar las ecuaciones 3.6 y 3.7 de la siguientemanera:

Mactual = Manterior + (x−Manterior)/k (3.9)

Sactual = Santerior + (x−Manterior) ∗ (x−Mactual) (3.10)

El valor de la varianza de al menos dos datos (k > 1) será:

σ2 =Sactual(k − 1)

(3.11)

Finalmente podemos ver el código en C de las dos funciones utilizadas para elcálculo de la varianza: inicia_varianza(x) que es llamada con el primer dato de laventana y actualiza_varianza(x) con los valores sucesivos.

1 i n i c i a _ v a r i a n z a ( x )2 3 M = x ;4 S = 0 ;5 k = 1 ;6 re turn ( ) ;7 8 a c t u a l i z a _ v a r i a n z a ( x )9

10 k++;11 M_ant = M;12 M = M_ant + ( x − M_ant ) /k ;13 S = S + ( x − M_ant ) ∗ ( x − M) ;14 re turn ( S ) ;15

ALGORITMO 3.1: "Método de Welford"

Page 38: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

26 Capítulo 3. Diseño e Implementación

Luego de enviar a actualiza_varianza(x) el último dato de la ventana se debe teneren cuenta la expresión de la ecuación 3.11.

3.2.6. Manejador del actuador

Para el manejo de un servomotor se requiere de una señal digital con un periodoentre 15 y 25 milisegundos. La electrónica de control dentro del servomotor haráque este gire hasta ubicarse en una posición que dependerá del ancho del pulso,es decir del tiempo que la señal permanece activa. En general tiempos entre 0,5y 2,5 ms corresponden a rotaciones del eje entre 0y 180, véase la figura 3.14.Los valores adecuados para el motor utilizado se determinaron en las pruebasfuncionales del hardware.

FIGURA 3.14: Trenes de pulsos para las posiciones 0o, 90o y 180o

en el eje de un servomotor.

El microcontrolador de la CIAA Z3R0 ofrece la posibilidad de generar señalesPWM en sus pines. Esta funcionalidad no insume tiempo de procesador, ya quela ofrece el hardware haciendo uso de timers programables. Una vez establecidala frecuencia y el ancho de pulso deseados la señal PWM hará que el eje del motorse ubique y mantenga en la posición deseada.

Al momento de la implementación la sAPI no incluía soporte para el manejo dePWM, por lo que debió programarse a más bajo nivel en base al código de ejemploque brinda el fabricante del microcontrolador en su sitio web [8].

Page 39: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

27

Capítulo 4

Ensayos y Resultados

En este capítulo se describen las pruebas realizadas al hardware y al firmware.Estas pruebas fueron útiles para determinar los valores óptimos de algunos pará-metros requeridos por el sistema.

4.1. Pruebas funcionales del hardware

Se realizaron ensayos a los componentes y al prototipo para verificar su funcio-namiento y el cumplimiento de los requerimientos.

4.1.1. Módulo sensor

Se llevaron adelante ensayos al módulo sensor en forma independiente, es decirantes de integrarlo en el prototipo. Para ello no se usó la señal llana (RAW) sinootra salida disponible del módulo que entrega una versión rectificada y filtrada.Esto permitió visualizar en el osciloscopio los cambios de amplitud de la señalsegún la ubicación de los electrodos. Se pudo comprobar que, tal como indica ladocumentación del fabricante, la mayor amplitud de señal se logra al ubicarlossobre el vientre muscular a mitad de la línea entre la zona de inervacion y la uniónmiotendinosa.

Este ensayo también permitió ver los cambios de la baseline (señal en ausenciade actividad muscular) entre diferentes pacientes o ante diferentes condicionesde contacto del electrodo con la piel.

También resultó concluyente la importancia de las conexiones eléctricas desde elelectrodo hasta el amplificador. En el módulo sensor utilizado dos de los electro-dos no poseen cables ya que los conectores están soldados al circuito impreso,pero el electrodo de referencia sí utiliza cable y por lo tanto debe prestarse espe-cial atención a su estado y buen conexionado.

Como se mencionó en la sección 2.1.3 existe diafonía ocasionada por el poten-cial de músculos cercanos, por lo tanto la elección de un músculo adecuado esrelevante a la hora de mejorar la relación señal/ruido. En este aspecto resultarondeterminantes los conocimientos de fisiología de los profesionales del Ceprefis1.

1Centro de Rehabilitación Física de la Provincia de Salta

Page 40: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

28 Capítulo 4. Ensayos y Resultados

4.1.2. Adquisición de la señal

Con el fin de evaluar el proceso de adquisición se diseñó un ensayo que invo-lucrara todo el camino que recorre la señal, es decir desde el electrodo hasta elresultado de la conversión alalógico digital.

Para esto lo que se hace es cortocircuitar los electrodos para anular la señal. Enestas condiciones se debe obtener un resultado constante del conversor analógicodigital y cualquier variación sobre eso indica la presencia de ruido, principalmen-te originado en la alimentación o en la referencia de tensión del conversor.

El ensayo fue satisfactorio, ya que el conversor entregó un resultado constante demitad de escala. Ese valor de mitad de escala se debe a que el sensor incorporaun desplazamiento de la señal para no entregar valores negativos.

4.1.3. Verificación de autonomía

El requerimiento de autonomía definido establecía que el equipo funcionara almenos 12 horas seguidas sin necesitar recargar la batería. En la subsección 3.1.1 secalculó que el requerimiento se podría cumplir si el actuador funcionaba duranteel 30 % del tiempo.

Se llevó a cabo un ensayo sobre el prototipo simulando estas condiciones. Paraesto se escribió un programa que acciona el servomotor con el ciclo de traba-jo cercano al 30 %. Cada cuatro segundos se genera una señal que hace que elmotor se ubique alternadamente en las posición de 0y 180. Cada uno de esosmedio giros del eje insume un tiempo aproximado de un segundo con la bateríatotalmente cargada. Por lo tanto inicialmente el motor está activo un segundo einactivo durante tres, esto es un ciclo de trabajo de 25 %. A medida que la bateríase va descargando el tiempo requerido para el mismo movimiento crece, llegandoa los dos segundos cerca del agotamiento de la carga, lo que representa un ciclode trabajo de 50 %. El promedio de estos ciclos de trabajo es de 37,5 %.

Se simuló la carga que representa para el motor mover el elemento prensor de laprótesis mediante una varilla descentrada solidaria al eje.

El resultado que se obtuvo fue un correcto funcionamiento durante 14 horas. Pa-sado ese tiempo el sistema comienza a fallar porque al activarse el motor el voltajedesciende y reinicia la CIAA Z3R0.

Si bien no fue posible determinar con exactitud el ciclo de trabajo del motor paratodo el ensayo, ya que los tiempos de giro varian de manera no lineal, se pudoverificar que la autonomía es superior a las 12 horas requeridas.

4.2. Pruebas funcionales del firmware

Se realizaron pruebas del sistema para verificar su funcionamiento y el cumpli-miento de los requerimientos.

Page 41: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

4.3. Pruebas de campo 29

4.2.1. Pruebas del manejador del actuador

Se llevó adelante un ensayo para ajustar el manejo del actuador a las necesidadesde la prótesis. Se determinaron los valores máximo y mínimo del ciclo de trabajonecesario y la velocidad adecuada para el movimiento.

4.2.2. Requerimiento temporal

Como se mencionó en la subsección 3.2.3 el firmware debe cumplir con un reque-rimiento temporal fundamental que es el de poder tomar una muestra de la señal,actualizar las variables estadísticas, detectar la actividad muscular y manejar elactuador en 1 ms.

Los procesos funcionan sincronizados a las interrupciones del Systick programa-das cada 1 ms y deben completar su operatoria antes de la llegada de una nuevainterrupción.

Para la verificación de este requerimieto se agregó a la rutina de interrupción uncontador que se incrementa cada vez que es invocada. Por lo tanto es posiblesaber que los procesos no han tomado más de un milisegundo verificando desdeellos que el contador mencionado no se ha incrementado en más de una unidad.

Si bien esto no permite medir el tiempo que insume la ejecución de los procesos,sí permitió verificar el cumplimiento del requerimiento.

4.3. Pruebas de campo

Las pruebas de campo se utilizaron para ajustar parámetros de la detección yvalidar el sistema.

Como se vio en la subsección 3.2.3 el detector requiere de cuatro parámetros:

Tamaño de la ventana de calibración.

k, factor de proporcionalidad entre la varianza de la baseline y el primerumbral.

Tamaño de la ventana de detección.

Segundo umbral.

Estos parámetros fueron determinados mediante pruebas de campo específicasutilizando el prototipo y señales mioeléctricas reales.

4.3.1. Determinación de los parámetros de calibración

Lo deseable es que la ventana de calibración sea lo más pequeña posible, porquedurante ese tiempo el paciente debe mantener el músculo relajado y el sistema nose puede utilizar de forma normal. Sin embargo una ventana pequeña representamenos datos para el análisis estadístico y los resultados pueden estar influencia-dos por transitorios.

Page 42: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

30 Capítulo 4. Ensayos y Resultados

Para determinar el menor valor aceptable se realizó un ensayo en el que se compa-ra el resultado del análisis estadístico utilizando diferentes tamaños de ventana.

Como es importante que la comparación se realice sobre el mismo conjunto de da-tos se diseñó un algoritmo que cada 100 muestras almacena en una tabla el valorde la varianza calculado hasta ese momento. Entonces el primer dato de la tablacorresponde a la varianza de las primeras 100 muestras, el segundo correspondea 200 muestras: las primeras 100 más las 100 siguientes y así sucesivamente has-ta el décimo valor que comprende 1000 muestras. La implementación se facilitógracias al método recursivo utilizado para el cálculo la varianza que se describióen la sección 3.2.5.

Los resultados de este ensayo se resumen en el grafico de la figura 4.1 que muestralos valores obtenidos para la varianza en función del tamaño de ventana. Puedeobservarse que a partir de una ventana de 700 muestras el resultado se mantieneconstante. Para dar un margen de seguridad se definió el valor de 800 muestrascomo el tamaño de ventana de calibración.

FIGURA 4.1: Gráfica del valor de la varianza para distintos tama-ños de ventana de calibración.

Para determinar k, el factor de proporcionalidad entre la varianza de la baseliney el primer umbral, se partió del valor de la unidad y se fue ajustando evaluandolos errores de detección.

Los errores de detección se manifiestan como: falsos positivos, que se dan cuandoel detector indica actividad muscular sin que ésta exista y falsos negativos, quese dan cuando existe actividad muscular y no es detectada.

Un valor pequeño de k hace que el primer umbral sea más fácilmente superabley por lo tanto da lugar a la aparición de falsos positivos, por el contrario cuandok es grande aparecen falsos negativos.

Realizando pruebas con distintos individuos y teniendo en cuenta el cambio dela resistencia electrodo-piel se encontró que para k = 1, 4 se minimizan amboserrores de detección. La figura 4.2 muestra una gráfica de los porcentajes de falsospositivos y falsos negativos en función de k.

Page 43: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

4.3. Pruebas de campo 31

FIGURA 4.2: Gráfica del porcentaje de error de detección en fun-ción de k.

4.3.2. Determinación de los parámetros de detección

El tamaño de la ventana de detección se fijó en 30 ms según recomienda la bi-bliografía [6]. Esto significa que durante la detección se analiza la varianza de 30muestras y se la compara con el primer umbral.

El segundo umbral corresponde a la cantidad de veces consecutivas que se debesuperar el primer umbral para considerar que existe actividad muscular. Por lotanto el tiempo necesario para la detección está dado por el producto del tiempode la ventana de detección y el segundo umbral.

Con la arquitectura de sistema utilizada el tiempo de detección determina el tiem-po de respuesta del sistema, que por requerimiento no debe superar los 100 ms.De esto surge que el segundo umbral puede tomar un valor máximo de 3 quecorresponde a 90 ms.

En las pruebas de campo se observó que el mejor resultado se obtiene utilizandoel máximo valor para el segundo umbral.

4.3.3. Validación del sistema

Una vez que se determinaron los parámetros del sistema las pruebas de campopermitieron validar los tres requerimientos relacionados al firmware:

1. El sistema debe detectar por sí o por no la presencia de actividad muscular.

2. El sistema debe poseer un mecanismo de calibración.

3. El sistema debe trabajar en tiempo real, siendo 100 ms el máximo tiempo derespuesta.

Page 44: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una
Page 45: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

33

Capítulo 5

Conclusiones

5.1. Conclusiones generales

Se alcanzaron los objetivos planteados para el proyecto, ya que el Ceprefis dispo-ne ahora de un prototipo funcional para el control de las prótesis de mano queestá desarrollando.

Gracias al aporte del director del trabajo y del plantel del Ceprefis se cubrieronlos requerimientos y se pudieron superar las dificultades que planteaba la faltade experiencia previa en el tema.

El Ceprefis cumple un destacable rol social, facilitando el acceso a las prótesisa personas de escasos recursos, por lo que resulta gratificante el haber podidocolaborar en esa causa aplicando los conocimientos adquiridos en la carrera deespecializacion de sistemas embebidos.

Particularmente se utilizaron elementos aprendidos sobre planificación de pro-yectos, ingeniería de software, programación de microcontroladores, protocolosde comunicación y sistemas de control de versiones.

Para todo el trabajo se utilizaron herramientas libres y las bases sentadas por elproyecto CIAA, un desarrollo abierto y nacional.

5.2. Próximos pasos

En base a la gran iniciativa que posee el grupo de trabajo del Ceprefis y los resul-tados obtenidos en este trabajo es de esperar futuras mejoras para este sistema. Acontinuación se listan los principales aspectos sobre los que se pretende profun-dizar:

1. Utilización de un electrodo activo de desarrollo propio que permita reducirlos costos.

2. Implementar un control proporcional de la prótesis, es decir que el sistemade control actúe según la magnitud de la actividad muscular y no sólo porsí o por no.

3. Agregar sensores en los elementos prénsiles para obtener una realimenta-ción que le permita al sistema detener el actuador en caso de haber tomadoun objeto.

4. Ampliar los grados de libertad de la prótesis incorporando más actuadores.

Page 46: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

34 Capítulo 5. Conclusiones

5. Utilizar más electrodos para obtener señales de otros músculos.

6. Manejo de modos de bajo consumo en el microcontrolador a fin de elevar laautonomía.

Page 47: Control de prótesis de mano - laboratorios.fi.uba.arlaboratorios.fi.uba.ar/lse/tesis/LSE-FIUBA-Trabajo... · el diseño de un sistema embebido para el control mioeléctrico de una

35

Bibliografía

[1] La Nación. En Entre Ríos crearon la primera prótesis bioeléctrica de Américalatina. Disponible: 2018-11-11. 2014. URL:https://www.lanacion.com.ar/1750877-en-entre-rios-crearon-la-primera-protesis-bioelectrica-de-america-latina.

[2] P. Konrad. The ABC of EMG: a practical introduction to kinesiologicalelectromyography. Noraxon USA Inc, 2006. ISBN: 0977162214. URL:https://hermanwallace.com/download/The_ABC_of_EMG_by_Peter_Konrad.pdf.

[3] R. Merletti. Standards for Reporting EMG Data. Journal ofElectromyography y Kinesiology, 1999. URL: https://isek.org/wp-content/uploads/2015/05/Standards-for-Reporting-EMG-Data.pdf.

[4] Raspopovic S Micera S Carpaneto J. Control of Hand Prostheses UsingPeripheral Information. IEEE Reviews in Biomedical Engineering, 2010. URL:https://www.researchgate.net/profile/Silvestro_Micera/publication/221775430_Control_of_hand_prostheses_using_peripheral_information_IEEE_Rev_Biomed_Eng_348-68/links/0fcfd50c058ef11468000000/Control-of-hand-prostheses-using-peripheral-information-IEEE-Rev-Biomed-Eng-348-68.pdf.

[5] Asfour SS. Ismail AR. Continuous wavelet transform application to EMGsignals during human gait. Thirty-Second Asilomar Conference on Signals,Systems y Computers, 1999. URL:https://ieeexplore.ieee.org/document/750880.

[6] Knaitz M Bonato P D’Alessio T. A Statistical Method for the Measurement ofMuscle Activation Intervals from SurfaceMyoelectric Signal During Gait. IEEETransactions on Biomedical Engineering, 1998. URL:https://www.researchgate.net/profile/Tommaso_DAlessio/publication/13732186_A_statistical_method_for_the_measurement_of_muscle_activation_intervals_from_surface_myoelectric_signal_during_gait/links/02e7e51cd8b08427a8000000/A-statistical-method-for-the-measurement-of-muscle-activation-intervals-from-surface-myoelectric-signal-during-gait.pdf.

[7] Silicon Laboratories Inc. AN0021: Analog to Digital Converter (ADC). 2016.URL: https://www.silabs.com/documents/public/application-notes/AN0021.pdf.

[8] Silicon Laboratories Inc. Chapter 5 Part 4 – Pulse Width Modulation (PWM)for LED Dimming. 2015. URL: https://www.silabs.com/community/blog.entry.html/2015/07/17/chapter_5_part_4---WneD.

[9] Welford BP. Note on a method for calculating corrected sums of squares andproducts. Technometrics, 1962.

[10] Knuth DE. The Art of Computer Programming. Addison-Wesley, 1998.[11] JD. Cook. Accurately computing running variance. URL:

https://www.johndcook.com/blog/standard_deviation/.