Skip to content
This repository has been archived by the owner on Jul 5, 2024. It is now read-only.

Latest commit

 

History

History
419 lines (282 loc) · 14.9 KB

File metadata and controls

419 lines (282 loc) · 14.9 KB

Open Source Love License: MIT GitHub last commit Project

Smart-Fire-Smoke-Detector-Berbasis-IoT-Mobile

Tugas Akhir Indobot Academy: Kelas Awal untuk Menjadi Insinyur IoT yang Hebat Batch 1

Peningkatan penduduk di suatu negara merupakan salah satu modal pembangunan. Jumlah penduduk yang besar dapat memengaruhi perkembangan permukiman. Namun di sisi lain, permukiman yang tidak diimbangi dengan pengaturan yang baik dapat memicu terjadinya bencana, misalnya kebakaran. Bencana kebakaran yang terjadi dapat mengakibatkan kerugian materiil dan immateriil. Oleh karena itu, tujuan dari proyek ini tidak lain adalah untuk menghasilkan sebuah sistem deteksi kebakaran yang baik. Proyek ini telah dilaksanakan dan memakan waktu kurang lebih 2 minggu. Hasil penelitian menunjukkan bahwa sistem yang dibuat ini dapat berfungsi dengan baik. Antarmuka sistem menggunakan aplikasi MIT App Inventor.



Kebutuhan Proyek

Bagian Deskripsi
Papan Pengembangan Wemos D1 R2
Editor Kode Arduino IDE
Dukungan Aplikasi MIT App Inventor
Driver CH340 USB Driver
Platform IoT Antares
Protokol Komunikasi • Inter Integrated Circuit (I2C)
• Transmission Control Protocol/Internet Protocol (TCP/IP)
• Message Queuing Telemetry Transport (MQTT)
Arsitektur IoT 4 Lapisan
Basis Data Firebase
Bahasa Pemrograman C/C++
Pustaka Arduino • ESP8266WiFi (bawaan)
• Wire (bawaan)
• AntaresESP8266MQTT
• Firebase_Arduino_Client_Library_for_ESP8266_and_ESP32
• MQ2_LPG_Library
• LiquidCrystal_I2C
Aktuator Piezo buzzer (x1)
Sensor • KY-26: Sensor Api (x1)
• MQ-2: Sensor Gas (x1)
Layar LCD I2C (x1)
Komponen Lainnya • Kabel USB Mikro - USB tipe A (x1)
• Kabel jumper (1 set)
• Breadboard (x1)
• Kotak casing (x1)



Unduh & Instal

  1. Arduino IDE

    https://bit.ly/ArduinoIDE_Installer
    

  2. CH340 USB Driver

    https://bit.ly/CH340_USB_Driver
    



Rancangan Proyek

Diagram Skematik Diagram Ilustrasi Diagram Blok
Schematic-Diagram Pictorial-Diagram Block-Diagram
Infrastruktur Prototipe Diagram Sistem
Infrastructure Prototype Systems-Diagram



Pengetahuan Dasar

Perbedaan pinout pada papan Wemos D1 R1 dan R2 ditunjukkan dengan jelas pada gambar di bawah ini:

Wemos D1 R1 Wemos D1 R2
Wemos D1 R1 Pinout Reference Wemos D1 R2 Pinout Reference



Memindai Alamat I2C Yang Ada Pada LCD

#include <Wire.h>

void setup() {
  Wire.begin();
  Serial.begin(115200);
  while (!Serial); // Wait for serial monitor
  Serial.println("\nI2C Scanner");
}

void loop() {
  int nDevices = 0;
  Serial.println("Scanning...");

  for (byte address = 1; address < 127; ++address) {
    // The i2c_scanner uses the return value of the Wire.endTransmission to see if a device did acknowledge to the address.
    Wire.beginTransmission(address);
    byte error = Wire.endTransmission();

    if (error == 0) {
      Serial.print("I2C device found at address 0x");
      if (address < 16) {
        Serial.print("0");
      }
      Serial.print(address, HEX);
      Serial.println("  !");

      ++nDevices;
    } else if (error == 4) {
      Serial.print("Unknown error at address 0x");
      if (address < 16) {
        Serial.print("0");
      }
      Serial.println(address, HEX);
    }
  }
  if (nDevices == 0) {
    Serial.println("No I2C devices found\n");
  } else {
    Serial.println("done\n");
  }
  delay(5000); // Wait 5 seconds for next scan
}



