Usando un LDR con Arduino y un interruptor de control para encender un Arduino.
En este tutorial, exploraremos cómo usar un Resistor Dependiente de Luz (LDR) con un Arduino para controlar una luz en función de los niveles de luz ambiental. El LDR cambia su resistencia dependiendo de la intensidad de la luz; por lo tanto, se puede usar para detectar si hay luz o oscuridad en un entorno. Cuando la luz está por debajo de un cierto umbral, activaremos un pin de salida para encender una luz.

Los componentes principales que necesitarás incluyen una placa Arduino, un resistor de 10k ohmios, el LDR y algunos cables de puente. El LDR se conectará en una configuración de divisor de voltaje con el resistor para leer el voltaje analógico, que cambiará según la intensidad de la luz. Usaremos este voltaje para controlar un LED u otros dispositivos de salida.
Para una demostración visual de la configuración y el código, asegúrate de revisar el video asociado (en el video a :10).
Hardware Explicado
El resistor dependiente de la luz (LDR) es un tipo de resistor cuya resistencia disminuye con el aumento de la intensidad de la luz incidente. Se utiliza comúnmente en aplicaciones donde se necesita monitorear los niveles de luz. En nuestra configuración, el LDR se utilizará para detectar los niveles de luz ambiental y enviará un voltaje analógico correspondiente al Arduino.
El Arduino leerá este voltaje a través de uno de sus pines analógicos y decidirá si encender o apagar la luz conectada en función de un umbral definido. La resistencia de 10k ohmios se utiliza en la configuración de divisor de voltaje con el LDR para crear una salida de voltaje estable que el Arduino pueda leer.
Detalles de la hoja de datos
| Fabricante | Genérico |
|---|---|
| Número de parte | LDR |
| Resistencia (ligera) | 100 - 500 Ω |
| Resistencia (oscura) | 10 kΩ - 1 MΩ |
| Tensión de trabajo | 3.3 V - 5 V |
| Tiempo de respuesta | 20 ms (típ.) |
| Paquete | Orificio pasante |
- Asegúrese de que los niveles de voltaje sean adecuados; no exceda 5V.
- Utiliza una resistencia de pull-down para estabilizar las lecturas.
- Opta por un valor de resistor adecuado (10kΩ) para el divisor de voltaje.
- Considera usar un condensador para filtrar el ruido si es necesario.
- Mantenga el LDR alejado de fuentes de luz directa al realizar pruebas.
Instrucciones de cableado

Para configurar el circuito, comienza conectando un terminal del LDR a la fuente de alimentación de 3.3V en el Arduino. El otro terminal del LDR se conectará a un extremo de la resistencia de 10k ohmios. El otro extremo de la resistencia debe estar conectado a tierra.
A continuación, crea una conexión entre la unión del LDR y la resistencia a un pin de entrada analógica, comoA0Esta conexión permitirá que el Arduino lea el voltaje. Asegúrate de conectar la tierra del Arduino a la tierra común de tu circuito para garantizar un funcionamiento adecuado.
Ejemplos de código y guía paso a paso
El siguiente fragmento de código inicializa la comunicación serial y lee el valor analógico del LDR. Luego, el valor se convierte en un voltaje y se imprime en el monitor serial.
int LDRvalue = analogRead(A0); // Read the analog value from LDR
float voltage = LDRvalue * (5.0 / 1023.0); // Convert to voltage
Serial.print("Voltage ="); // Print label
Serial.print(voltage); // Print actual voltage
En este código, la variableLDRvaluealmacena la lectura analógica en bruto del LDR. El voltaje se calcula en función del valor analógico máximo (1023) y la referencia de voltaje (5V).
A continuación, verificamos si este voltaje está por debajo de un umbral (3V en este caso) para controlar un pin de salida.
if(voltage < 3 ){
digitalWrite(10, HIGH); // Turn on the light
}else{
digitalWrite(10, LOW); // Turn off the light
}Aquí, si el voltaje medido está por debajo de 3 voltios, configuramos el pin de salida (10) en ALTO, encendiendo la luz; de lo contrario, se establece en BAJO, apagándola. La verificación constante de la condición de la luz permite un control en tiempo real basado en los niveles de luz ambiental.
Demostración / Qué Esperar
Al completar el cableado y cargar tu código, deberías ver que las lecturas de voltaje en el monitor serial cambian a medida que varías la intensidad de la luz en el LDR. Si cubres el LDR, el voltaje debería aumentar, y cuando está expuesto a la luz, debería disminuir. Este comportamiento afectará directamente el pin de salida, que controla la luz.
Ten cuidado con los errores comunes, como entradas flotantes o niveles de voltaje incorrectos, que pueden llevar a lecturas erróneas (en el video a las 12:30).
Marcas de tiempo del video
- 00:00Introducción a LDR
- 01:30Configuración de hardware
- 03:45Explicación del código
- 06:00Ejecutando el código
- 09:15Consejos de solución de problemas
Recursos y referencias
Aún no hay recursos.
Archivos📁
No hay archivos disponibles.