LUZ INTERMITENTE

La primera práctica que os proponemos es muy sencilla, consiste en conseguir que un led parpadee.

  1. ¿Qué es un diodo led?
  2. Circuito: Cómo conectar un led a Arduino
  3. Programación con Mblock
  4. Programación con Arduino IDE

1.  ¿Qué es un diodo led?

 

De forma común, conocemos el diodo led como una pequeña fuente de luz con dos terminales, uno positivo y otro negativo.

Es un pequeño tubo en cuyo interior la conducción se da en el vacío. En su interior encontraremos dos pequeños filamentos: ánodo y cátodo. Correctamente conectados a una fuente de alimentación la corriente atravesará el diodo dando lugar a su iluminación.

Podemos identificar el terminal positivo y el negativo de dos maneras:

  • Observando la longitud de los terminales: el más largo es el terminal positivo y el más corto es el terminal negativo. Este método no siempre es válido, puesto que hemos podido cortar los terminales para acoplar el led al circuito.
  • En ese caso, la opción que nos queda es observar el led en su interior a trasluz. Veremos en el interior del led una plaquita y un filamento. El terminal que se une a la plaquita en el ánodo (-), y el terminal que se une al filamento es el cátodo (+).
Diodo LED
Diodo LED

 

2. Circuito: Cómo conectar un LED a Arduino

Para realizar este circuito necesitas los siguientes materiales:

Para realizar los circuitos en una protoboard, es importante conocer las conexiones que existen en ella. Puedes utilizar el siguiente enlace para leer información detallada sobre las conexiones de la protoboard

Conexión de un LED a Arduino
Conexión de un LED a Arduino

El cátodo se conecta al pin 12 y el ánodo a un pin GND de la placa Arduino.

¡Ya sólo nos queda programar!

Para programar la placa Arduino puedes utilizar diferentes lenguajes. Nosotros nos vamos a centrar en dos opciones

  • MBlock – programación basada en bloques
  • Arduino IDE – programación basada en líneas de código

3. Programación con mBlock

El objetivo de este programa es muy sencillo: conseguir que el LED que hemos conectado al pin 12 parpadee.

El primer paso es configurar la tarjeta, sigue los pasos que te indicamos en «Mblock: primeros pasos«

Una vez configurada la tarjeta comenzamos con la programación. El primer bloque que necesitamos en un evento (pulsa en el círculo naranja para ver los eventos disponibles) , en este caso utilizaremos el evento «cuando click en bandera verde«. Así, cada vez que se pulse la bandera verde nuestro led debería empezar a parpadear, y parará cuando se pulse el botón rojo.

Evento "Cuando clic en bandera"
Evento «Cuando clic en bandera»

Para que el led se encienda, utilizamos el bloque «pon el pin digital 9 en alto» que encontrarás si pulsas en el círculo azul «pin». Arrastramos este bloque justo debajo del evento y los juntamos para que se unan. Puesto que el led lo hemos conectado al pin 12 de la tarjeta Arduino, modificamos el bloque cambiando el 9 por un 12.

Así, tendremos en nuestro programa el bloque «pon el pin digital 12 en alto» cuya función es «encender» cualquier dispositivo digital que hayamos conectado al pin 12 de la tarjeta Arduino, en nuestro caso un LED.

Encender un LED
Encender un LED

Para que el led parpadee, después de encenderse debe apagarse. Utilizamos el mismo bloque, pero en lugar de poner «en alto» ponemos «en bajo«.

Apagar LED
Apagar LED

Hasta ahora hemos conseguido un parpadeo… que se realiza demasiado rápido, por lo que a penas podemos detectarlo. Introducimos un par de pausas en nuestro programa, de tal forma que después de encender el led, éste se queda encendido medio segundo, y después de apagarlo, se mantiene también medio segundo apagado. Si pulsas en el círculo naranja oscuro «control» encontrarás el bloque espera 1 segundo. Colócalo después de encender y apagar el led y modifica el 1 por 0.5.

Espera 1 segundo
Espera 1 segundo

Si pulsas en la bandera verde observarás que sólo parpadea 1 vez. Nosotros queremos que ese parpadeo sea continuo. Para ello necesitamos un bucle que haga que nuestro programa se ejecute constantemente. En los bloques de la sección control, encontrarás «para siempre«. Incorpóralo en tu programa.

Bucle para siempre
Bucle para siempre

Pulsa en la bandera verde y verás como tu led parpadea. ¡Objetivo conseguido!

4. Programación con Arduino IDE

El objetivo de este programa es muy sencillo: conseguir que el LED que hemos conectado al pin 12 parpadee… pero esta vez utilizando un lenguaje basado en líneas de código.

El primer paso es configurar la tarjeta, sigue los pasos que te indicamos en «Arduino IDE: primeros pasos«.

Una vez configurada la tarjeta comenzamos con la programación. Recuerda que al trabajar con código debemos respetar la sintaxis: Cuidado con las letras mayúsculas y minúsculas y con los signos de puntuación. ¡Son importantes!.

Los programas en Arduino IDE constan de dos secciones: setup y loop.

En setup vamos a configurar los pines de la placa que vamos a utilizar.

pinMode(12, OUTPUT); Establece que en el pin 12 vamos a conectar un dispositivo de salida (ej, un LED)
pinMode(12, INPUT); Establece que en el pin 12 vamos a conectar un dispositivo de entrada (ej, un pulsador)

En nuestro caso vamos a configurar el pin 12 como un pin de salida:

Setup arduino
Setup Arduino

En loop vamos a introducir el código que se va a ejecutar continuamente. Puesto que el objetivo de nuestro programa es que el led parpadee vamos a utilizar las siguientes líneas:

digitalWrite(12, HIGH); Enciende el Led conectado al pin 12
digitalWrite(12, LOW); Apaga el Led conectado al pin 12
delay(500); Realiza una pausa de medio segundo
Instrucciones – pin digital

Como comentamos anteriormente, el programa realizará la siguiente secuencia:

  • Encenderemos el led
  • Realizamos una pausa de medio segundo donde el led se mantiene encendido
  • Apagaremos el led
  • Realizaremos una pausa de medio segundo durante la cual el led se mantendrá apagado
  • Este código lo incluimos en un bucle infinito (loop)
Luz intermitente
Luz Intermitente

Aquí tienes el código completo, introdúcelo en tu placa y pruébalo:

void setup() {
    pinMode(12, OUTPUT);
}

void loop() {
  digitalWrite(12, HIGH);
  delay(500);
  digitalWrite(12, LOW);
  delay(500);
}

Pulsa en el icono subir, y si tu led parpadea … ¡Objetivo Conseguido!