Fotoresistencia con Arduino
Última actualización
TABLA DE CONTENDIO
Aprende a utilizar una fotoresistencia o LDR con Arduino, la cual, es un dispositivo que varía su valor en función de la luz recibida.
Lectura de una fotoresistencia con Arduino
Para la lectura de una fotoresistencia se crea un divisor de voltaje para poder hacer la lectura.
MATERIAL
- 1x Arduino.
- 1x LDR.
- 1x Protoboard.
- 1x Resistor(10kΩ).
Esquema de montaje
Como se puede observar tenemos 2 formas de montaje.
Circuito esquemático
Código
Se proporcionan 2 códigos en los cuales varían únicamente los cálculos aritméticos y se consideran como enteros, de esta manera se evitan los números flotantes y así no ralentizar la ejecución del programa. Pueden utilizar el código que mejor les convenga.
Utilizar si la fotoresistencia está entre GND y A0
- const long A = 1000; //Resistencia en oscuridad en KΩ.
- const int B = 15; //Resistencia a la luz (10 Lux) en KΩ.
- const int Rc = 10; //Resistencia calibracion en KΩ.
- const int LDR = A0; //Pin del LDR.
- int V;
- int iluminacion;
- void setup()
- {
- Serial.begin(115200);
- void loop() //Definimos nuestra secuencia.
- {
- V = analogRead(LDR);
- iluminacion = ((long)(1024-V)*A*10)/((long)B*Rc*V);
- Serial.println(iluminacion);
- delay(1000);
Utilizar si la fotoresistencia está entre Vcc y A0
- const long A = 1000; //Resistencia en oscuridad en KΩ.
- const int B = 15; //Resistencia a la luz (10 Lux) en KΩ.
- const int Rc = 10; //Resistencia calibracion en KΩ.
- const int LDR = A0; //Pin del LDR.
- int V;
- int iluminacion;
- void setup()
- {
- Serial.begin(115200);
- void loop() //Definimos nuestra secuencia.
- {
- V = analogRead(LDR);
- iluminacion = ((long)V*A*10)/((long)B*Rc*(1024-V));
- Serial.println(iluminacion);
- delay(1000);