0% found this document useful (0 votes)
4 views3 pages

Code

The document outlines a Blynk-based IoT setup using ESP32 and ESP8266 for temperature and distance monitoring. It includes code snippets for connecting to WiFi, sending and receiving data from a mobile app, and controlling a relay based on temperature readings. The setup also features distance measurement with ultrasonic sensors and LED indicators based on distance thresholds.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views3 pages

Code

The document outlines a Blynk-based IoT setup using ESP32 and ESP8266 for temperature and distance monitoring. It includes code snippets for connecting to WiFi, sending and receiving data from a mobile app, and controlling a relay based on temperature readings. The setup also features distance measurement with ultrasonic sensors and LED indicators based on distance thresholds.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Control Unit: Blynk.

virtualWrite(V2, setDist);
}

#define BLYNK_TEMPLATE_ID
"TMPL6UyqqWpW5"
// Publish setpoints every 3 seconds (to
#define BLYNK_TEMPLATE_NAME "scada other slaves via virtual pins or MQTT if
master" needed)

#define BLYNK_AUTH_TOKEN void sendSetpoints() {


"Si4LYOTUM11P1oEJRlHId0b9JPB4aiXG"
// Optional: use Serial or additional
Blynk.virtualWrite if required

#include <WiFi.h> }

#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h> void setup() {
Serial.begin(115200);

char ssid[] = "Samam"; Blynk.begin(BLYNK_AUTH_TOKEN, ssid,


pass);
char pass[] = "11223344";
timer.setInterval(3000L, sendSetpoints);
}
BlynkTimer timer;

void loop() {
float setTemp = 30.0;
Blynk.run();
float setDist = 30.0;
timer.run();
}
// Input from mobile app
BLYNK_WRITE(V0) {
setTemp = param.asFloat();
Blynk.virtualWrite(V0, setTemp); // Echo
for display
}

BLYNK_WRITE(V2) {
setDist = param.asFloat();
Field Unit 1: if (!isnan(temp)) {
Blynk.virtualWrite(V1, String(temp, 1));
#define BLYNK_TEMPLATE_ID
"TMPL6UyqqWpW5" if (temp < setTemp) {

#define BLYNK_TEMPLATE_NAME "scada digitalWrite(RELAY_PIN, HIGH);


master"
} else {
#define BLYNK_AUTH_TOKEN
digitalWrite(RELAY_PIN, LOW);
"Si4LYOTUM11P1oEJRlHId0b9JPB4aiXG"
}
}
#include <ESP8266WiFi.h>
}
#include <BlynkSimpleEsp8266.h>
#include <DHT.h>
void setup() {
Serial.begin(115200);
char ssid[] = "Samam";
pinMode(RELAY_PIN, OUTPUT);
char pass[] = "11223344";
digitalWrite(RELAY_PIN, LOW);
dht.begin();
#define DHTPIN D4
Blynk.begin(BLYNK_AUTH_TOKEN, ssid,
#define RELAY_PIN D5
pass);
#define DHTTYPE DHT11
timer.setInterval(3000L, sendTemp);
}
DHT dht(DHTPIN, DHTTYPE);
BlynkTimer timer;
void loop() {
Blynk.run();
float setTemp = 30.0;
timer.run();
}
BLYNK_WRITE(V0) {
setTemp = param.asFloat();
}

void sendTemp() {
float temp = dht.readTemperature();
Field Unit 2: digitalWrite(TRIG_PIN, LOW);
long duration = pulseIn(ECHO_PIN, HIGH,
30000);
#define BLYNK_TEMPLATE_ID
"TMPL6UyqqWpW5" return duration * 0.034 / 2;
#define BLYNK_TEMPLATE_NAME "scada }
master"
#define BLYNK_AUTH_TOKEN
void sendDistance() {
"Si4LYOTUM11P1oEJRlHId0b9JPB4aiXG"
float distance = readDistance();
Blynk.virtualWrite(V3, String(distance,
#include <WiFi.h>
1));
#include <BlynkSimpleEsp32.h>
if (distance < setDistance) {
char ssid[] = "Samam";
digitalWrite(LED_PIN, HIGH);
char pass[] = "11223344";
} else {
digitalWrite(LED_PIN, LOW);
#define TRIG_PIN 4
}
#define ECHO_PIN 22
}
#define LED_PIN 19

void setup() {
float setDistance = 30.0;
Serial.begin(115200);
BlynkTimer timer;
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
BLYNK_WRITE(V2) {
pinMode(LED_PIN, OUTPUT);
setDistance = param.asFloat();
Blynk.begin(BLYNK_AUTH_TOKEN, ssid,
} pass);
timer.setInterval(3000L, sendDistance);
float readDistance() { }
digitalWrite(TRIG_PIN, LOW); void loop() {
delayMicroseconds(2); Blynk.run();
digitalWrite(TRIG_PIN, HIGH); timer.run();
delayMicroseconds(10); }

You might also like