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.
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) |
-
Arduino IDE
https://bit.ly/ArduinoIDE_Installer
-
CH340 USB Driver
https://bit.ly/CH340_USB_Driver
Diagram Skematik | Diagram Ilustrasi | Diagram Blok |
---|---|---|
Infrastruktur | Prototipe | Diagram Sistem |
---|---|---|
Perbedaan pinout pada papan Wemos D1 R1 dan R2 ditunjukkan dengan jelas pada gambar di bawah ini:
Wemos D1 R1 | Wemos D1 R2 |
---|---|
#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
}
Tutorial kalibrasi sensor MQ-2 untuk Gas LPG: Klik Disini
-
Buka
Arduino IDE
terlebih dahulu, kemudian buka proyek dengan cara klikFile
->Open
:Final_Project_Indobot_KelasMulaiJadiIoTEngineerHebat.ino
-
Isi
Url Pengelola Papan Tambahan
di Arduino IDEKlik
File
->Preferences
-> masukkanBoards Manager Url
dengan menyalin tautan berikut :http://arduino.esp8266.com/stable/package_esp8266com_index.json
-
Pengaturan Board
di Arduino IDECara mengatur board
WEMOS D1 R2
• Klik
Tools
->Board
->Boards Manager
-> Instalesp8266
.• Kemudian pilih Board dengan mengklik:
Tools
->Board
->ESP8266 Board
->LOLIN(WEMOS) D1 R2 & mini
.
-
Ubah Kecepatan Papan
di Arduino IDEKlik
Tools
->Upload Speed
->115200
-
Instal Pustaka
di Arduino IDEUnduh semua file zip pustaka. Kemudian tempelkan di:
C:\Users\Computer_Username\Documents\Arduino\libraries
-
Pengaturan Port
di Arduino IDEKlik
Port
-> Pilih sesuai dengan port perangkat anda(anda dapat melihatnya di Device Manager)
-
Ubah
Nama WiFi
,Kata Sandi WiFi
, dan sebagainya sesuai dengan apa yang anda gunakan saat ini. -
Sebelum mengunggah program, silakan klik:
Verify
. -
Jika tidak ada kesalahan dalam kode program, silakan klik:
Upload
. -
Jika masih ada masalah saat unggah program, maka coba periksa pada bagian
driver
/port
/yang lainnya
.
-
Memulai Antares :
• Silakan Registrasi terlebih dahulu.
• Selanjutnya silakan Masuk agar dapat mengakses layanan.
-
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.
-
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.
-
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.
-
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
danNama device
itu harus sesuai dengan yang telah dibuat tadi. Contohnya :#define projectName "Final_Project_Indobot_Academy_2023" #define deviceName "Smart_Fire_Smoke_Detector"
-
Buka situs resmi
Firebase
:https://console.firebase.google.com/
-
Buat proyek dengan nama bebas.
-
Klik
simbol gerigi
yang ada di sampingProject Overview
-> Lalu pilihProject settings
untuk mendapatkanFirebaseToken
. -
Klik
Realtime Database
untuk mendapatkanFirebaseURL
.
-
Buka situs resmi
MIT App Inventor
:https://appinventor.mit.edu/
-
Klik
Create Apps!
, kemudian masuk dengan menggunakan akun google. -
Klik
Project
-> lalu impor berkas yang ada di direktoriSmart-Fire-Smoke-Detector-Berbasis-IoT-Mobile\Src\MIT App Inventor Project\
:Smart_Fire_Smoke_Detector.aia
-
Klik
FirebaseDB1
lalu atur 3 poin berikut ini :•
FirebaseToken
-> isi denganToken
yang diperoleh dari bagianProject settings
.•
FirebaseURL
-> isi denganURL
yang diperoleh dari bagianRealtime Database
.•
ProjectBucket
-> isi denganKontainer DB
. Dalam hal ini adalahDetect
.
-
Kemudian klik
Connect
-> selanjutnya pilihAI Companion
. -
Buka ponsel cerdas anda, lalu pada
Google Play Store
cari aplikasiMIT AI2 Companion
, kemudian lakukan instalasi. -
Buka aplikasi
MIT AI2 Companion
. -
Pilih metode
Scan QR Code
. -
Arahkan ponsel cerdas anda ke area
QR Code
yang ada di situsMIT App Inventor
.
-
Unduh dan ekstrak repositori ini.
-
Pastikan anda memiliki komponen elektronik yang diperlukan.
-
Pastikan komponen anda telah dirancang sesuai dengan diagram.
-
Konfigurasikan perangkat anda menurut pengaturan di atas.
-
Selamat menikmati [Selesai].
MIT App Inventor | Percobaan | Firebase | Antares |
---|---|---|---|
Simulasi Pemantauan dengan Aplikasi Mobile | |
---|---|
Jika karya ini bermanfaat bagi anda, maka dukunglah karya ini sebagai bentuk apresiasi kepada penulis dengan mengklik tombol ⭐Bintang
di bagian atas repositori.
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 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.