Ya hemos visto que MAX 7.5 dispone de scratch 2.0 offline, AppInventor, Arduino IDE, Processing,... y s4a.
Scratch for Arduino, s4a, nos permite usar la versión 1.4 de Scratch junto con Arduino.
Pero ¿qué pasa si queremos usar otras versiones de Scratch?
Es evidente que Scratch 2.0 tiene más potencial que Scratch 1.4. Problema se basa en flash y hay que instalar Adobe AIR para que funcione. Es algo que hace que seamos un poco menos "libres". ¿Podemos usar esta versión con una placa arduino?
La respuesta es... SI
A mi me gusta usar HTML 5 para poder seguir siendo "libre". La versión de Scratch que están desarrollando en la Universidad de Berkeley está escrita en HTML 5.
Se trata de SNAP! y no se descarga, solo es accesible vía web:
http://snap.berkeley.edu/
¿Podemos usar SNAP! con una placa arduino?
La respuesta es... SI
Las siguientes instrucciones tienen la siguiente bibliografía web:
Aldo von Wangenheim, http://scratched.gse.harvard.edu/resour ... -bluetooth
http://www.computacaonaescola.ufsc.br/? ... 03&lang=en
http://playground.arduino.cc/Interfacing/Firmata
Se trata de instalar s2a-fm, que contiene el protocolo de comunicaciones genérico firmata (un firmware) y un servidor denominado s2a-fm server (Scratch to Arduino - firmata).
Se debe respetar el orden. Pasos:
1.º Instalar componentes Python. Desde un terminal ejecutamos:
Código: Seleccionar todo
sudo apt-get update
Código: Seleccionar todo
sudo apt-get install python-pip
Código: Seleccionar todo
sudo pip install PySerial
Código: Seleccionar todo
sudo pip install PyMata
3.º Abrimos Arduino IDE. Inicio > Programación > Arduino IDE.
¡Ojo! Si no se abre es porque estáis trabajando con una versión de Java incorrecta. Hay que usar open JDK 7. Para ello nos vamos a
Inicio > Herramientas del sistema > MAX Configurador Java y seleccionamos open JDK 7.
4.º Desde el menu de Arduino IDE compilamos StandarFirmata.
File > Examples > Firmata > StandarFirmata y una vez cargado pulsamos en la flecha -> (Upload) para cargar y compilar este firmware en la placa Arduino. Veremos que se encienden y apagan LEDs de actividad en nuestra placa.
5.º Descargamos s2a-fm. Descargamos desde este enlace:
https://github.com/MrYsLab/s2a_fm
Debemos hacer clic en la descarga del zip que esta abajo a la derecha. Luego hay que descomprimir el fichero master.zip.
O directamente en este enlace https://github.com/MrYsLab/s2a_fm/archive/master.zip.
Se puede descargar en cualquier sitio pero cuanto más accesible a Scratch 2.0 offline más cómodo.
6.º Lanzamos el servidor. Nos vamos dentro de la carpeta s2a_fm-master y abrimos ahí un terminal ejecutamos:
Código: Seleccionar todo
python s2a_fm.py /dev/ttyACM0
Si todo ha ido bien podemos usar nuestra placa Arduino con Scratch 2.0 y con Snap!.
Con Scratch 2.0:
Inicio > Programación > Scratch 2.0 offline
File > Open y buscamos en el carpeta s2a-fm_master la subcarpeta ScratchFiles/ScratchProjects y cargamos el fichero sa2_fm_base.sb2.
Ahora en la categoría de programación More Blocks deben aparecer los bloques de programación con nuestra arduino. Debe aparecer un circulo rojo que indica que el servidor de comunicación está ejecutándose.
Con SNAP!:
Abrimos en el navegador SNAP!:
http://snap.berkeley.edu/snapsource/snap.html
Debe reconocer nuestro idioma y se pondrá en español.
Ahora vamos al icono de documento/archivo arriba a la izquierda y... Archivo > Importar y buscamos la subcarpeta s2a_fm-master/Snap!Files.
Elegimos s2a_fm_Snap_base_Es.xml y lo cargamos.
Y voila! Tendremos nuevos bloques de comunicación con arduino en las categorías de programación Movimiento, Sensores y Sonido.
Un post un poco largo pero...
¿a qué merece la pena, eh?