#define BLYNK_TEMPLATE_ID "TMPL2OADrn610"
#define BLYNK_TEMPLATE_NAME "Monitoreo de datos"
#define BLYNK_AUTH_TOKEN "Pi3SPK2aDrUaY-ySLXPE67vviqk_7NbE"
#include <WiFi.h>
#include <DHT.h>
#include <BlynkSimpleEsp32.h>
#include <ThingSpeak.h>
WiFiClient cliente;
DHT sensor(27,DHT22);
char* red="Wokwi-GUEST";
char* pswd="";
long ID_canal=3014808;
char* KEY="PU96BN67SXXVP2UM";
float temp=0, hum=0, idc=0;
void setup() {
sensor.begin();
Serial.begin(115200);
WiFi.begin(red,pswd);
while(WiFi.status()!= WL_CONNECTED){
Serial.print(".");
delay(250);
}
Serial.println("Conectado!");
ThingSpeak.begin(cliente);
Blynk.begin(BLYNK_AUTH_TOKEN,red,pswd);
delay(5000);
}
void loop() {
Blynk.run();
temp=sensor.readTemperature();
hum=sensor.readHumidity();
idc=sensor.computeHeatIndex(temp,hum);
if(idc>30){
Blynk.logEvent("alertatemp","Enciende el ventilador");
}
Blynk.virtualWrite(V0,temp);
Blynk.virtualWrite(V1,hum);
Blynk.virtualWrite(V2,idc);
ThingSpeak.setField(1,temp);
ThingSpeak.setField(2,hum);
ThingSpeak.setField(3,idc);
ThingSpeak.writeFields(ID_canal,KEY);
Serial.println("Temp: "+String(temp)+" - Hum: "+String(hum)+" - ST: "+String(idc));
Serial.println("Datos enviados a ThingSpeak!");
delay(15000);
}