PROTOTYPE SMART HOME DENGAN ESP32 BERBASIS INTERNET OF THINGS

 

LAPORAN PROJEK AKHIR SEMESTER

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


Gambar 2.2. Sensor 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


Gambar 2.3. Sensor 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.


Gambar 2.4. Sensor LDR

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


Gambar 2.5. 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


Gambar 2.6. Fitting Lampu

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


Gambar 2.7. Lampu 220VAC

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


Gambar 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

  1. Mengatur Arus: Resistor digunakan untuk mengatur jumlah arus yang mengalir dalam sebuah rangkaian, melindungi komponen lain dari arus yang terlalu tinggi.
  2. Pembagi Tegangan: Resistor dapat digunakan dalam rangkaian pembagi tegangan untuk menghasilkan tegangan tertentu dari sumber tegangan yang lebih tinggi.
  3. Pengatur Waktu: Dalam kombinasi dengan kapasitor, resistor dapat digunakan untuk membuat rangkaian pengatur waktu (timer) atau rangkaian penunda (delay).
  4. Penyesuai Sinyal: Resistor digunakan untuk menyesuaikan sinyal di rangkaian elektronik, seperti mengurangi amplitudo sinyal atau mengatur impedansi.
  5. 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).


Gambar 2.9. Buzzer 

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.


Gambar 2.10. LED

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


Gambar 3.1 Diagram Blok

3.4.   Diagram Alir


Gambar 3.2 Diagram Alir

3.5.   Gambar Rangkaian


Gambar 3.3 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

Postingan populer dari blog ini

IoT Health Monitoring System for Sports: Real-Time Heart Rate and Temperature Tracking

MONITORING PENETAS TELUR BERBASIS IoT