¿Cómo usar un sensor LDR con Arduino?

¿Cómo usar un sensor LDR con Arduino?
El fin de este nuevo tutorial es aprender a utilizar un sensor LDR (Light-Dependent Resistor) junto a nuestro Arduino. Al finalizarlo, habremos creado un medidor de intensidad de luz ambiente haciendo uso de LEDs como indicadores y nuestro sensor LDR.
En primer lugar... ¿Qué es un sensor LDR? Se trata de un sensor que actúa como una resistencia variable en función de la luz que capta. A mayor intensidad de luz, menor resistencia: el sensor ofrece una resistencia de 1M ohm en la oscuridad, al rededor de 10k ohm en exposición de luz ambiente, hasta menos de 1k ohm expuesto a la luz del sol.
Otro concepto que debemos conocer es la diferencia entre pines digitales y pines analógicos. Hasta hora hemos utilizado únicamente pines digitales, los cuales pueden determinar como entrada o salida sólo dos valores lógicos de acuerdo a su voltaje: 1 o 0 (HIGH o LOW en el código, respectivamente). En cambio, los pines analógicos convierten el voltaje de entrada (entre 0v y 5v) a un valor digital que varía entre 0 y 1023. Según el valor en el cual se encuentre, podremos decir que hay más luz o menos luz, se está ejerciendo más fuera o menos, etc dependiendo del tipo de sensor que tengamos conectado al pin analógico.
Durante el desarrollo utilizaremos los siguientes componentes:
·         Placa Arduino UNO
·         Sensor LDR
·         3 LEDs
·         3 Resistencias 220ohm
·         1 Resistencia 10K ohm
·         Breadboard

·         Jumper cables

Componentes tutorial LDR con Arduino

El circuito constará de dos partes, la que contiene a los LEDs, que será similar al circuito realizado en nuestro primer tutorial, y una segunda sección, la cual contendrá al sensor LDR. Para comprender bien como funciona y está formada la segunda parte del circuito, tendrán conocer el concepto de Divisor de Voltaje. En nuestro sitio poseemos una explicación clara y completa para que comprendan de qué se trata, para qué se usa y cómo funciona un divisor de voltaje. A continuación el esquema del circuito:

Diagrama sensor LDR con Arduino

Obviaremos la parte del circuito que se encarga de conectar los LEDs a los pines digitales 2, 3 y 4, la cuál ya fue explicada en tutoriales previos (este y este) y pasaremos a la parte que más nos importa, ¿cómo conectar el sensor LDR? Como dijimos en la introducción, el LDR actúa como una resistencia variable. Para conocer la cantidad de luz que el sensor capta en cierto ambiente, necesitamos medir la tensión de salida del mismo. Para ello utilizaremos un divisor de tensión, colocando el punto de lectura para Vout entre ambas resistencias. De esta forma:
Vout=R2R1+R2.Vin

Dónde Vout es el voltaje leído por el PIN analógico de Arduino y será convertido a un valor digital, Vin es el voltaje de entrada (5v), R2 será el valor de la resistencia fija colocada (10k ohm) y R1 es el valor resistivo del sensor LDR. A medida que el valor del sensor LDR varía, obtendremos una fracción mayor o menor del voltaje de entrada Vin.
Ahora que hemos visto el circuito, podemos pasar al código, que es bastante sencillo:




Comentarios