Tutorial 1 – Salidas digitales con LEDs

Una vez hemos visto algunas nociones de programación, y hemos repasado el funcionamiento de algunos componentes, vamos a empezar con el cacharreo en sí.

En éste tutorial aprenderemos a configurar un determinado puerto como salida, y lo activaremos o desactivaremos para encender primero un led, y después unos cuantos de distintos colores. El resultado final lo podemos ver en el siguiente video.

Lista de componentes

Empezando con un simple LED

Introducción al tutorial

Para comenzar podemos dejar todos los leds y coger sólo el blanco, así como una sola resistencia. Las placas arduino tienen un led conectado por defecto al pin 13, por lo que podríamos utilizarlo directamente para manejar una salida digital. Sin embargo, como queremos coger soltura cacharreando, utilizaremos en este caso el pin digital 50.

Componentes para el primer montaje

El led blanco que vamos a emplear funciona con una caída de tensión entre sus terminales de 3,2v, y una corriente de 20mA. Como queremos que su vida se alargue en la medida de lo posible, intentaremos no sobrepasar los 15mA. Como ya hemos aprendido, el valor de la resistencia que necesitaremos para el montaje podemos calcularla de tal forma que

R=\frac{V}{I}=\frac{5V - 3,2V}{0,015A}=120\Omega

Como estaba un poco vago en el momento del montaje, tenía sobre la mesa resistencias de 47Ω y de 220Ω, así es que utilicé la de 220Ω, que proporcionaría al led una corriente de algo menos de 10mA, suficiente para que se ilumine.

En el caso de la potencia, aunque en éste montaje se ve a simple vista que no hay mucha exigencia, podemos calcularla también, así practicamos con las fórmulas:

P=V^2/R=3,24V^2/220\Omega=0,015W

 Así, podemos emplear cualquier tipo de resistencia, puesto que nuestro montaje exige tan sólo 0,015w.

Montaje del diseño

Haremos un esquema muy simple, como el siguiente:

Diagrama conexiones

Tan sólo tenemos que conectar la resistencia en serie con el led, y conectar la parte correspondiente al ánodo del LED (parte positiva) al pin 50 de Arduino y la parte correspondiente al cátodo del LED (parte negativa) a GND.

Esquema gráfico

Escribiendo el programa

Para que nuestro arduino sepa que tiene que encender un led (en este caso blanco) en intervalos de 1 segundo, necesitaremos de un código como el que podéis ver y descargar a continuación.

WhiteLEDBlink (1733 descargas)

Lo nuevo que introducimos en éste tutorial con respecto a lo visto en la Estructura básica de un Sketch, aparece resaltado en el código de arriba. A continuación de cada instrucción aparecen los comentarios perfectamente explicativos de cada una de las sentencias, por lo que con un vistazo podemos comprender qué es lo que se está haciendo.

En la estructura básica no hemos comentado nada sobre la posibilidad de código fuera de las funciones, pero lo cierto es que es una buena práctica utilizar esta parte de nuestro programa para realizar una especie de traducción de variables que nos haga más fácil la programación. Así, hemos empleado la variable  whiteLed  para referirnos al número entero 50, que representará el pin 50 de arduino.

Utilizando 5  LEDs de colores

Introducción al tutorial

Si os ha sabido a muy poco, podéis intentar algo más complejo (tampoco mucho más), pero que os irá soltando en el manejo de variables, funciones propias de arduino, conexiones con la protoboard, etc…

Para ello, vamos a recoger el material que descartamos al principio del tutorial, y vamos a asegurarnos de no quemar los leds con las resistencias empleadas.

Secuencia con varios led

Montaje del diseño

Vamos a emplear un diagrama como el siguiente:

Diagrama eléctrico del tutorial con varios led

Del mismo modo que antes conectabamos el led blanco, haremos lo propio con el resto de leds, conectando el led azul a la salida digital 46, el verde a la 42, el amarillo a la 38 y el rojo a la 34.

Esquema gráfico del tutorial con varios led

Los leds azul y verde tienen las mismas características en cuanto a tensión y corriente que el led blanco que hemos empleado, luego resistencias del mismo valor nos servirían.

Por su parte, los leds rojo y amarillo tienen las mismas características en cuanto a corriente que los anteriores, pero su tensión ha de estar comprendida entre 1,9 y 2,1v. Para un valor intermedio:

R=\frac{V}{I}=\frac{5V-2V}{0,015A}=200\Omega

Con lo cual, podemos utilizar más resistencias de 220Ω que, además, las tengo a mano. Con respecto a la potencia, podemos comprobar que incluso las de 1/4w nos valen de sobra:

P=V^2/R=9V^2/220\Omega

Escribiendo el programa

Como en el caso anterior, aquí tenéis el código de ejemplo para seguir el tutorial, y más abajo el link para descargaros el sketch directamente.

SeveralLEDBlink (1878 descargas)

Como veis tan sólo hay que ir repitiendo las instrucciones resaltadas en el código anterior en el orden que queramos, poniendo cuidado en si estamos encendiendo un led digitalWrite(redLed, HIGH); o apagándolo digitalWrite(greenLed, LOW);. Naturalmente, este código se podría simplificar con un bucle for, sin embargo, he querido extenderlo lo máximo posible para que se entendieran mejor las instrucciones.

Hasta el próximo tutorial!


9 Comentarios

  1. luces led de bicicleta

    gracias por este maravilloso tutorial, me ha ayudado mucho a terminar mi proyecto de este trimestre

     

    un saludo.

  2. Muy bueno y gracias por el aporte!

  3. como encender un lep, pero una vez que se apague se mantenga apagado asta nuevo aviso.

    • Hola isaig,

       

      Lo más sencillo es leer una entrada con un pulsador. Cuando se active la entrada, se enciende el led, se espera el tiempo que queramos, y se apaga de nuevo, siguiendo ejecutándose el método loop y volviendo a esperar una pulsación en la entrada del pulsador.

      Espero haberte ayudado.

  4. En verdad muchas gracias por este Tutorial 1 sobre LED

    Apreciaré mucho los siguientes Tutoriales

    Gerardo Vargas

    Saludos desde Cuernavaca, Mor

  5. Hola tiene los codigos con mas efectos para 5 leds para arduino mega 2560 igual al esquema hecho aqui. ya que soy nuevo en esto y no se de donde conseguir

Deja una respuesta

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

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies