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
- Conecta el ánodo del LED al pin 9.
- 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.