Arduino - Módulo de LDR

El módulo de sensor de luz LDR es capaz de detectar y medir la luz en el entorno circundante. El módulo proporciona dos salidas: una salida digital (BAJO/ALTO) y una salida analógica.

En este tutorial, aprenderemos a utilizar un Arduino y un módulo de sensor de luz LDR para detectar y medir el nivel de luz. Específicamente, cubriremos lo siguiente:

Módulo de sensor de luz LDR
image source: diyables.io

Posteriormente, puedes modificar el código para activar un LED o una bombilla (a través de un relé) cuando detecte la luz.

Si prefieres un sensor de luz en su forma cruda, te sugiero explorar el tutorial sobre el Arduino - Sensor de Luz.

Hardware Requerido

1×Arduino Uno R3
1×Cable USB 2.0 tipo A/B (para PC USB-A)
1×Cable USB 2.0 tipo C/B (para PC USB-C)
1×Módulo Sensor de Luz LDR
1×Cables Puente
1×(Recomendado) Shield de Bloque de Terminales de Tornillo para Arduino Uno
1×(Recomendado) Shield de Protoboard para Arduino Uno
1×(Recomendado) Carcasa para Arduino Uno
1×(Recomendado) Placa Base de Prototipado y Kit de Protoboard para Arduino Uno

Or you can buy the following kits:

1×DIYables STEM V3 Starter Kit (Arduino included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Acerca del módulo de sensor de luz LDR

El módulo de sensor de luz LDR puede utilizarse para detectar la presencia de luz o medir el nivel de luz en el entorno circundante. Ofrece dos opciones mediante un pin de salida digital y un pin de salida analógica.

Esquema de pines

El módulo de sensor de luz LDR incluye cuatro pines:

  • Pin VCC: Debe conectarse a VCC (3.3V a 5V).
  • Pin GND: Debe conectarse a GND (0V).
  • Pin DO: Es una salida digital. Está en ALTO si está oscuro y BAJO si está claro. El valor umbral entre oscuridad y claridad puede ajustarse mediante un potenciómetro integrado.
  • Pin AO: Es una 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.
Pinout del módulo de sensor de luz LDR
image source: diyables.io

Además, tiene dos indicadores LED:

  • Un indicador PWR-LED para la alimentación.
  • Un indicador DO-LED para el estado de la luz en el pin DO: está encendido cuando hay luz y apagado cuando está oscuro.

Cómo funciona

Para el pin DO:

  • El módulo tiene un potenciómetro incorporado para ajustar el umbral de luz (sensibilidad).
  • Cuando la intensidad de la luz en el entorno circundante está por encima del valor umbral (luz), la salida del sensor es baja y el DO-LED está encendido.
  • Cuando la intensidad de la luz en el entorno circundante está por debajo del valor umbral (oscuridad), la salida del sensor es alta y el DO-LED está apagado.

Para el pin AO:

  • Cuanto mayor sea la intensidad de la luz en el entorno (luz), menor será el valor leído del pin AO.
  • Cuanto menor sea la intensidad de la luz en el entorno (oscuridad), mayor será el valor leído del pin AO.

Tenga en cuenta que el potenciómetro no afecta el valor en el pin AO.

Diagrama de Cableado

Ya que el módulo de sensor de luz tiene dos salidas, puedes elegir usar una o ambas, dependiendo de lo que necesites.

  • El diagrama de cableado entre Arduino y el módulo de sensor de luz LDR cuando se utiliza solo DO.
Diagrama de cableado del módulo sensor de luz LDR para Arduino

This image is created using Fritzing. Click to enlarge image

  • El diagrama de cableado entre Arduino y el módulo de sensor de luz LDR cuando se utiliza solo AO.
Diagrama de cableado del módulo LDR de Arduino

This image is created using Fritzing. Click to enlarge image

  • El diagrama de cableado entre Arduino y el módulo sensor de luz LDR cuando se usan tanto A0 como D0.
Diagrama de cableado del módulo de sensor de luz Arduino

This image is created using Fritzing. Click to enlarge image

El cableado real:

Conexión del módulo de sensor de luz LDR para Arduino

Código de Arduino - Leer el valor del pin DO

/* * Este código de Arduino fue desarrollado por es.newbiely.com * Este código de Arduino se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino/arduino-ldr-module */ #define DO_PIN 2 // Arduino's pin connected to DO pin of the ldr module void setup() { // initialize serial communication Serial.begin(9600); // initialize the Arduino's pin as an input pinMode(DO_PIN, INPUT); } void loop() { int lightState = digitalRead(DO_PIN); if (lightState == HIGH) Serial.println("The light is NOT present"); else Serial.println("The light is present"); }

Pasos R\u00e1pidos

  • Copia el código anterior y ábrelo con el IDE de Arduino
  • Haz clic en el botón Subir del IDE de Arduino para cargar el código en Arduino
  • Cubre y destapa el módulo de sensor de luz LDR con tu mano o con algo
  • Ver el resultado en el Monitor Serial
COM6
Send
The light is present The light is present The light is NOT present The light is NOT present The light is NOT present The light is present The light is present The light is present
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Por favor, tenga en cuenta que si nota que el estado del LED permanece encendido de forma constante o apagado incluso cuando hay luz, puede ajustar el potenciómetro para afinar la sensibilidad a la luz del sensor.

Ahora podemos personalizar el código para activar un LED o una luz cuando se detecta la luz, o incluso hacer que un servomotor gire. Puedes encontrar más información e instrucciones paso a paso en los tutoriales proporcionados al final de este tutorial.

Código de Arduino - Leer valor del pin AO

/* * Este código de Arduino fue desarrollado por es.newbiely.com * Este código de Arduino se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino/arduino-ldr-module */ #define AO_PIN A0 // Arduino's pin connected to AO pin of the ldr module void setup() { // initialize serial communication Serial.begin(9600); } void loop() { int lightValue = analogRead(AO_PIN); Serial.println(lightValue); }

Pasos R\u00e1pidos

  • Copia el código anterior y ábrelo con el IDE de Arduino
  • Haz clic en el botón Subir en el IDE de Arduino para cargar el código en Arduino
  • Cubre y destapa el módulo sensor de luz LDR con tu mano o con algo
  • Observa el resultado en el Monitor Serial.
COM6
Send
145 146 146 572 678 945 956 1001 1002 1012 1013 645 546 346 172
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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.

Referencias de Funciones

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!