joel macaya baena control de pinza robótica con estimación
TRANSCRIPT
Joel Macaya Baena
Control de pinza robótica con estimación de la presión realizada
TRABAJO DE FIN DE GRADO
dirigido por José Luis Ramírez Falo codirigido por Alfonso José Romero Nevado
Grado en Ingeniería Electrónica Industrial y Automática
Tarragona
2019
2
Índice
1 Memoria descriptiva ............................................................................. 4
1.1 Objeto ................................................................................................................ 4
1.2 Alcance .............................................................................................................. 4
1.3 Antecedentes ..................................................................................................... 4
1.3.1 La Electromiografía .................................................................................. 4
1.3.2 Tipos de electrodos ..................................................................................... 4
1.3.3 Adquisición de Señales EMGS .................................................................. 6
1.3.4 Posición y número de electrodos ............................................................... 7
1.3.5 Tipos de prótesis ......................................................................................... 8
1.4 Programas de cálculo ..................................................................................... 10
1.5 Abreviaturas ................................................................................................... 10
1.6 Diseño del circuito para el acondicionamiento de la señal EMG .............. 10
1.6.1 Primera etapa de amplificación .............................................................. 11
1.6.2 Etapa de filtro pasa altos ......................................................................... 11
1.6.3 Etapa de filtro pasa bajos ........................................................................ 12
1.6.4 Etapa de filtro Notch ............................................................................... 13
1.6.5 Pruebas del conjunto de los 3 filtros ....................................................... 14
1.6.6 Etapa sumadora no inversora y segunda etapa de amplificación ......... 20
1.7 Diseño del circuito para la actuación sobre la pinza robótica ................... 20
1.7.1 Puente en H para la inversión de giro .................................................... 20
1.7.2 Corriente consumida por el motor .......................................................... 21
1.7.3 Sensores de fuerza resistivos ................................................................... 22
1.8 Programación de los microcontroladores .................................................... 23
1.8.1 Microcontrolador del conjunto sensor “brazo” ..................................... 23
1.8.2 Microcontrolador del conjunto motriz “pinza” ...................................... 24
1.8.3 Comunicación Bluetooth entre los microcontroladores ........................ 24
2 Memoria de cálculos ........................................................................... 27
2.1 Filtro pasa altos a 20 Hz ................................................................................ 27
2.2 Filtro pasa bajos a 500 Hz ............................................................................. 29
2.3 Filtro Notch a 50 Hz ....................................................................................... 32
2.4 Amplificador sumador no inversor .............................................................. 34
2.5 Amplificación de la lectura de corriente del motor .................................... 37
3
3 Planos ................................................................................................... 39
3.1 Esquema eléctrico del conjunto motriz, pinza ............................................ 39
3.2 Esquema eléctrico del conjunto sensorial, brazo ........................................ 40
4 Presupuesto .......................................................................................... 41
4.1 Presupuestos parciales ................................................................................... 41
4.1.1 Presupuesto parcial nº1 Conjunto sensorial “brazo” ............................ 41
4.1.2 Presupuesto parcial nº2 Conjunto motriz “pinza” ................................. 42
4.1.3 Presupuesto parcial nº3 Mano de obra ................................................... 43
4.2 Resumen del presupuesto .............................................................................. 44
5 Anexos .................................................................................................. 45
5.1 Código del microcontrolador de la parte sensorial “brazo” ...................... 45
5.2 Código del microcontrolador de la parte motriz “pinza” .......................... 46
6 Referencias ........................................................................................... 50
7 Bibliografía .......................................................................................... 51
1 Memoria descriptiva
4
1 Memoria descriptiva
1.1 Objeto
El objeto del trabajo es el diseño y montaje de los circuitos electrónicos necesarios para
el control de una pinza robótica con una señal obtenida mediante la electromiografía y la
posterior estimación de la presión realizada sobre un objeto a través de pruebas con el
modelo implementado.
1.2 Alcance
El alcance del trabajo incluye:
• Diseño de las etapas de acondicionamiento de señal necesarias para la obtención
de la señal EMG.
• Diseño del conexionado de los componentes motrices y sensoriales de la pinza
para la estimación de presión.
• Implementación física de los dos circuitos electrónicos anteriores.
• Monitorización de ambos circuitos mediante dos microcontroladores Arduino
NANO.
• Programación de los dos Arduino NANO y comunicación entre ellos mediante
módulos Bluetooth.
1.3 Antecedentes
1.3.1 La Electromiografía
La electromiografía es una disciplina perteneciente al campo de la Neurofisiología que
consiste en la realización de un registro de la actividad eléctrica de los diferentes
músculos o grupos musculares del cuerpo mediante el uso de electrodos.
La actividad eléctrica es aquella que se genera en un determinado músculo o grupo
muscular cuando se le somete a un estímulo voluntario (por ejemplo una contracción
voluntaria del músculo) o involuntario (por ejemplo un impulso eléctrico producido por
un electrodo que da lugar a una contracción involuntaria del músculo).
Con esta prueba se puede identificar si las alteraciones neuromusculares se deben al
músculo o a las fibras nerviosas. Para ello analiza básicamente:
• La amplitud de las corrientes eléctricas.
• El número de fibras musculares que se contraen.
• El tiempo que tardan en contraerse.
• El tiempo que se mantienen contraídas.
1.3.2 Tipos de electrodos
Los electrodos son los elementos sensoriales encargados de obtener la tensión existente
en los puntos de medida. La señal que se obtiene mediante los electrodos contiene la
información del EMG además de Interferencias electromagnéticas existentes en el
ambiente. Lo tipos de electrodos se dividen en dos grupos:
1 Memoria descriptiva
5
1.3.2.1 Electrodos internos
Los electrodos internos son insertados dentro del cuerpo humano y son principalmente
para uso clínico. El electrodo interno es típicamente un catéter aislado delgado y largo,
con un contacto metálico expuesto al final. Los más utilizados son los electrodos de aguja,
que se utilizan para registrar desde una unidad motora única hasta unas pocas unidades
motoras. Hay disponibles una amplia variedad de electrodos de aguja, sin embargo, el
más usado es el electrodo concéntrico.
Figura 1.1. Uso de un electrodo de aguja sobre un paciente (01 )
1.3.2.2 Electrodos de superficie
Los electrodos de superficie son aquellos que se colocan para estar en contacto con la piel
del paciente. Presentan diámetros que varían desde 0.3 hasta 0.5 cm y en algunos casos
hasta 1 cm. Los electrodos de superficie más comunes son los electrodos flotantes y los
electrodos flexibles
En los electrodos flotantes la parte metálica es un disco o una bolita de plata recubierta
con cloruro de plata, que entra en contacto eléctrico con la piel sólo a través de la pasta
electrolítica contenida en su cavidad. Cuando el paciente se mueve, la pasta electrolítica
permanece estática respecto al disco metálico. El electrodo flotante es estable y adecuado
para múltiples usos. En los electrodos flotantes desechables, la pasta electrolítica está
embebida en una esponja. La esponja está en contacto con la piel por una cara y por la
otra firmemente adherida al electrodo
Figura 1.2. Electrodos de superficie flotantes (02 )
1 Memoria descriptiva
6
Los electrodos flexibles son aquellos que se adaptan a las superficies del cuerpo. El
contacto con la piel es de mejor calidad, más firme y con mayor área de contacto. Como
consecuencia, los artefactos debidos al movimiento del paciente son minimizados.
Consiste en un material adhesivo sobre el cual se coloca una malla formada por finos
alambres flexibles de plata. También se fabrican con superficie de Mylar recubierta con
una capa de plata conectada al conductor que lleva la señal al instrumento de medida. La
pasta electrolítica se coloca sobre la malla o el Mylar.
Figura 1.3. Electrodos de superficie flexibles (03 )
1.3.3 Adquisición de Señales EMGS
Las señales EMGS (Electromiograma Superficial), son colectadas típicamente mediante
electrodos bipolares de superficie, ubicados sobre la piel. Estas señales proveen
información sobre la actividad neuromuscular que las origina.
Las señales EMGS son generadas por la contracción muscular, por lo que su adquisición
requiere de una correcta identificación de las regiones musculares comprometidas en la
ejecución de los movimientos a clasificar. Debido a la elevada resistencia eléctrica natural
de la piel, se recomienda la aplicación de un gel que mejore la conductividad además de
lograrse una buena superficie de contacto y adherencia con los electrodos. A pesar de
estas disposiciones, las señales recogidas serán demasiado débiles, por lo que se hace
necesario un procesamiento previo de filtraje y amplificación antes de su análisis. Así
mismo, según la complejidad de las prótesis será necesario disponer de un mayor o menor
número de canales o electrodos de recolección.
La amplitud típica de las señales EMGS es de 0-6 mV por lo que se requiere pasarlas
por un amplificador diferencial de alta ganancia, evitando distorsiones de la información
contenida en la señal. Una vez amplificada la señal, se debe considerar la eliminación de
las componentes de ruido de alta frecuencia y las componentes continuas ya que su canal
de información va de los 20 Hz a los 500 Hz, además de las provenientes de fuentes del
entorno, como la componente típica de ruido de baja frecuencia introducida por la red de
distribución eléctrica de 50 Hz. A continuación se puede observar un ejemplo de señal
EMGS una vez se han realizado las etapas de filtrado:
1 Memoria descriptiva
7
Figura 1.4. EMGS después de las etapas de filtrado (04 )
1.3.4 Posición y número de electrodos
El número de electrodos es muy variable, depende de la alteración neuromuscular a
estudiar, del músculo afectado, y de la extensión del estudio. Varía desde un solo
electrodo hasta una decena, en la mayoría de los casos. Todos los electrodos tienen un
cable que termina en un osciloscopio que registra todas las señales eléctricas.
El número de electrodos corresponde al número de canales a procesar y este es un
parámetro esencial en el desempeño del clasificador y en el número de movimientos
diferentes a identificar. Para desarrollar una prótesis bioeléctrica multifuncional, es
necesario extraer la mayor cantidad de información de cada canal. De esta forma, es
posible aumentar el número de movimientos diferentes a ejecutar en un sistema de
prótesis a partir de la disposición de un mayor número de canales. Sin embargo, cuanto
mayor sea el número de canales mayor será el retardo en la respuesta de la prótesis, debido
a la gran cantidad de información a procesar, y mayor será también la interferencia entre
canales.
La posición de los electrodos es muy importante en la recolección de registros EMGS con
propósitos de control mioeléctrico. Esta posición varía en función del musculo o grupo
muscular del cual se quiere obtener el EMGS. A continuación se puede observar un
esquema en el que se indican los puntos en los que se deben colocar lo electrodos para
realizar un estudio del movimiento de los diferentes dedos de una mano:
Figura 1.5. Ubicación de los electrodos para obtener la señal de los diferentes dedos (05 )
1 Memoria descriptiva
8
En el caso de realizar un estudio del movimiento de otro musculo o grupo muscular, se
deben colocar los electrodos en la zona donde se encuentra dicho musculo. A
continuación se puede observar una imagen en la que se representan los diferentes
músculos del antebrazo:
Figura 1.6. Músculos del antebrazo (06 )
Los músculos que se ven afectados al realizar un movimiento del tipo cerrar puño o abrir
puño son los músculos: flexor cubital del carpo y extensor cubital del carpo.
1.3.5 Tipos de prótesis
A la hora de escoger la prótesis a utilizar, se deben de tener en cuenta varios factores, cómo el nivel de amputación, el coste y la funcionalidad deseada de la misma. A continuación, se pueden observar los diferentes tipos de prótesis que existen y se explica brevemente las ventajas e inconvenientes que presentan.
1.3.5.1 Prótesis estéticas
Este tipo de prótesis, son prótesis pasivas, no tienen movilidad y sólo cubren el aspecto estético del miembro amputado. En su fabricación se emplean polímeros cómo el PVC rígido, el látex flexible o la silicona, ya que son materiales livianos y requieren de menos mantenimiento, ya que no disponen de piezas móviles. Tienen un coste reducido, sin embargo, la funcionalidad también es mínima.
Figura 1.7. Ejemplo de prótesis estética (07 )
1 Memoria descriptiva
9
1.3.5.2 Prótesis mecánicas
Estas prótesis cumplen funciones básicas cómo la apertura y el cierre de la mano, pero están limitadas al agarre de objetos grandes y movimientos imprecisos. El control mecánico se realiza mediante la compresión de otro miembro motriz del brazo, como pueden ser el codo o el hombro, para ello se implementa un arnés colocado en la espalda, con el cual se generará la movilidad de la prótesis a través de una liga.
1.3.5.3 Prótesis eléctricas
Las prótesis eléctricas se basan en el uso de motores eléctricos, que pueden ser controlados por medio de servo-controles, pulsantes o interruptores. Su principal desventaja es su mantenimiento, su alto coste, que su exposición a ambientes hostiles puede dañarlas y su peso. Por otro lado, su principal ventaja es el agarre de objetos rápidamente y con precisión de forma activa gracias a los sensores en los dedos.
Figura 1.8. Ejemplo de prótesis eléctrica (08 )
1.3.5.4 Prótesis neumática
Las prótesis neumáticas hacen uso de aire a presión obtenido por medio de un compresor. Su ventaja principal es que proporcionan una gran fuerza y rapidez de movimientos, mientras que sus desventajas principales son el tamaño de los dispositivos necesarios para el control y funcionamiento. También se debe destacar que su mantenimiento es costoso y dificultoso.
1.3.5.5 Prótesis mioeléctricas
Las prótesis mioeléctricas son en la actualidad las de mayor aplicación en el mundo, ya que aúnan estética, precisión y fuerza. Se basan en la obtención de señales musculares (EMG) mediante el uso de electrodos que permiten la extracción de la señal, la cual es amplificada, procesada y filtrada al control para el manejo de la prótesis. Las desventajas fundamentales son la necesidad de una fuente externa de energía eléctrica para la potencia, su peso y su coste.
1 Memoria descriptiva
10
Figura 1.9. Ejemplo de prótesis mioeléctrica (09 )
1.4 Programas de cálculo
Los programas de cálculo usados durante la realización de este proyecto han sido:
• PSIM
• AutoCAD
• Microsoft Excel
1.5 Abreviaturas
EMG: Electromiograma
DC: Corriente Continua
OA: Amplificador Operacional
IA: Amplificador de Instrumentación
FSR: Sensor de Fuerza Resistivo
1.6 Diseño del circuito para el acondicionamiento de la señal EMG
En este apartado se expondrán las etapas necesarias para acondicionar la señal EMG
obtenida a través de los electrodos para su correcta lectura mediante una de las entradas
analógicas del microcontrolador. En el siguiente diagrama se pueden apreciar estas etapas
y el orden que siguen:
Figura 1.10. Etapas de acondicionamiento de la señal EMG
1 Memoria descriptiva
11
1.6.1 Primera etapa de amplificación
Esta primera etapa de amplificación se llevará a cabo mediante un amplificador de
instrumentación INA114, que estará alimentado a ±18 V, mediante el uso de pilas de 9 V.
Las entradas diferenciales se conectarán a los electrodos situados en el músculo del
antebrazo en el que se puede obtener la señal EMG que indica el cierre o apertura de la
mano.
La salida de este Amplificador de Instrumentación se conectará en cascada a las diferentes
etapas de filtrado para el acondicionamiento de la señal EMG, mientras que el pin de
tierra se conectará a un tercer electrodo situado en un lugar que no se vea afectado por la
contracción del musculo del antebrazo. El lugar físico en el que se conectará este
electrodo es el codo.
Finalmente, y debido a que la amplitud máxima de la señal EMG puede variar
dependiendo de la situación de los electrodos o de la persona a la que están conectados,
se usará un potenciómetro de 500 Ω para regular de manera precisa la ganancia del IA a
la mayor posible sin que este llegue a un estado de saturación. Esta ganancia será de
alrededor de 400.
1.6.2 Etapa de filtro pasa altos
Esta etapa se encarga de rechazar las frecuencias menores de 20 Hz, ya que no aportan
información estudio de la señal EMG. El circuito se ha analizado en el apartado 2.1 y se
ha implementado de la siguiente manera:
Figura 1.11. Circuito de filtrado de las frecuencias bajas
Mediante el programa PSIM, se ha simulado el circuito de la figura 1.11 en el dominio
de la frecuencia para obtener el diagrama de Bode del filtro. A continuación se puede
observar dicho diagrama:
1 Memoria descriptiva
12
Figura 1.12. Diagrama Bode referente al filtro pasa altos
En este diagrama se puede observar que la frecuencia de corte del filtro es de 20,11 Hz,
prácticamente igual a la calculada en el apartado 2.1, que era de 20,096 Hz.
1.6.3 Etapa de filtro pasa bajos
Esta etapa se encarga de rechazar las frecuencias mayores de 500 Hz, debido a que en
este rango de frecuencias, no se encuentra la información de la señal EMG, pero si
interferencias que podrían hacer que la lectura fuese errónea. El circuito se ha analizado
en el apartado 2.2 y se ha implementado de la siguiente manera:
Figura 1.13. Circuito de filtrado de las frecuencias altas
De la misma manera que en el apartado anterior, se ha simulado este circuito en el
dominio de la frecuencia mediante el programa PSIM. A continuación se puede observar
el resultado obtenido:
1 Memoria descriptiva
13
Figura 1.14. Diagrama Bode referente al filtro pasa bajos
En este diagrama se puede observar que la frecuencia de corte del filtro es de 510,6 Hz,
un valor muy cercano al calculado en el apartado 2.2, que era de 511,54 Hz.
1.6.4 Etapa de filtro Notch
Este es el último filtro de la etapa de filtrado de la señal EMG y es el encargado de
eliminar las interferencias de 50 Hz que son producidas por la red de alimentación
eléctrica. Este filtro es necesario ya que esta interferencia tiene una magnitud mayor que
la de la señal EMG, por lo que opacaría la señal que se está intentando obtener. A
continuación se puede ver el circuito electrónico que se ha analizado en el apartado 2.3
para llevar a cabo esta tarea:
Figura 1.15. Circuito de filtrado de la frecuencia de 50 Hz
Este circuito también ha sido analizado mediante el programa PSIM, y el diagrama de
Bode que se ha obtenido en este caso tiene la forma siguiente:
1 Memoria descriptiva
14
Figura 1.16. Diagrama Bode referente al filtro Notch
En este diagrama se puede observar que la frecuencia central del filtro es de 49,75 Hz,
mientras que las frecuencias laterales son de 20,56 Hz y 120, 28 Hz. Se puede comprobar
que estos valores son prácticamente iguales a los que se han calculado en el apartado 2.3,
que son de 49,74 Hz para la frecuencia central del filtro y 20,6 Hz y 120 Hz para las
frecuencias de corte.
1.6.5 Pruebas del conjunto de los 3 filtros
Una vez se han implementado los tres filtros anteriores conectados en cascada, se puede
obtener el diagrama Bode del conjunto del mismo modo que se ha hecho anteriormente
en cada uno de ellos. A continuación se puede ver el circuito usado en PSIM para la
simulación de este diagrama:
Figura 1.17. Circuito electrónico de las 3 etapas de filtrado
Simulando este circuito en frecuencia des de 2 Hz (una década por debajo de la frecuencia
mínima) hasta 5000 Hz (una década por encima de la frecuencia máxima), se ha obtenido
el siguiente diagrama Bode:
1 Memoria descriptiva
15
Figura 1.18. Diagrama Bode las 3 etapas de filtrado
En el diagrama anterior se pueden diferenciar 2 zonas que están cerca de la ganancia
unitaria, se diferenciarán la zona 1, referente a las frecuencias entre 15 Hz y 40 Hz
aproximadamente y la zona 2, referente a las frecuencias entre 70 Hz y 600 Hz
aproximadamente.
Para ver el comportamiento físico de este circuito, se han realizado pruebas en el
laboratorio. Se ha usado un generador de funciones, mediante el cual se ha generado una
onda senoidal de la amplitud mínima que permite el generador y además se ha realizado
una atenuación de 20 dB, para poder captar el ruido ambiental. A continuación se puede
ver dicha onda:
Figura 1.19. Onda senoidal obtenida del generador de funciones
Tras realizar una amplificación por 400 aproximadamente (mediante el IA), se han
obtenido los puntos de máxima tensión de las dos zonas del Bode de la Figura 1. El punto
de máxima tensión de la zona 1, se encuentra a una frecuencia de 19,9 Hz y tiene una
amplitud de pico a pico de 3,68 V.
1 Memoria descriptiva
16
Figura 1.20. Tensión de salida de las etapas de filtrado a 19,9 Hz
Se calcula el punto de -3dB respecto a este punto y se obtiene el valor de 2,6 V. Si se
realiza una búsqueda de estos puntos cerca de la zona 1 del diagrama Bode, se pueden
obtener las frecuencias de 11,26 Hz y 29,98 Hz, que serán los límites de la zona 1.
Figura 1.21. Tensión de salida de las etapas de filtrado a 11,26 Hz
Figura 1.22. Tensión de salida de las etapas de filtrado a 29,98 Hz
1 Memoria descriptiva
17
Se ha realizado el mismo procedimiento de obtención del punto de tensión máxima para
la zona 2. En este caso se encuentra a una frecuencia de 352 Hz y tiene una tensión de
8,56 V.
Figura 1.23. Tensión de salida de las etapas de filtrado a 352 Hz
Al calcular el punto de los -3 dB, se obtiene el valor de tensión de 6,05 V. Las frecuencias
de la zona 2 con dicha tensión son 596 Hz y 154,8 Hz. A continuación se pueden ver
dichas tensiones:
Figura 1.24. Tensión de salida de las etapas de filtrado a 596 Hz
1 Memoria descriptiva
18
Figura 1.25. Tensión de salida de las etapas de filtrado a 154,8 Hz
También se ha realizado un muestreo para comprobar la atenuación que se produce en
una señal de 50 Hz. La señal obtenida es de unos 100 mV de pico a pico, muy pequeña
en comparación a las señales de entre 2 V y 8 V que se obtienen a otras frecuencias.
Figura 1.26. Tensión de salida de las etapas de filtrado a 50 Hz
Una vez se ha comprobado el funcionamiento de los filtros para diferentes frecuencias,
se ha cambiado la fuente de entrada del generador de funciones a la medida de la señal
EMG. La primera señal que se obtenida ha sido la de la mano en reposo. A continuación
se puede ver dicha señal:
1 Memoria descriptiva
19
Figura 1.27. Señal EMG con la mano en reposo
Se puede ver que la señal en reposo tiene una amplitud muy pequeña, de unos 80 mV de
pico a pico. Tras comprobar la señal en reposo, se han generado una serie de cambios de
estado en la apertura de la mano (cerrar-abrir-cerrar-etc). A continuación se puede ver un
conjunto de movimientos cerrar-abrir:
Figura 1.28. Señal EMG correspondiente a un cierre y apertura de la mano
En esta señal se puede apreciar notablemente el cambio que se produce en la tensión al
realizar un cambio de estado, en este caso se pueden encontrar tensiones de pico a pico
de hasta 1,2 V y de una duración aproximada de entre 250 y 300 ms. También cabe
destacar que el cambio de estado de abrir la mano es menor que el cambo de estado
producido al cerrarla. Se marca el límite para realizar una distinción de cambio de estado
a las señales que varíen en 200 mV respecto el punto medio.
1 Memoria descriptiva
20
1.6.6 Etapa sumadora no inversora y segunda etapa de amplificación
Esta etapa se encarga de sumar a la señal EMG un offset y una amplificación para adecuar
dicha señal a los parámetros de las entradas analógicas del microcontrolador. El circuito
se ha analizado en el apartado 2.4, y se ha montado del siguiente modo:
Figura 1.29. Circuito amplificador sumador no inversor con los valores definitivos
Mediante este circuito se pueden calcular las tensiones de entrada del microcontrolador
que marcarán los límites para analizar el cambio de estado. Anteriormente se han definido
estos límites como ± 200 mV respecto la tensión central. Las tensiones a las que se
programarán los límites son 3,33 V y 1,79 V.
1.7 Diseño del circuito para la actuación sobre la pinza robótica
El diseño de los circuitos para el control de la pinza, se ha dividido en 3 partes, en la
primera parte se explica el circuito que permite realizar una inversión de giro, que será
necesario para que la pinza pueda abrir y cerrar; la segunda parte es el circuito mediante
el cual se obtiene el consumo del motor, que permitirá que se deje de actuar sobre el motor
cuando este realice algún sobreesfuerzo; y la tercera parte es el circuito de los sensores
de fuerza resistivos y el potenciómetro que permite la regulación de la presión realizada
sobre un objeto.
1.7.1 Puente en H para la inversión de giro
Para realizar la inversión de giro en un motor DC, es necesario un circuito electrónico
que permita cambiar la polaridad de la tensión de alimentación. Este circuito se denomina
puente en H debido a su forma y permite realizar esta inversión de una manera muy
simple, cuatro transistores que se polarizan dos a dos para permitir el paso del corriente
en un sentido u otro. A continuación se puede observar una imagen de este circuito:
1k
3,3
3,9k
1M
1M
VEMG
100k
Vo
15k
1 Memoria descriptiva
21
Figura 1.30. Puente en H para la inversión de giro del motor DC (10 )
Para implementar este circuito se usarán 4 resistores de 1 kΩ y se dispondrán en la imagen
sustituyendo R1, R2, R3 y R4. Las tensiones V1, V2, V3 y V4 se conectarán a los pines
de salida digitales 4, 7, 12 y 8 del Arduino respectivamente, de esta manera, cuando se
activen los pines digitales 4 y 12, estando los pines 7 y 8 desactivados, el motor girará en
un sentido y cuando se activen los pines 7 y 8 del Arduino, estando los otros dos
desactivados, el motor girará en el otro sentido. Los 4 transistores que se usarán en el
montaje de este puente en H serán del tipo PN2222, mientras que los diodos colocados
en antiparalelo, que son necesarios para proteger a los demás componentes ante
sobretensiones y corrientes inversas, serán del tipo 1N4007.
1.7.2 Corriente consumida por el motor
Para obtener el consumo del motor, se usará una resistencia de sensado de 10 mΩ, en la
que se generará una caída de tensión proporcional a la corriente consumida por el motor
y a través de un Amplificador de Instrumentación, se amplificará dicha tensión para que
el microcontrolador pueda operar con ella. La ganancia del amplificador de
instrumentación se ha determinado en el apartado 2.5 de la memoria de cálculos. Esta
ganancia será de 834 y se obtiene mediante una resistencia equivalente de 60 Ω conectada
entre los pines 1 y 8 del IA. Los pines 7 y 4 del IA se conectarán a las tensiones de
alimentación de +9 V y -9 V respectivamente, que son generadas por las dos pilas de 9 V
que alimentan el conjunto del circuito y generan los niveles de tensión 9 V, 0 V y -9 V.
El consumo del motor aumenta cuando aumenta el par, por lo que con la medida de
corriente del motor, podemos estimar cuando se está realizando una fuerza excesiva ya
sea al abrir o al cerrar la pinza. Durante el cierre de la pinza, el consumo puede aumentar
cuando se está cogiendo un objeto o cuando se ha cerrado del todo, mientras que durante
la apertura, el consumo aumentará sólo en el caso en el que la pinza está completamente
abierta.
1 Memoria descriptiva
22
1.7.3 Sensores de fuerza resistivos
Para medir la presión que realiza la pinza, sobre el objeto que se desea coger, se instalarán
dos sensores de fuerza resistivos FSR. Un sensor se ubicará en la punta de la pinza y el
otro en el medio, para poder detectar diferentes tamaños y formas de objetos. Se puede
observar en el datasheet de estos sensores que la resistencia no varía linealmente respecto
a la presión realizada, a continuación se puede observar un gráfico donde se han
representado unos datos otorgados por el fabricante:
Figura 1.31. Gráfico de la resistencia del FSR respecto la presión
En el datasheet también se puede encontrar una recomendación de conexión del fabricante
del sensor. Recomienda realizar un divisor de tensión entre la alimentación del Arduino
a 5 V y 0 V, y usando un resistor de 220 kΩ (11 ). A continuación se puede observar el
circuito mencionado:
Figura 1.32. Esquema de conexión de los FSRs (11 )
0
50
100
150
200
250
300
350
400
0 0.2 0.4 0.6 0.8 1 1.2
Res
iste
nci
a (kΩ)
Presión (kg)
Resistencia-presión del FSR
1 Memoria descriptiva
23
Con esta conexión, se puede obtener el gráfico de la tensión obtenida a la entrada
analógica del Arduino mediante la fórmula del divisor de tensión:
𝑉𝑎 = 5 𝑉𝑅𝐹𝑆𝑅
220 𝑘 + 𝑅𝐹𝑆𝑅 (1.1)
Figura 1.33. Gráfico de la tensión del FSR respecto la presión
Para poder controlar y regular la presión a la que se debe detener el motor sin la necesidad
de realizar cambios en la programación del microcontrolador, se instalará un
potenciómetro que actuará como divisor de tensión entre la alimentación del Arduino a
5 V y 0 V, conectando el pin restante a una entrada analógica del mismo Arduino. De este
modo, mediante la variación de la resistencia del potenciómetro, se podrá cambiar el valor
con el que se comparan las entradas de los FSRs para regular la presión realizada por la
pinza sobre el objeto.
1.8 Programación de los microcontroladores
En este apartado se encuentra el código de los dos microcontroladores Arduinos NANO
que se encargan de controlar cada uno de los sistemas del modelo, por una parte, el
sistema de obtención de la señal EMG y por otra parte el sistema de control de giro del
motor y la presión que se realiza. También se evalúan las conexiones de estos Arduino
NANO con los módulos bluetooth HC-05 para su comunicación y los pasos a seguir para
enlazar ambos módulos.
1.8.1 Microcontrolador del conjunto sensor “brazo”
Este microcontrolador es el encargado de obtener la señal EMG i realizar una
comparación para determinar cuándo se ha realizado un cambio de estado en la actuación
muscular de la mano (abierta-cerrada o cerrada-abierta). Existen dos variables en este
0
1
2
3
4
5
6
0 0.2 0.4 0.6 0.8 1 1.2
Vo
ltag
e (V
)
Presión (kg)
Voltage-presión del FSR
1 Memoria descriptiva
24
programa: la variable Vfiltro, en la que se guarda el valor de la señal EMG después de
que esta se haya convertido de analógica a digital (el valor de esta variable será entero y
estará entre 0 y 1023); la otra variable del programa gestiona el estado actual de los dos
posibles (mano abierta y mano cerrada), inicialmente se define como abierta.
En el bucle principal, se lee la tensión de la señal EMG y si esta supera los 3,33 V o es
inferior a los 1,79 V el programa cambia el bit que se envía por bluetooth y el estado.
Entonces se realiza un delay de 300 ms para que los diversos picos del mismo cambio de
estado de la señal EMG no generen diversos cambios de estado en el programa.
1.8.2 Microcontrolador del conjunto motriz “pinza”
Para la programación del Arduino NANO que controla el sentido de giro del motor, se ha
usado como base el diagrama de estados de Moore. En el siguiente diagrama se pueden
apreciar los estados que se han tenido en cuenta y las salidas que produce el
microcontrolador a cada estado. En la parte superior izquierda de cada estado se encuentra
el nombre del estado mientras que en la parte inferior derecha se encuentran las salidas
del microcontrolador que corresponden a los cuatro bits que, definidos a 1 (salida
activada) o 0 (salida no activada), polarizan cada uno de los cuatro transistores,
controlando así el sentido de giro del motor.
Figura 1.34. Diagrama de estados de la programación del Arduino de la pinza
1.8.3 Comunicación Bluetooth entre los microcontroladores
La comunicación Bluetooth ha sido la seleccionada para realizar la comunicación entre
los microcontroladores que se usan en este proyecto. El módulo hc-05 nos permite realizar
este tipo de comunicación. A continuación se puede ver una imagen en la que se muestra
el conexionado de un Arduino NANO con un módulo Bluetooth hc-05. La conexión que
se muestra en la figura a los pines D3 y D2 del Arduino NANO, también se puede realizar
a los pines Tx i Rx del mismo Arduino respectivamente, que es el tipo de conexión que
se ha realizado en este proyecto.
1 Memoria descriptiva
25
Figura 1.35. Conexionado de un Arduino NANO con un módulo bluetooth hc-05 (12 )
Antes de realizar este conexionado, se deben configurar ambos módulos Bluetooth para
que se establezca una comunicación entre ellos del tipo Maestro-Esclavo, en la cual el
microcontrolador referente a la obtención de la señal EMG será el maestro y el de control
de la pinza el esclavo. Para realizar esta configuración, se debe cambiar al modo de
comandos AT y para ello se debe conectar el pin EN del módulo bluetooth a 5 V y se
deben intercambiar las conexiones de los pines Rx y Tx, conectando así el pin Rx del
Arduino al pin Rx del módulo bluetooth y el pin Tx del Arduino al pin Tx del módulo
bluetooth. A continuación se pueden ver estos cambios para la configuración, en este caso
en un Arduino MEGA.
Figura 1.36. Conexionado del módulo bluetooth hc-05 para cambiar al modo de comandos AT (13 )
Una vez realizados estos cambios, se debe cargar un fichero vacío en el microcontrolador
y pulsar el botón del módulo bluetooth hasta que el LED de este módulo se encienda y
apague cada 2 segundos. Entonces se debe acceder al monitor serie a través del programa
de Arduino.
1 Memoria descriptiva
26
Para configurar el módulo que hará de esclavo, se debe introducir el comando
“AT+ROLE=0”. Una vez introducido este comando, ya se ha configurado el módulo
como esclavo, ahora, con el comando “AT+ADDR?” obtenemos la dirección de este
módulo, que en el módulo usado para este proyecto es 98d3:32:21290b. Así queda
configurado este módulo bluetooth.
Para realizar la configuración del módulo que hará de maestro, se debe introducir el
comando “AT+ROLE=1”. Al introducir este comando, ya se ha configurado como
maestro, ahora, con el comando “AT+CMODE=0” se define el modo de conexión a
dirección fija, esto significa que sólo se podrá comunicar con el módulo con la dirección
que se le indique y para ello se debe usar el comando “AT+BIND=98D3,32,21290B”.
Podemos observar que la dirección introducida en el último comando es la misma
dirección que la obtenida del módulo esclavo.
Finalmente, se debe restaurar la conexión inicial entre el módulo bluetooth y el
microcontrolador, es decir, con los pines Rx y Tx del módulo hc-05 conectados a los pines
Tx y Rx del Arduino respectivamente.
2 Memoria de cálculos
27
2 Memoria de cálculos En este apartado se desarrollarán los cálculos de los diferentes circuitos electrónicos que
forman el modelo final. Por una parte, las etapas de filtrado y amplificación de la señal
EMG y, por otra parte, la amplificación de la caída de tensión en la Rsens para obtener la
corriente del motor.
2.1 Filtro pasa altos a 20 Hz
Para desarrollar el filtro pasa altos para la señal EMG, se propone el modelo de 2º orden
Sallen Key, que tiene la siguiente forma:
Figura 2.1. Filtro paso altos Sallen Key de segundo orden
Este circuito se puede simplificar en el caso en el que la ganancia deseada de la etapa sea
igual a 1. En el caso del modelo que se está diseñando ya existen etapas de amplificación,
por lo que se usará la versión simplificada:
Figura 2.2. Filtro paso altos Sallen Key de segundo orden con ganancia unitaria
C1
ViVo
C2
R1
R2
RbRa
C
ViVo
C
R1
R2
Rb
2 Memoria de cálculos
28
Para estos cálculos, se tomará el modelo de amplificador operacional ideal. Esto significa
que la corriente de entrada al amplificador será 0 en sus dos terminales y, por cortocircuito
virtual, la tensión de ambos terminales será igual. Siguiendo estas premisas y aplicando
la transformación de Laplace, podemos obtener las siguientes ecuaciones:
𝐼1 =𝑉𝑖 − 𝑉1
1𝐶𝑠
= 𝐶𝑠 · (𝑉𝑖 − 𝑉1) (2.1)
𝐼2 =𝑉1 − 𝑉𝑂
𝑅1 (2.2)
𝐼3 =𝑉𝑜
𝑅2 (2.3)
𝐼1 = 𝐼2 + 𝐼3 (2.4)
𝑉1 = 𝑉𝑜 (𝑅2 +
1𝐶𝑠
𝑅2) (2.5)
Una vez se han obtenido estas ecuaciones, se procede a simplificarlas. Primero se
substituyen las ecuaciones (2.1), (2.2) y (2.3) en la ecuación (2.4):
𝐶𝑠 · (𝑉𝑖 − 𝑉1) =𝑉1 − 𝑉𝑜
𝑅1+
𝑉𝑜
𝑅2 (2.6)
Después se substituye la ecuación (2.5) en la ecuación (2.6), para obtener:
𝐶𝑠 · (𝑉𝑖 − 𝑉𝑜 (𝑅2 +
1𝐶𝑠
𝑅2)) =
𝑉𝑜 (𝑅2 +
1𝐶𝑠
𝑅2) − 𝑉𝑜
𝑅1+
𝑉𝑜
𝑅2
(2.7)
Mediante la simplificación de la ecuación (2.7) se puede obtener la función de
transferencia de esta etapa de filtrado:
𝑉𝑜
𝑉𝑖(𝑠) =
𝑠2
𝑠2 + 2𝑠 ·1
𝐶 · 𝑅2+
1𝐶2 · 𝑅1 · 𝑅2
(2.8)
2 Memoria de cálculos
29
Una vez obtenida la función de transferencia, se debe escoger la aproximación que se
usará para el diseño del filtro. Esta aproximación definirá principalmente la forma que
tendrá el diagrama de Bode del filtro. Se ha escogido la aproximación de Butterworth,
para la cual los parámetros Q y k toman los valores (√2)-1 y 1 respectivamente. A
continuación, se pueden observar las fórmulas que definen los valores de resistencias y
condensadores del filtro:
𝑚 =1
2 · 𝑄 (2.9)
𝑅1 =𝑚
2𝜋𝑓𝑐 · 𝐶 (2.10)
𝑅2 =𝑅1
𝑚2 (2.11)
Ahora se debe fijar el valor de una de las variables (R1, R2, C) a uno normalizado y
calcular el valor de las otras dos a partir de este. Se propone el valor C = 1 µF. De esta
manera, el valor de la resistencia 1 debería ser R1 = 5626,98 Ω. Al no ser este un valor
normalizado, se busca el valor más cercano que si lo sea, R1 = 5600 Ω. Finalmente se
calcula el valor de la resistencia 2 a partir del valor normalizado de R1, R2 = 11200 Ω.
Por motivos de diseño, Rb debe ser igual a R2, entonces Rb = R2 = 11200 Ω.
Con estos nuevos valores de condensador y resistencias, se calcula la que será la nueva
frecuencia de corte del filtro:
𝑓𝑐 =𝑚
2𝜋𝑅1 · 𝐶 (2.12)
Sustituyendo los valores correspondientes en la ecuación (2.12), se comprueba que la
nueva frecuencia de corte es fc = 20,096 Hz.
2.2 Filtro pasa bajos a 500 Hz
Para desarrollar el filtro pasa bajos para la señal EMG, se propone el modelo de 2º orden
Sallen Key, que tiene la siguiente forma:
2 Memoria de cálculos
30
Figura 2.3. Filtro paso bajos Sallen Key de segundo orden
De la misma manera que en el caso anterior, este circuito se puede simplificar en el caso
en el que la ganancia deseada de la etapa sea igual a 1. En este caso, el circuito
simplificado es:
Figura 2.4. Filtro paso altos Sallen Key de segundo orden con ganancia unitaria
Para estos cálculos, se tomará el modelo de amplificador operacional ideal. Esto significa
que la corriente de entrada al amplificador será 0 en sus dos terminales y, por cortocircuito
virtual, la tensión de ambos terminales será igual. Siguiendo estas premisas y aplicando
la transformación de Laplace, podemos obtener las siguientes ecuaciones:
𝐼1 =𝑉𝑖 − 𝑉1
𝑅 (2.13)
𝐼2 =𝑉1 − 𝑉𝑂
1𝐶1𝑠
(2.14)
C1
ViR1
RbRa
R2
C2
Vo
C1
ViR
Rb
R
C2
Vo
2 Memoria de cálculos
31
𝐼3 =𝑉𝑜
(1
𝐶2𝑠)
(2.15)
𝐼1 = 𝐼2 + 𝐼3 (2.16)
𝑉1 = 𝑉𝑜 (𝑅 +
1𝐶2𝑠
1𝐶2𝑠
) (2.17)
Una vez se han obtenido estas ecuaciones, se procede a simplificarlas. Primero se
substituyen las ecuaciones (2.13), (2.14) y (2.15) en la ecuación (2.16):
𝑉𝑖 − 𝑉1
𝑅=
𝑉1 − 𝑉𝑂
1𝐶1𝑠
+𝑉𝑜
(1
𝐶2𝑠)
(2.18)
Después se substituye la ecuación (2.17) en la ecuación (2.18), para obtener:
𝑉𝑖 − 𝑉𝑜 (𝑅 +
1𝐶2𝑠
1𝐶2𝑠
)
𝑅=
𝑉𝑜 (𝑅 +
1𝐶2𝑠
1𝐶2𝑠
) − 𝑉𝑂
1𝐶1𝑠
+𝑉𝑜
(1
𝐶2𝑠)
(2.19)
Mediante la simplificación de la ecuación (2.19) se puede obtener la función de
transferencia de esta etapa de filtrado:
𝑉𝑜
𝑉𝑖(𝑠) =
1𝑅2 · 𝐶1 · 𝐶2
𝑠2 + 2𝑠 ·1
𝑅 · 𝐶1+
1𝑅2 · 𝐶1 · 𝐶2
(2.20)
Para el cálculo de los valores de resistencias y condensadores de este filtro, se ha
escogido, igual que en el caso anterior, la aproximación de Butterworth, para la cual los
parámetros Q y k toman los valores (√2)-1 y 1 respectivamente.
𝑚 =1
2 · 𝑄 (2.21)
𝑅 =1
2𝜋𝑓𝑐 · 𝑚 · 𝑘 · 𝐶1 (2.22)
2 Memoria de cálculos
32
𝐶2 = 𝑚2 · 𝐶1 (2.23)
De la misma manera que en el caso anterior, se debe fijar el valor de una de las variables
(R, C1, C2) a uno normalizado y calcular el valor de las otras dos a partir de este. Se
propone el valor C1 = 20 nF. De esta manera, el valor de la resistencia debería ser R =
22,508 kΩ. Al no ser este un valor normalizado, se busca el valor más cercano que si lo
sea, R = 22 kΩ. Finalmente se calcula el valor del condensador 2 a partir del valor de C1,
C2 = 10 nF.
Por motivos de diseño, Rb debe ser el doble que R, entonces Rb = 2·R = 44 kΩ.
Con estos nuevos valores de condensador y resistencias, se calcula la que será la nueva
frecuencia de corte del filtro:
𝑓𝑐 =1
2𝜋𝐶1 · 𝑚 · 𝑅 (2.24)
Sustituyendo los valores correspondientes en la ecuación (2.24), se comprueba que la
nueva frecuencia de corte es fc = 511,54 Hz.
2.3 Filtro Notch a 50 Hz
Después de pasar por los dos filtros desarrollados anteriormente, la señal se ha acotado
entre los rangos de frecuencia en que se puede obtener el EMG, pero aún existe una
interferencia que puede hacer que la lectura de la señal sea errónea. Esta interferencia es
producida por la red de alimentación eléctrica, que es de 50 Hz. Para poder eliminar la
señal de esta frecuencia, se debe implementar un filtro rechaza banda, que en el caso de
las frecuencias de red se denomina Notch. A continuación podemos ver una imagen de
un filtro Notch activo:
Figura 2.5. Filtro Notch activo
Vi
C
Vo
CV1
R V2 R
2C
R/2
2 Memoria de cálculos
33
Si se analiza este circuito, se pueden obtener las siguientes ecuaciones:
2𝐶𝑠𝑉2 =𝑉𝑖 − 𝑉2
𝑅+
𝑉𝑜 − 𝑉2
𝑅 (2.25)
𝐶𝑠(𝑉𝑖 − 𝑉1) =2(𝑉1 − 𝑉𝑜)
𝑅+ 𝐶𝑠(𝑉1 − 𝑉𝑜) (2.26)
𝑉𝑜 − 𝑉2
𝑅= 𝐶𝑠(𝑉1 − 𝑉𝑜) (2.27)
El siguiente paso para obtener la función de transferencia de ese filtro es aislar V2 de la
ecuación (2.25), aislar V1 de la ecuación (2.26) y substituir ambos resultados en la
ecuación (2.27).
𝑉2 =𝑉𝑖 + 𝑉𝑜
2(𝑅𝐶𝑠 + 1) (2.28)
𝑉1 =𝑅𝐶𝑠𝑉𝑖 + 2𝑉𝑜 + 𝑅𝐶𝑠𝑉𝑜
2(𝑅𝐶𝑠 + 1) (2.29)
𝑉𝑜 − (𝑉𝑖 + 𝑉𝑜
2(𝑅𝐶𝑠 + 1))
𝑅= 𝐶𝑠 ((
𝑅𝐶𝑠𝑉𝑖 + 2𝑉𝑜 + 𝑅𝐶𝑠𝑉𝑜
2(𝑅𝐶𝑠 + 1)) − 𝑉𝑜) (2.30)
Mediante la simplificación de la ecuación (2.30) se puede obtener la función de
transferencia de esta etapa de filtrado:
𝑉𝑜
𝑉𝑖(𝑠) =
𝑠2 +1
𝑅2𝐶2
𝑠2 + 2𝑠1
𝑅𝐶 +1
𝑅2𝐶2
(2.31)
𝜔0 =1
𝑅𝐶 (2.32)
Se define 𝜔0 como la frecuencia central del filtro notch. Para obtener el valor de R que
deberá tener el filtro, se define f0 = 50 Hz y C = 0,1µF y aplicar la formula (2.23). Así se
determina que el valor de resistencia debe ser 31,83 kΩ. Debido a que este valor no es un
valor normalizado de resistencia se puede tomar el valor de 33 kΩ, pero para augmentar
la precisión de este filtro, se ha decidido usar dos resistores en serie de 22 kΩ y 15 kΩ,
obteniendo así un valor de resistencia equivalente de 32 kΩ. Con este valor de resistencia
se puede calcular la nueva frecuencia central del filtro, f0 = 49,74 Hz.
2 Memoria de cálculos
34
Para obtener las frecuencias de corte, que son las frecuencias extremo de la banda
eliminada, se deben encontrar los puntos en los que el módulo de la función de
transferencia toma el valor √2/2. Para ello se debe substituir s por 𝑗𝜔.
𝑉𝑜
𝑉𝑖
(𝑗𝜔) =√2
2=
(𝑗𝜔)2 + 𝜔02
(𝑗𝜔)2 + 2𝑗𝜔𝜔0 + 𝜔02 (2.33)
√2
2=
𝜔02 − 𝜔2
√(𝜔02 − 𝜔2)2 + (2𝜔𝜔0)2
(2.34)
Al simplificar la ecuación (2.34) se obtiene la siguiente ecuación bicuadrada, que se
resolverá mediante la fórmula para resolver ecuaciones de segundo grado:
𝜔4 − 6𝜔02𝜔2 + 𝜔0
4 = 0 (2.35)
𝜔2 =6𝜔0
2 ± √(−6𝜔02)2 − 4𝜔0
4
2 (2.36)
𝜔 = ±√𝜔02
6
2± 𝜔0
2 √32
2 (2.37)
De las cuatro soluciones que se pueden obtener en esta ecuación, se descartan las dos
negativas. Finalmente se obtiene la fórmula para calcular las frecuencias de corte:
𝜔 = 𝜔0√3 ± 2√2 (2.38)
Substituyendo el valor de frecuencia central obtenido anteriormente, se pueden obtener
los dos valores de frecuencia de corte: f1 = 20,6 Hz y f2 = 120 Hz.
2.4 Amplificador sumador no inversor
Una vez filtrada la señal EMG, y debido a que la entrada analógica al Arduino NANO
debe tener una tensión entre 0V y 5V, se debe aplicar un offset a la señal filtrada de
aproximadamente 2,5V. También se debe realizar una segunda amplificación de esta
señal ya que después de las etapas de filtrado, esta tiene una tensión máxima de pico a
pico de unos 1,2 V. Si usamos el modelo de circuito del amplificador sumador no
inversor, se pueden llevar a cabo estas dos operaciones en una misma etapa. A
continuación, podemos ver el circuito electrónico correspondiente a este modelo:
2 Memoria de cálculos
35
Figura 2.6. Circuito amplificador sumador no inversor
Si se analiza el circuito, siendo V1 la tensión obtenida a la salida de los filtros y V2 la
tensión de offset, se pueden obtener las siguientes ecuaciones:
𝑉1 − 𝑉𝐸
𝑅1=
𝑉𝐸 − 𝑉2
𝑅2 (2.39)
𝑉𝐸 = 𝑉𝑜
𝑅4
𝑅3 + 𝑅4 (2.40)
Para simplificar este desarrollo, se pueden igualar los valores de resistencia de los
resistores que están conectados a las entradas de tensión que se deben sumar y, para que
estos no influyan en los circuitos anteriores, deben ser de alta impedancia. Así, se definen
los valores R1 = R2 = 1 MΩ. Una vez se aplica este cambio, se puede aislar VE en la
ecuación (2.39) y entonces substituir el resultado en la ecuación (2.40):
𝑉𝐸 =𝑉1 + 𝑉2
2 (2.41)
𝑉𝑜 =(𝑅3 + 𝑅4)(𝑉1 + 𝑉2)
2𝑅4 (2.42)
𝑉𝑜 =(𝑅3 + 𝑅4)
2𝑅4𝑉1 +
(𝑅3 + 𝑅4)
2𝑅4𝑉2 (2.43)
Se puede observar que la tensión a la salida de esta etapa depende de una componente
continua (la señal de offset: V2) y una componente alterna (la señal EMG: V1), que se
pueden analizar por separado mediante la superposición.
Para definir el valor de la ganancia de esta etapa, que viene marcada por los valores de
resistencia R1 y R2, se usará la componente alterna, que como se ha comentado
anteriormente tiene una tensión máxima de pico a pico de aproximadamente 1,2 V. Esta
componente, una vez amplificada, no puede superar el límite que permite la entrada del
microcontrolador, que es de 5 V de pico a pico.
VE
R1
V2R2
Vo
R3
V1
R4
2 Memoria de cálculos
36
𝐴 =𝑉𝑜
𝑉1=
(𝑅3 + 𝑅4)
2𝑅4=
5 𝑉
1,2 𝑉= 4,167 (2.44)
𝑅3
𝑅4= 7,33 (2.45)
Para tener un pequeño margen, se usarán valores de resistencia comerciales que resulten
en una ganancia menor a la indicada en la ecuación (2.45). Los valores elegidos han sido:
R3 = 100 kΩ y R4 = 15 kΩ. De esta manera, se obtiene una ganancia de 3,83.
Una vez definida esta ganancia, se debe calcular el valor constante de V2 para que la señal
tenga un offset de 2,5 V. Para este offset se usará un divisor de tensión entre 3,3 V, que
es una de las salidas de tensión del microcontrolador, y 0 V.
Figura 2.7. Divisor de tensión con los datos de la etapa
Podemos ver a continuación el cálculo del valor V2 (2.46) y la ecuación del divisor de
tensión (2.47):
𝑉2 =𝑉
𝐴=
2,5
3,83= 0,652 𝑉 (2.46)
𝑉2 = 3,3 𝑉𝑅6
𝑅5 + 𝑅6 (2.47)
Sustituyendo en la ecuación (2.47) el valor de V2 que se ha calculado en la ecuación
(2.46), se puede obtener la siguiente relación entre los valores de resistencia R5 y R6:
𝑅5
𝑅6= 4,06 (2.48)
3,3
R5
V2
R6
2 Memoria de cálculos
37
Una vez obtenida esta relación, se deben buscar valores de resistencia comerciales que
resulten en valor próximo al calculado en la ecuación (2.48). Los valores elegidos han
sido: R5 = 3,9 kΩ y R6 = 1 kΩ. Con estos valores de resistencia, se obtiene una tensión
V2 de 0,673 V.
Finalmente, una vez se han calculado todos los elementos de este amplificador sumador
no inversor y utilizando la ecuación (2.43), se puede observar que la señal a la entrada
analógica del microcontrolador se encuentra dentro del rango que este admite, ya que
tomará valores en el siguiente rango aproximado:
𝑉𝑜 ≈ 3,83𝑉1 + 3,83𝑉2 ≈ 2,58 ± 2,3 𝑉 (2.49)
2.5 Amplificación de la lectura de corriente del motor
Para realizar la lectura de corriente consumida por el motor, se usa una resistencia de
sensado de 10 mΩ cuyos terminales están conectados a las entradas de un amplificador
de instrumentación. La salida de este IA se conectará a una de las entradas analógicas del
Arduino NANO que, cómo se ha comentado anteriormente, admite tensiones de entre 0V
y 5V.
Para calcular la resistencia que se conectará entre los terminales 1 y 8 del IA, que definirá
la amplificación que se llevará a cabo en esta etapa, se debe tener en cuenta que por
limitación de los transistores, la intensidad máxima que circulará por la resistencia de
sensado será 600 mA. Si se aplica la ley de Ohm, se puede obtener que el voltaje máximo
que se medirá en los terminales de esta resistencia será de 6 mV. Con este valor, se puede
calcular la ganancia deseada de esta etapa:
𝐺 =𝑉𝑜
𝑉𝑖=
5 𝑉
0,006 𝑉≈ 833 (2.50)
Según el datasheet del amplificador de instrumentación que se va a usar (INA114), la
ganancia del IA se calcula con la siguiente formula:
𝐺 = 1 +50 𝑘Ω
𝑅𝐺 → 𝑅𝐺 =
50 𝑘Ω
(𝐺 − 1) (2.51)
Si se aplica esta fórmula con el valor de ganancia calculado anteriormente, se puede
obtener que el valor de RG = 60,072 Ω. Este valor de resistencia no es un valor comercial
y se puede observar que si se aplica la fórmula (2.26) para los valores comerciales más
cercanos, 56 Ω y 68 Ω, se obtienen unos valores de ganancia de 894 y 736
respectivamente, que difieren notablemente respecto a la deseada. Por esto se decide
utilizar una resistencia de 10 Ω en serie con el paralelo de dos resistencias de 100 Ω,
como se muestra en la siguiente imagen:
2 Memoria de cálculos
38
Figura 2.8. Resistencia equivalente de ganancia del IA
Con estos valores de resistencia dispuestos como se indica en la imagen anterior, se
obtiene un valor de resistencia equivalente de 60 Ω. Aplicando la fórmula (2.25) con este
nuevo valor de resistencia, se obtiene una ganancia de 834, que es muy similar al deseado,
por lo que se usará el circuito de la Figura 2.8 para definir la amplificación del IA.
10
100
100
4 Presupuesto
41
4 Presupuesto
4.1 Presupuestos parciales
4.1.1 Presupuesto parcial nº1 Conjunto sensorial “brazo”
Nº Ut Descripción Medición Precio Importe (€)
1.1 Ut Placa de desarrollo ATMega328 NANO, modelo VMA102, basada en el
microcontrolador Arduino NANO V3.
Total Ut: 1,00 9,99 9,99
1.2 Ut Módulo de transmisión Bluetooth HC-05, modelo VMA302, con chip CSR
BC417 bluetooth v2.0.
Total Ut: 1,00 8,25 8,25
1.3 Ut Pila 9V Varta High Energy.
Total Ut: 4,00 1,73 6,92
1.4 Ut Circuito integrado amplificador de instrumentación INA114.
Total Ut: 1,00 7,05 7,05
1.5 Ut Circuito integrado amplificador operacional OP07.
Total Ut: 4,00 1,58 6,32
Total Presupuesto parcial nº 1: 38,53
4 Presupuesto
42
4.1.2 Presupuesto parcial nº2 Conjunto motriz “pinza”
Nº Ut Descripción Medición Precio Importe
2.1 kg Material PLA con el que está imprimida en 3D la pinza.
Total kg: 0,173 15,95 2,76
2.2 Ut Placa de desarrollo ATMega328 NANO, modelo VMA102, basada en el
microcontrolador Arduino NANO V3.
Total Ut: 1,00 9,99 9,99
2.3 Ut Módulo de transmisión Bluetooth HC-05, modelo VMA302, con chip CSR
BC417 bluetooth v2.0.
Total Ut: 1,00 8,25 8,25
2.4 Ut Motor DC, VEX 2-wire 293 DC Motor.
Total Ut: 1,00 9,99 9,99
2.5 Ut Pila 9V Varta High Energy.
Total Ut: 2,00 2,09 4,18
2.6 Ut Sensor de fuerza resistivo FSR,
Total Ut: 2,00 7,83 15,66
2.7 Ut Circuito integrado amplificador de instrumentación INA114.
Total Ut: 1,00 7,05 7,05
2.8 Ut Resistencia de precisión de 10 mΩ para la lectura de corriente consumida por
el motor DC.
Total Ut: 1,00 1,13 1,13
2.9 Ut Transistor para el puente en H del motor DC, modelo PN2222
Total Ut: 4,00 0,18 0,72
2.10 Ut Diodo para el puente en H del motor DC, modelo 1N4007
Total Ut: 4,00 0,08 0,32
Total Presupuesto parcial nº 2: 60,05
4 Presupuesto
43
4.1.3 Presupuesto parcial nº3 Mano de obra
Nº Ut Descripción Medición Precio Importe
3.1 h Diseño, cálculo y análisis de los circuitos electrónicos que componen el
proyecto.
Total h: 80 10,00 800,00
3.2 h Simulación de los circuitos electrónicos.
Total h: 30 10,00 300,00
3.3 h Montaje de los circuitos.
Total h: 25 10,00 250,00
3.4 h Programación de los microcontroladores y configuración de los módulos
Bluetooth.
Total h: 20 10,00 200,00
3.5 h Obtención de datos mediante pruebas de funcionamiento en el laboratorio.
Total h: 35 10,00 350,00
3.6 h Redacción de este proyecto.
Total h: 110 10,00 1100,00
Total Presupuesto parcial nº 3: 3000,00
4 Presupuesto
44
4.2 Resumen del presupuesto
Capitulo Importe (€)
1 Conjunto sensorial “brazo” 38,53
2 Conjunto motriz “pinza” 60,05
Presupuesto del material 98,58
21% 20,70
3 Mano de obra 3000,00
Presupuesto del material con IVA y mano de obra 3119,28
5 Anexos
45
5 Anexos
5.1 Código del microcontrolador de la parte sensorial “brazo” // Definir pines entrada:
#define Vfiltropin A3
// Definir variables:
int Vfiltro=0;
int estado;
/* estado=0 -> mano abierta
estado=1 -> mano cerrada
*/
void setup()
// put your setup code here, to run once:
Serial.begin(9600);
Serial.write('0');
estado=0;
void loop()
// put your main code here, to run repeatedly:
Vfiltro= analogRead(Vfiltropin);
/* Si la mano estaba abierta y se ha producido un cambio de estado,
cambiar el estado a mano cerrada, indicarlo por Bluetooth y esperar
300 ms para la próxima comprobación
*/
if ((estado==0)&&((Vfiltro>=681)||( Vfiltro<=366)))
Serial.write('1');
estado=1;
delay(300);
5 Anexos
46
/* Si la mano estaba cerrada y se ha producido un cambio de estado,
cambiar el estado a mano abierta, indicarlo por Bluetooth y esperar
300 ms para la próxima comprobación
*/
if ((estado==1)&&((Vfiltro>=681)||( Vfiltro<=366)))
Serial.write('0');
estado=0;
delay(300);
Código 1.1. Código del microcontrolador de la parte sensorial “brazo”
5.2 Código del microcontrolador de la parte motriz “pinza” // Definir pines entrada:
#define Rconsumopin A0
#define fsrmediopin A3
#define fsrpuntapin A5
#define potpin A7
// Definir pines salida:
#define trans1 4
#define trans2 7
#define trans3 8
#define trans4 12
// Definir variables:
int Rconsumo=0;
int fsrmedio=0;
int fsrpunta=0;
int pot=0;
int limpot=510;
int estado;
5 Anexos
47
/* estado=0 -> pinza abierta
estado=1 -> pinza cerrando
estado=2 -> pinza cerrada
estado=3 -> pinza abriendo
*/
void setup()
// put your setup code here, to run once:
Serial.begin(9600);
// Se definen los pines de los transistores como salidas digitales
pinMode(trans1, OUTPUT);
pinMode(trans2, OUTPUT);
pinMode(trans3, OUTPUT);
pinMode(trans4, OUTPUT);
// Inicialmente se abre la pinza para partir de esa posición de reposo
digitalWrite(trans2, LOW);
digitalWrite(trans3, LOW);
digitalWrite(trans1, HIGH);
digitalWrite(trans4, HIGH);
estado=3;
void loop()
// put your main code here, to run repeatedly:
switch (estado)
case 0:
// Leer el Puerto serial si está disponible
if (Serial.available()>0)
lecturaBT= Serial.read();
// Si se ha recibido un 1 por Bluetooth, activar los transistores
// 2 y 3 para cerrar la pinza y cambiar de estado a cerrando
if(lecturaBT=='1')
5 Anexos
48
digitalWrite(trans2, HIGH);
digitalWrite(trans3, HIGH);
estado=1;
break;
case 1:
// Obtener lectura del consumo, las presiones y el potenciómetro
Rconsumo= analogRead(Rconsumopin);
fsrmedio= analogRead(fsrmediopin);
fsrpunta= analogRead(fsrpuntapin);
pot= analogRead(potpin);
// Esperar 50 ms para evitar el primer pico de corriente del motor
delay(50);
// Calcular el límite de presiones según potenciometro
limpot=510+(472*pot)/1023;
// Si alguna medida supera el límite, dejar de cerrar la pinza y
// cambiar el estado a cerrada
if ((fsrmedio>limpot)||(fsrpunta>limpot)||(Rconsumo>215))
digitalWrite(trans2, LOW);
digitalWrite(trans3, LOW);
estado=2;
break;
case 2:
// Leer el Puerto serial si está disponible
if (Serial.available()>0)
lecturaBT= Serial.read();
// Si se ha recibido un 0 por Bluetooth, activar los transistores
// 1 y 4 para abrir la pinza y cambiar de estado a abriendo
if(lecturaBT==0)
digitalWrite(trans1, HIGH);
digitalWrite(trans4, HIGH);
5 Anexos
49
estado=3;
break;
case 3:
// Obtener lectura del consumo del motor
Rconsumo= analogRead(Rconsumopin);
// Esperar 50 ms para evitar el primer pico de corriente del motor
delay(50);
// Si se detecta el límite de corriente, dejar de abrir la pinza y
// cambiar el estado a abierta
if(Rconsumo>215)
digitalWrite(trans1, LOW);
digitalWrite(trans4, LOW);
estado=0;
break;
Código 1.2. Código del microcontrolador de la parte motriz “pinza”
6 Referencias
50
6 Referencias (01) Medical Expo
https://www.medicalexpo.es/prod/ambu/product-69019-782906.html (último
acceso: 09 de 01 de 2020).
(02) Medical Direct
http://medicaldirect.es/es/electrodos-ecg-desechables/58-electrodo-ecg-adulto--
500x-h92sg.html (último acceso: 09 de 01 de 2020).
(03) RG Medical Supply
http://rgmedicalsupply.com/product/rubber-electrodos/ (último acceso: 09 de 01
de 2020).
(04) MathWorks
https://es.mathworks.com/matlabcentral/fileexchange/38754-emg-
electromiografo (último acceso: 09 de enero de 2020).
(05) Backyard Brains
http://www.backyardbrains.cl/experiments/RobotHand (último acceso: 09 de
enero de 2020).
(06) Boulder Madrid
http://www.bouldermadrid.com/general/musculatura-antagonista-del-antebrazo/
(último acceso: 09 de enero de 2020).
(07) Ortopedia Técnica Lopez
https://www.ortopedialopez.com/tienda/estetico/mano-estetica-silicon-house/
(último acceso: 09 de enero de 2020).
(08) Medical Expo
https://www.medicalexpo.es/prod/rslsteeper/product-74956-458252.html
(último acceso: 09 de enero de 2020).
(09) Fissioterapia
http://fissioterapia.blogspot.com/2013/02/las-protesis-mioelectricas.html
(último acceso: 09 de enero de 2020).
(10) Ingetronica DG
http://ingetronicadg.blogspot.com/2017/04/control-de-motor-dc-con-puente-
h.html (último acceso: 16 de diciembre de 2019).
(11) Velleman
https://www.velleman.eu/downloads/29/vma334_a4v01.pdf (último acceso: 26
de noviembre de 2019).
(12) Brico Geek
https://tienda.bricogeek.com/modulos-bluetooth/800-modulo-bluetooth-hc-
05.html (último acceso: 26 de noviembre de 2019).
(13) How to mechatronics, Youtube
https://www.youtube.com/watch?v=hyME1osgr7s&t=197s (último acceso: 26
de noviembre de 2019).
7 Bibliografía
51
7 Bibliografía
Web consultas
https://www.webconsultas.com/pruebas-medicas/como-se-hace-un-
electromiograma-12213 (último acceso: 09 de enero de 2020)
Prótesis de miembros superiores
http://files.sld.cu/arteydiscapacidad/files/2013/01/protesis-de-miembros-
superiores.pdf (último acceso: 09 de enero de 2020)
Desarrollo de una prótesis para desarticulado de muñeca controlada por
señales de electromiografía
http://www.scielo.org.mx/scielo.php?script=sci_arttext&pid=S0188-
95322017000300602 (último acceso: 05 de diciembre de 2019)
Sistema de Adquisición de Señales SEMG para la Detección de Fatiga Muscular
http://www.scielo.org.mx/pdf/rmib/v37n1/2395-9126-rmib-37-01-00017.pdf
(último acceso: 09 de enero de 2020)
Análisis de señales EMG superficiales y su aplicación en control de prótesis de
mano
https://wilaebaelectronica.blogspot.com/2017/03/indice-de-contenido.html
(último acceso: 09 de enero de 2020)
INA114 Datasheet
https://www.ti.com/lit/ds/sbos014/sbos014.pdf (último acceso: 05 de diciembre
de 2019)
Vex 269 Motor Datasheet
https://content.vexrobotics.com/docs/inventors-guide/2-wire-269-inst.pdf
(último acceso: 16 de diciembre de 2019)
Transistor PN2222 Datasheet
http://www.datasheet.es/PDF/464960/PN2222-pdf.html (último acceso: 16 de
diciembre de 2019)
Wilaeba Electronica
https://wilaebaelectronica.blogspot.com/2017/03/indice-de-contenido.html
(último acceso: 05 de diciembre de 2019)