1. Introducción
Snap! es un lenguaje de programación que se presenta como una evolución del Scratch, una de las grandes ventajas que tiene Snap sobre Scratch es la implementación de bloques que facilitan enormemente la programación de nuestros programas.
2. Instalación de Snap4Arduino
Para instalar el Snap4Arduino deberemos ir a la página y descargarlo. Nos descargaremos el archivo de instalación (Snap4Arduino_desktop-gnu-64_1.2.2.tar.gz) y lo descomprimimos (Botón derecho del ratón sobre el archivo descargado > Extraer aquí).
Entramos en la carpeta y hacemos doble click sobre el el icono de Snap4Arduino.
3. El entorno
El entorno exactamente igual al paquete Snap! pero con la diferencia de que nos aparece el apartado especial para arduino.
El apartado de Arduino se encuentra al final de todos junto los demás menús de acciones:
Si accedemos al menú de Arduino nos aparecerán los siguientes comandos:
Podemos ver cómo tenemos un botón "Conectar Arduino" que deberemos pulsar para conectar-nos a Arduino. Pero antes de eso, hemos de instalar el Firmata para poder entenderse el programa con nuestra placa.
4. Instalación del Firmdata
Para instalar el Firmdata lo primero que haremos será iniciar el IDE de Arduino.
Una vez hayamos iniciado el IDE de Arduino vamos a Archivo > Ejemplos >Firmdata > StandarFirmata
Nos aparecerá el programa y deberemos cargarlo en nuestra placa:
5. Conectar a Arduino.
En estos momentos ya podemos volver a Snap for Arduino y "Conectar Arduino". El programa entonces se conectará con la placa:
Ahora ya podemos programar nuestro prototipo y cargarlo a la placa Arduino. Ten en cuenta que el programa que creemos en Snap for Arduino no se carga en nuestra placa, sino que envía las órdenes necesarias y el firmata que hemos instalado las interpreta. Podemos usar el siguiente programa a modo de ejemplo para ver si todo funciona. Recuerda que la mayoría de placas de Arduino llevan conectado al pin 13 a un led en la placa, el cual veremos parpadear a razón de 1 segundo.
Una de la ventajas que presenta Snap! respecto a Scratch es el uso de bloques. De manera que nos puede facilitar enormemente la programación haciéndola más comprensible:
Es más, podemos crear bloques mucho más complejos y exportarlos. De esta forma podemos crear librerías propias para usar en clase:
6. Variantes de Firmdata
Hay variantes del Firmdata que podemos encontrar en la página de snap4arduino que nos permiten hacer uso de otros componentes para Arduino, hay Firmdatas para controlar LCD's, sensores de humedad, motores paso a paso, etc. A modo de ejemplo podemos usar un Firmata que nos permitirá controlar un LCD. Para ello nos descargaremos el archivo y lo descomprimiremos. Veremos que tenemos dos archivos:
- LCDFirmata.ino
- LCD-library.xml
El archivo LCDFirmdata.ino es el que deberemos de cargar en nuestro arduino y luego el archivo LCD-library.xml deberemos importarlo:
Nos aparecerán nuevos bloques que nos permitirán conectar una pantalla LCD 16x2. Podemos usar el siguiente programa a modo prueba.
La pantalla hemos de conectarla tal y como se indica en la librería de LCD de Arduino:
- LCD RS pin to digital pin 12
- LCD Enable pin to digital pin 11
- LCD D4 pin to digital pin 5
- LCD D5 pin to digital pin 4
- LCD D6 pin to digital pin 3
- LCD D7 pin to digital pin 2
- LCD R/W pin to ground
El esquema quedaría de la siguiente manera: