Saltar a contenido

Segunda Parte

Breve introducción al lenguaje Arduino

En este apartado se hace referencia sólo a la estructura básica del programa. En internet se puede encontrar gran cantidad de material al respecto. ( Ejemplos: Arduino Docs )

Lenguaje Arduino

Desciende del lenguaje “Wiring”, el que a su vez desciende de “Processing”, y este descendiente de C/C++. Si el usuario tiene experiencia con alguno de los nombrados, le va a resultar familiar.

Estructura básica del programa

Todo programa consta de dos partes principales, más específicamente, dos funciones, setup() y loop(). Es necesario que se haga referencia a ambas, de lo contrario, el programa no compilará. En el siguiente apartado se definen.

void setup() {

}

void loop() {

}

Funciones

Para acceder a un material bastante extenso al respecto, se recomienda visitar en la página oficial de Arduino el siguiente enlace Arduino Tutoriales

setup

Es la primera que ejecuta el programa. Es la encargada de recoger las configuraciones, entre ellas, declarar los pines como de entrada/salida, establecer el tipo de comunicación en serie y otras. Se ejecuta una sola vez.

loop

Es ejecutada cíclicamente (de ahí su nombre, bucle en inglés). Dentro del bloque de la misma se coloca el código que va a ser ejecutado continuamente (lectura de entradas, activación de salidas y demás). Es el núcleo del programa y el que realiza la mayor parte del trabajo.

Programación alternativa por bloques

Para facilitar la programación, se puede utilizar como opción alternativa trabajar directamente con el código, esto se refiere específicamente a la programación por bloques. En los últimos años han aparecido herramientas visuales como Scratch, LogoBlocks, Alice, App-inventor y otros que muestran una nueva forma de enseñar y aprender programación.

Ardublock

De las herramientas visuales, existe una en particular para la IDE de Arduino, Ardublock 4 . Es un lenguaje gráfico de programación que se distribuye como un pluging de java y que se añade a las herramientas del IDE, con lo que permite la elaboración de programas sin necesidad de escribir el código. Se compone de varios bloques funcionales de distintos colores que se pueden arrastrar y enlazar entre ellos, simulando piezas de un rompecabezas, para confeccionar el flujo de acción del programa. Una característica a destacar es que al cargarse el programa generado mediante bloques, se autogenera el código del mismo en el IDE de arduino. A continuación se puede apreciar el entorno de trabajo de esta herramienta.

Figura 2.2.1

Figura 2.2.1: Entorno de trabajo de Ardublock.

Cargando el primer programa en Ardublock

Encender un led

Para los pasos seguidos a continuación se da por hecho que la instalación del Ardublock ya ha sido realizada. Al final del manual, se puede encontrar un Anexo específico para su instalación en GNU/Linux. Programaremos encender un led que está conectado en el pin 13. Lo primero es abrir el IDE de Arduino y preparar el entorno de trabajo como se sugirió en el Apartado 1.3. Lo siguiente es dirigirse al menú Herramientas -> Ardublock. Al seleccionar Ardublock, se abrirá el entorno de trabajo cuyo aspecto se mostró en la Figura 2.2.1. Al igual que en el IDE debemos hacer referencia a dos funciones principales (setup,loop), aquí debemos insertar el bloque principal, que representa a ambas. Este bloque se llama program y se encuentra en la parte superior izquierda dentro de la sección Control como se muestra en la Figura 2.2.2. La manera de insertarlo, es haciendo clic izquierdo sobre el mismo, y manteniéndolo presionado arrastrarlo hacia el área del centro.

Figura 2.2.2

Figura 2.2.2: Ubicación del bloque “program” en Ardublock.

Lo siguiente es identificar el bloque que hace referencia al Led. Para ello nos dirigimos a IT10_Edukit->Prender Led. Hacemos clic sobre el mismo y lo arrastramos hacia la parte loop del bloque program. Posee un parámetro que se puede modificar e indica el led que vamos a encender (En este caso el 1).

Figura 2.2.3

Figura 2.2.3: Programa que enciende un led.

Analizando hasta el momento, hemos colocado el bloque set digital pin, haciendo referencia al pin 13, (que es donde tenemos conectado el led), en el estado HIGH. Con esto indicamos que el led 13 se encienda. Y está dentro del loop, por lo que el mismo se mantendrá encendido siempre. Una vez colocados los bloques, queda cargarlo al Arduino para verificar si está correcta la programación. Para ello hacemos clic en el botón Upload to Arduino, ubicado en la parte superior central.

2.2.4

Figura 2.2.4: Botón de carga de programa en Ardublock.

Si todo está bien, el programa se cargará y se encenderá el led 13. En caso de algún error, se procede a ver nuevamente los bloques o el código autogenerado en el IDE y los mensajes que nos provee éste.