Sistem Rumah Pintar Menggunakan Google Assistant dan Blynk
Berbasis Internet of Things
Disusun oleh :
1. Aprilia Dian Pramesti (3.32.20.2.02)
2. Rico Sigit Hartanto (3.32.20.2.20)
Latar Belakang :
Ketika sedang bepergian keluar rumah, terkadang seseorang lupa untuk mematikan peralatan elektronik seperti lampu, kipas angin, dan air conditioner (AC). Pada sistem rumah pintar ini, pengontrolan peralatan elektronik dapat diaktifkan dan dinonaktifkan menggunakan perintah suara atau menggunakan gawai pengguna walaupun dilakukan dari jarak jauh.
Komponen :
1. Komponen Luaran : Relay, LED, Motor DC, Selenoid Door Lock, dan LCD 16x2.
2. Komponen Pemroses : NodeMCU dan ESP266
3. Aplikasi Interface : Blynk, Google Assistant, Webhooks, dan IFTT.
Diagram Alir :
Diagram Skematik :
Program :
#define BLYNK_TEMPLATE_ID "TMPL3JJPFRmH"
#define BLYNK_DEVICE_NAME "PROJECT IOT"
#define BLYNK_AUTH_TOKEN "57YzGN0gJE5-FxlHMXDPMB8OkHUYDQqA"
#define BLYNK_FIRMWARE_VERSION "0.1.0"
#define BLYNK_PRINT Serial
//#define BLYNK_DEBUG
#define BLYNK_WIFI_SSID
#define BLYNK_WIFI_PASS
#define APP_DEBUG
// Uncomment your board, or configure a custom board in Settings.h
//#define USE_SPARKFUN_BLYNK_BOARD
#define USE_NODE_MCU_BOARD
//#define USE_WITTY_CLOUD_BOARD
//#define USE_WEMOS_D1_MINI
#include "BlynkEdgent.h"
int RelayPin1 = 5;
int RelayPin2 = 4;
int RelayPin3 = 14;
int RelayPin4 = 12;
BLYNK_WRITE(V0) { //Button Widget is writing to pin V0
int pinValue = param.asInt();
digitalWrite(RelayPin1, pinValue);
}
BLYNK_WRITE(V1) { //Button Widget is writing to pin V1
int pinValue = param.asInt();
digitalWrite(RelayPin2, pinValue);
}
BLYNK_WRITE(V2) { //Button Widget is writing to pin V2
int pinValue = param.asInt();
digitalWrite(RelayPin3, pinValue);
}
BLYNK_WRITE(V3) { //Button Widget is writing to pin V3
int pinValue = param.asInt();
digitalWrite(RelayPin4, pinValue);
}
BLYNK_WRITE(V4) { //Button Widget is writing to pin V4
int pinValue = param.asInt();
digitalWrite(RelayPin1, pinValue);
digitalWrite(RelayPin2, pinValue);
digitalWrite(RelayPin3, pinValue);
digitalWrite(RelayPin4, pinValue);
}
void setup()
{
Serial.begin(115200);
pinMode(RelayPin1, OUTPUT);
pinMode(RelayPin2, OUTPUT);
pinMode(RelayPin3, OUTPUT);
pinMode(RelayPin4, OUTPUT);
//TURN OFF all Relays on Start
digitalWrite(RelayPin1, HIGH);
digitalWrite(RelayPin2, HIGH);
digitalWrite(RelayPin3, HIGH);
digitalWrite(RelayPin4, HIGH);
delay(100);
BlynkEdgent.begin();
}
void loop() {
BlynkEdgent.run();
}
Cara Kerja :
Penjelasan :
Peralatan elektronik dapat diaktifkan melalui perintah suara atau langsung melalui antarmuka Blynk. Perintah suara diterjemahkan menjadi data high atau low menggunakan google assistant, IFTTT, dan webhooks. Data high atau low digunakan oleh Blynk untuk mengaktifkan atau menonatifkan peralatan elektronik dengan memberikan perintah kepada nodeMCU ESP-8266 untuk mengaktifkan atau menonatifkan relay yang telah terhubung ke peralatan elektronik tersebut.
Power Point :




Komentar
Posting Komentar