#include <Servo.h>
const int servoPin = 3;
Servo myServo;
const int ldrPin = A1;
const int ledPin2 = 12;
const float GAMMA = 0.7;
const float RL10 = 50;
float ldrValue = 0;
void setup()
{
pinMode(ledPin2, OUTPUT);
Serial.begin(9600);
myServo.attach(servoPin);
}
void loop()
{
//Фоторезистор
int analogValue = analogRead(ldrPin);
float voltage = analogValue / 1024. * 5;
float resistance = 2000 * voltage / (1 - voltage / 5);
ldrValue = pow(RL10 * 1e3 * pow(10, GAMMA) / resistance, (1 / GAMMA));
Serial.print("LDR Value: ");
Serial.println(ldrValue);
if (ldrValue < 500)
{
digitalWrite(ledPin2, HIGH);
}
else
{
digitalWrite(ledPin2, LOW);
}
myServo.write((ldrValue / 10000) * 255); // Установка угла сервомотора
delay(200);
}