Skip to main content

MONTAJE 7 Telesketch

¿Qué es el Joystick?

Son dos potenciómetros, uno en el eje X y otro en el eje Y además de un pulsador digital cuando se pulsa hacia dentro. 

El potenciómetro X está conectado en los pines A0 del Arduino y el del eje Y al A1 por lo tanto si has leído los capítulos de ARDUINO sus valores varía desde 100 hasta 1024. El pulsador está conectado al D10.

Reto Telesketch

Si no sabes lo que es esto, no has tenido infancia 😊😁

TELSKET.jpg

Vamos a realizar el mismo ejemplo que este vídeo de Jorge Lobo pero en vez de realizado en Snap4Arduino lo vamos a hacer en EchidnaScratch y en mBlock.

Solución con EchidnaScratch

Simplemente vamos a considerar estas condiciones:

  • Si el joystick en el eje X es menor que 300 es que estás inclinando el Joystick hacia la izquierda, luego el Sprite tiene que modificar su variable decrementando su valor, un valor fijo que lo definiremos como PASO

  • Si el joystick en el eje X es mayor que 700 es seguro que estás inclinando el Joystick hacia la derecha luego hay que incrementar el valor de la ordenada X el valor predefinido PASO

  • Idem para el eje Y

  • PASO es una variable que de momento lo vamos a poner como 3, si es menor, va más preciso pero más lento, si es mayor es más rápido pero el dibujo es menos preciso.

  • Los botones SR y SL nos servirán para subir y bajar el lápiz y borrar

¿Lápiz ? ¿Qué lápiz?

Lápiz es una extensión para poder dibujar. Para instalar una extensión pulsa aquí

2024-12-05 15_49_35-EchidnaML.png

E instalamos esta extensión

2024-12-05 15_50_03-EchidnaML.png

Y se instalan nuevas instrucciones para dibujar

2024-12-05 15_51_36-EchidnaML.png

Código con EchidnaScratch

Recomendamos cambiar el sprite del gato por otro más apropiado, por ejemplo el lápiz y bajarlo a un tamaño 15

2024-12-05 15_54_22-EchidnaML.png

El programa :

  • Inicia las variables que hemos explicado
  • En el bucle, las condicionales hacen que se incremente o decremente las variables X e Y la cantidad definida PASO
  • El botón SR 
    • si se pulsa, pinta
    • si se suelta no pinta
  • El botón SL borra todo
  • Mover el sprite según las coordenadas X e Y

2024-12-05 15_32_19-Presentación1 - PowerPoint.png

Todos los programas de este curso se encuentran en este repositorio: https://github.com/JavierQuintana/Echidna

Solución con mBlock

En mBlock no hay instrucciones especiales para Echidna, hay que hablar pues de A0 para el eje X y A1 para el eje Y por lo tanto las nuevas condiciones son:

Si A0 es menor que 300 es que estás inclinando el Joystick hacia la izquierda, luego el Sprite tiene que modificar su variable x hacia la derecha, es decir decrementando su valor
image-1648727378013.png
Si A0 es mayor que 700 es seguro que estás inclinando el Joystick hacia la derecha luego hay que incrementar el valor de la ordenada X

Para los valores del eje Y es igual, cambiando A0 por A1

Programa en mBlock

Primero pondremo un objeto lápiz y añadiremos la extensión LAPIZ esto se entiende mejor con un vídeo

Pero no hagas la programación de hacer el cuadrado. Sino este

echidna-teleschetch.png

Donde BAJAR, SUBIR Y BORRAR SON MENSAJES y X e Y son variables globales a todos los objetos. En el arduino el programa será

echidna-teleschetch2.png

El programa te lo puedes descargar aqui https://planet.mblock.cc/project/3228849

VA MUY LENTO El resultado lo puedes ver en este vídeo:

Por curiosidad puedes ver el mismo programa en Snap4Arduino en este vídeo:

Puedes ver que es mucho más rápido que mBlock.