ENTRADAS

23 may 2016

TU PRIMER PROGRAMA CON ARDUINO

Poniendo nuestro Arduino en marcha

En una entrada anterior se hizo una introducción a Arduino (ver aquí). En esta ocasión se explicarán los pasos a seguir para realizar un proyecto real basado en Arduino.

Placa Arduino Uno y cable USB

Placa Arduino Uno y cable USB

En primer lugar necesitaremos una placa Arduino, un cable de conexión USB para conectar la placa al ordenador y el entorno de desarrollo de Arduino (también denominado IDE por sus siglas en inglés Integrated Develoment Environment). El cable USB no vamos a tener problemas para encontrarlo ya que se trata de un cable muy común (muchas impresoras utilizan este mismo cable). El IDE lo podemos descargar desde aquí de forma totalmente gratuita. Una vez que lo tenemos todo listo podemos empezar.

Configuraciones iniciales

El primer paso es conectar la placa al ordenador. Muchas placas reciben alimentación a través del cable USB por lo que no necesitamos conectar ningún cable más a la placa. En caso de no recibir alimentación necesitamos conectar la fuente de alimentación. Podemos comprobar rápidamente si existe alimentación mirando el LED etiquetado como PWR (del inglés power). Si el LED está encendido, tenemos alimentación.

A continuación tenemos que instalar los drivers (son una serie de normas que le indican a nuestro ordenador cómo debe conectarse con nuestra placa). Por lo general, al conectar la placa nos aparecerá una ventana para instalarlos de forma automática. En caso de que no aparezca, la página de Arduino contiene información sobre cómo realizar el proceso.

Una vez instalados los drivers ya podemos empezar a utilizar la placa. Así pues, abrimos nuestro entorno de desarrollo… ¡y a programar!

 

Familiarizándonos con el entorno de desarrollo

Antes de continuar es preciso hacer un recordatorio sobre qué es Arduino ya que nunca debemos olvidarlo. Arduino es un microcontrolador que se encuentra conectado a muchos elementos (botones, LEDs, pines, …). Nuestra función es programar el microcontrolador para que éste controle los distintos elementos. Por lo tanto, el IDE lo que nos permite es escribir el código que se va a ejecutar en el microcontrolador.

IDE de Arduino

IDE de Arduino

 

Al abrir nuestro entorno de desarrollo lo primero que debemos hacer es indicarle qué placa tenemos y en qué puerto se encuentra. Para indicar el modelo de placa (Arduino Uno, Arduino Mega,…) nos iremos a la pestaña Herramientas > Tarjeta. El puerto lo indicaremos en la pestaña Herramientas > Puerto Serial. Si no sabemos cuál es, podemos desconectar la placa y volver a seleccionar la opción de tal forma que habrá un puerto que haya desaparecido (ése es el puerto de la placa).

Una vez hecho esto podemos cargar algún ejemplo (pestaña Archivos > Ejemplos) o empezar a escribir nuestro código. Nosotros vamos a escribir un código para hacer que parpadee un LED.

A la hora de crear un proyecto nuevo se recomienda hacerlo en una carpeta que sólo contenga este proyecto. El IDE va a generar varios archivos en esta carpeta según lo necesite. De todos los que puede crear, el más importante (y que nunca va a faltar) es el archivo con extensión .ino. Este archivo contiene nuestro proyecto de Arduino y es el que tendremos que abrir cuando queramos continuar el trabajo que dejamos guardado previamente. Arduino utiliza la palabra sketch para denominar a los proyectos.

Los botones más importantes del entorno que debemos conocer son:

flecha1

 

(Verificar): este botón comprueba que no existen errores en el código.

flecha2

 

(Cargar): este botón verifica el código y lo carga en la placa. Hasta que no pulsemos este botón nuestro código no se habrá subido al Arduino.

flecha3

 

(Guardar): este botón nos permite guardar nuestro proyecto.

Una vez que sabemos lo necesario vamos a programar el Arduino.

Programando nuestro Arduino

Comenzamos escribiendo las siguientes líneas en nuestro código:

void setup(){

     }

void loop(){

     }

De esta forma tenemos dos apartados distintos en los cuales escribiremos código. El código se escribirá entre las llaves. Lo primero que debemos tener en cuenta es que el código se va ejecutando conforme aparece escrito. Por lo tanto, el orden es muy importante a la hora de programar.

Cuando se ejecute nuestro programa se ejecutará el código contenido dentro de setup (el código situado entre las llaves) y a continuación el código contenido dentro de loop. El apartado loop tiene la característica de que, una vez que ha llegado al final, vuelve a empezar por lo que el código aquí contenido se ejecutará continuamente.

En primer lugar debemos buscar en la documentación de la placa en qué pin se encuentra el LED que queremos controlar (nosotros vamos a suponer que se encuentra en el pin 13) y a continuación debemos indicar que este pin es de salida (ya que la información sale del microcontrolador para llegar al LED). Para ello escribimos la siguiente línea dentro de setup (sólo queremos que se ejecute una vez).

pinMode(13, OUTPUT);

Esta línea llama a la función pinMode y le indica que quiere modificar el modo del pin 13 para que sea una salida (OUPUT). Si consultamos información sobre esta función veremos que hay más opciones. Es muy importante que todas las sentencias (líneas) del código terminen con un punto y coma. Si no, el programa nos dirá que el código está mal.

Una vez que hemos indicado el modo del pin procedemos a activarlo o lo que es lo mismo, escribir un 1 en el pin 13. Para escribir un valor en un pin utilizamos la función digitalWrite:

digitalWrite(13, HIGH);

El 1 se va a mantener hasta que lo modifiquemos de nuevo con la función digitalWrite (en este caso indicaremos LOW en vez de HIGH para escribir un 0). Como no queremos que se encienda e, instantáneamente, se apague (puesto que no nos daría tiempo a verlo) debemos decirle al microcontrolador que espere. Para ello utilizamos la función delay

delay (1000)

En este caso hemos pasado un valor de 1000 para que espere 1000ms, o lo que es lo mismo, 1 segundo. Tras la espera procedemos a llamar a la función digitalWrite para escribir un 0 y volvemos a esperar un tiempo antes de encenderlo.

A continuación podemos observar la apariencia que tendría nuestro programa:

void setup() {

pinMode(13, OUTPUT);

}

void loop() {

digitalWrite(13, HIGH);

delay(1000);

digitalWrite(13, LOW);

delay(1000);

}

Así pues, este código lo que hace es:

  1. Configurar el pin 13 como un pin de salida
  2. Escribir un 1 en el pin 13
  3. Esperar 1 segundo
  4. Escribir un 0 en el pin 13
  5. Esperar 1 segundo
  6. Volver al paso 2

Tras cargarlo en la placa con la opción cargar comprobaremos su funcionamiento. Si queremos que parpadee más rápido o más lento sólo tenemos que modificar el tiempo que está esperando el LED cuando está encendido y cuando está apagado.

Autor: ALEJANDRO MARTÍNEZ LÓPEZ.

 

Más artículos del autor para el blog de FdeT

Si quieres participar en el blog como colaborador en alguna de las secciones, envíanos un mail a info@fdet.es 

Grupo FdeT

Compartir:
Facebooktwittergoogle_pluslinkedin

Leave a Reply

A %d blogueros les gusta esto: