#include<ESP32Servo.h>
#define SERVO_pin 2 // pin para el servo
#define LDR_pin 34 //pin para el fotoresistor LDR
Servo myservo; //creaun objeto "myservo" para controlar el servo
void setup(){
Serial.begin(115200); // Inicializa la comunicacion del puerto serial a 115200
// Se configura el pin del servo como output.
myservo.attach(SERVO_pin); // Asigna el servo al pin 2 del objeto (myServo)
}
/* Próxima clase
dht22 temperatura
sensor de presencia
? int lux = map(ldr, 32, 4063,100000, 0.1);
*/
void loop(){
// Lectura del valor analógico de LDR
int ldr = analogRead(LDR_pin);
// Se calcula el valor de la variable "lux" del LDR
int lux = map(ldr, 0, 4096,100000, 0.1);
// Imprime el valor analógico de lux en LDR
Serial.println("Lux: " + String(lux));
// Mapea el valor leído del LDR al rango de 0 a 180 (grados) del servo
int angle = map(ldr, 0, 4096, 0, 180);
Serial.println("Angulo: " + String(angle));
myservo.write(angle);
// Espera un breve período antes de leer el potenciómetro nuevamente
delay(1000);
/*
#Conversión de variables de lux respecto al valor crudo de LDR "ldr"
32 bits de raw = 100k luxes
0.1 lux no hay luz = 4063 bits de raw
100k lux cerrar
50k abrir tapa(parcial)
1k abrir tapa (completa)
# Revisar programacion con if respecto a lux
if (lux==100000){
myservo.write(0);
Serial.println("LUX: " + String(lux));
}
if (lux==50119){
myservo.write(90);
Serial.println("LUX: " + String(lux));
}
if (lux==1000){
myservo.write(180);
Serial.println("lux: " + String(lux));
}
*/
}