PROTOTYPE SMART HOME DENGAN ESP32 BERBASIS INTERNET OF THINGS
LABORATORIUM MIKROKONTROLER II
PROTOTYPE SMART HOME DENGAN ESP32 BERBASIS INTERNET OF
THINGS
Dosen Pengampu:
Dr. Samuel Beta K.,
Ing.Tech, M.T.
Disusun
Oleh :
Kelompok 2
1.
Adinda Lidia
Selvi |
RE-2A |
(4.34.22.0.02) |
2. Elva Puspita Wardani |
RE-2A |
(4.34.22.0.08) |
3. Marshanda Aprilian N. |
RE-2A |
(4.34.22.0.14) |
4. Rizky Maulana H. |
RE-2A |
(4.34.22.0.21) |
PROGRAM
STUDI TEKNOLOGI REKAYASA ELEKTRONIKA
JURUSAN
TEKNIK ELEKTRO
POLITEKNIK
NEGERI SEMARANG
2024
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Pembuatan
smart home berbasis IoT (Internet of Things) didorong oleh beberapa faktor
utama yang mencerminkan kemajuan teknologi serta kebutuhan masyarakat modern.
Kemajuan teknologi informasi dan komunikasi telah memungkinkan berbagai
perangkat elektronik untuk saling berkomunikasi dan bertukar data secara
real-time, menjadikan konsep smart home lebih praktis dan dapat
diimplementasikan. Masyarakat kini menginginkan kenyamanan dan efisiensi yang
lebih tinggi dalam kehidupan sehari-hari, di mana smart home berbasis IoT dapat
mengotomatiskan tugas-tugas rumah tangga seperti pengaturan suhu, pencahayaan,
keamanan, dan manajemen energi, sehingga meningkatkan kualitas hidup
penghuninya.
Selain
itu, keamanan rumah menjadi perhatian penting yang dapat ditingkatkan dengan
teknologi smarthome. Sistem keamanan yang terhubung seperti sensor, kamera, dan
alarm dapat memberikan peringatan langsung tentang kejadian yang mencurigakan,
memungkinkan pemantauan dan pengendalian dari jarak jauh. Efisiensi energi juga
menjadi salah satu manfaat signifikan dari smart home, di mana penggunaan
energi dapat dipantau dan dikendalikan secara cerdas untuk mengurangi konsumsi
dan biaya listrik.
IoT juga memungkinkan integrasi dan
interoperabilitas berbagai perangkat dan sistem, memberikan fleksibilitas dan
kemampuan kustomisasi yang tinggi bagi pengguna. Perangkat dari berbagai
produsen dapat bekerja bersama dalam satu ekosistem smart home, memudahkan
pengguna dalam mengelola rumah mereka. Selain meningkatkan kenyamanan dan
keamanan, smart home berbasis IoT juga dapat mendukung layanan kesehatan,
hiburan, dan pendidikan yang lebih baik melalui perangkat yang terhubung dan
mampu memonitor kesehatan penghuni rumah serta memberikan peringatan dini
tentang kondisi kesehatan yang memerlukan perhatian.
1.2.
Tujuan
Tujuan dari perancangan alat ini, yaitu:
1.
Mempelajari
dan menerapkan teknologi sensor dan IoT dalam pembuatan sistem smart home.
2.
Meningkatkan keamanan dan
kenyamanan rumah, serta mendorong pengembangan teknologi smart home di
Indonesia.
1.3.
Rumusan Masalah
Berdasarkan uraian di atas, maka ada beberapa rumusan
masalah yang harus diperhatikan, yaitu:
1.
Bagaimana
cara kita meningkatkan keamanan dan kenyamanan dalam rumah dengan mengikuti perkembangan
teknologi?
2.
Bagaimana
merancang sistem smart home berbasis IoT menggunakan esp32?
3. Bagaiamana
merancang
antarmuka pengguna yang intuitif dan mudah digunakan untuk mengontrol dan
memonitor perangkat IoT dalam smart home, sehingga pengguna dari berbagai
tingkat teknologi dapat mengoperasikannya dengan mudah?
BAB II
TINJAUAN PUSTAKA
2.1.
ESP32
Mikrokontroler ESP32 merupakan
mikrokontroler SoC (System on Chip) terpadu dengan dilengkapi WiFi 802.11
b/g/n, Bluetooth versi 4.2, dan berbagai peripheral. ESP32 adalah chip yang
cukup lengkap, terdapat prosesor, penyimpanan dan akses pada GPIO (General
Purpose Input Output). ESP32 bisa digunakan untuk rangkaian pengganti pada
Arduino, ESP32 memiliki kemampuan untuk mendukung terkoneksi ke WI-FI secara
langsung.
Gambar 2.1. ESP32
Adapun spesifikasi dari ESP32 adalah
sebagai berikut: Board ini memeliki dua versi, yaitu 30 GPIO dan 36 GPIO.
Keduanya memiliki fungsi yang sama tetapi versi yang 30 GPIO dipilih karena
memiliki dua pin GND. Semua pin diberi label dibagian atas board sehingga mudah
untuk dikenali. Board ini memiliki interface USB to UART yang mudah diprogram
dengan program pengembangan aplikasi seperti Arduino IDE. Sumber daya board
bisa diberikan melalui konektor micro USB. (Nizam et al., 2022)
2.2.
Blynk
Blynk
adalah platform untuk IOS atau ANDROID yang digunakan untuk mengendalikan
module arduino, Rasbery Pi, Wemos dan module sejenisnya melalui internet.
Aplikasi ini sangat mudah digunakan bagi orang yang masih awam. Aplikasi ini
memiliki banyak fitur yang memudahkan pengguna dalam memakainya. Cara membuat
projek di aplikasi ini sangat mudah yaitu dengan cara drag dan drop. Blynk
tidak terkait dengan module atau papan tertentu. Dari aplikasi inilah kita
dapat mengontrol apapun dari jarak jauh dimana pun kita berada dengan catatan
terhubung dengan internet. Hal inilah yang disebut dengan IOT (Internet of
Things). (Mariza Wijayanti, 2022)
2.3.
Sensor Gas MQ-135
Sensor
Gas MQ-135 adalah sebuah sensor yang digunakan untuk mendeteksi kualitas udara
dan gas berbahaya. Berikut adalah beberapa fitur dan spesifikasi sensor ini:
· Sensitivitas
Tinggi: Sensor ini sangat sensitif terhadap gas-gas polutan dan gas buang
kendaraan bermotor, seperti ammonia, benzene, sulfide, dan gas-gas berbahaya
lainnya.
· Area
Deteksi Luas: Sensor ini memiliki area deteksi yang luas, sehingga dapat
mendeteksi gas-gas yang berada di dekatnya.
· Long
Life: Sensor ini memiliki masa pakai yang panjang, sehingga dapat digunakan
secara terus-menerus.
· Detection
Gas: Sensor ini dapat mendeteksi gas-gas seperti ammonia, benzene steam,
sulfide, dan gas-gas berbahaya lainnya.
· Concentration:
Sensor ini dapat mendeteksi konsentrasi gas dari 10 hingga 10.000 ppm.
· Loop
Voltage: Sensor ini dapat beroperasi dengan tegangan loop yang kurang dari 24V.
· Heater
Voltage: Sensor ini dapat beroperasi dengan tegangan heater yang sebesar 5V.
· Load
Resistence: Sensor ini dapat beroperasi dengan resistensi beban yang dapat
disesuaikan.
· Heater
Resistance: Sensor ini memiliki resistansi heater yang sebesar 31 ohm.
· Heater
Consumption: Sensor ini memiliki konsumsi daya heater yang kurang dari 900mW.
· Sensing
Resistance: Sensor ini memiliki resistansi sensing yang berada di antara 2K ohm
hingga 20K ohm pada konsentrasi 100 ppm NH3.
· Slope:
Sensor ini memiliki slope yang lebih dari 5.
· Standard
Operating Voltage: Sensor ini dapat beroperasi dengan tegangan operasi standar
sebesar 5V.
· Preheat
Time: Sensor ini memerlukan waktu pemanasan lebih dari 48 jam.
2.4.
Sensor Suhu dan Kelembaban DHT22
DHT22
adalah suhu dan kelembaban sensor digital senyawa yang output dikalibrasi
sinyal digital. Berkat teknologi akuisisi modul khusus digital dan suhu dan
kelembaban penginderaan teknologi diterapkan pada modul, DHT22 datang dengan
keandalan yang sangat tinggi dan stabilitas jangka panjang yang sangat baik.
DHT22 termasuk sensor kelembapan kapasitif dan suhu mengukur elemen NTC yang
terhubung ke kinerja tinggi8-bit mikrokontroler, sehingga kualitas yang sangat
baik, waktu respon super cepat, kemampuan anti-interferensi yang kuat dan
sangat hemat biaya. Dibandingkan dengan suhu SHT10 dan sensor humiditiy, DHT22
menikmati presisi tinggi dan harga yang lebih rendah, menjadikannya pilihan
ideal untuk rentang pertengahan harga, suhu & kelembapan kinerjatinggi
sensor. Jika digunakan bersama-sama dengan papan ekspansi Arduino, akan dengan
mudah mendapatkan interactives korelasi antara suhu dan persepsi kelembapan. (Saputra et al., 2020)
2.5.
Sensor LDR (Light Dependent Resistor)
Sensor
LDR (Light Dependent Resistor) adalah sebuah sensor yang digunakan untuk
mendeteksi cahaya.
Prinsip
Kerja
Sensor
LDR bekerja berdasarkan perubahan resistansi yang terjadi ketika cahaya
mengenai sensor. Resistansi sensor LDR berubah ketika cahaya mengenai sensor,
sehingga dapat digunakan untuk mendeteksi perubahan cahaya.
Fitur
dan Spesifikasi
· Rentang
Cahaya: Sensor LDR dapat mendeteksi rentang cahaya yang luas, mulai dari cahaya
terang hingga cahaya gelap.
· Sensitivitas:
Sensor LDR memiliki sensitivitas yang tinggi, sehingga dapat mendeteksi
perubahan cahaya yang kecil.
· Resolusi:
Sensor LDR memiliki resolusi yang tinggi, sehingga dapat mendeteksi perubahan
cahaya yang halus.
· Konektivitas:
Sensor LDR biasanya dilengkapi dengan konektor yang mudah digunakan.
2.6.
Relay
Relay
adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen
Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni Elektromagnet
(Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch). Relay menggunakan
Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga dengan arus
listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan
lebih tinggi.
2.7.
Fitting dan Lampu AC 220V
Pengertian
Fitting
Fitting
adalah sebuah perangkat yang digunakan untuk mengubah sumber daya listrik DC
menjadi AC. Fitting ini biasanya digunakan untuk menghubungkan sumber daya
listrik DC ke perangkat yang memerlukan sumber daya listrik AC, seperti lampu
AC 220V.
Pengertian
Lampu AC 220V
Lampu
AC 220V adalah sebuah lampu yang menggunakan sumber daya listrik AC 220V
sebagai sumber daya listriknya. Lampu ini biasanya digunakan untuk berbagai
aplikasi, seperti lampu rumah, lampu kantor, dan lain-lain.
2.8.
Resistor
Resistor
adalah komponen elektronik yang digunakan untuk membatasi aliran arus listrik
dalam sebuah rangkaian. Resistor bekerja berdasarkan hukum Ohm, yang menyatakan
bahwa tegangan (V) yang jatuh pada resistor sebanding dengan arus (I) yang
mengalir melaluinya dan resistansinya (R).
Fungsi
Resistor
- Mengatur Arus:
Resistor digunakan untuk mengatur jumlah arus yang mengalir dalam sebuah
rangkaian, melindungi komponen lain dari arus yang terlalu tinggi.
- Pembagi Tegangan: Resistor dapat
digunakan dalam rangkaian pembagi tegangan untuk menghasilkan tegangan
tertentu dari sumber tegangan yang lebih tinggi.
- Pengatur Waktu:
Dalam kombinasi dengan kapasitor, resistor dapat digunakan untuk membuat
rangkaian pengatur waktu (timer) atau rangkaian penunda (delay).
- Penyesuai Sinyal:
Resistor digunakan untuk menyesuaikan sinyal di rangkaian elektronik,
seperti mengurangi amplitudo sinyal atau mengatur impedansi.
- Pembuang Panas: Resistor dapat
digunakan untuk mengubah energi listrik menjadi panas dalam aplikasi
seperti pemanas listrik.
2.9.
Buzzer
Buzzer
adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran
listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama
dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada
diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi
elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar, tergantung
dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma
maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik
sehingga membuat udara bergetar yang akan menghasilkan suara. Buzzer biasa
digunakan sebagai indikator bahwa proses telah selesai atau terjadi suatu
kesalahan pada sebuah alat (alarm).
2.10.
LED
Light
Emitting Diode atausering disingkat dengan LED adalah komponen
elektronika yang dapat memancarkan cahayamonokromatik ketika
diberikan tegangan maju. LED merupakan keluarga Dioda yang terbuatdari bahan
semikonduktor. Warna-warna Cahaya yang dipancarkan oleh
LED tergantung pada jenis bahan semikonduktor yang dipergunakannya.
LED juga dapat memancarkan sinar inframerah
yang tidak tampak oleh mata.
LED
merupakan keluarga dari Dioda yang terbuat dari semikonduktor. Cara
kerjanya pun hampir sama dengan Dioda yang memiliki dua kutub yaitukutub Positif (P) dan kutub Negatif (N). LED hanya akan
memancarkan cahaya apabila dialiri tegangan
maju (bias
forward)
dari Anoda
menuju ke Katoda. LED terdiri dari sebuah
chip semikonduktor yang di doping sehingga menciptakan junction P dan N. Yang dimaksud dengan
proses doping dalam semikonduktor adalah proses untuk menambahkan
ketidakmurnian (impurity) pada semikonduktor
yang murni sehingga menghasilkan
karakteristik kelistrikan yang diinginkan.
BAB III
PERANCANGAN ALAT
3.1.
Daftar Komponen
Komponen yang kami gunakan untuk perancangan alat ini,
yaitu:
1.
ESP32
2.
Sensor
Gas MQ-135
3.
Sensor
DHT22
4.
Sensor
LDR
5.
Resistor
6.
Relay
7.
Buzzer
8.
LED
9.
Fitting
dan Lampu
10. Kabel Jumper
3.2.
Cara Kerja
Cara kerja alat ini menggunakan dua mode: manual dan
otomatis. Saat menggunakan mode manual, output yang digunakan bisa dikontrol
atau di on-off kan menggunakan tombol input pada tampilan blynk. Sedangkan pada
saat mode otomatis, sensor dht22 akan membaca suhu ruangan dan ketika suhu
<30°C maka led warna biru akan menyala. Ketika suhu <30°C dan <40°C
maka led warna kuning akan menyala. Dan ketika suhu >40°C mala led warna
merah akan menyala. Saat sensor mq-135 mendeteksi adanya kebocoran gas, buzzer
akan berbunyi. Sensor ldr berguna untuk mendeteksi cahaya pada ruangan, ketika ruangan
sudah gelap (malam hari) maka lampu akan menyala dan ketika ada cahaya sekitar
ruangan (siang hari) maka lampu akan mati.
3.3.
Diagram Blok
3.4.
Diagram Alir
3.5.
Gambar Rangkaian
3.6.
Kode Program
/*================================
Projek Tugas
Akhir Semester
Smart Home
dengan Aplikasi Blynk
================================
Kelompok 2
Anggota :
1. 02-Adinda
Lidia Selvi NIM:4.34.22.0.02
2. 08-Elva
Puspita Wardani NIM:4.34.22.0.08
3.
14-Marshanda Aprilian N.
NIM:4.34.22.0.14
4. 20-Rizky
Maulana H. NIM:4.34.22.0.21
================================
*/
#include <DHT.h> //Library DHT22
#define DHT22_PIN 13 //Pin DHT tersambung di 13
#define RELAY_PIN 26 //Pin relay tersambung di 26
#define LDR_PIN 25 //Pin sensor LDR
#define MQ_PIN 32 //Pin sensor gas MQ
DHT dht22(DHT22_PIN, DHT22); //Membuat dht22 sbg objek
double suhu, //Variable suhu
kelembaban; //Variable
kelembaban
int mode,
ldr,
gas,
buzzer = 33,
led_biru =
12,
led_kuning=
14,
led_merah =
27;
//Connect ke Blynk
#define BLYNK_TEMPLATE_ID "TMPL6DYNKDozZ"
#define BLYNK_TEMPLATE_NAME "Projek Smart
Home"
#define BLYNK_AUTH_TOKEN
"1OYcQhJNRIzlg12_lwCO26Z038UfE55z"
#define BLYNK_PRINT Serial
//Connect ke WiFi
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char ssid[] = "Temennya Tanboy Kun"; //ID WiFi
char pass[] = "tanboykumch1"; //Pass WiFi
char auth[] = BLYNK_AUTH_TOKEN; //Blynk Auth Token
BlynkTimer timer;
//Membaca Mode
BLYNK_WRITE(V0){
int nilai_V0;
nilai_V0 =
param.asInt();
mode =
nilai_V0;
}
//Lampu Hijau
BLYNK_WRITE(V7){
int
nilai_V7;
nilai_V7 =
param.asInt();
if(mode==0){
digitalWrite(12,nilai_V7);
}
}
//Lampu Kuning
BLYNK_WRITE(V8){
int nilai_V8;
nilai_V8 =
param.asInt();
if(mode==0){
digitalWrite(14,nilai_V8);
}
}
//Lampu Merah
BLYNK_WRITE(V9){
int nilai_V9;
nilai_V9 =
param.asInt();
if(mode==0){
digitalWrite(27,nilai_V9);
}
}
//Relay
BLYNK_WRITE(V10){
int nilai_V10;
nilai_V10 =
param.asInt();
if(mode==0){
digitalWrite(26,nilai_V10);
}
}
//Buzzer
BLYNK_WRITE(V11){
int nilai_V11;
nilai_V11 =
param.asInt();
if(mode==0){
digitalWrite(33,nilai_V11);
}
}
void setup(){
//Komponen
Output
pinMode(12,OUTPUT);
//Led Biru sbg Output
pinMode(14,OUTPUT);
//Led Kuning sbg Output
pinMode(27,OUTPUT);
//Led Merah sbg Output
pinMode(26,OUTPUT);
//Relay sbg Output
pinMode(33,OUTPUT);
//Buzzer sbg Output
//Komponen
Input
pinMode(13,INPUT);
//DHT sbg Input
pinMode(25,INPUT);
//LDR sbg Input
pinMode(32,INPUT);
//MQ sbg Input
dht22.begin();
Blynk.begin(auth, ssid, pass, "blynk.cloud", 8080);
Serial.begin(9600);
}
void loop(){
Serial.println(gas);
Blynk.run();
timer.run();
suhu =
dht22.readTemperature(); //Baca
suhu
kelembaban =
dht22.readHumidity(); //Baca
kelembaban
Blynk.virtualWrite(V1,suhu);
//Kirim data suhu ke virtual pin
Blynk.virtualWrite(V2,kelembaban);
//Kirim data kelembaban ke virtual pin
ldr =
digitalRead(25); //Membaca
sensor LDR
gas =
digitalRead(32); //Membaca
sensor MQ
Serial.println(ldr);
if(mode==1){
//Baca Suhu
if(suhu<30){
digitalWrite (12,1);
//Biru Nyala
digitalWrite (14,0);
//Kuning Mati
digitalWrite (27,0);
//Merah Mati
Blynk.virtualWrite(V7,1);
//Update data ke V7
}
if
(suhu>30 && suhu<40){
digitalWrite (12,0);
//Biru Mati
digitalWrite (14,1);
//Kuning Nyala
digitalWrite (27,0);
//Merah Mati
Blynk.virtualWrite(V8,1); //Update data ke V8
}
if
(suhu>40){
digitalWrite (12,0);
//Biru Mati
digitalWrite (14,0);
//Kuning mati
digitalWrite (27,1);
//merah Nyala
Blynk.virtualWrite(V9,1);
//Update data ke V9
}
//Baca LDR
if(ldr==1){
digitalWrite(26,1);
//Lampu Nyala
Blynk.virtualWrite(V10,1);
//Update data ke V10
}
if(ldr==0){
digitalWrite(26,0);
//Lampu Mati
Blynk.virtualWrite(V10,0); //Update data ke V10
}
//Baca MQ-2
if(gas==0){
digitalWrite(33,1);
//Buzzer Nyala
Blynk.virtualWrite(V11,1);
//Update data ke V11
}
if(gas==1){
digitalWrite(33,0);
//Buzzer Mati
Blynk.virtualWrite(V11,0);
//Update data ke V11
}
}
}
BAB IV
PENUTUP
4.1 Kesimpulan
Berdasarkan hasil perancangan dan implementasi yang
telah dilakukan, maka dapat disimpulkan bahwa:
1.
Alat
telah berjalan sesuai dengan tujuan dibuatnya alat ini yaitu untuk monitoring
dan mematikan maupun menyalakan beberapa komponen elektronik.
2.
Sensor
dan seluruh komponen bekerja dengan baik.
3.
Sistem
smart home berbasis Mikrokontroler NodeMCU ESP32 ini dapat diatur secara manual
maupun otomatis menggunakan jaringan internet dengan jarak jauh.
4.2 Saran
Untuk pengembangan lebih lanjut pada pembuatan protoype ini, disarankan untuk pengujian suhu dan kelembapan diharapkan bisa lebih akurat dan lebih cepat respon. Selain itu, disarankan juga untuk menambahkan alat atau komponen elektronik lainnya seperti kipas angin.
BAB V
DAFTAR PUSTAKA
Mariza Wijayanti. (2022). Prototype Smart Home Dengan
Nodemcu Esp8266 Berbasis Iot. Jurnal Ilmiah Teknik, 1(2),
101–107. https://doi.org/10.56127/juit.v1i2.169
Nizam, M. N., Haris
Yuana, & Zunita Wulansari. (2022). Mikrokontroler Esp 32 Sebagai Alat
Monitoring Pintu Berbasis Web. JATI (Jurnal Mahasiswa Teknik Informatika),
6(2), 767–772. https://doi.org/10.36040/jati.v6i2.5713
Saputra, F., Ryana
Suchendra, D., & Ikhsan Sani, M. (2020). Implementasi Sistem Sensor Dht22
Untuk Menstabilkan Suhu Dan Kelembapan Berbasis Mikrokontroller Nodemcu Esp8266
Pada Ruangan. Proceeding of Applied Science, 6(2), 1977–1984.
BAB VI
LAMPIRAN
6.1 Dokumentasi
Gambar 6.1. Dokumentasi Hasil
6.2 Video Simulasi
Video simulasi di sini.
Komentar
Posting Komentar