4. Modo Makey Makey

Modo Makey makey

En esa sección acuérdate de cambiar el Echidna en modo MakeyMakey

selector_modos-black-1.png

ATENCIÓN:
EN MODO MAKEY MAKEY PIERDES TODA CONEXIÓN CON LOS SENSORES DE LA PLACA menos claro, los de Mky Mky

2024-12-16 13_47_40-Modo Sensores modo MkMk Black - Echidna Educacion.png
Fuente CC-BY-SA https://echidna.es/

 

¿Qué es Makey Makey ?

Es una placa que se inventó en 2010 que permite conectar cualquier cosa que conduzca mínimamente la electricidad en entrada por el puerto USB. Para que lo entiendas bien, mira este vídeo:

Nuestra placa tiene esta función, pero en vez de ser una entrada por el puerto USB es una entrada por Arduino que podemos leer, luego en esta sección cambia nuestra placa Echidna el modo sensor a modo makey makey

Tiene las siguientes entradas:

IMPORTANTE:
La persona que toca los pines A0, A1... D2, D3 también tiene que tocar GND masa

Entonces... ¿Qué ventajas tiene esta placa con respecto a la original?:

Nota:

Aquí tienes un curso de manejo de la Makey Makey original con el curso Scractch avanzado y Makey Makey.

Qué es la variable que hay que definir como UMBRAL

Experimento con Echidna Scratch

Crea este sencillo programa, creando una variable llamada umbral ejecútalo y visualiza esa variable sin tocar A0 y en modo MakeyMakey por supuesto SALE 8-9

2024-12-07 19_21_31-EchidnaML.png

Repite el experimento pero conectando un cable entre masa y A0 SALE 1024 EL MÁXIMO

2024-12-07 19_30_21-EchidnaML.png

Y ahora conectando entre masa y A0 tus dos manos: SALE 400-500

2024-12-07 19_33_33-Editing Page Qué es la variable que... _ Librería CATEDU.png

Resultado

Como podemos ver, si tocamos el A0 directamente con un cable, su valor pasa de 8-9 a subir al máximo que es 1024

Pero si es a través de nuestro cuerpo, sólo sube hasta 500 pero alguna vez sólo llega a 400

Moraleja: Los valores de entrada en modo Makey Makey depende del objeto que va a tocar por lo tanto hay que definir un umbral que determine cuando no está tocando y cuando está tocando

UMBRAL


Como vemos que cuando no toca es un valor muy bajo 8-9 podemos definir UMBRAL como un valor 100, 200 o incluso 300 pero ya 400 puede dar falsos negativos. Recomendamos 100


CON MBLOCK (no pases a mblock si ya trabajas con Echidna Scratch)
Conectar en vivo con mBlock

Primero tiene que aprender cómo conectar nuestro Echidna (que es un Arduino UNO) en mBlock en modo VIVO

Experimento, vamos a poner este código

Una vez conectado nuestro Echidna en Vivo vamos a crear una variable global LEER y que sea siempre la lectura A0

2024-12-06 20_46_39-mBlock v5.4.3.png

luego al objeto panda, le vamos a poner este otro código

2024-12-06 20_49_04-mBlock v5.4.3.png

Experimento

Vamos a ejecutar el código y vamos a ver la diferencia

Programas usando UMBRAL

Los programas tendrán la siguiente estructura básica

CON ECHIDNA SCRATCH

PINES ANALOGICOS A0, A1, A2, A3, A4, A5
Los programas tendrán simplemente que ejecutar un simple condicional que si la lectura del pin correspondiente A0, A1,... es mayor que UMBRAL pues que haga una cosa u otra

2024-12-07 19_57_02-EchidnaML.png

PINES DIGITALES D2, D3

La estructura es la siguiente

2024-12-07 20_02_19-EchidnaML.png

COMO PUEDES VER NO HACE FALTA LA VARIABLE UMBRAL

2024-12-07 20_05_54-EchidnaML.png  Esta instrucción no la utilizamos, no nos funciona bien, esperamos que las siguientes versiones de Echidna Scratch lo mejoren.

CON MBLOCK

Aquí es más complicado pues al no tener instrucciones específicas, la comunicación entre ARDUINO UNO y los objetos ec.. hay que hacerlo con variables globales o mensajes, vamos a ver con mensajes:

En el dispositivo ARDUINO UNO

Definiremos UMBRAL y enviaremos un mensaje si se ha llegado a su valor o no

2024-12-06 21_06_43-mBlock v5.4.3.png

En los objetos

En este caso el objeto panda, reacciona según el mensaje que le llega

