#include <ESP32Servo.h>
#include <DHT.h>
#define DHTPIN 16 // Pin yang terhubung ke DHT22
#define DHTTYPE DHT22 // Tipe sensor DHT22
DHT dht(DHTPIN, DHTTYPE);
Servo servo1;
int servoPin = 17;
void setup() {
Serial.begin(9600);
dht.begin();
servo1.attach(servoPin);
delay(2000); // Tambahkan sedikit penundaan setelah inisialisasi
}
void loop() {
if (Serial.available() > 0) {
char command = Serial.read();
float h = dht.readHumidity();
float t = dht.readTemperature();
int angle = map(t, 0, 50, 0, 180); // Mengubah nilai suhu menjadi sudut servo
if (isnan(h) || isnan(t)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
switch (command) {
case 'A':
Serial.print("Temperature: ");
Serial.print(t);
Serial.println(" *C");
break;
case 'B':
Serial.print("Humidity: ");
Serial.print(h);
Serial.println(" %");
break;
case 'C':
Serial.print("Servo Angle: ");
Serial.println(angle);
break;
}
}
delay(2000); // Penundaan untuk menghindari pembacaan berulang terlalu cepat
}