#define BLYNK_PRINT Serial
#define BLYNK_TEMPLATE_ID "TMPL6KQDxEVD1"
#define BLYNK_TEMPLATE_NAME "Trafic Light"
#define BLYNK_AUTH_TOKEN "qBzclnRoPpU5VewNxUW5vBHa_WloN-_T"
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = BLYNK_AUTH_TOKEN;
char ssid[] = "Wokwi-GUEST";
char pass[] = "";
#define hijau1 23
#define kuning 22
#define merah1 21
#define hijau2 19
#define merah2 18
#define hijau3 5
#define merah3 4
#define alarm 12
int data;
int a;
BLYNK_WRITE(V0)
{
data = param.asInt();
if(data == 1){
a = 1;
Blynk.virtualWrite(V2, "Lampu Hijau Dari Arah Kairagi");
digitalWrite (kuning, HIGH);
digitalWrite (hijau1, LOW);
digitalWrite (hijau2, LOW);
digitalWrite (hijau3, LOW);
digitalWrite (merah1, LOW);
digitalWrite (merah2, LOW);
digitalWrite (merah3, LOW);
delay(3000);
digitalWrite (kuning, LOW);
digitalWrite (hijau1, HIGH);
digitalWrite (merah2, HIGH);
digitalWrite (merah3, HIGH);
}
else{
a = 0;
}
}
void setup() {
// put your setup code here, to run once:
pinMode (hijau1, OUTPUT);
pinMode (hijau2, OUTPUT);
pinMode (hijau3, OUTPUT);
pinMode (merah1, OUTPUT);
pinMode (merah2, OUTPUT);
pinMode (merah3, OUTPUT);
pinMode (kuning, OUTPUT);
Blynk.begin(auth, ssid, pass);
Blynk.virtualWrite(V0, 0);
}
void loop() {
Blynk.run();
if (a == 1){
Blynk.virtualWrite(V1, "Ambulance Silahkan Lewat");
}else{
Blynk.virtualWrite(V1, "Trafic Light Normal");
digitalWrite (kuning, HIGH);
digitalWrite (hijau1, LOW);
digitalWrite (hijau2, LOW);
digitalWrite (hijau3, LOW);
digitalWrite (merah1, LOW);
digitalWrite (merah2, LOW);
digitalWrite (merah3, LOW);
delay(2000);
Blynk.virtualWrite(V2, "Lampu Hijau Dari Perkamil");
digitalWrite (kuning, LOW);
digitalWrite (merah1, HIGH);
digitalWrite (hijau1, LOW);
digitalWrite (merah2, LOW);
digitalWrite (hijau2, HIGH);
digitalWrite (merah3, HIGH);
digitalWrite (hijau3, LOW);
delay(5000);
digitalWrite (kuning, HIGH);
digitalWrite (hijau1, LOW);
digitalWrite (hijau2, LOW);
digitalWrite (hijau3, LOW);
digitalWrite (merah1, LOW);
digitalWrite (merah2, LOW);
digitalWrite (merah3, LOW);
delay(2000);
Blynk.virtualWrite(V2, "Lampu Hijau Dari Arah Pusat Kota");
digitalWrite (kuning, LOW);
digitalWrite (merah1, HIGH);
digitalWrite (hijau1, LOW);
digitalWrite (merah2, HIGH);
digitalWrite (hijau2, LOW);
digitalWrite (merah3, LOW);
digitalWrite (hijau3, HIGH);
delay(5000);
digitalWrite (kuning, HIGH);
digitalWrite (hijau1, LOW);
digitalWrite (hijau2, LOW);
digitalWrite (hijau3, LOW);
digitalWrite (merah1, LOW);
digitalWrite (merah2, LOW);
digitalWrite (merah3, LOW);
delay(2000);
Blynk.virtualWrite(V2, "Lampu Hijau Dari Arah Kairagi");
digitalWrite (kuning, LOW);
digitalWrite (merah1, LOW);
digitalWrite (hijau1, HIGH);
digitalWrite (merah2, HIGH);
digitalWrite (hijau2, LOW);
digitalWrite (merah3, HIGH);
digitalWrite (hijau3, LOW);
delay(5000);
}
}
esp:VIN
esp:GND.2
esp:D13
esp:D12
esp:D14
esp:D27
esp:D26
esp:D25
esp:D33
esp:D32
esp:D35
esp:D34
esp:VN
esp:VP
esp:EN
esp:3V3
esp:GND.1
esp:D15
esp:D2
esp:D4
esp:RX2
esp:TX2
esp:D5
esp:D18
esp:D19
esp:D21
esp:RX0
esp:TX0
esp:D22
esp:D23
relay1:VCC
relay1:GND
relay1:IN
relay1:NC
relay1:COM
relay1:NO
relay2:VCC
relay2:GND
relay2:IN
relay2:NC
relay2:COM
relay2:NO
relay3:VCC
relay3:GND
relay3:IN
relay3:NC
relay3:COM
relay3:NO
led1:A
led1:C
led2:A
led2:C
led3:A
led3:C
led4:A
led4:C
led5:A
led5:C
led6:A
led6:C
led7:A
led7:C
led8:A
led8:C
led9:A
led9:C
relay4:VCC
relay4:GND
relay4:IN
relay4:NC
relay4:COM
relay4:NO
relay5:VCC
relay5:GND
relay5:IN
relay5:NC
relay5:COM
relay5:NO
relay6:VCC
relay6:GND
relay6:IN
relay6:NC
relay6:COM
relay6:NO
relay7:VCC
relay7:GND
relay7:IN
relay7:NC
relay7:COM
relay7:NO
vcc1:VCC
gnd1:GND