Sensor LDR de interfaz con Arduino Nano

Sensor LDR de interfaz con Arduino Nano

La resistencia dependiente de la luz tiene una vasta aplicación en proyectos dependientes de la luz. Con la ayuda de un microcontrolador como el Arduino Nano, el LDR se puede usar para controlar varios dispositivos en función del nivel de intensidad de la luz. Esta guía cubre los conceptos básicos de LDR y sus aplicaciones con el Arduino Nano.

El contenido de este artículo incluye:

1: Introducción al sensor LDR

2: Aplicaciones de LDR con Arduino Nano

3: Interfaciendo LDR con Arduino Nano

    • 1: esquema
    • 2: código
    • 3: Salida bajo luz tenue
    • 4: Salida bajo luz brillante

Conclusión

1: Introducción al sensor LDR

A Lenriquecedor Dependedora RiñonalEsistor (LDR) es un tipo de resistencia que cambia su resistencia en función de la intensidad de la luz a la que está expuesto. En la oscuridad, su resistencia es muy alta, mientras que en luz brillante su resistencia es muy baja. Este cambio en la resistencia hace que sea mejor para los proyectos de detección de luz.


LDR proporciona una salida de voltaje analógico que Arduino ADC leerá a Pins Analog. El pin de entrada analógica en el Arduino usa un ADC para convertir el voltaje analógico del LDR en un valor digital. El ADC tiene un rango de 0 a 1023, con 0 que representa 0V y 1023 que representa el voltaje de entrada máximo (generalmente 5V para el Arduino).

Arduino leerá los valores analógicos utilizando el Analogread () función en su código. La función Analogread () toma el número de pin de entrada analógica como argumento y devuelve el valor digital.


Los fotones o las partículas de luz juegan un papel crucial en la operación de LDRS. Cuando la luz cae sobre la superficie de un LDR, los fotones son absorbidos por el material, que luego libera electrones en el material. El número de electrones libres es directamente proporcional a la intensidad de la luz, y cuanto más liberados se liberan, menor será la resistencia del LDR.

2: Aplicaciones de LDR con Arduino Nano

La siguiente es la lista de algunas aplicaciones comunes de LDR con Arduino:

    • Control de iluminación automática
    • Interruptor activado con luz
    • Indicador de nivel de luz
    • Modo nocturno en dispositivos
    • Sistemas de seguridad basados ​​en la luz

3: Interfaciendo LDR con Arduino Nano

Para usar un LDR con el Arduino Nano, se debe crear un circuito simple. El circuito consiste en el LDR, una resistencia y el Arduino Nano. El LDR y la resistencia están conectados en serie, con el LDR conectado al pin de entrada analógica del Arduino Nano. Se agregará un LED al circuito que puede probar LDR funcionando.

1: esquema

La siguiente imagen es el esquema de Arduino Nano con sensor LDR.

2: código

Una vez que se ha configurado el circuito, el siguiente paso es escribir el código para el Arduino Nano. El código leerá la entrada analógica del LDR y la usará para controlar un LED u otro dispositivo basado en diferentes niveles de luz.

int ldr_val = 0; /*Variable para almacenar el valor del fotorresistor*/
int sensor = a0; /*Pin analógico para fotorresistor*/
int led = 12; /*Pin de salida LED*/
setup () void
De serie.comenzar (9600); /*Tasa de baudios para la comunicación en serie*/
PinMode (LED, salida); / *Pin de LED establecido como salida */

bucle void ()
Ldr_val = anicoGread (sensor); /*Analógico Leer LDR Valor*/
De serie.imprimir ("Valor de salida LDR:");
De serie.println (ldr_val); /*Muestra lDR de salida Val en el monitor serial*/
if (ldr_val> 100) /*Si la intensidad de la luz es alta* /
De serie.println ("alta intensidad");
DigitalWrite (LED, bajo); /*LED permanece apagado*/

demás
/*De lo contrario si la intensidad de la luz es baja LED permanecerá encendida*/
De serie.println ("baja intensidad");
DigitalWrite (LED, alto); /* LED ENCENDER El valor LDR es inferior a 100*/

retraso (1000); /*Lee valor después de cada 1 seg*/


En el código anterior, usamos un LDR con Arduino Nano que controlará LED utilizando la entrada analógica que proviene de LDR.

Las primeras tres líneas de código declaran variables para almacenar el Valor de fotorresistores, el pasador analógico para el fotorresistor y el CONDUJO pasador de salida.

En el configuración() función, la comunicación en serie se inicia con una velocidad de baudios de 9600 y el pin D12 LED se establece como salida.

En el bucle() función, el valor del fotorresistor se lee utilizando la función analogread (), que se almacena en el Ldr_val variable. El valor del fotorresistor se muestra en el monitor de serie utilizando la serie.función println ().

Un if-else La declaración se utiliza para controlar el LED en función de la intensidad de la luz detectada por el fotorresistor. Si el valor del fotorresistor es mayor que 100, significa que la intensidad de la luz es alta y el LED permanece apagado. Sin embargo, si el valor del fotorresistor es menor o igual a 100, significa que la intensidad de la luz es baja y el LED se enciende.

Finalmente, el programa espera 1 segundo usando la función de retraso () antes de leer el valor del fotorresistor nuevamente. Este ciclo se repite indefinidamente, haciendo que el LED se encienda y apague en función de la intensidad de la luz detectada por el fotorresistor.

3: Salida bajo luz tenue

La intensidad de la luz es inferior a 100, por lo que LED permanecerá encendido.

4: Salida bajo luz brillante

A medida que aumente la intensidad de la luz, el valor LDR aumentará y la resistencia LDR disminuirá para que LED se apagará.

Conclusión

El LDR se puede interactuar con Arduino Nano usando un pasador analógico. La salida LDR puede controlar la detección de la luz en varias aplicaciones. Ya sea que se use para el control de iluminación automática, los sistemas de seguridad basados ​​en la luz o simplemente un indicador de nivel de luz, el LDR y el Arduino Nano pueden estar interactuados para crear proyectos que respondan a los cambios en la intensidad de la luz.