1
IoT Starter Pack
Project 26 : Smart Home
Deskripsi/Cara Kerja.
Membuat aplikasi Internet of Things (IoT) dengan modul NodeMCU V3 untuk mengontrol dan
memonitor peralatan rumah tangga melalui aplikasi di smartphone. Cukup dengan menekan
tombol di layar monitor HP kita dapat menghidupkan lampu atau kipas angin di rumah kita, atau
jika ada kebocoran gas LPG dan ada jendela yang terbuka maka akan muncul pemberitahuan
melalui HP kita.
Proyek ini berupa simulasi sistem, sebagai contoh untuk sensor jendela menggunakan tombol
push on kemudian untuk bell pintu (door bell) memakai buzzer DC.
NodeMCU V3 dengan modul WiFi ESP8266 mengolah data dari beberapa sensor yaitu sensor suhu
kelembaban, sensor deteksi jendela terbuka (push-on button) dan sensor jarak ultrasonik. Hasilnya
kemudian dikirim dan ditampilkan dalam sebuah aplikasi Android yaitu Blynk. Sensor jarak
ultrasonik dan sensor jendela untuk ‘warning’ terjadi kondisi ‘bahaya’ adanya pencuri. Selain itu
NodeMCU huga terhubung dengan relay untuk mengontrol lampu (2) dan menghidupkan bell
(door bell).
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
2
IoT Starter Pack
Sistem Device Gambar
Monitoring Suhu & Sensor DHT11
Kelembaban
Deteksi Pencuri Sensor Ultrasonic
Deteksi Jendela Terbuka Tact Switch (Push ON
Switch)
Kontrol lampu (ON - OFF) Relay
Bel Pintu Wireless Buzzer
Kebutuhan Bahan
NodeMCU V3
Sensor Ultrasonic
Sensor DHT11
Buzzer
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
3
IoT Starter Pack
Push button
Relay 2 Channel
Kabel konektor
Kabel micro USB
Breadboard
Kebutuhan Software.
Arduino IDE
Blynk
Rangkaian/Skematik.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
4
IoT Starter Pack
Koneksi NodeMCU dengan Sensor Ultrasonik :
NodeMCU Sensor Ultrasonic HC-SR04
D5 Trig
D6 Echo
GND GND
Vin (5V) VCC
Koneksi NodeMCU dengan Sensor DHT11 :
NodeMCU DHT11
3.3 V +
D3 OUT
GND -
Koneksi NodeMCU dengan Buzzer :
NodeMCU Buzzer
D1 +
GND -
Koneksi NodeMCU dengan tombol push on :
NodeMCU Push ON
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
5
IoT Starter Pack
D2 Pin 1
GND Pin 2
Koneksi NodeMCU dengan modul Relay 2 Ch :
NodeMCU Modul Relay 2 Ch
GND GND
D7 IN1
D8 IN2
5V VCC
Petunjuk/Langkah Praktek.
Step 1 : Instalasi Hardware
Buat rangkaian NodeMCU dengan sensor DHT11, sensor Ultrasonik, tombol push – on, buzzer dan
modul relay 2 channel seperti pada rangkaian/skematik.
Step 2 : Pembuatan Program
Membuat program Blynk di Android (GUI Blynk)
Silakan baca & pelajari terlebih dahulu “TUTORIAL MEMBUAT APLIKASI IoT DI ANDROID
DENGAN [Link]” yang ada di CD.
Buka/jalankan Blynk kemudian buat project baru.
Buat project
baru
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
6
IoT Starter Pack
Muncul tampilan baru kemudian isi nama project : Smart Home. Klik bagian CHOOSE DEVICE
kemudian pilih NodeMCU. Untuk CONNECTION TYPE : Wi-Fi.
Tulis Judul
Project
Klik. Pilih
NodeMCU
Klik
“Create”
Klik tombol Create sehingga kode token Blynk akan dikirim ke email akun anda. Silakan buka dan
dicek karena nanti akan dipakai pada pemrogramana dengan Arduino IDE.
Berikutnya pada lembar kerja, tambahkan widget Gauge :
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
7
IoT Starter Pack
Geser layar keatas
jika “DISPLAYS”
belum terlihat
Klik “Gauge”
Tampil sebuah Gauge pada lembar kerja.
Tambahkan lagi sebuah Gauge, kemudian 3 buah tombol (BUTTON) dan sebuah Notification.
Untuk widget tombol ada di bagian CONTROLLERS :
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
8
IoT Starter Pack
Widget Notification dapat diambil di bagian NOTIFICATIONS :
Setelah semua widget ditambahkan pada lembar kerja akan tampak seperti ini :
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
9
IoT Starter Pack
Untuk merubah ukuran widget (ini juga tidak wajib, hanya untuk tampilan saja) klik/tekan + tahan
sebentar widgetnya kemudian lepaskan hingga muncul “frame” dengan dua (2) titik disebelah
kanan dan kiri. Tarik ke –kanan atau ke-kiri agar ukuran berubah.
Sedangkan untuk menggeser posisi widget cukup klik/tekan + tahan kemudian geser ke posisi
yang diinginkan.
Berikut ini contoh setelah ukuran masing – masing widget diatur. Anda boleh membuat design
posisi sendiri, tidak diubah-pun tidak mengapa.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
10
IoT Starter Pack
Selanjutnya kita seting untuk masing – masing widget, kita mulai dari Gauge 1. Klik widget Gauge 1
kemudian seting beberapa parameternya.
1. Klik kemudian
tulis “Temperatur”
Klik GAUGE 1
2. Klik INPUT PIN
Muncul tampilan Gauge Settings. Beri nama “Temperatur” dengan INPUT Virtual V1 range 0 –
100.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
11
IoT Starter Pack
8. Klik untuk
kembali ke tampilan
5. Klik OK utama
6. Klik kemudian
ganti dg 100
3. Pilih 4. Pilih V1
Virtual
7. Pilih Warna
Selanjutnya seting pada widget Gauge 2. Klik widget Gauge 2. Beri nama “Humidity” dengan
INPUT Virtual V2 range 0 – 100. Cara seting sama dengan seting Gauge 1.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
12
IoT Starter Pack
Selanjutnya seting pada widget BUTTON 1. Klik widget BUTTON 1. Beri nama Lampu 1, Output
Digital D7 (logic 1 – 0 ) dengan Mode SWITCH.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
13
IoT Starter Pack
1. Klik, tulis
“Lampu 1”
3. Ganti Logika
Output : 1 – 0
2. Pilih
Digital D7
4. Mode :
SWITCH
Selanjutnya seting pada widget BUTTON 2. Klik widget BUTTON 2. Beri nama Lampu 2, Output
Digital D8 (logic 1 – 0 ) dengan Mode SWITCH.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
14
IoT Starter Pack
1. Klik, tulis
“Lampu 2”
3. Ganti Logika
Output : 1 – 0
2. Pilih
Digital D8
4. Mode :
SWITCH
Selanjutnya seting pada widget BUTTON 3. Klik widget BUTTON 2. Beri nama Bell Pintu, Output
Digital D1 (logic 0 – 1 ) dengan Mode PUSH.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
15
IoT Starter Pack
1. Klik, tulis
“Lampu 2”
3. Logika Output :
0 – 1
2. Pilih
Digital D1
4. Mode :
PUSH
Untuk widget Notification tidak perlu diseting kecuali jika akan mengganti suara/nada
notifikasinya.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
16
IoT Starter Pack
Kalau sudah kita siapkan program Arduino IDE nya.
Program/Source Code di Arduino IDE
Program pada proyek ini memerlukan library :
BlynkSimpleEsp8266.h
ESP8266WiFi.h
DHT.h
Buka/jalankan Arduino IDE kemudian buat lembar kerja baru. Tulis kode program berikut.
/***************************************
* Project 26 : Smart Home
* Board : NodeMCU ESP8266 V3
* Input :
* Door sensor (push button) ----- D2
* Sensor Suhu Kelembaban (DHT11)-- D3
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
17
IoT Starter Pack
* Output :
* Door Bell (Buzzzer) ------------ D1
* RL1 (Lampu 1) ------------------ D7
* RL2 (Lampu 2) ------------------ D8
* Sensor Pencuri (Ultrasonik) :
* Echo ----- D5
* Trigger -- D6
* IoT Starter Pack
* [Link]
* ***********************************/
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <DHT.h>
#define BLYNK_PRINT Serial
#define doorBell D1 // buzzer
#define doorSensor D2 // sensor jendela (push button)
#define DHTPIN D3 // DHT11 terhubung dengan PIN D3 NODEMCU
const int echoP = D5; //sensor ultrasonic
const int trigP = D6; //sensor ultrasonic
DHT dht(DHTPIN, DHT11);
//Ganti dengan Token Blynk anda
char auth[] = "CbS0l3x8agGfefffJ9GJ6b3G5kKE5Q4S";
//---GANTI SESUAI DENGAN JARINGAN WIFI
//---HOTSPOT ANDA
char ssid[] = "ArdutechWiFi"; // Nama Hotspot
char pass[] = "12345678"; // Password
BlynkTimer timer;
float temp,humi;
int doorValue;
long duration;
int distance;
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
18
IoT Starter Pack
//===========================================
void get_sensor_us(){
digitalWrite(trigP, LOW);
delayMicroseconds(2);
digitalWrite(trigP, HIGH);
delayMicroseconds(10);
digitalWrite(trigP, LOW);
duration = pulseIn(echoP, HIGH);
distance= duration*0.034/2;
[Link]("Jarak=");
[Link](distance);
if(distance<=20){
[Link]("==> Objek Terdeteksi !");
[Link]("Objek Terdeteksi !!!");
}
}
//===========================================
void setup()
{
[Link](9600);
[Link]();
pinMode(trigP, OUTPUT);
pinMode(echoP, INPUT);
pinMode(doorSensor, INPUT_PULLUP);
pinMode(doorBell, OUTPUT);
pinMode(D7,OUTPUT);
pinMode(D8,OUTPUT);
digitalWrite(D7,HIGH);
digitalWrite(D8,HIGH);
delay(500);
[Link](1000L, sendDHT11);
[Link](auth, ssid, pass);
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
19
IoT Starter Pack
}
//==============================================
void sendDHT11()
{
humi = [Link]();
temp = [Link]();
if (isnan(humi) || isnan(temp)) {
[Link]("DHT11 tidak terbaca... !");
return;
}
else{
[Link]("Temperature: ");
[Link](temp);
[Link](" Celcius Humidity: ");
[Link](humi);
[Link](1, temp);
[Link](2, humi);
}
}
//============================================
void getDoorSensor(void)
{
doorValue = digitalRead(doorSensor);
if (doorValue==LOW)
{
[Link]("==> Jendela Terbuka !!");
[Link]("Jendela Terbuka !!!");
while(!digitalRead(doorSensor));
delay(1000);
}
}
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
20
IoT Starter Pack
//==========================================
void loop()
{
[Link]();
[Link]();
getDoorSensor();
get_sensor_us();
}
PERHATIKAN !
Ganti/sesuaikan variabel berikut :
Nama jaringan WiFi/hotspot : ssid [ ]
Password jaringan WiFi/hotspot : pass [ ]
Kode token Blynk : auth[ ]
Simpan (Save) kemudian Upload. Pastikan tidak ada error, jika masih ada silakan cek penulisan dll
kemudian perbaiki. (Program ini sudah diuji langsung dan sudah berjalan tanpa ada error)
Jalannya Alat
Setelah program berhasil di Upload, silakan buka Serial Monitor dari menu Tools Serial
Monitor, seting baudrate pada 9600 :
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
21
IoT Starter Pack
Jika sudah terhubung dengan server Blynk selanjutnya kita jalankan aplikasi Blynk di Android yang
tadi sudah dibuat. Klik tombol Start (pojok kanan atas) sehingga tampil aplikasi Smart Home :
Klik Start
Jika aplikasi berjalan dengan normal maka akan tampil seperti gambar berikut :
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
22
IoT Starter Pack
Running
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
23
IoT Starter Pack
Pada Gauge 1 akan menampilkan nilai suhu (temperature) dan Gauge 2 menampilkan nilai
kelembaban (humidity) yang terbaca sensor DHT11.
Anda dapat menambahkan lampu ke konektor Relay 1 dan Relay 2. Kita coba menyalakan Lampu
1, klik tombol LAMPU 1 (BUTTON 1) maka relay 1 akan ON. Coba juga untuk kontrol Lampu 2 dan
Door Bell.
Cobalah untuk menyalakan doorbell dengan menekan tombol “DOOR BELL” sehingga buzzer
berbunyi.
Untuk detektor pencuri dicoba dengan memberi halangan/objek di depan sensor ultrasonik (jarak
< 20 cm) sehingga notifikasi aktif.
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
24
IoT Starter Pack
Coba juga untuk sensor jendela dengan menekan tombol (push button).
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)
25
IoT Starter Pack
Selamat berkarya , semoga lancar dan bermanfaat.
Ardutech – “Sahabat Inovasi Anda”
[Link] @2020 (Terimakasih anda tidak meng-copy file ini untuk dijual kembali)