Tabla de contenido:
- Paso 1: Reúna sus materiales
- Paso 2: Prepare el sensor MyoWare
- Paso 3: Conecte el sensor MyoWare al MaKey MaKey
- Paso 4: Cargue el boceto en MaKey MaKey
- Paso 5: conecte todos sus componentes juntos
- Paso 6: Establecer umbrales en Arduino IDE
- Paso 7: ¡Disfrute usando su nuevo sistema EMG casero
- Paso 8: agregue un segundo sensor a su sistema EMG
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-23 14:40
Autores:
L. Elizabeth Crawford y Dylan T. Vavra
Introducción:
En este tutorial, le mostraremos cómo crear un sistema simple de electromiografía (EMG) en el hogar, a un costo de aproximadamente $ 100, que detectará la activación muscular de la superficie de la piel y lo usará para enviar una pulsación de tecla a una computadora, sin pasar por el teclado. Usamos un MaKey MaKey clásico y un sensor MyoWare para lograr esto, junto con un poco de codificación. Este proyecto también requiere algo de soldadura. Aquí se pueden encontrar consejos útiles para la técnica de soldadura y la seguridad.
Primero, le mostraremos cómo lograr esto usando un sensor MyoWare. Luego, le mostraremos cómo agregar un segundo al sistema (para nuestros propósitos, usamos dos).
Nuestra esperanza es que otros puedan imitar esta tecnología EMG de bricolaje, adaptarla a sus necesidades específicas y utilizarla para cualquier número de aplicaciones interesantes. Lo usamos en nuestro laboratorio de Psicología Experimental en la Universidad de Richmond para replicar la investigación que muestra que las personas imitan las expresiones faciales de los demás.
Paso 1: Reúna sus materiales
Materiales:
- Computadora
- MaKey MaKey con el cable USB adjunto (también debería poder hacer esto con un Arduino Leonardo, pero no lo hemos probado)
- Aislador de alimentación USB (a menos que se esté ejecutando con una computadora portátil a batería), como el aislador USB Adafruit - USB de velocidad baja / completa aislado de 100 mA (no se muestra en la imagen)
- Sensor (es) MyoWare
- Electrodos (x3 por sensor MyoWare): utilizamos electrodos de superficie desechables para EMG / ECG / EKG de Covidien Kendall de 1 "(24 mm)
- Encabezados separables (utilizamos encabezados en forma de L)
- Cables con conector macho en un extremo, hembra en el otro
- Soldar
- Cinta eléctrica
Instrumentos:
- Soldador
- Cortador de cables
- Divisor de alambre
Software:
Arduino IDE con complemento MaKey MaKey
Paso 2: Prepare el sensor MyoWare
1. Rompa un conjunto de tres encabezados separables para soldarlos al MyoWare.
2. Con el sensor MyoWare colocado con el bíceps hacia arriba, inserte el extremo más corto de los tres encabezados desde abajo en los orificios que tienen un "+" (signo más ", un" - "(signo negativo) y" SIG " junto a ellos (vea la imagen de arriba).
3. Suelde los cabezales en su lugar.
Paso 3: Conecte el sensor MyoWare al MaKey MaKey
1. Elija tres cables (idealmente de diferentes colores), macho en un extremo y hembra en el otro. La longitud de los cables que necesita depende de qué tan lejos desee que esté el MyoWare del MaKey MaKey. Para tener el MyoWare en la cara y el MaKey MaKey apoyado sobre una mesa, necesitará aproximadamente 18 pulgadas.
2. Decida qué función tendrá el cable de cada color. Uno se utilizará para la alimentación (enchufarlo en el conector + del sensor MyoWare), uno se utilizará como conexión a tierra (enchufarlo en el conector - del sensor MyoWare) y el tercero se utilizará como cable de señal (enchufar al Conector SIG en el MyoWare). En las imágenes que se muestran en este instructivo, usamos verde para energía, marrón para tierra y gris para señal.
Paso 4: Cargue el boceto en MaKey MaKey
1. Instale Arduino IDE en su computadora (Tutorial aquí).
2. Instale el complemento MaKey MaKey para Arduino (Tutorial aquí) abriendo sus preferencias de Arduino (Archivo> Preferencias), yendo al cuadro de texto URL adicionales del Administrador de placa y pegando:
raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json
3. En el IDE de Arduino, haga clic en archivo, desplácese hacia abajo para crear un nuevo boceto. Copie y pegue este código en la ventana de texto:
/ * umbrales para registrar una pulsación de tecla * / const int thresh1 = 1000; / * asignación de entradas en MaKey MaKey * / const int sensor1Pin = A3; #include "Keyboard.h" int LED (9); void setup () { pinMode (LED, OUTPUT); Serial.begin (9600);} / * El código siguiente muestra el MyoWare cada 50 ms, envía su valor al puerto serie y, si el valor está por encima del umbral, envía una pulsación de tecla. Puede muestrear con más frecuencia reduciendo el retraso. Esto hará que los valores sean más difíciles de leer en la ventana serial. * / Void loop () {int sensor1Val = analogRead (sensor1Pin); Serial.println (sensor1Val); if (sensor1Val> = thresh1) {Keyboard.begin (); / / Envía la pulsación de tecla de la letra "c" Keyboard.write ('c'); // espera 50 ms antes de volver a muestreardelay (50);} else // espera 50 ms antes de volver a muestreardelay (50);}
4. Conecte el MaKey MaKey a su computadora. Despliegue el menú de herramientas y asegúrese de que la placa seleccionada sea Arduino Leonardo o MaKey MaKey. Desplácese hacia abajo en el menú de herramientas hasta Puerto y asegúrese de que el puerto seleccionado tenga el nombre de su placa seleccionada. Sube tu boceto al tablero haciendo clic en la flecha hacia la derecha en la parte superior del IDE de Arduino.
Paso 5: conecte todos sus componentes juntos
1. Conecte los cables del sensor MyoWare al MaKey MaKey de la siguiente manera:
- El "+" en el MyoWare va a la ranura de 5V en el MaKey MaKey.
- El "-" en el MyoWare va al suelo ("tierra") en el MaKey MaKey.
- El "SIG" en el MyoWare va a la ranura A3 en el MaKey MaKey.
2. Coloque tres electrodos en el MyoWare.
3. Conecte el MaKey MaKey. Si usa una computadora conectada a una toma de corriente, conecte el MaKey MaKey a un aislador de energía USB y luego conéctelo al puerto USB de la computadora. (Esta es una precaución de seguridad para que si algo sale mal con la fuente de alimentación de su computadora, el usuario no esté conectado directamente a la red eléctrica. Es poco probable que ocurra tal problema, pero preferimos que usted esté seguro.) Si usa una computadora portátil que funciona con una batería (es decir, NO ESTÁ CONECTADA A LA PARED), está seguro sin el aislador.
4. Verifique que todo esté encendido. El LED rojo de MaKey MaKey y el LED verde de MyoWare deben estar encendidos.
5. Limpie la piel donde desea colocar el MyoWare con alcohol isopropílico para eliminar la suciedad y los aceites.
6. Quite el adhesivo de los electrodos y adhiera el MyoWare a la piel. Desea que los dos electrodos que están en MyoWare estén encima del músculo desde el que desea grabar. El electrodo adjunto al cable sirve como comparación y debe colocarse fuera del músculo en un área que no estará activa cuando se contraiga el músculo objetivo.
7. Revise el adhesivo de los electrodos para asegurarse de que selle bien la piel. Es posible que deba presionar los bordes de los anillos adhesivos en la piel para obtener un buen sellado.
Paso 6: Establecer umbrales en Arduino IDE
1. Con todo conectado y encendido, abra el monitor serial en el IDE de Arduino haciendo clic en la herramienta de lupa en la esquina superior derecha.
2. El monitor en serie debería mostrar ahora los valores de la señal del MyoWare. A medida que flexiona y relaja el músculo, debería ver que los valores cambian en consecuencia. También debería ver que el LED rojo del MyoWare se enciende cuando contrae el músculo con suficiente fuerza.
3. Mientras observa el monitor en serie, contraiga el músculo con diferentes intensidades, asegurándose de relajarse entre las contracciones para volver a la línea de base. Determine un valor de umbral por encima del cual desea que la contracción produzca una pulsación de tecla. Los valores más altos requerirán una contracción más fuerte para registrar la pulsación de tecla; los valores más bajos lo harán más sensible a las pequeñas contracciones, pero también más propenso a las falsas alarmas.
4. En el esquema de Arduino, cambie el valor de umbral (const int thresh1) de 1000 al umbral elegido.
5. Cierre el monitor en serie, vuelva a cargar el boceto y comience a escribir con EMG. Es posible que necesite reajustar el umbral para obtener la sensibilidad donde lo desee. También puede experimentar con el retraso para que muestree con más o menos frecuencia.
Paso 7: ¡Disfrute usando su nuevo sistema EMG casero
Puede colocar los electrodos en una multitud de lugares del cuerpo (por ejemplo, en la cara, como muestra arriba nuestro cyborg de laboratorio Kyle Lee).
Experimente con ubicaciones para colocar los electrodos y con las muchas posibilidades de lo que podría hacer con las pulsaciones de teclas.
Además, continúe leyendo para aprender cómo agregar otro sensor MyoWare a este sistema.
Paso 8: agregue un segundo sensor a su sistema EMG
1. Repita el paso 2 para un segundo sensor MyoWare.
2. Para conectar varios sensores a un MaKey MaKey, necesitará una forma de alimentar cada uno. Hicimos un poco de pelado, soldadura y encintado de cables para crear un conector en forma de Y (vea la imagen de arriba), dividiendo la salida única de la fuente de alimentación del MaKey MaKey en dos cables que se conectan a la entrada de energía "+" en cada uno de dos MyoWares.
3. Conecte las ranuras "SIG" en los sensores MyoWare a diferentes ranuras A en el lado derecho del MaKey MaKey (el código que proporcionamos a continuación asume que está usando A3 y A4).
4. Cargue el boceto de dos sensores:
/ * este boceto lee dos señales de sensores MyoWare y envía una pulsación de tecla 'b' cuando uno supera el umbral y 'c' cuando el otro supera el umbral. * // * establecer umbrales * / const int thresh1 = 1000; const int thresh2 = 1000; / * asignación de entradas en MaKey MaKey * / const int sensor1Pin = A3; const int sensor2Pin = A4; #include "Keyboard.h" int LED (9); void setup () {pinMode (LED, OUTPUT); Serial.begin (9600);} bucle vacío () {int sensor1Val = analogRead (sensor1Pin); int sensor2Val = analogRead (sensor2Pin); Serial.print (sensor1Val); Serial.print (","); Serial.println (sensor2Val); if (sensor1Val> = thresh1) {Keyboard.begin (); // Enviar pulsación de tecla cKeyboard.write ('c'); delay (50);} if (sensor2Val> = thresh2) {Keyboard.begin (); // Enviar pulsación de tecla bKeyboard.write ('b'); delay (50);} else // esperar 50 ms antes de volver a muestrear delay (50);}
5. Ahora ambas lecturas musculares deberían ser visibles en el monitor de serie. Establezca cada umbral por separado en el boceto de Arduino, como en el Paso 6, y luego vuelva a cargar el boceto.
¡Ahora su sistema EMG tendrá dos entradas separadas
Si se siente un poco salvaje, puede seguir procedimientos similares para agregar más sensores MyoWare al sistema. Si te sientes REALMENTE salvaje, incluso podrías agregar otro MaKey MaKey al sistema. Te animamos a experimentar con este diseño.
Recomendado:
Kit de conversión de máquina de escribir USB: 9 pasos (con imágenes)
Kit de conversión de máquina de escribir USB: hay algo muy mágico en escribir en esas máquinas de escribir manuales de la vieja escuela. Desde el satisfactorio chasquido de las teclas con resorte, hasta el brillo de los acentos cromados pulidos, pasando por las marcas nítidas en la página impresa, las máquinas de escribir
Escribir en la lengua con un mouse con la boca: 11 pasos (con imágenes)
Escribir en la lengua con un mouse con la boca: Sin duda, la placa Makey Makey ha abierto muchas posibilidades para interactuar con una PC o computadora portátil. Si bien tocar el piano con plátanos y disparadores de papel plateado es divertido y educativo, quería encontrar una aplicación que fuera diferente y, con suerte, co
Teclado de computadora de máquina de escribir: 13 pasos (con imágenes)
Teclado de computadora de máquina de escribir: ¿Una máquina de escribir que es un teclado de computadora? ¿O un teclado de computadora que es una máquina de escribir? Es posible que el mundo nunca lo sepa. Sin embargo, usar uno de estos trae consigo un cierto vértigo que normalmente no se encuentra al escribir el propio nombre. Sin mencionar que siempre es así
Arduino trabajando con varios archivos (LEER / ESCRIBIR): 4 pasos
Arduino trabajando con varios archivos (LEER / ESCRIBIR): Hola chicos Hoy les presento el proyecto Arduino que funciona con el escudo RTC que puede almacenar datos. La tarea principal de este proyecto es trabajar con varios archivos que se almacenan en la tarjeta sc. Este proyecto contiene código que funciona con tres archivos que
Módulo de tarjeta SD con Arduino: cómo leer / escribir datos: 14 pasos
Módulo de tarjeta SD con Arduino: cómo leer / escribir datos: descripción general El almacenamiento de datos es una de las partes más importantes de cada proyecto. Hay varias formas de almacenar datos según el tipo y tamaño de datos. Las tarjetas SD y micro SD son uno de los más prácticos entre los dispositivos de almacenamiento, que se utilizan en