#include <Servo.h>
int ldrPin1 = A0;
int ldrPin2 = A1;
const float GAMMA = 0.7;
const float RL10 = 50;
Servo myServo;
int servoPin = 3;
float valueLux (float val) {
float ldrVal = (val);
float voltage = ldrVal / 1024. * 5;
float resistance = 2000 * voltage / (1 - voltage / 5);
float lux = pow(RL10 * 1e3 * pow(10, GAMMA) / resistance, (1 / GAMMA));
return lux;
}
void setup() {
myServo.attach(servoPin);
}
void loop() {
float ldrVal1 = analogRead(ldrPin1);
float lux1 = valueLux(ldrVal1);
float ldrVal2 = analogRead(ldrPin2);
float lux2 = valueLux(ldrVal2);
if(lux1 > lux2) {
myServo.write(0);
} else if(lux1 < lux2) {
myServo.write(180);
} else if(lux1 = lux2) {
myServo.write(90);
}
}