ArduBlock

Es un entorno de programación diseñado para hacer “la programación física con Arduino tan fácil como arrastrar y soltar” que en lugar de escribir código nos permite realizar la programación visual mediante bloques. Es compatible con todos los sistemas operativos.

Instalación de ArduBlock

Para funcionar es necesario instalar previamente Arduino IDE y entonces ya se podrá instalar el propio ArduBlock: http://sourceforge.net/projects/ardublock/

El proceso consistirá en descargar del anterior enlace un archivo con la extensión “.jar” y crear una carpeta dentro de la carpeta de trabajo de Arduino. Debido a que la carpeta de trabajo cambia según el sistema operativo lo más sencillo es ir al menú de Arduino IDE

Archivo => Preferencias (atajo de teclado: Control+coma)

La primera opción indica la ubicación de los “Sketchbook” de Arduino.

Iremos con el navegador de archivos hasta esa carpeta y se crearán la carpetas “tools“, dentro de ella la carpeta “ArduBlockTool” y finalmente dentro “tools” de nuevo (respetando las mayúsculas y minúsculas). En la segunda carpeta “tools” es donde se moverá el archivo descargado anteriormente.

Según el sistema operativo el archivo estará en las siguientes ubicaciones:

  • Sistemas Linux: /home/TUUSUARIO/Arduino/tools/ArduBlockTool/tool/ardublock-all.jar
  • Sistemas Mac: /Users/TUUSUARIO/Documents/Arduino/tools/ArduBlockTool/tool/ardublock-all.jar
  • Sistemas Windows: C:\Users\TUUSUARIO\Documents\Arduino\tools\ArduBlockTool\tool\ardublock-all.jar

En caso de tener abierto Arduino IDE durante el proceso habrá que cerrar y volver a abrirlo para que el ArduBlock aparezca en el menú “Herramientas”.

Antes de ponerse a programar es necesario elegir la “Placa” y el “Puerto” al que está conectado desde la interfaz de Arduino IDE (ambas opciones se encuentran bajo el menú “Herramientas”).

ardublock

Aspectos básicos de ArduBlock

La pantalla principal está dividida en 2 secciones: los bloques y la parte derecha para el programa. Zona a la que serán arrastrados los diferentes bloques que componen el programa. Una vez realizado el programa se procederá a pulsar en el botón “Cargar a Arduino” situado en la parte superior.

Para borrar un bloque bastará con arrastrarlo, de nuevo, al menú de la parte izquierda.

Veamos una serie de ejemplos con ArduBlock:

Ejemplo 1 ArduBlock – Parpadeo de un LED

Hardware Ejemplo 1: LED conectado al puerto digital 8.

Parpadeo de un LED con ArduBlockEn este programa no es necesario configurar nada y el programa que se ejecutará (sección “loop”) consistirá en:

  1. Encender el LED situado en el puerto número 8.
  2. Esperará 1000 milisegundos, es decir, un segundo. Sin hacer nada.
  3. Apagará el LED situado en el puerto nº 8.
  4. Esperará 1000ms (milisegundos) sin hacer nada.
  5. Volver al primer paso de forma indefinida (hasta que se le quite la electricidad).

Ejemplo 2 ArduBlock – Uso de una variable

Hardware Ejemplo 2: LED en puerto 8 de los pines digitales del Arduino.

Vamos a realizar un pequeño cambio en el programa anterior, pero que nos simplificará el montaje, pues antes si en lugar de conectar el LED en el puerto 8, usásemos en nº4 tendríamos que hacer modificaciones en 2 sitios, y eso que se trataba de un programa sencillo. En programas complicados un cambio de puerto supondría cientos de cambios en el programa pudiéndose olvidar alguno y provocar errores.

Este problema se soluciona mediante variables. Creamos la variable “LED” y le asignamos el valor 8. Ahora si usamos LED en lugar del 8 en el programa del primer ejemplo y luego se quisiese usar cambiar el puerto sólo habría que hacer un cambio en el primer bloque.

Parpadeo de un LED con ArduBlock y variables

Las variables sustituyen a un valor por una cadena de texto, que permiten al programador (es decir, a la persona) entender el código: ¿no es más fácil LED que el número 8 para saber qué es lo que estamos encendiendo?. Nota: en nuestro ejemplo no cambia de valor, pero más adelante cambiaremos los valores de la variable, pues pese al nombre “variable” su valor puede no cambiar, como en este ejemplo.

Ejemplo 3 ArduBlock – Parpadeo alternativo

Hardware Ejemplo 3: un LED en puerto 8 y otro en el puerto 9 de la placa Arduino.

Al primer ejemplo añadimos un segundo LED que se encenderá al revés del primero (es decir, siempre habrá uno encendido y otro apagado, pero ninguno a la vez). Ahora el uso de variables (que no cambian de valor) ya empieza a cobrar sentido: LED1 y LED2 es más fácil de identificar que si hubiésemos puesto los números 8 y 9.

ArduBlock parpadeo de 2 LED

Ejemplo 4 ArduBlock – Lectura analógica y uso del condicional

Hardware Ejemplo 4: LED conectado en el puerto 8 digital y un potenciómetro en el puerto A1 del Arduino.

Ahora veremos cómo leer datos analógicos y a la vez cómo funcionan los condicionales “si” (en inglés “if”).

Valor analógico: se crea una variable (POT, de potenciómetro) y se le asigna el valor que tenga el potenciómetro en ese instante. Dichos valores estarán entre 0 y 1023 (incluidos), siendo 512 el valor que está justo en el medio.

Condicionales: sólo ejecutan su trozo de código si la condición impuesta es “verdadera”, eso significa que sólo actuarán bajo ciertas condiciones. En el ejemplo las condiciones impuestas son que el valor de POT sea mayor de 512 o en el segundo caso que dicho valor sea menor o igual a 512.

ArduBlock con una lectura analógica

En este ejemplo, lo que se hace (además de declarar la variable LED1) es ejecutar para siempre (recordemos, dentro del “loop”) los siguientes pasos:

  • Crear la variable POT, leer el valor del potenciómetro y asignárselo. Dicho valor puede estar entre 0 y 1023. El potenciómetro estará en el PIN analógico 1, denominado A1.
  • Analiza la primera condición y se hace la pregunta: ¿el valor de POT es mayor de 512? En caso afirmativo encenderá el LED1 (y en caso negativo no hará nada).
  • Analiza la segunda condición: ¿el valor de POT es inferior, o igual a 512? En caso afirmativo apagará el LED1.
  • Vuelta al primer paso y se repite indefinidamente.

Como se puede ver los pasos ‘2’ y ‘3’ son contemplados todos los posibles valores que van a existir. Es decir 1024 casos (que son la cantidad de valores entre 0 y 1023).

Ejemplo 5 ArduBlock – Condicionales, analógicos y zumbador

Hardware Ejemplo 5: LED en el puerto 8, potenciómetro en A1 y un zumbador en el puerto digital 5 de la placa Arduino.

Este ejemplo es muy similar al anterior, pero se incorpora el zumbador, es decir, cuando el LED está encendido también lo estará el zumbador y ambos se apagarán a la vez.

ArduBlock lectura analógica y un zumbador a la vez

Intencionadamente en este ejemplo hay un error, que no hubiese existido de haberse utilizado los consejos del ejemplo número 2

¿Sabes identificar el error? Mejora este ejemplo para corregir el problema y al mismo tiempo evitar que se pueda repetir.

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *