Banjir merupakan bencana hidrometeorologi yang
paling sering melanda Indonesia, menimbulkan dampak merusak yang signifikan,
terutama di kawasan pemukiman padat penduduk. Frekuensi dan intensitas kejadian
banjir diperkirakan akan semakin meningkat akibat kombinasi faktor perubahan
iklim, degradasi lingkungan (seperti penggundulan hutan dan penyempitan daerah
resapan), serta pesatnya urbanisasi yang seringkali kurang memperhatikan tata
ruang dan drainase berkelanjutan.
Pemukiman penduduk, sebagai pusat aktivitas
kehidupan masyarakat, menjadi area yang paling rentan. Kerusakan infrastruktur
rumah tinggal, fasilitas umum (sekolah, puskesmas), gangguan akses
transportasi, kontaminasi sumber air bersih, hingga ancaman terhadap
keselamatan jiwa dan harta benda warga merupakan konsekuensi langsung yang
sering terjadi.
Sistem peringatan dini konvensional yang ada
seringkali memiliki keterbatasan, seperti informasi yang kurang akurat, tidak
tepat waktu, atau tidak menjangkau seluruh lapisan masyarakat secara efektif,
sehingga waktu berharga untuk evakuasi dan mitigasi menjadi terbuang. Oleh
karena itu, pengembangan dan implementasi Sistem Peringatan dan
Penanganan Dini Banjir yang terintegrasi, real-time, dan berbasis komunitas di
kawasan pemukiman menjadi suatu keharusan dan kebutuhan mendesak. Sistem
ini dirancang untuk memberikan informasi ancaman banjir secara lebih cepat,
akurat, dan mudah dipahami, sehingga memungkinkan pemerintah setempat, lembaga
penanggulangan bencana, dan warga masyarakat itu sendiri untuk mengambil
langkah-langkah antisipatif dan penanganan segera guna meminimalkan korban
jiwa, kerugian material, dan mempercepat pemulihan pasca bencana.
Tujuan
dari perancangan sistem deteksi peringatan banjir di pemukiman adalah untuk:
1.
Memenuhi
syarat untuk modul 4 Praktikum Mikroprosesor & Mikrokontroler
2. Mendeteksi adanya potensi banjir di pemukiman warga
3. Memberikan peringatan dini kepada warga
4. Mengurangi risiko korban jiwa dan kerugian harta
benda
5. Mendukung tindakan cepat oleh pihak berwenang
6.
Meningkatkan
kesadaran dan kesiapsiagaan masyarakat
a. Alat
· Solder
b. Komponen
· Rapsberryy
Pi Pico
· STM32
· Breadboard
· LED
· LCD
I2C 2x16
· Sensor
Ultrasonik
·
Rain sensor
·
Touch sensor
· Resistor
·
Buzzer
· Jumper
· ST-Link
1.
PWM
(Pulse Width Modulation)
PWM (Pulse
Width Modulation) adalah salah satu teknik modulasi dengan mengubah lebar
pulsa (Duty Cycle) dengan nilai
amplitudo dan frekuensi yang tetap. Satu siklus pulsa merupakan kondisi high
kemudian berada di zona transisi ke kondisi low. Lebar pulsa PWM berbanding
lurus dengan amplitudo sinyal asli yang belum termodulasi. Duty Cycle adalah perbandingan antara waktu ON (lebar
pulsa High) dengan perioda. Duty Cycle biasanya dinyatakan dalam bentuk persen (%).
• Duty Cycle =
tON / ttotal
•
tON = Waktu ON atau Waktu
dimana tegangan keluaran
berada pada posisi tinggi (high atau 1)
•
tOFF = Waktu OFF
atau Waktu dimana tegangan keluaran berada pada posisi rendah (low atau 0)
•
ttotal = Waktu
satu siklus atau penjumlahan antara tON dengan tOFF atau disebut juga dengan
“periode satu gelombang”
2.
ADC
(Analog to Digital Converter)
ADC atau Analog to Digital Converter merupakan salah satu
perangkat elektronika yang digunakan sebagai penghubung dalam
pemrosesan sinyal analog oleh sistem digital. Fungsi utama
dari fitur ini adalah mengubah sinyal masukan yang masih dalam bentuk
sinyal analog menjadi
sinyal digital dengan
bentuk kode- kode digital.
Ada 2 faktor yang perlu diperhatikan pada proses kerja ADC yaitu kecepatan
sampling dan resolusi.
Kecepatan sampling menyatakan
seberapa sering perangkat mampu mengkonversi sinyal analog ke dalam bentuk
sinyal digital dalam selang waktu yang tertentu. Biasa dinyatakan dalam sample
per second (SPS). Sementara Resolusi menyatakan tingkat
ketelitian yang dimilliki.
3.
Mikrokontroler
Kami
menggunakan Raspberry Pi Pico dan STM32 sebagai mikrokontroller dikarenakan
keduanya dapat memisahkan tugas masing masing dan dapat mengakses komponen
dengan tergangan operasional yang berbeda pula.
a. Raspberry
Pi Pico
Raspberry Pi Pico adalah mikrokontroler
berbiaya rendah dan berkinerja tinggi yang dikembangkan oleh Raspberry Pi
Foundation. Raspberry Pi Pico bekerja sebagai otak dari sebuah
alat elektronik. Saat diberi daya, Pico mulai menjalankan program yang sudah
ditanam di dalamnya. Ia bisa membaca data dari berbagai sensor, seperti sensor
suhu, air, atau cahaya, melalui pin input yang tersedia. Data dari sensor ini
kemudian diproses oleh chip utama di Pico. Setelah diproses, Pico akan memberi
perintah ke perangkat lain sesuai program, misalnya menyalakan lampu, buzzer,
atau menampilkan informasi di layar. Semua proses ini berjalan berulang-ulang
secara otomatis selama alat dinyalakan. Dengan kata lain, Pico membaca data,
memikirkan apa yang harus dilakukan, lalu bertindak sesuai perintah program.
Tegangan dan
arus operasi yang direkomendasikan bedasarkan datasheet:
(Datasheet Raspberry PiPico: https://drive.google.com/file/d/1KYID3f1SOndoZRA17giMyn2zPrXKDhoX/view?usp=drive_link)
b. STM32
STM32F103C8T6 bekerja sebagai otak dari sistem elektronik
dengan mengendalikan dan memproses data dari berbagai input dan output.
Mikrokontroler ini berbasis arsitektur ARM Cortex-M3 dan memiliki kecepatan
hingga 72 MHz. Prinsip kerjanya dimulai saat daya diberikan, lalu
mikrokontroler menjalankan program yang tersimpan di memori flash. Ia membaca
data dari sensor melalui pin input (seperti ADC untuk sensor analog), memproses
informasi tersebut berdasarkan logika yang diprogram, lalu memberikan perintah
ke perangkat output seperti LED, LCD, atau buzzer melalui pin output. Dengan
fitur seperti GPIO, ADC, UART, dan timer, STM32F103C8T6 mampu menjalankan berbagai
fungsi dalam sistem tertanam secara efisien dan real-time.
Bedasarkan datasheet STM32f103C8
tegangan dan arus datasheet yang direkomendasikan adalah :
(Datasheet
STM32: https://drive.google.com/file/d/19nuvm5qHnXj-KRu1y3dQYEkHu_FuBxea/view?usp=drive_link)
4.
Komunikasi
a.
Universal
Asynchronous Receiver Transmitter (UART)
UART (Universal Asynchronous Receiver-Transmitter) adalah bagian
perangkat keras komputer yang menerjemahkan antara bit-bit paralel data dan
bit-bit serial. UART biasanya berupa sirkuit terintegrasi yang digunakan untuk
komunikasi serial pada komputer atau port serial perangkat periperal.
Cara kerja komunikasi UART:
Data dikirimkan secara paralel dari data bus ke UART1. Pada
UART1 ditambahkan start bit, parity bit, dan stop bit kemudian dimuat dalam
satu paket data. Paket data ditransmisikan secara serial dari Tx UART1 ke Rx
UART2. UART2 mengkonversikan data dan menghapus
bit tambahan, kemudian
ditransfer secara parallel ke data bus penerima.
b.
Serial Peripheral Interface
(SPI)
Serial Peripheral Interface (SPI) merupakan salah satu mode
komunikasi serial synchrounous kecepatan tinggi
yang dimiliki oleh ATmega 328.
Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui
komunikasi ini data dapat saling dikirimkan baik antara mikrokontroler maupun antara mikrokontroler dengan peripheral lain di
luar mikrokontroler.
•
MOSI : Master
Output Slave Input
artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai
output tetapi jika dikonfigurasi sebagai
slave maka pin MOSI sebagai
input.
•
MISO : Master
Input Slave Output
artinya jika dikonfigurasi sebagai master maka
pin MISO sebagai input tetapi jika dikonfigurasi
sebagai slave maka pin MISO sebagai output.
•
SCLK : Clock jika dikonfigurasi sebagai master maka
pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin
CLK berlaku sebagai input.
•
SS/CS : Slave Select / Chip Select
adalah jalur master
memilih slave mana yang akan dikirimkan data.
Cara kerja komunikasi SPI:
Sinyal clock dialirkan dari master ke slave yang berfungsi
untuk sinkronisasi. Master dapat memilih
slave mana yang akan dikirimkan data melalui slave select,
kemudian data dikirimkan dari master ke slave melalui MOSI. Jika master butuh
respon data maka slave akan mentransfer data ke master melalui MISO.
c.
Inter Integrated Circuit
(I2C)
Inter Integrated Circuit atau sering
disebut I2C adalah standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus
untuk mengirim maupun menerima data. Sistem I2C terdiri dari saluran SCL (Serial Clock)
dan SDA (Serial Data) yang membawa informasi data
antara I2C dengan pengontrolnya.
Cara kerja komunikasi I2C:
Pada I2C, data ditransfer dalam bentuk message yang terdiri
dari kondisi start, Address Frame, R/W bit, ACK/NACK bit, Data Frame 1, Data
Frame 2, dan kondisi Stop.
•
Kondisi start dimana saat pada SDA beralih dari logika high ke low sebelum SCL.
•
Kondisi stop dimana saat pada SDA beralih dari logika low ke high sebelum
SCL.
•
R/W bit berfungsi untuk
menentukan apakah master
mengirim data ke slave
atau meminta data dari slave. (logika 0 = mengirim data ke slave, logika 1
= meminta
data dari slave)
•
ACK/NACK bit
berfungsi sebagai pemberi kabar jika data frame ataupun address frame telah
diterima receiver.
5.
Sensor
a.
Ultra Sonic Sensor (HC-SR04)
Ultrasonic
Sensor HC-SR4, kami memilih menggunakan ultrasonic sensor HC-SR04 dikarenakan
harganya yang lebih terjangkau dan lebih cocok untuk praktek tugas yang
sederhana. Ultrasonic sensor nantinya akan mendeteksi ketinggian air di
permukaan tanah.
Prinsip
kerja sensor ultrasonik didasarkan pada penggunaan gelombang suara frekuensi
tinggi (ultrasonik) untuk mengukur jarak suatu objek. Sensor ini memiliki dua
komponen utama: transmitter (pemancar) dan receiver (penerima).
Transmitter memancarkan gelombang ultrasonik (biasanya sekitar 40 kHz) ke arah
objek. Ketika gelombang tersebut mengenai objek, ia akan dipantulkan kembali
dan diterima oleh receiver. Mikrokontroler kemudian menghitung waktu yang
dibutuhkan sejak gelombang dipancarkan hingga diterima kembali (time of
flight). Dengan menggunakan rumus kecepatan suara (jarak = kecepatan × waktu /
2), sensor dapat menghitung jarak antara sensor dan objek secara akurat. Sensor
ini banyak digunakan untuk mendeteksi ketinggian air, menghindari rintangan, dan
aplikasi pengukuran jarak lainnya.
(Datasheet HC-SR04 : https://drive.google.com/file/d/1xdBsHSNU3Gmi1mhzu38DLZzSIIf2RWez/view?usp=drive_link)
b.
Rain Sensor
Prinsip kerja dari sensor ini yaitu
pada saat ada air hujan turun mengenai panel sensor maka akan terjadi proses
elektrolisasi oleh air hujan. Dan karena air hujan termasuk dalam golongan
cairan elektrolit yang dimana cairan tersebut akan menghantarkan arus listrik
atau konduktor.
Pada sensor hujan ini terdapat ic
komparator yang dimana output dari sensor ini dapat berupa logika high dan low.
Serta pada modul sensor ini terdapat output yang berupa tegangan analog. Sensor
ini dapat digunakan untuk memantau kondisi ada tidaknya hujan di lingkungan
luar yang dimana output dari sensor ini dapat berupa sinyal analog maupun
digital.
Alur tembaga pada pad sensor
bertindak seperti potensiometer dimana resistansinya bervariasi berdasarkan
jumlah air yang terdeteksi di permukaannya, Jika terdapat banyak air pada
permukaan sensor maka nilai resistansi dari sensor akan semakin kecil. Disini konduktivitasnya
akan meningkat maka terjadi perubahan nilai analog. Sedangkan jika sedikit air
yang terdeteksi pada permukaan sensor maka konduktivitasnya buruk sehingga
resistansinya meningkat.
(Datasheet Rain Sensor: https://drive.google.com/file/d/1enaiZK7kV5-CWt9hDE4UpvPx1xh72IcH/view?usp=drive_link)
c.
Touch Snesor
Touch sensor sebagai
input digital disini akan berfungsi sebagai on/off pada sistem rangkaian yang
kami buat.
Touch sensor kapasitif bekerja
dengan mendeteksi perubahan kapasitansi yang terjadi ketika jari manusia
mendekati atau menyentuh permukaan sensor. Sensor ini memiliki elektroda
konduktif yang berfungsi sebagai salah satu sisi kapasitor. Jari manusia, yang
bersifat konduktif karena mengandung air dan ion-elektrolit, dianggap sebagai
sisi kapasitif lainnya. Ketika jari mendekat, terbentuk medan listrik antara
jari dan elektroda, sehingga nilai kapasitansi meningkat. Perubahan ini
kemudian diproses oleh rangkaian elektronik sebagai sinyal sentuhan. Sensor
tidak memerlukan tekanan fisik, melainkan hanya keberadaan medan kapasitif dari
jari untuk mendeteksi input.
·
Operating voltage 2.0V~5.5V
·
Operating current @VDD=3V, no load
·
At low power mode typical 1.5uA, maximum
3.0uA
·
The response time max 220mS at low power
mode @VDD=3V
·
Sensitivity can adjust by the
capacitance(0~50pF) outside
·
Stable touching detection of human body
for replacing traditional direct switch key
·
Provides Low Power mode
·
Provides direct mode、toggle mode by pad option(TOG pin) Q pin is CMOS
output
(Datasheet
Touch Sensor: https://drive.google.com/file/d/1Y1V3jqc0pkZjX5Q3oq9IBU9gkntkQHMW/view?usp=drive_link)
6.
LCD
LCD
(Liquid-Crystal Display) atau Penampil Kristal Cair adalah layar panel datar
atau perangkat optik elektronik termodulasi yang menggunakan sifat modulasi
cahaya dari kristal cair (liquid crystal) yang dikombinasikan dengan polarizer.
Ketika
tegangan listrik diberikan ke modul LCD 16x2, daya akan mengalir ke dua bagian
utama: backlight LED dan sirkuit logika kontrol LCD. LED backlight (biasanya
berwarna putih atau kuning) menyala terlebih dahulu, memberikan cahaya latar
dari belakang lapisan kristal cair agar karakter yang tampil bisa terlihat
jelas oleh mata. Cahaya dari backlight ini akan melewati lapisan polarizer
pertama, kemudian menuju ke lapisan liquid crystal (LC) yang berada di antara
dua lembaran kaca transparan yang dilapisi elektroda.
Kristal
cair bersifat birefringent, artinya bisa memutar arah polarisasi cahaya
tergantung tegangan listrik yang diterapkan. Ketika tidak ada tegangan pada
segmen tertentu, kristal cair akan memutar polarisasi cahaya hingga cocok
dengan arah polarizer kedua, sehingga cahaya dapat melewatinya dan tampak
terang. Sebaliknya, saat tegangan diberikan ke elektroda tertentu (berkat
sinyal dari mikrokontroler), kristal cair akan berubah orientasi dan tidak
memutar cahaya, sehingga cahaya akan diblokir oleh polarizer kedua dan tampak
sebagai karakter gelap di layar.
Sementara
itu, sirkuit logika pada LCD menerima sinyal digital dari mikrokontroler, baik
berupa perintah (command) maupun data karakter ASCII. Sinyal ini dikendalikan
melalui pin RS, RW, dan E, atau melalui ekspander I2C jika menggunakan modul
I2C. Data karakter kemudian dikirim ke controller HD44780 (atau sejenis), yang
mengatur segmen elektroda mana yang diberi tegangan untuk menampilkan pola
titik tertentu. Pola ini disesuaikan dengan matriks karakter 5x8 atau 5x10
piksel, yang sudah disimpan dalam ROM internal controller. Hasil akhirnya,
karakter seperti huruf, angka, atau simbol akan muncul di layar berdasarkan
tegangan yang mengatur rotasi kristal cair di tiap segmen.
Spesifikasi
:
· Format
tampilan : 16 x 2 karakter
· Pengontrol
bawaan : ST 7066 (atau setara)
· Siklus
kerja : 1/16
· 5
x 8 titik termasuk kursor
· Supply
+ 5 V (juga tersedia untuk + 3 V)
· LED
dapat digerakkan oleh pin 1, pin 2, pin 15, pin 16 atau A dan K
·
N.V. opsional untuk supply + 3 V
(Datasheet
LCD : https://circuitdigest.com/article/16x2-lcd-display-module-pinout-datasheet)
7. Buzzer
Buzzer adalah komponen elektronika
yang digunakan untuk menghasilkan bunyi, biasanya sebagai alarm atau penanda
dalam sistem elektronik. Ketika tegangan listrik diberikan ke buzzer, arus
listrik akan mengalir ke dalam elemen piezoelektrik (untuk buzzer piezo) atau
kumparan elektromagnetik (untuk buzzer magnetik). Pada buzzer piezoelektrik,
arus listrik menyebabkan pelat piezoelektrik bergetar secara mekanis karena
sifat bahan piezo yang berubah bentuk saat dikenai tegangan. Getaran ini
menghasilkan gelombang suara yang dapat terdengar oleh telinga manusia.
Sedangkan pada buzzer elektromagnetik, arus mengalir melalui kumparan magnetik,
membentuk medan magnet yang menarik dan melepas diafragma logam secara
berulang-ulang. Gerakan mekanis bolak-balik ini menciptakan getaran udara dan
menghasilkan bunyi.
Buzzer bisa berupa aktif atau
pasif. Buzzer aktif memiliki osilator internal, sehingga cukup diberi tegangan
DC langsung (biasanya 3–12 volt), dan buzzer akan berbunyi sendiri. Sedangkan
buzzer pasif memerlukan sinyal frekuensi dari mikrokontroler (PWM) agar bisa
bergetar dan menghasilkan nada tertentu. Dalam aplikasi praktis, seperti sistem
peringatan atau notifikasi, mikrokontroler akan mengatur waktu hidup-matinya
buzzer, durasi bunyi, dan frekuensi (jika buzzer pasif), untuk mengeluarkan
suara sesuai kebutuhan sistem.
Spesifikasi :
·
Nilai tegangan : 6V DC
·
Tegangan pengoperasian : 4 hingga 8V DC
·
Arus : ≤30mA
·
Keluaran suara pada 10cm : ≥85dB
·
Frekuensi resonansi : 2300 ±300Hz
·
Nada : Berkelanjutan
·
Suhu operasional : -25°C hingga +80°C
·
Suhu penyimpanan : -30°C hingga +85°C
·
Berat : 2g
(datasheet Buzzer: https://drive.google.com/file/d/1XY2lanETSwYN1Sd_I98U3STdKLCCz27k/view?usp=drive_link)
8. LED
LED
atau Light Emitting Diode adalah komponen semikonduktor yang memancarkan cahaya
saat diberi tegangan maju (forward bias). Ketika tegangan positif diberikan
pada anoda dan negatif pada katoda, arus listrik mulai mengalir dari anoda ke
katoda melalui bahan semikonduktor di dalam LED. Di dalam struktur
semikonduktor ini terdapat dua lapisan: lapisan tipe-p (kaya hole/muatan
positif) dan tipe-n (kaya elektron). Saat arus mengalir, elektron dari lapisan
tipe-n akan berpindah dan bergabung (rekombinasi) dengan hole di lapisan tipe-p.
Proses rekombinasi ini melepaskan energi dalam bentuk foton, yaitu partikel
cahaya, sehingga LED menyala. Warna cahaya yang dipancarkan bergantung pada
jenis material semikonduktor yang digunakan, misalnya gallium arsenide untuk
merah, gallium nitride untuk biru, dan sebagainya.
LED
hanya bekerja jika diberi tegangan maju dan akan tidak menyala jika dipasang
terbalik. Selain itu, karena LED termasuk komponen yang sensitif terhadap arus
berlebih, biasanya dipasang resistor pembatas arus secara seri untuk mencegah
kerusakan akibat kelebihan arus.
- Tegangan Maju (Vf): 2.0 V typical @ 20 mA
- Arus Maju (If): 20 mA typical
- Tegangan reverse (Vr): 5 V max (tegangan balik harus dihindari)
- Panjang gelombang cahaya (λ): sekitar 620–630 nm
(Datasheet LED: https://drive.google.com/file/d/10fvzKyo_1ueaaK4lpkxf6W0zoC9gQeH0/view?usp=drive_link)
9. Jumper
Jumper adalah konektor kecil
yang digunakan untuk menghubungkan dua pin pada papan sirkuit. Fungsi utamanya
adalah mengatur konfigurasi, memilih mode kerja, atau menghubungkan komponen
tanpa menyolder. Jumper yang digunakan adalah jumper male to male dan jumper
male to female.
(Datasheet Jumper : https://drive.google.com/file/d/1p5R2wxxMbSpI_VZspuyNoRDBgt3oz1mv/view?usp=drive_link)
10. Resistor
Resistor berfungsi membatasi arus listrik dalam
rangkaian. Komponen ini penting untuk mencegah kerusakan pada LED, sensor, atau
komponen lain yang sensitif terhadap arus tinggi.
(Datasheet Resistor : https://drive.google.com/file/d/1uNRK0Jn0BuRRQE1g0cRFLidZC6xJE_72/view?usp=drive_link)
Tidak ada komentar:
Posting Komentar