2024-12-06 21_07_48-mBlock v5.4.3.png

Resultado

Otro ejemplo

En este ejemplo fue necesario subir el valor umbral a 200 para que funcionase correctamente
Agradecimientos Adolfo Fernandez

image.png

MONTAJE 11 Piano

Con Echidna Scratch

Instalaremos una extensión de música, como vemos se crean nuevas instrucciones. También hemos quitado el sprite del gato y hemos puedo un piano más acorde al ejercicio

2024-12-07 20_09_18-EchidnaML.png

Creamos un código de manera que toque una nota diferente si se toca A0, A1, ... D2, D3

2024-12-07 20_18_14-Presentación1 - PowerPoint.png

El resultado 

El programa lo tienes en este repositorio: https://github.com/JavierQuintana/Echidna

RETO: HAZLO CON BANANAS
Cada banana va con un cable cocodrilo-cocodrilo pero la persona que toca el piano tiene que también tocar la masa, tal y como vimos en Qué es Makey Makey

RETO: HAZLO CON PERSONAS !!!
En este caso la persona que toca, si te fijas, tiene una pulsera con un cable a masa del Echidna
El resto de participantes, toca con una mano un pin A0, A1, ... D2, D3 y con la otra la extienden para que pueda hacer teclado

Con mBlock

Vamos a hacerlo !! Ten en cuenta que mBlock utiliza la notación americana de notas, y a cada nota la vamos a corresponder a una entrada Makey Makey (utilizando por ejemplo el acorde 4):

Nota americana C4 D4 E4 F4 G4 A4 B4 C5
Nota Europea Do Re Mi Fa Sol La Si Do
Makey A0 A1 A2 A3 A4 A5 D2 D3

Como las entradas analógicas pueden variar desde 0 a 1024 vamos a fijar como umbral en 500 (si es muy sensible lo subimos, si no nos hace caso lo bajamos, a nosotros nos ha funcionado bien 500).

El código lo subiremos al Arduino pues mBlock responde muy lentamente, si no te acuerdas cómo se hacía mira esta presentación.

Solución


El programa es muy sencillo pero repetitivo:



Conectamos cada salida de Makey Makey a unos plátanos y la salida del auricular a unos altavoces de ordenador, en la foto puedes ver que se han utilizado unos cables con cocodrilos, y al subirlo al Arduino no hace falta tener el ordenador, alimentamos el Arduino con un PowerBank o incluso con pilas.

ATENCIÓN VER 1.3 ALIMENTACION DEL ECHIDNA

En el kit que te prestamos para hacer este curso no están incluidos los plátanos, así que cálzate y baja a comprar unos. ¿no tienes perras? pues utiliza recursos humanos:

 

Esta noche prepara un karaoke con tus amigos.

MONTAJE 12 Joystick plastilina

Con plastilina conductora podemos hacer interesantes proyectos. En un buscador puedes poner plastilina conductora de electricidad y tienes varias recetas, con harina, agua, aceite, limón...

Una pega: No dura nada, a los pocos días se endurece o se pudre.

Propuesta

Que un sprite se mueva según unos botones hechos de plastilina:

Para este reto, definimos dónde colocamos los botones, de forma arbitraria :

A3 conectado a la plastilina con forma de ⇒
A1 conectado con la plastilina en forma de ⇑
A5 conectado con la plastilina en forma de ⇓
 A2 conectado con la plastilina en forma de ⇐

Solución con EchidnaScratch

El programa no es complejo, simplemente que cuando se pulsa, la coordenada correspondiente se incremente o se decrementa. Se han añadido unos comentarios para tener claro los sentidos :

2024-12-07 23_00_48-EchidnaML.png

El archivo lo tienes en este repositorio: https://github.com/JavierQuintana/Echidna

Aunque en el vídeo está hecho con mBlock3, el programa y el resultado es el mismo que en EchidnaScratch

Solución con mBlock

Atención: Las capturas de imagen están con mBlock3
Para mBlock5 a estas alturas ya sabes lo que hay que hacer:
1.- Crear unas variables globales A1, A2, A3, A4, A5
2.- En el arduino un bucle para siempre que asigne estas variables a las entradas analógicas A1, A2 ....
3.- Programar en el helicóptero el movimiento con esas variables globales creadas en el paso 1




El umbral se ha cambiado según la sensibilidad del botón.

OTROS RETOS

Con la plastilina podemos hacer manualidades tipo conecta y que por la pantalla salga el resultado, aquí tienes un ejemplo:

Las posibilidades son muchas, cuelga tus experiencias en este muro

Hecho con Padlet