Kalibrasi Sensor MQ-2 Untuk Gas LPG

Tutorial kalibrasi sensor MQ-2 untuk Gas LPG: Klik Disini



Pengaturan Arduino IDE

  1. Buka Arduino IDE terlebih dahulu, kemudian buka proyek dengan cara klik File -> Open :

    Final_Project_Indobot_KelasMulaiJadiIoTEngineerHebat.ino


  2. Isi Url Pengelola Papan Tambahan di Arduino IDE

    Klik File -> Preferences -> masukkan Boards Manager Url dengan menyalin tautan berikut :

    http://arduino.esp8266.com/stable/package_esp8266com_index.json
    

  3. Pengaturan Board di Arduino IDE

    Cara mengatur board WEMOS D1 R2

    • Klik Tools -> Board -> Boards Manager -> Instal esp8266.

    • Kemudian pilih Board dengan mengklik: Tools -> Board -> ESP8266 Board -> LOLIN(WEMOS) D1 R2 & mini.


  4. Ubah Kecepatan Papan di Arduino IDE

    Klik Tools -> Upload Speed -> 115200


  5. Instal Pustaka di Arduino IDE

    Unduh semua file zip pustaka. Kemudian tempelkan di: C:\Users\Computer_Username\Documents\Arduino\libraries


  6. Pengaturan Port di Arduino IDE

    Klik Port -> Pilih sesuai dengan port perangkat anda (anda dapat melihatnya di Device Manager)


  7. Ubah Nama WiFi, Kata Sandi WiFi, dan sebagainya sesuai dengan apa yang anda gunakan saat ini.

  8. Sebelum mengunggah program, silakan klik: Verify.

  9. Jika tidak ada kesalahan dalam kode program, silakan klik: Upload.

  10. Jika masih ada masalah saat unggah program, maka coba periksa pada bagian driver / port / yang lainnya.



Pengaturan Antares

  1. Memulai Antares :

    • Silakan Registrasi terlebih dahulu.

    • Selanjutnya silakan Masuk agar dapat mengakses layanan.


  2. Mengaktifkan access key :

    • Masuk ke menu Account.

    • Klik Get Access Key untuk menghasilkan access key. Proses ini hanya perlu dilakukan sekali.

    • Jika anda sudah pernah mengaktifkan access key sebelumnya, lewati langkah ini.


  3. Membuat applications :

    • Masuk ke menu Applications.

    • Klik + Create an Application.

    • Dalam menu Add Application, silakan menentukan beberapa hal berikut :

    • Application Name -> Nama Aplikasi yang akan anda buat.
    • Application ID -> ID Aplikasi yang akan anda buat.
    • Labels -> tentukan sesuai dengan kebutuhan proyek.

  4. Membuat device :

    • Pastikan anda berada di menu Home / Applications / Aplikasi yang anda buat.

    • Klik + Add Device.

    • Nama device ini sebaiknya anda tentukan berdasarkan variabel yang ada dalam proyek.


  5. Konfigurasi firmware :

    • Pastikan anda berada di menu Account.

    • Salin Access Key tersebut.

    • Tempelkan pada kode firmware, contohnya seperti ini :

    #define ACCESSKEY "1444e88d02acb758:b996115b1c2f6f0f"

    • Kemudian, Nama proyek dan Nama device itu harus sesuai dengan yang telah dibuat tadi. Contohnya :

    #define projectName "Final_Project_Indobot_Academy_2023"
    #define deviceName "Smart_Fire_Smoke_Detector"



Pengaturan Firebase

  1. Buka situs resmi Firebase :

    https://console.firebase.google.com/
    

  2. Buat proyek dengan nama bebas.

  3. Klik simbol gerigi yang ada di samping Project Overview -> Lalu pilih Project settings untuk mendapatkan FirebaseToken.

  4. Klik Realtime Database untuk mendapatkan FirebaseURL.



