#include <WiFi.h>
#include "ThingSpeak.h"
const char* WIFI_NAME = "Wokwi-GUEST";
const char* WIFI_PASSWORD = "";
const int myChannelNumber = 2502957;
const char* myApiKey = "A2NW2U8QEX43NJBY";
const char* server = "api.thingspeak.com";
WiFiClient client;
const int trigPin = 22;
const int echoPin = 21;
const int potentiometerPin = 34;
void setup() {
Serial.begin(115200);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(potentiometerPin, INPUT);
WiFi.begin(WIFI_NAME, WIFI_PASSWORD);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Wifi not connected");
}
Serial.println("Wifi connected !");
Serial.println("Local IP: " + String(WiFi.localIP()));
ThingSpeak.begin(client);
}
void loop() {
int potValue = analogRead(potentiometerPin);
float voltage = potValue * (5.0 / 1023.0); // Convert ADC reading to voltage (assuming 5V supply)
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = (duration / 2) / 29.1; // Convert duration to distance in cm
ThingSpeak.setField(1, voltage);
ThingSpeak.setField(2, distance);
ThingSpeak.writeFields(myChannelNumber, myApiKey);
Serial.print("Potentiometer Voltage: \t");
Serial.println(voltage);
Serial.print("Ultrasonic Distance: \t");
Serial.println(distance);
delay(3000);
}