Guía rápida para Snap4Arduino
Contenido 1. Preliminares ................................................................................................. 2 2. Interface del Snap4Arduino ......................................................................... 4 3. Bloques ........................................................................................................ 8 4. Ejemplo usando Arduino NANO: Semáforo ............................................... 18
Susana Oubiña Falcón
Página 1
Guía rápida para Snap4Arduino 1. Preliminares Snap4Arduino es otro software del Universo Scratch. La versión que muestro está en fase beta y está siendo construida por el mismo equipo que desarrolló S4A, con la colaboración de Ernesto Laval. Ambos softwares, S4A y Snap4Arduino, se comunican con arduino a través de un firmware. Como todo, presenta sus puntos fuertes o ventajas y sus puntos débiles o desventajas. Puntos fuertes:
Es compatible con prácticamente todas las placas de Arduino, incluidas las Mega y Nano Aprovecha mejor todos los pines de la placas de Arduino Hasta 7 veces más rápido que S4A (Scratch for Arduino) Puedes interactuar con varias placas al mismo tiempo Al igual que Snap! (antes BYOB), nos permite construir nuestros propios bloques (Build Your Own Blocks) Utiliza un firmware estándar de Arduino, el StandardFirmata Traducción de scripts básicos en bocetos de Arduino
Además, podemos usar muchos dispositivos con Snap!:
Orbotix Sphero guide by Connor Hudson and Dan Garcia Lego NXT package by Connor Hudson Nintendo Wiimote package by Connor Hudson Finch and Hummingbird robots package by Tom Lauwers Parallax S2 robot package by Connor Hudson LEAP Motion by Connor Hudson Speech synthesis by Connor Hudson Arduino package by Alan Yorinks Arduino package by Bernat Romagosa/Citilab Fischertechnik ROBOTICS TXT Controller by Richard Kunze http://www.snap-apps.org/
Relativo a sus puntos débiles, en principio, se dice que sólo hay uno: No es compatible con S4A y, por lo tanto, no podemos abrir proyectos en Snap4Arduino si estos fueron creados en S4A, y viceversa.
Relativo a las placas que podemos usar, Snap4Arduino es compatible con muchas placas arduino. Estas tarjetas, para poderlas usar con Snap4Arduino, Susana Oubiña Falcón
Página 2
Guía rápida para Snap4Arduino deben tener cargado el programa StandardFirmata. Archivo que obtenemos de los ejemplos del IDE de Arduino:
StandardFirmata
Susana Oubiña Falcón
Página 3
Guía rápida para Snap4Arduino 2. Interface del Snap4Arduino La interface de Snap4Arduino es muy similar a un entorno Scratch. Habilita un escenario, una zona de objetos y escenarios y una zona de programación. Como todo software orientado a objetos, cada objeto y escenario puede programarse independientemente. De hecho, cada objeto disponiendo de tres pestañas específicas: Objetos o programación, disfraces y sonidos.
Interface de Snap4Arduino
Además, en la esquina superior izquierda se encuentra el “Conjunto de Bloques” y cada uno dispone de una serie de comandos de programación ordenados por categorías. El área de programación es la zona central y, en ella, cada bloque de comandos se arrastra y se ensambla para crear un programa. En el icono azul de snap4arduino podemos encontrar información sobre Snap y Snap4Arduino. Entre ellas, hay un acceso directo a la web de snap4arduino:
Susana Oubiña Falcón
Página 4
Guía rápida para Snap4Arduino
El menú superior dispone de una zona para el título del proyecto y de tres iconos:
En las opciones de este menú vemos que podemos guardar un proyecto haciendo clic en “Guardar como…”. En este prgrama se nos da dos opciones de guardado: Cloud y Browser.
La opción “Browser” significa que el archico sólo puede ser leido con el ordenador que ha realizado la operación de guardado, con el mismo navegador y conectado a la misma página web de Snap. Esta opción está limitada por nuestro navegador. Podemos abrir los proyectos con la opción “Abrir…” La opción “Cloud” es la nube de Snap y para poder guardar algún archivo en ella, debemos estar registrados en su web. Susana Oubiña Falcón
Página 5
Guía rápida para Snap4Arduino Entre las opciones del menú vemos la posibilidad de “Exportar proyecto…”. Podemos usar esta subpestaña para guardar un archivo. La extensión que utiliza para exportar es .xml. Archivo que podemos abrirlo en cualquier ordenador con la opción “Importar…” del mismo menú. Esta opción de importar tambien podemos usarla para incluir imágenes y sonidos en nuestros objetos. En el menú superior con icono de nube podemos logearnos, registarnos y cambiar la contraseña de la nube de la web de Snap. Tras registrarnos, podemos guardar proyectos allí:
En el bloque Arduino conecto la tarjeta que voy a utilizar. En mi caso y con esto enlazo con el siguiente punto de este minitutorial, la NANO, que está detectada en el COM9. Se nos mostrará un mensaje de conexión exitosa:
Susana Oubiña Falcón
Página 6
Guía rápida para Snap4Arduino
Finalmente, disponemos de otro icono en el menú principal para la personalización de diferentes características en nuestro programa. Esto abarca desde cambiar el idioma, tamaño y zoom, hasta diferentes preferencias como presentación de diálogos, modo turbo, etc.
A grandes rasgos, el programa es similar a S4A, pudiendo realizar en Snap4Arduino las prácticas de Practicando con S4A para una tarjeta Arduino Uno, para una NANO e incluso para una MEGA.
Susana Oubiña Falcón
Página 7
Guía rápida para Snap4Arduino 3. Bloques Cada bloque presenta sus respectivos comandos: Movimiento Este bloque es igual al bloque movimiento del Scratch1.4.
Susana Oubiña Falcón
Página 8
Guía rápida para Snap4Arduino Apariencia Este bloque no se diferencia del bloque apariencia del Scratch1.4.
Susana Oubiña Falcón
Página 9
Guía rápida para Snap4Arduino Sonido No existe un comando de elección de instrumentos musicales. Aun así, es similar al bloque sonidos de Scratch1.4.
Susana Oubiña Falcón
Página 10
Guía rápida para Snap4Arduino Lápiz Este bloque es igual al bloque lápiz del Scratch1.4.
Susana Oubiña Falcón
Página 11
Guía rápida para Snap4Arduino Control Los comandos de este bloque sí que difieren del Scratch1.4. En Snap4Arduino disponemos de más comandos, algunos relacionados con sus clones (ya conocidos en el scratch2.0), y otros nuevos propios del Snap4Arduino.
Susana Oubiña Falcón
Página 12
Guía rápida para Snap4Arduino
Susana Oubiña Falcón
Página 13
Guía rápida para Snap4Arduino Sensores Disponemos de un nuevo comando http://.... y que nos valdrá para poder conectarnos a un robot. A mayores, nos deja sensorizar el modo turbo.
Susana Oubiña Falcón
Página 14
Guía rápida para Snap4Arduino Operadores
Snap tiene mucho que ver con JavaScript. En este bloque, disponemos de un comando que nos deja operar con código JavaScript.
Susana Oubiña Falcón
Página 15
Guía rápida para Snap4Arduino Variables
Susana Oubiña Falcón
Página 16
Guía rápida para Snap4Arduino Arduino
Susana Oubiña Falcón
Página 17
Guía rápida para Snap4Arduino 4. Ejemplo usando Arduino NANO: Semáforo Placa NANO Si queremos usar una placa arduino NANO, debemos conocer donde están los pines analógicos y digitales de la misma, GND, Vin, 5V, etc. En la siguiente imagen se muestra que es cada pin:
En la imagen observamos: Ocho entradas analógicas: A0 a A7 Catorce pines digitales: D0 a D13. Entre ellos, dos, D0 y D1 se usan también para la comunicación por bluetooth. Seis de los pines digitales son PWM Un pin GND Un pin de voltaje 5V y otro de 3,3V Susana Oubiña Falcón
Página 18
Guía rápida para Snap4Arduino Un pin Vin para una batería de 9V Dos pines de RESET para reiniciar el arduino a través de un botón externo. Un pin de AREF (Analog Reference) Para comenzar a diseñar el primer programa debemos conectar la tarjeta Nano al puerto USB del computador. En la parte superior izquierda, del bloque Arduino seleccionamos la opción “Conectar Arduino”. Se mostrará un mensaje de conexión exitosa, luego comprobamos que los sensores están funcionando. A partir de ahora, todas las prácticas que se ejecutaban con una Arduino Uno en S4A, se podrán hacer en Snap4Arduino. También, podremos usar otras placas, como por ejemplo la NANO o la MEGA. El escenario de nuestro proyecto es el siguiente:
Escenario del proyecto
Susana Oubiña Falcón
Página 19
Guía rápida para Snap4Arduino Script de control del semáforo es:
Susana Oubiña Falcón
Página 20
Guía rápida para Snap4Arduino
Disfraces del objeto
Susana Oubiña Falcón
Página 21