Pengaturan MIT App Inventor

  1. Buka situs resmi MIT App Inventor :

    https://appinventor.mit.edu/
    

  2. Klik Create Apps!, kemudian masuk dengan menggunakan akun google.

  3. Klik Project -> lalu impor berkas yang ada di direktori Smart-Fire-Smoke-Detector-Berbasis-IoT-Mobile\Src\MIT App Inventor Project\ :

    Smart_Fire_Smoke_Detector.aia


  4. Klik FirebaseDB1 lalu atur 3 poin berikut ini :

    FirebaseToken -> isi dengan Token yang diperoleh dari bagian Project settings.

    FirebaseURL -> isi dengan URL yang diperoleh dari bagian Realtime Database.

    ProjectBucket -> isi dengan Kontainer DB. Dalam hal ini adalah Detect.


  5. Kemudian klik Connect -> selanjutnya pilih AI Companion.

  6. Buka ponsel cerdas anda, lalu pada Google Play Store cari aplikasi MIT AI2 Companion, kemudian lakukan instalasi.

  7. Buka aplikasi MIT AI2 Companion.

  8. Pilih metode Scan QR Code.

  9. Arahkan ponsel cerdas anda ke area QR Code yang ada di situs MIT App Inventor.



Memulai

  1. Unduh dan ekstrak repositori ini.

  2. Pastikan anda memiliki komponen elektronik yang diperlukan.

  3. Pastikan komponen anda telah dirancang sesuai dengan diagram.

  4. Konfigurasikan perangkat anda menurut pengaturan di atas.

  5. Selamat menikmati [Selesai].



Sorotan

MIT App Inventor Percobaan Firebase Antares
Konfigurasi-MITAppInventor Percobaan Firebase Antares
Simulasi Pemantauan dengan Aplikasi Mobile
Monitoring-1 Monitoring-2



Apresiasi

Jika karya ini bermanfaat bagi anda, maka dukunglah karya ini sebagai bentuk apresiasi kepada penulis dengan mengklik tombol ⭐Bintang di bagian atas repositori.



Penafian

Aplikasi ini dibuat dengan menyertakan sumber-sumber dari pihak ketiga. Pihak ketiga di sini adalah penyedia layanan, yang layanannya berupa pustaka, kerangka kerja, dan lain-lain. Saya ucapkan terima kasih banyak atas layanannya. Telah terbukti sangat membantu dan dapat diimplementasikan.



LISENSI

LISENSI MIT - Hak Cipta © 2022 - Devan C. M. Wijaya, S.Kom

Dengan ini diberikan izin tanpa biaya kepada siapa pun yang mendapatkan salinan perangkat lunak ini dan file dokumentasi terkait perangkat lunak untuk menggunakannya tanpa batasan, termasuk namun tidak terbatas pada hak untuk menggunakan, menyalin, memodifikasi, menggabungkan, mempublikasikan, mendistribusikan, mensublisensikan, dan/atau menjual salinan Perangkat Lunak ini, dan mengizinkan orang yang menerima Perangkat Lunak ini untuk dilengkapi dengan persyaratan berikut:

Pemberitahuan hak cipta di atas dan pemberitahuan izin ini harus menyertai semua salinan atau bagian penting dari Perangkat Lunak.

DALAM HAL APAPUN, PENULIS ATAU PEMEGANG HAK CIPTA DI SINI TETAP MEMILIKI HAK KEPEMILIKAN PENUH. PERANGKAT LUNAK INI DISEDIAKAN SEBAGAIMANA ADANYA, TANPA JAMINAN APAPUN, BAIK TERSURAT MAUPUN TERSIRAT, OLEH KARENA ITU JIKA TERJADI KERUSAKAN, KEHILANGAN, ATAU LAINNYA YANG TIMBUL DARI PENGGUNAAN ATAU URUSAN LAIN DALAM PERANGKAT LUNAK INI, PENULIS ATAU PEMEGANG HAK CIPTA TIDAK BERTANGGUNG JAWAB, KARENA PENGGUNAAN PERANGKAT LUNAK INI TIDAK DIPAKSAKAN SAMA SEKALI, SEHINGGA RISIKO ADALAH MILIK ANDA SENDIRI.