#define BLYNK_TEMPLATE_ID "TMPL3w-dCObVZ"
#define BLYNK_TEMPLATE_NAME "IOTPhase4"
#define BLYNK_AUTH_TOKEN "i4xhUCb3epG8weF80tEfBppGaOts0SMv"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#define trigger_wave 13
#define distance_echo 12
#define buzzer 14
unsigned int condition=0;
BlynkTimer timer;
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
#define BLYNK_PRINT Serial
int a=0;
void setup()
{
Serial.begin(115200);
pinMode(trigger_wave, OUTPUT);
pinMode(distance_echo, INPUT);
pinMode(buzzer,OUTPUT);
Blynk.begin(auth,ssid,pass,"blynk.cloud",8080);
}
void loop()
{
//send the wqave to m,easure the length and teh capacity of water
a=1;
digitalWrite(trigger_wave, HIGH);
delayMicroseconds(10);
digitalWrite(trigger_wave, LOW);
// receiving wave to judge teh waterlevel and hit the buzzer
int duration = pulseIn(distance_echo, HIGH);
Serial.print("Distance in feet: ");
Serial.println((duration / 58)*0.3);
//now i hyave value 400 and average dam will be of 120 feet
//i ned to convert my values to 120 so
condition = (duration / 58)*0.3;
Blynk.virtualWrite(V0,condition);
Blynk.virtualWrite(V1, a);
if(condition >= 90)
{
digitalWrite(buzzer,HIGH);
Serial.print("DAM WILL BE OPENED FLOW WARNING!!!!!!!!! ");
Blynk.virtualWrite(V0,condition);
Blynk.virtualWrite(V1, a);
}
else if (condition<90)
{
a=0;
Blynk.virtualWrite(V1, a);
digitalWrite(buzzer,LOW);
}
delay(1000);
Blynk.run();
}