#include <WiFi.h>
#include <ThingSpeak.h>
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
WiFiClient client;
unsigned long myChannel1Number = 2623020;
const char* myWriteAPIKey = "4FT5XS39VMADEVJ0";
int statusCode;
const int dhtpin=26;
#define TRIGGER 14
#define ECHO 27
#define led 13
float distance;
long duration;
int ledvalue;
void setup()
{
Serial.begin(115200);
pinMode(TRIGGER, OUTPUT);
pinMode(ECHO, INPUT);
pinMode(led, OUTPUT);
WiFi.begin(ssid,pass);
WiFi.mode(WIFI_STA);
ThingSpeak.begin(client);
delay(1000);
}
void loop()
{
distance = getvalue();
Serial.println("distance:"+String(distance));
delay(1000);
if(distance<=100)
{
digitalWrite(led, HIGH);
ledvalue =digitalRead(13);
}
else
{
digitalWrite(led, LOW);
ledvalue =digitalRead(13);
}
Serial.print("led value:"+String(ledvalue));
getWiFi();
ThingSpeak.setField(1,distance);
ThingSpeak.setField(2,ledvalue);
statusCode = ThingSpeak.writeFields(myChannel1Number, myWriteAPIKey);
}
long int getvalue()
{
digitalWrite(TRIGGER, LOW);
delayMicroseconds(2);
digitalWrite(TRIGGER, HIGH);
delay(10);
digitalWrite(TRIGGER, LOW);
duration = pulseIn(ECHO,HIGH);
return(duration*0.034/2);
}
void getWiFi() {
if (WiFi.status() != WL_CONNECTED) {
Serial.print("Attempting to connect");
while (WiFi.status() != WL_CONNECTED) {
WiFi.begin(ssid, pass);
Serial.print(".");
delay(4000);
}
}
Serial.println("\nConnected");
}