¿Qué es un LED?

Un LED es un diodo emisor de luz, es decir, un tipo particular de diodo que emite luz al ser atravesado por una corriente eléctrica.

Recodemos que diferenciamos entre dispositivos eléctricos y electrónicos. Los dispositivos eléctricos engloban resistencias, condensadores y bobinas, e integran el campo de electricidad.

Los dispositivos electrónicos, surgen del uso de materiales semiconductores, y dan lugar al campo de la electrónica.

Un diodo es una unión de dos materiales semiconductores con dopados distintos. Sin entrar en detalles, esta diferencia de dopado hace que genere una barrera de potencial, que como primera consecuencia hace que el paso de corriente en uno de los sentidos no sea posible.

Aquí tenemos la primera característica de los diodos, tienen polaridad, es decir, solo dejan pasar la corriente en un sentido. Por tanto, tenemos que conectar correctamente la tensión al dispositivo.

diagrama
El terminal largo (ánodo) debe ser conectado a V+ positivo, y el corto (cátodo) a V- negativo .

La otra consecuencia de la barrera de potencial es que, incluso conectando el dispositivo con la polaridad correcta, a baja tensión los electrones siguen sin poder atravesar el dispositivo.
Esto ocurre hasta alcanzar un cierto valor de tensión que llamamos tensión de polarización directa (Vd), que depende del tipo de diodo.

A partir de esta tensión decimos que el diodo está polarizado y la corriente puede atravesarlo libremente con una resistencia casi nula.
La tensión que realmente está alimentando al diodo es la diferencia entre la tensión aplicada, y la tensión de polarización directa del diodo.

Como vemos, en el momento que superamos la tensión de polarización, y dado que la resistencia del diodo es muy pequeña, se genera una gran corriente que destruirá el diodo. Por ese motivo, necesitamos una resistencia que limite la cantidad de corriente que circula por el diodo.

En resumen, si no ponemos una resistencia, el sistema solo tiene dos estados.

  1. Si la tensión aplicada es inferior a Vd, el LED no emite luz.
  2. Si la tensión aplicada es superior a Vd, el LED emite luz.

¿Por qué un LED enciende conectando a una salida de Arduino directamente?

El LED funciona porque Arduino tiene una limitación de 20mA en sus salidas. Esta limitación hace que el LED no se funda, aunque realmente se está comportando como si fuera un cortocircuito. Simplemente Arduino no puede dar más corriente.

Te puede interesar

Calcular el valor de la resistencia para polarizar un LED

Hemos visto que lo principal para hacer funcionar un LED es calcular el valor de la resistencia necesaria. Para calcular el valor de tensión necesaria para alimentar un LED necesitamos conectar 3 parámetros

  • Tensión de alimentación (Vcc)
  • Tensión de polarización (Vd)
  • Corriente nominal del LED (In)

Aplicando la ley de Ohm, con el valor de la intensidad nominal del LED

calculo de resistencia
Calculo de resistencia de alimentación de un LED

Dado que las resistencias comerciales tienen valores normalizados, no encontraréis una resistencia con el valor exacto que hayáis calculado. En este caso, elegiremos la resistencia normalizada inmediatamente superior al valor calculado, para garantizar que la corriente es inferior a la nominal.

La tensión de alimentación Vcc es conocida para nosotros. En caso de aplicar una fuente de alimentación o una batería, Vcc es la tensión nominal de la misma. En el caso de una salida digital o analógica de Arduino, Vcc dependerá del modelo que estemos usando (5V o 3.3V) pero también es conocido.

Recordar que aunque uséis una salida analógica PWM la tensión entregada a la carga es siempre Vcc. Consultar la entrada Salidas analógicas PWM en Arduino si tenéis dudas en esto.

Respecto a la tensión de polarización y la corriente nominal dependen de los materiales y constitución interna del diodo. En el caso de diodos LED convencionales de 3mm y 5mm, dependen principalmente del color y luminosidad

En la siguiente tabla os adjuntamos unos valores generales de la tensión de polarización Vd típica para cada color. También os figura el valor de la resistencia necesaria, en Ohmios, para distintos valores de tensión de alimentación Vcc.

Color Vdd Resistencia (Ohmios)
3.3V 5V 9V 12V
Infrarrojo 1.4V 150 270 510 680
Rojo 1.8V 100 220 470 680
Naranja 2.1V 100 200 470 680
Amarillo 2.2V 100 200 470 680
Verde 3.2V 10 150 330 560
Azul 3.5V 100 330 560
Violeta 3.6V 100 330 560
Blanco 3.8V 100 330 560

Conexión eléctrica

La conexión eléctrica es realmente sencilla. Simplemente ponemos la resistencia previamente calculada en serie con el LED.

conexion
Conexión de un LED con Arduino

Código

Los códigos es similar el ejemplo de BLINK (parpadear), el cual viene en la IDE de Arduino, pero empleando un LED externo en lugar del LED integrado en la placa. Para ello, solo tenemos que sustituir el número de PIN 13, correspondiente con el LED integrado, por el PIN de la salida a la que vamos a emplear.


const int ledPIN = 9;

void setup() {
  Serial.begin(9600);        //iniciar puerto serie
  pinMode(ledPIN , OUTPUT);  //definir pin como salida
}
 
void loop(){
  digitalWrite(ledPIN , HIGH);   // poner el Pin en HIGH
  delay(1000);                   // esperar un segundo
  digitalWrite(ledPIN , LOW);    // poner el Pin en LOW
  delay(1000);                   // esperar un segundo
}

Ejemplo con uso de PWM para variar su luminosidad

El siguiente código emplea una salida PWM para hacer variar la intensidad del LED, tal y como vimos en la entrada salidas analógicas en Arduino.


const int ledPIN = 9;
byte outputValue = 0;  
 
void setup(){  
  Serial.begin(9600);             // Iniciar puerto serie
}
 
void loop(){
  if (Serial.available()>0){     // Si hay datos disponibles
    outputValue = Serial.read(); // Leemos la opción
    outputValue -= '0';          // Restamos '0' para convertir a un número
    outputValue *= 25;           // Multiplicamos x25 para pasar a una escala 0 a 250
    analogWrite(ledPIN , outputValue);
  }
}