Módulo ESP8266 - LDR
El módulo de sensor de luz LDR puede detectar y medir la cantidad de luz que hay a su alrededor. Tiene dos salidas: una que proporciona una señal digital (ya sea baja o alta) y otra que proporciona una señal analógica.
Este tutorial te enseña cómo usar un ESP8266 y un módulo de sensor de luz LDR para detectar y medir la luz. Veremos lo siguiente:
- Cómo conectar el módulo de sensor de luz LDR al ESP8266.
- Cómo programar el ESP8266 para detectar la luz leyendo la señal digital del módulo de sensor de luz LDR.
- Cómo programar el ESP8266 para medir el nivel de luz leyendo la señal analógica del módulo de sensor de luz LDR.

Más adelante, puedes modificar el código para que, cuando el sensor de luz LDR detecte luz, pueda encender un LED o una bombilla mediante un relé.
Si prefiere un sensor de luz en su forma cruda, le sugiero explorar el tutorial sobre el ESP8266 - Light Sensor.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre el módulo de sensor de luz LDR
Puedes usar el módulo de sensor de luz LDR para detectar si hay luz o para medir qué tan brillante es el área. Tiene un pin de salida digital y un pin de salida analógica para que puedas elegir.
Distribución de pines
El módulo de sensor de luz LDR tiene cuatro pines:
- VCC pin: Conéctalo a una fuente de alimentación con un voltaje entre 3.3 V y 5 V.
- GND pin: Conéctalo a la tierra, que tiene 0 V.
- DO pin: Este es un pin de salida digital. Proporciona una señal ALTA cuando está oscuro y una señal BAJA cuando hay luz. Puedes ajustar el umbral entre oscuridad y claridad usando un potenciómetro que está integrado en el módulo.
- AO pin: Este es un pin de salida analógica. El valor de salida disminuye a medida que la luz se vuelve más brillante y aumenta a medida que la luz se vuelve más oscura.

Además, el módulo de sensor de luz LDR incluye dos indicadores LED:
- Un indicador PWR-LED muestra el estado de la alimentación.
- Un indicador DO-LED muestra el estado de la luz en el pin DO: se enciende cuando hay luz y se apaga cuando está oscuro.
Cómo funciona
Con respecto al pin DO:
- El módulo de sensor de luz LDR tiene un potenciómetro incorporado que te permite ajustar la sensibilidad o el umbral para la detección de la luz.
- Cuando la intensidad de la luz en el entorno circundante es mayor que el umbral establecido (lo que significa que hay luz), el pin de salida del sensor se pone en LOW y el DO-LED se enciende.
- Cuando la intensidad de la luz en el entorno circundante es menor que el umbral establecido (lo que significa que está oscuro), el pin de salida del sensor se pone en HIGH y el DO-LED se apaga.
Con respecto al pin AO:
- El valor leído desde el pin AO disminuye a medida que la intensidad de la luz en el entorno circundante aumenta (lo que significa que es más brillante).
- El valor leído desde el pin AO aumenta a medida que la intensidad de la luz en el entorno circundante disminuye (lo que significa que es más oscuro).
Tenga en cuenta que el potenciómetro no afecta el valor del pin AO.
Diagrama de Cableado
Como el módulo del sensor de luz tiene dos salidas, puedes elegir usar una o ambas, según lo que necesites.
- El diagrama de cableado entre el ESP8266 y el módulo sensor de luz LDR cuando se usa solo DO.

This image is created using Fritzing. Click to enlarge image
Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.
- El diagrama de cableado entre el ESP8266 y el módulo de sensor de luz LDR cuando se utiliza solo AO.

This image is created using Fritzing. Click to enlarge image
- El esquema de cableado entre el ESP8266 y el módulo de sensor de luz LDR cuando se usan tanto A0 como D0.

This image is created using Fritzing. Click to enlarge image
Código ESP8266 - Leer el valor del pin DO
Pasos R\u00e1pidos
Para empezar con ESP8266 en el IDE de Arduino, siga estos pasos:
- Consulta el tutorial cómo configurar el entorno para ESP8266 en Arduino IDE si es la primera vez que usas ESP8266.
- Conecte los componentes tal como se muestran en el diagrama.
- Conecte la placa ESP8266 a su computadora usando un cable USB.
- Abra Arduino IDE en su computadora.
- Seleccione la placa ESP8266 correcta, como (p. ej. NodeMCU 1.0 (ESP-12E Module)), y su correspondiente puerto COM.
- Copie el código anterior y ábralo con Arduino IDE.
- Haga clic en el botón Upload de Arduino IDE para cargar el código en ESP8266.
- Cubra y descubra el módulo sensor de luz LDR con su mano o con algo.
- Consulte el resultado en el Monitor Serial.
Si observas que el estado del LED permanece constantemente encendido o apagado, independientemente de las condiciones de iluminación, tienes la opción de ajustar el potenciómetro. Este ajuste te permitirá afinar la sensibilidad a la luz del sensor.
Además, tienes la flexibilidad de modificar el código para activar un LED o una luz cuando se detecta luz. Incluso puedes controlar un servomotor para habilitar la rotación. Para instrucciones detalladas y más información, consulte los tutoriales que se proporcionan al final de esta guía.
Código ESP8266 - Leer valor del pin A0
Pasos R\u00e1pidos
- Copia el código anterior y ábrelo con Arduino IDE
- Haz clic en el botón Subir en Arduino IDE para subir el código al ESP8266
- Cubre y destapa el módulo de sensor de luz LDR con la mano o con algo
- Ver el resultado en el Monitor Serial.
※ Nota:
Este tutorial utiliza la función analogRead() para obtener datos de un ADC (Convertidor Analógico a Digital) que está conectado a un sensor u otra parte. El ADC del ESP8266 funciona bien para proyectos en los que no necesitas lecturas muy precisas. Pero recuerda, el ADC del ESP8266 no es muy preciso para mediciones detalladas. Si tu proyecto necesita ser muy preciso, quizá quieras usar un ADC independiente como el ADS1115 con el ESP8266, o usar Arduino como el Arduino Uno R4 WiFi, que tiene un ADC más confiable.
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.