byte sensor = 2;
byte led = 5;
int wert;
int light = 500;
int temp = 35;
const float BETA = 3950;
#include <ESP32Servo.h>
const int servoPin = 18;
Servo servo;
void setup() {
Serial.begin(9600);
pinMode( led, OUTPUT);
servo.attach(servoPin, 500, 2400);
analogReadResolution(10);
pinMode(35,INPUT);
pinMode(14,OUTPUT);
}
int pos = 0;
void loop() {
wert = analogRead(sensor);
if(light < wert){
digitalWrite(led, HIGH);
}else{
digitalWrite(led, LOW);
}
//000000000000
int analogValue = analogRead(35);
float celsius = 1 / (log(1 / (1023. / analogValue - 1)) / BETA + 1.0 / 298.15) - 273.15;
Serial.print("Temperature: ");
Serial.print(celsius);
Serial.println(" ℃");
if(celsius>=temp){
digitalWrite(14, HIGH);
servo.write(90);
}
else{
digitalWrite(14, LOW);
for (pos = 0; pos >= 0; pos -= 1) {
servo.write(pos);
delay(15);
}
}
delay(1000);
}