Brillo variable con PWM

Controla el brillo de un LED con un potenciómetro usando lecturas analógicas y PWM.

Qué vas a construir

Un potenciómetro que controla el brillo de un LED. Al girarlo, el brillo cambia de forma continua, de apagado a encendido completo.

Lo que aprendes

  • La diferencia entre leer un valor analógico y uno digital.
  • Qué significa PWM y por qué el Arduino Uno puede simular brillo intermedio.
  • Cómo cambiar un rango de valores con map().

Materiales en Tinkercad

  • Arduino Uno R3
  • Potenciómetro de 10 kΩ
  • LED y resistencia de 220 Ω
  • Protoboard y cables

Paso 1: Conecta el potenciómetro

Un potenciómetro tiene tres patas:

  • Una pata a 5V.
  • La pata del medio (el cursor) a A0.
  • La otra pata a GND.

Paso 2: Conecta el LED en un pin PWM

  1. Conecta el ánodo del LED al pin 9.
  2. Conecta el cátodo a la resistencia de 220 Ω y la resistencia a GND.

El pin 9 tiene el símbolo ~ en la placa. Ese símbolo indica que soporta PWM.

Paso 3: Escribe el código

const int POT = A0;
const int LED = 9;

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

void loop() {
  int lectura = analogRead(POT);                 // entre 0 y 1023
  int brillo = map(lectura, 0, 1023, 0, 255);    // convierte a 0 a 255
  analogWrite(LED, brillo);                      // escribe el brillo con PWM
}

analogRead() devuelve un valor entre 0 y 1023. analogWrite() acepta un valor entre 0 y 255. map() hace la conversión entre los dos rangos.

Paso 4: Ejecuta la simulación

Haz clic en Start Simulation y gira el potenciómetro. El LED debe pasar de apagado a encendido sin saltos bruscos.

Cómo sabes que lo lograste

  • Al girar el potenciómetro hasta un extremo, el LED se apaga.
  • Al girarlo hasta el otro extremo, el LED alcanza su brillo máximo.
  • En la posición intermedia, el LED tiene brillo intermedio.

Qué salió mal

El LED solo se enciende o se apaga, sin brillo intermedio. Probablemente conectaste el LED a un pin sin ~. Muévelo al pin 9, 10 u 11.

El brillo no cambia al girar. Revisa que el cursor del potenciómetro esté en A0 y que las otras dos patas estén en 5 V y GND.

Siguiente clase

En la siguiente clase vas a calcular la resistencia de un LED con la ley de Ohm, y a medir la corriente con el multímetro de Tinkercad.