Skip to content
This repository was archived by the owner on Oct 19, 2026. It is now read-only.

Latest commit

 

History

History
370 lines (259 loc) · 12.6 KB

BACA.md

File metadata and controls

370 lines (259 loc) · 12.6 KB

Open Source Love License: GPL-3.0 GitHub last commit Project Type

Automatic Weather System

Sistem pemantauan cuaca secara real-time — memantau ketinggian air sungai, suhu, dan kelembapan dengan visualisasi dasbor langsung, pencatatan data historis, peringatan dini, serta pengendalian ambang batas yang tersinkronisasi melalui Telegram.



Kebutuhan Proyek

Bagian Deskripsi
Papan Pengembangan DOIT ESP32 DEVKIT V1
Editor Kode Arduino IDE 1.8.19 (Versi Lama yang Stabil)
Driver CP210X USB Driver
Dukungan Aplikasi • Node.js
• Bot Telegram
Platform Integrasi Node-RED
Broker MQTT EMQX
Protokol Komunikasi Message Queuing Telemetry Transport (MQTT)
Arsitektur IoT 3 Lapisan
Bahasa Pemrograman C/C++
Pustaka Arduino • WiFi (bawaan)
• DHT sensor library oleh Adafruit (Versi: 1.4.6)
• PubSubClient oleh Nick O'Leary (Versi: 2.8)
• ArduinoJson oleh Benoit Blanchon (Versi: 6.19.4)
Palet Node-RED • node-red (bawaan)
• node-red-dashboard
• node-red-node-mysql
• node-red-contrib-telegrambot
Sensor • DHT11: Suhu & Kelembapan Udara (x1)
• HC-SR04: Sensor Ultrasonik (x1)
Komponen Lainnya • Kabel USB Mikro - USB tipe A (x1)
• Papan ekspansi DOIT ESP32 DEVKIT V1 (x1)
• Adaptor DC 9V 1A (x1)
• Kabel jumper (1 set)
• Breadboard (x1)
• Box Proyek X3 (x1)
• Sekrup (x4)
• Baut M3 x 12 (x6)
• Baut M4 x 10 (x2)
• Mur M3 (x6)
• Mur M4 (x2)



Unduh & Instal

  1. Arduino IDE

    https://bit.ly/ArduinoIDE_Installer
    

  2. CP210X USB Driver

    https://bit.ly/CP210X_USBdriver
    

  3. NodeJS

    https://nodejs.org/en/download/prebuilt-installer
    



Rancangan Proyek

Arsitektur
architecture
Desain Perangkat Lunak
flowchart
Diagram Ilustrasi Diagram Blok
pictorial-diagram block-diagram
Pengkabelan
wiring



Pengaturan Arduino IDE

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

    Code.ino


  2. Isi Url Pengelola Papan Tambahan di Arduino IDE

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

    https://dl.espressif.com/dl/package_esp32_index.json
    

  3. Pengaturan Board di Arduino IDE

    Cara mengatur board DOIT ESP32 DEVKIT V1

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

    • Kemudian pilih papan dengan mengklik: Tools -> Board -> ESP32 Arduino -> DOIT ESP32 DEVKIT V1.


  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. Beberapa hal yang perlu anda lakukan saat menggunakan board ESP32 :

    • Jika board ESP32 tidak dapat memproses Source Code secara total -> Tekan tombol EN (RST) -> Restart.

    • Jika board ESP32 tidak dapat memproses Source Code secara otomatis maka :

    • Ketika informasi: Uploading... telah muncul -> segera tekan dan tahan tombol BOOT.

    • Ketika informasi: Writing at .... (%) telah muncul -> lepaskan tombol BOOT.

    • Jika pesan: Done Uploading telah muncul -> Program yang diisikan tadi sudah bisa dioperasikan.

    • Jangan tekan tombol BOOT dan EN secara bersamaan karena hal ini bisa beralih ke mode Unggah Firmware.


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



Basis data

  1. Buka XAMPP, lalu tekan tombol mulai di bagian Apache & MySQL untuk menjalankan server web dan server database secara lokal.

  2. Akses peramban terlebih dahulu untuk membuka panel admin basis data, silakan salin tautan berikut: localhost/phpmyadmin/.

  3. Buat basis data bernama aws.

  4. Buka basis data aws dan Impor aws.sql di direktori Automatic-Weather-System/Src/.



Pengaturan Bot Telegram

  1. Buka @BotFather.

  2. Ketik /newbot.

  3. Ketik nama bot yang diinginkan, contoh: AWS IOT BOT.

  4. Ketik nama pengguna bot yang diinginkan, contoh: aws_iot_indo_bot.

  5. Lakukan juga untuk pengaturan gambar bot, deskripsi bot, dan lain sebagainya menyesuaikan dengan kebutuhan anda.

  6. Salin API token bot telegram anda -> kemudian tempelkan ke bagian flow Node-RED.



Konfigurasi Node-RED

  1. Buka Command Prompt (CMD), lalu masukkan perintah berikut untuk menginstal Node-RED :

    npm install -g --unsafe-perm node-red
    

    Tunggu hingga proses instalasi selesai.

  2. Untuk menjaga keamanan Node-RED, Anda perlu mengatur autentikasi dengan menjalankan perintah berikut :

    node-red admin init
    

    Silakan pilih opsi seperti yang ditunjukkan pada bagian Autentikasi Node-RED di bagian Sorotan. Untuk username dan password, silakan tentukan sendiri sesuai kebutuhan.

  3. Selanjutnya, jalankan Node-RED menggunakan perintah berikut :

    node-red
    

    Tunggu hingga proses inisialisasi selesai dan muncul pesan yang menunjukkan bahwa server telah berhasil dimulai.

  4. Setelah itu, Node-RED siap diakses melalui browser web menggunakan alamat IP perangkat pada port 1880.

  5. Kemudian, login menggunakan akun yang telah Anda konfigurasikan sebagai langkah keamanan di Node-RED.

  6. Instal semua palet Node-RED yang diperlukan.

  7. Buka menu Import di Node-RED, lalu impor flow_nodered.json di direktori Automatic-Weather-System/Src/. Pastikan semua flow Node-RED telah berhasil dimuat.

  8. Pengaturan Site di Node-RED dapat dikonfigurasi seperti yang ditunjukkan pada contoh di bawah ini :

    node-red-site-config

  9. Pengaturan Theme di Node-RED dapat dikonfigurasi seperti yang ditunjukkan pada contoh di bawah ini :

    node-red-theme-config

  10. Kemudian, untuk menjalankan flow tersebut, klik Deploy.



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

Prototipe Perangkat
device
Perangkat dengan Casing
device-1 device-2 device-3 device-4 device-5
Autentikasi Node-RED
config-1 config-2
login
Dasbor Node-RED
dashboard
Menu Bot Telegram
telegram-bot-menu
Pemantauan Status
safe danger
Sistem Peringatan Dini
telegram-bot-inject
telegram-bot-alert

Informasi lebih lanjut: Click Here




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 merupakan hasil pengembangan dari Bootcamp Edutic.id x BNSP 2026. Saya tidak memungkiri bahwa saya masih menggunakan layanan pihak ketiga dalam pengerjaan ini, antara lain: library, framework, dan lain sebagainya.