ESP8266 สั่งรีเลย์ 4 channel ด้วยแอป Blynk
//complete Code
#define BLYNK_TEMPLATE_ID "TMPL6lMBMgMOv"
#define BLYNK_TEMPLATE_NAME "esp8266 relay4 v3"
#define BLYNK_AUTH_TOKEN "POR7pkUAQTgDHagDJa0AyHHhTS9MHcX8"
#define BLYNK_PRINT Serial
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "";
char pass[] = "";
int r1 = 5;
int r2 = 4;
int r3 = 14;
int r4 = 12;
BLYNK_WRITE(V1) // this command is listening when something is written to V1
{
int pinValue = param.asInt(); // assigning incoming value from pin V1 to a variable
if (pinValue == 1){
digitalWrite(r1, LOW);
digitalWrite(r2, HIGH);
digitalWrite(r3, HIGH);
digitalWrite(r4, HIGH);
Blynk.virtualWrite(V2,0);
Blynk.virtualWrite(V3,0);
Blynk.virtualWrite(V4,0);
Blynk.virtualWrite(V0, "1 เปิด");
} else if (pinValue == 0) {
digitalWrite(r1, HIGH);
Blynk.virtualWrite(V0, "1 ปิด");
}
Serial.print("V1 button value is: "); // printing value to serial monitor
Serial.println(pinValue);
}
BLYNK_WRITE(V2) // this command is listening when something is written to V1
{
int pinValue = param.asInt(); // assigning incoming value from pin V1 to a variable
if (pinValue == 1){
digitalWrite(r2, LOW);
digitalWrite(r1, HIGH);
digitalWrite(r3, HIGH);
digitalWrite(r4, HIGH);
Blynk.virtualWrite(V1,0);
Blynk.virtualWrite(V3,0);
Blynk.virtualWrite(V4,0);
Blynk.virtualWrite(V0, "2 เปิด");
} else if (pinValue == 0) {
digitalWrite(r2, HIGH);
Blynk.virtualWrite(V0, "2 ปิด");
}
Serial.print("V2 button value is: "); // printing value to serial monitor
Serial.println(pinValue);
}
BLYNK_WRITE(V3) // this command is listening when something is written to V1
{
int pinValue = param.asInt(); // assigning incoming value from pin V1 to a variable
if (pinValue == 1){
digitalWrite(r3, LOW);
digitalWrite(r1, HIGH);
digitalWrite(r2, HIGH);
digitalWrite(r4, HIGH);
Blynk.virtualWrite(V1,0);
Blynk.virtualWrite(V2,0);
Blynk.virtualWrite(V4,0);
Blynk.virtualWrite(V0, "3 เปิด");
} else if (pinValue == 0) {
digitalWrite(r3, HIGH);
Blynk.virtualWrite(V0, "3 ปิด");
}
Serial.print("V3 button value is: "); // printing value to serial monitor
Serial.println(pinValue);
}
BLYNK_WRITE(V4) // this command is listening when something is written to V1
{
int pinValue = param.asInt(); // assigning incoming value from pin V1 to a variable
if (pinValue == 1){
digitalWrite(r4, LOW);
digitalWrite(r1, HIGH);
digitalWrite(r2, HIGH);
digitalWrite(r3, HIGH);
Blynk.virtualWrite(V1,0);
Blynk.virtualWrite(V2,0);
Blynk.virtualWrite(V3,0);
Blynk.virtualWrite(V0, "4 เปิด");
} else if (pinValue == 0) {
digitalWrite(r4, HIGH);
Blynk.virtualWrite(V0, "4 ปิด");
}
Serial.print("V4 button value is: "); // printing value to serial monitor
Serial.println(pinValue);
}
void setup() {
Serial.begin(115200);
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
pinMode(r1, OUTPUT);
pinMode(r2, OUTPUT);
pinMode(r3, OUTPUT);
pinMode(r4, OUTPUT);
//เปิดจ่ายไฟ ค่าพินเลข เพื่อปิดการทำงานของ Relay
digitalWrite(r1, HIGH);
digitalWrite(r2, HIGH);
digitalWrite(r3, HIGH);
digitalWrite(r4, HIGH);
}
void loop() {
// put your main code here, to run repeatedly:
Blynk.run();
}
/////////////////
Relate Link :
https://docs.blynk.io/en
Contact:
https://www.facebook.com/chaiyutpong

ความคิดเห็น
แสดงความคิดเห็น