#include <WiFi.h>
#include <WiFiClient.h>
#include <DHT.h>
#include <ThingSpeak.h>
#define DHTPIN 32
#define DHTTYPE DHT22
#define RED_LED 33
#define YELLOW_LED 27
#define BLUE_LED 26
DHT dht(DHTPIN, DHTTYPE);
const char* ssid = "Wokwi-GUEST";
const char* password = "";
WiFiClient client;
unsigned long channelID = 2367345;
const char* writeAPIKey = "6T2CQUYW30SYS2M6";
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(RED_LED, OUTPUT);
pinMode(YELLOW_LED, OUTPUT);
pinMode(BLUE_LED, OUTPUT);
Serial.println("Connecting to WiFi...");
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("\nWiFi Connected.");
Serial.print("IP Address: ");
Serial.println(WiFi.localIP());
ThingSpeak.begin(client);
}
void loop() {
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
if (isnan(temperature) || isnan(humidity)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
if (temperature > 30) {
digitalWrite(RED_LED, HIGH);
digitalWrite(YELLOW_LED, LOW);
digitalWrite(BLUE_LED, LOW);
Serial.println("\nHava çok sıcak!");
} else if (temperature > 10) {
digitalWrite(RED_LED, LOW);
digitalWrite(YELLOW_LED, HIGH);
digitalWrite(BLUE_LED, LOW);
Serial.println("\nHava normal!");
} else {
digitalWrite(RED_LED, LOW);
digitalWrite(YELLOW_LED, LOW);
digitalWrite(BLUE_LED, HIGH);
Serial.println("\nHava soğuk!");
}
Serial.println("Sıcaklık: " + String(temperature));
Serial.println("Nem: " + String(humidity));
int response = ThingSpeak.writeField(channelID, 1, temperature, writeAPIKey);
if (response == 200) {
Serial.println("Sıcaklık değeri ThingSpeak kanalına yazıldı.");
} else {
Serial.println("Sıcaklık değeri ThingSpeak kanalına yazılamadı. Hata kodu: "+ String(response));
}
delay(15000); // ThingSpeak'in minimum güncelleme süresi
int response2 = ThingSpeak.writeField(channelID, 2, humidity, writeAPIKey);
if (response2 == 200) {
Serial.println("Nem değeri ThingSpeak kanalına yazıldı.");
} else {
Serial.println("Nem değeri ThingSpeak kanalına yazılamadı. Hata kodu: " + String(response2));
}
delay(15000); // ThingSpeak'in minimum güncelleme süresi
}