Código de Arduino y vídeo para un módulo sensor de luz con relé
En este tutorial aprenderemos cómo usar un módulo sensor de luz para controlar una luz de corriente alterna. El proyecto permitirá que la luz se encienda automáticamente cuando esté oscuro y se apague cuando haya claridad. Esto es especialmente útil para aplicaciones como la iluminación exterior o las luces de garaje. Al final de este tutorial tendrás un sistema en funcionamiento que puede gestionar eficazmente la iluminación según las condiciones ambientales. (en el video a 02:15)

Usaremos un módulo de sensor de luz, que incluye una resistencia dependiente de la luz (LDR) para detectar los niveles de iluminación, y un relé para controlar la luz de CA. El sistema también incorporará un potenciómetro para ajustar la sensibilidad de la detección de luz. Esta configuración permite un control tanto digital como analógico de la luz en función de la luz ambiental detectada por el sensor. Para una aclaración detallada, consulte el video en 04:30.
Hardware explicado
Los componentes principales de este proyecto son el módulo sensor de luz, el relé y el Arduino. El módulo sensor de luz consiste en una LDR que cambia su resistencia según la intensidad de la luz, proporcionando ya sea una salida digital o analógica. El relé actúa como un interruptor que puede controlar una luz de CA de alta tensión mientras es operado de forma segura por el Arduino de bajo voltaje. Esta separación es crucial para la seguridad y la funcionalidad.
El relé tiene tres pines principales: común (COM), normalmente abierto (NO) y normalmente cerrado (NC). Al activarse, el relé conecta el pin común al pin normalmente abierto, permitiendo que la corriente fluya a través de la luz conectada. Este mecanismo permite que el relé controle la luz según las señales recibidas del Arduino.
Detalles de la hoja de datos
| Fabricante | Genérico |
|---|---|
| Número de pieza | Módulo sensor de luz |
| Voltaje de lógica/E/S | 5 V |
| Tensión de alimentación | 5 V |
| Corriente de salida (por canal) | 10 mA |
| Corriente de pico (por canal) | 20 mA |
| Guía de frecuencia PWM | No aplica |
| Umbrales lógicos de entrada | 2.5 V (alto) / 0.8 V (bajo) |
| Caída de tensión / RDS(on)/ saturación | 0,2 V típico |
| Límites térmicos | 85 °C |
| Paquete | Módulo |
| Notas / variantes | Incluye potenciómetro para ajustar la sensibilidad |
- Asegúrese de que el relé tenga una disipación de calor adecuada.
- Utilice una resistencia pull-up para la entrada del sensor de luz.
- Compruebe las especificaciones de voltaje antes de conectar dispositivos de CA.
- Evite tocar los cables expuestos cuando el sistema esté bajo tensión.
- Ajuste el potenciómetro para la sensibilidad lumínica deseada.
Instrucciones de cableado

Para cablear el módulo sensor de luz y el relé al Arduino, comience conectando el pin VCC del módulo sensor de luz al pin 5V del Arduino. A continuación, conecte el pin de tierra del sensor de luz a un pin GND del Arduino. El pin de salida digital del sensor de luz debe conectarse al pin 2 del Arduino, mientras que el pin de salida analógica se conecta a A0 para lecturas analógicas.
Ahora, para el relé, conecta su pin VCC al pin de 5V del Arduino y su pin de tierra a GND. El pin de entrada del relé debe conectarse al pin 9 del Arduino. Finalmente, conecta un cable de tu luz de CA al pin común (COM) del relé y el otro cable al pin normalmente abierto (NO). Esta configuración permitirá que el relé controle la luz de CA según las lecturas del sensor de luz.
Ejemplos de código y guía paso a paso
En el código digital básico para el sensor de luz, definimos los pines para el sensor y el relé. La función setup inicializa la comunicación serie y configura los modos de los pines:

#define LIGHT 2 // define pin 2 for sensor
#define RELAY 9 // define pin 9 as for relay
void setup() {
Serial.begin(9600); // setup Serial Monitor
pinMode(LIGHT, INPUT_PULLUP); // define pin as Input sensor
pinMode(RELAY, OUTPUT); // define pin as OUTPUT for relay
}
Este código configura el pin 2 como entrada para leer el sensor de luz y el pin 9 como salida para controlar el relé. También se inicializa el monitor serial para proporcionar información sobre el estado de la luz.
Dentro de la función loop, leemos continuamente el estado del sensor:
int L = digitalRead(LIGHT); // read the sensor
if (L == 1) {
Serial.println(" light is ON");
digitalWrite(RELAY, LOW); // turn the relay ON
} else {
Serial.println(" === light is OFF");
digitalWrite(RELAY, HIGH); // turn the relay OFF
}
Esta lógica comprueba el estado del sensor de luz y enciende o apaga el relé en consecuencia, proporcionando retroalimentación a través del monitor serial.
En el código analógico avanzado, incorporamos un método para leer valores de la salida analógica:
if (digital == true) {
int L = digitalRead(LIGHT); // read the sensor
if (L == 1) {
Serial.println(" light is ON");
digitalWrite(RELAY, LOW); // turn the relay ON
} else {
Serial.println(" === light is OFF");
digitalWrite(RELAY, HIGH); // turn the relay OFF
}
} else {
int a0Value = analogRead(A0); // read A0 value
if (a0Value >= LightValue) {
Serial.print(analogRead(A0));
Serial.println(" Light is ON");
digitalWrite(RELAY, LOW); // turn the relay ON
} else {
Serial.print(analogRead(A0));
Serial.println(" === light OFF");
digitalWrite(RELAY, HIGH); // turn the relay OFF
}
}
Esta sección permite ajustar la sensibilidad en función de la lectura analógica del sensor de luz, proporcionando un mayor control sobre los umbrales de activación de la luz.
Demostración / Qué esperar
Cuando la configuración esté completa y el sistema esté encendido, la luz debería encenderse en condiciones de poca luz y apagarse en condiciones de mucha luz. Puedes probar el sistema cubriendo el sensor de luz para simular oscuridad y observando la activación del relé. Si está configurado correctamente, el monitor serie mostrará "light is ON" o "light is OFF" según las lecturas del sensor. Ten cuidado con invertir la polaridad al conectar la luz de CA, ya que esto puede provocar malfuncionamientos o riesgos para la seguridad (en el video a las 10:00).
Marcas de tiempo del vídeo
- 00:00Introducción al proyecto
- 02:15Descripción general de los componentes y del cableado
- 04:30Explicación del código
- 10:00Demostración de funcionalidad
Cosas que podrías necesitar
-
Amazonas
Recursos y referencias
Aún no hay recursos.
Archivos📁
Archivo de Fritzing
-
Módulo de sensor de luz LDR negro
LDR_module_black.fzpz0.01 MB