Assalamualaikum.
Salam Sejahtera Untuk Kita Semua Sobat.
Bencana alam memang sulit diprediksi kapan kedatangannya. Namun tak ada salahnya jika kita tetap berusaha mempelajari tentang tanda-tanda datangnya bencana seperti gempa bumi contohnya. Nah pada artikel kali ini, Konekthing akan share tutorial step by step cara membuat prototype alat pendeteksi getaran gempa yang berbasis Arduino dan memanfaatkan vibration sensor sebagai pembaca getaran.
Kali ini output peringatan gempa akan ditampilkan pada display LCD dan diikuti dengan bunyi buzzer sebagai alarm. Alat ini dapat menjadi bahan edukasi contoh pengaplikasian microcontroller sebagai sarana alat antisipasi terhadap bencana alam. Monggo disimak baik-baik sob.
Berikut ini komponen dan software yang harus dipersiapkan :
- 1 buah Arduino (bisa UNO, MINI, NANO, MEGA, dll)
- 1 buah LCD 16×2
- 1 buah Potensio 10K
- 1 buah Vibration Sensor
- 1 buah Buzzer, bisa 5V atau 12V
- Breadboard/Projectboard jika diperlukan
- Kabel jumper secukupnya
- Multitester (AVO) jika diperlukan untuk mengecek rangkaian (Bisa diperoleh Di Sini)
- Software Arduino IDE (Jika belum punya, maka download Di Sini)
- Library LiquidCrystal.h (Jika belum punya, bisa download Di Sini)
- Dan cara menambah library Arduino bisa dibaca Di Sini
Dan jika ingin belajar bagaimana cara menggunakan Arduino bagi pemula, silahkan download Ebook nya Di Sini
Keterangan Rangkaian :
- Bisa Menggunakan Segala Jenis Arduino (UNO, NANO, MEGA, MINI, dll), karena penomoran pinnya sama. Tinggal cocokkan Saja nomor Pin-Pin nya.
- Kaki RS LCD ===> pin 2 Arduino
- Kaki E LCD ===> pin 3 Arduino
- Kaki D4 LCD ===> pin 4 Arduino
- Kaki D5 LCD ===> pin 5 Arduino
- Kaki D6 LCD ===> pin 6 Arduino
- Kaki D7 LCD ===> pin 7 Arduino
- Kaki RW LCD ===> GND (Ground)
- Kaki VO LCD ===> Output Potensio
- Kaki DO (Digital Output) Sensor ===> pin 8 Arduino
- Salah satu kaki Potensio 10K ===> power + 5V
- Kaki Potensio yang lain ===> Ground
- Kaki Digital Output (DO) Vibration Sensor ===> pin 10 Arduino
- Kaki pendek/hitam pada Buzzer ===> pin 9 Arduino
- Kaki panjang/merah pada Buzzer ===> power + 5V
- Kaki vcc pada masing-masing komponen hubungkan ke sumber power positif 5v (bisa dari 5v Arduino)
- Kaki gnd/ground pada masing-masing komponen hubungkan ke sumber negatif power (dihubungkan ke pin gnd Arduino)
Setelah itu, silahkan upload program seperti di bawah ini pada software Arduino IDE milik sobat
// Membuat Alat Pendeteksi Gempa Menggunakan Arduino dan Vibration Sensor// Andhi Setya Hermawan// www.andhimind.id//
// Menambah library unuk LCD#include // Letak pin RS, E, D4,D5,D6,D7 LCDLiquidCrystal lcd(2, 3, 4, 5, 6, 7);
// inialisasi pin sensor getaran gempa dan pin buzzerconst int pinSensorGempa = 10;const int pinBuzzer = 9;
// inialisasi variabel pembacaan sensorboolean bacaSensor;
// **************************** PROGRAM PENGATURAN AWAL ********************** //
void setup(){// Inialisasi status I/o pinpinMode(pinSensorGempa, INPUT);pinMode(pinBuzzer, OUTPUT);
// buzzer dimatikandigitalWrite(pinBuzzer, HIGH);
// deklarasi jumlah baris & kolom LCDlcd.begin(16, 2);
// Pengaturan baris & kolom dimulainya tulisan// Baris ke 0, kolom ke 0lcd.setCursor(0, 0);//Tulisan awal yang ditampilkan pada baris ataslcd.print("Alateteksi");
//Baris ke 0, kolom ke 1lcd.setCursor(0, 1);//Tulisan awal yang ditampilkan pada baris bawahlcd.print("GEMPA;delay(1500);
// membersihkan tulisan pada LCDlcd.clear();// menulis kembalilcd.setCursor(0, 0);lcd.print("Ready");delay(1500);}
//***************************** PROGRAM UTAMA ****************************** //
void loop(){// membaca data sensorbacaSensor = digitalRead(pinSensorGempa);
// jika terdeteksi getaran gempa// terbaca output sensor "1" atau logic HIGHif (bacaSensor == 1){// buzzer menyaladigitalWrite(pinBuzzer, LOW);
// menulis pada lcdlcd.clear();lcd.setCursor(0, 0);lcd.print("Kondisilcd.setCursor(0, 1);lcd.print("BERBAHAYA!!");delay(1500);
lcd.clear();lcd.setCursor(0, 0);lcd.print("GEMPAlcd.setCursor(0, 1);lcd.print("TERDETEKSI!");delay(1500);
// buzzer dimatikandigitalWrite(pinBuzzer, HIGH);}
// jika tidak terdeteksi getaran gempa// terbaca output sensor "0" atau logic LOWelse if (bacaSensor == 0){// buzzer dimatikandigitalWrite(pinBuzzer, HIGH);
// menulis pada lcdlcd.clear();lcd.setCursor(0, 0);lcd.print("Kondisilcd.setCursor(0, 1);lcd.print("AMAN");delay(300);}}
Penjelasan singkat dari program di atas yakni :
Vibration yang NP pakai ini mempunyai data output berupa data digital. Jadi hanya ada data “0” dan “1”, atau logic LOW dan HIGH. Saat terbaca terdapat getaran, maka output sensor akan berupa data “1” atau logic HIGH.
// jika terdeteksi getaran gempa// terbaca output sensor "1" atau logic HIGHif (bacaSensor == 1){// buzzer menyaladigitalWrite(pinBuzzer, LOW);
// menulis pada lcdlcd.clear();lcd.setCursor(0, 0);lcd.print("Kondisilcd.setCursor(0, 1);lcd.print("BERBAHAYA!!");delay(1500);
lcd.clear();lcd.setCursor(0, 0);lcd.print("GEMPAlcd.setCursor(0, 1);lcd.print("TERDETEKSI!");delay(1500);
// buzzer dimatikandigitalWrite(pinBuzzer, HIGH);}
Nah sebaliknya, jika kondisi aman dan getaran tidak terdeteksi, maka output sensor akan berupa data “0” atau logic LOW. Untuk sensitifitas pembacaan sensor sendiri dapat diatur dengan memutar trimpot/variabel resistor yang terdapat pada sensor.
// jika tidak terdeteksi getaran gempa// terbaca output sensor "0" atau logic LOWelse if (bacaSensor == 0){// buzzer dimatikandigitalWrite(pinBuzzer, HIGH);
// menulis pada lcdlcd.clear();lcd.setCursor(0, 0);lcd.print("Kondisilcd.setCursor(0, 1);lcd.print("AMAN");delay(300);}
Yups… Begitulah tutorial singkat yang dapat Konekthing bagikan kepada sobat sekalian. Untuk selanjutnya bisa sobat kembangkan kembali dengan berbagai kreatifitas yang sobat miliki. Nantikan berbagai tutorial berikutnya dari Konekthing yaaa.
Jangan bosan-bosan belajar dan berlatih dengan Arduino ya sob. Karena banyak sekali alat-alat serta kreatifitas yang dapat kita buat dengan microcontroller board serba bisa ini.
“Barang siapa yang menempuh suatu jalan untuk menuntut ilmu, Allah akan memudahkan baginya jalan ke surga (HR Muslim)”
Semoga bermanfaat
Salam Teknologi. Salam Arduino.
Wassalamualaikum.
Tags:
iot,
internetofthings,
arduino,
sensor,
sensorgetaran,
pendeteksigempa,
smartearthquake,
alatotomatis,
iotplatform,
iotvendor,
aplikasi,
software,
smartdevice,
smartbox,
smartcontrolling