#define BLYNK_TEMPLATE_ID "TMPL6gYRIv-Od"
#define BLYNK_TEMPLATE_NAME "Timbangan Online"
#define BLYNK_AUTH_TOKEN "3KIvIHYxcdPcqB0C_T1oTbKhbx9-xLIl"
#define BLYNK_PRINT Serial
#define BLYNK_FIRMWARE_VERSION "1.1.0"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
//Konfigurasi Sensor Kelembapan Tanah
const int pinSensor1 = 34;
int adc1, persen1 = 0;
float dataSensor1;
const int pinSensor2 = 35;
int adc2, persen2 = 0;
float dataSensor2;
const int pinSensor3 = 32;
int adc3, persen3 = 0;
float dataSensor3;
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
BlynkTimer timer;
void setup()
{
Serial.begin(115200);
pinMode(pinSensor1, INPUT);
pinMode(pinSensor2, INPUT);
pinMode(pinSensor3, INPUT);
Blynk.begin(auth, ssid, pass);
timer.setInterval(1000L, sensorTanah_1);
timer.setInterval(1000L, sensorTanah_2);
timer.setInterval(1000L, sensorTanah_3);
}
void sensorTanah_1(){
//Baca Sensor Tanah
adc1 = analogRead(pinSensor1);
dataSensor1 = adc1 * (5.0 / 4095.0);
persen1 = (100.00 - ((adc1 / 4095.00) * 100.00));
Serial.print(persen1);
Serial.print(" | ");
Blynk.virtualWrite(V1, persen1);
}
void sensorTanah_2(){
//Baca Sensor Tanah
adc2 = analogRead(pinSensor2);
dataSensor2 = adc2 * (5.0 / 4095.0);
persen2 = (100.00 - ((adc2 / 4095.00) * 100.00));
Serial.print(persen2);
Serial.print(" | ");
Blynk.virtualWrite(V2, persen2);
}
void sensorTanah_3(){
//Baca Sensor Tanah
adc3 = analogRead(pinSensor3);
dataSensor3 = adc3 * (5.0 / 4095.0);
persen3 = (100.00 - ((adc3 / 4095.00) * 100.00));
Serial.println(persen3);
Blynk.virtualWrite(V3, persen3);
}
void loop()
{
Blynk.run();
timer.run();
}