Sistem Pendeteksi Gempa Sederhana Berbasis Arduino

Indonesia merupakan salah satu negara yang rawan bencana alam, terutama gempa bumi. Karena itu, penting adanya sebuah sistem peringatan dini yang mampu mendeteksi getaran atau guncangan sejak dini. Meskipun tidak bisa menggantikan sistem seismograf yang kompleks, perangkat sederhana ini bisa menjadi alat edukasi yang bermanfaat untuk memahami konsep deteksi gempa.

Dalam proyek ini digunakan sensor getar SW-420 sebagai komponen utama untuk mendeteksi adanya getaran. Sensor ini akan memberikan sinyal digital ketika mendeteksi getaran yang cukup kuat. Kemudian hasil deteksi tersebut akan ditampilkan melalui LCD 16×2 I2C, sehingga pengguna bisa mengetahui apakah dalam kondisi aman atau sedang terjadi guncangan.

Dengan adanya perangkat ini, diharapkan masyarakat maupun pelajar bisa mempelajari cara kerja sensor getaran dan mengembangkan sistem sederhana menjadi lebih lanjut, seperti menambahkan buzzer, LED peringatan, atau bahkan integrasi dengan IoT untuk pengiriman notifikasi jarak jauh.


Komponen yang Dibutuhkan

  1. Arduino Uno / MFB ATMEL 328 micro
  2. Sensor getar SW-420
  3. LCD 16×2 I2C
  4. Kabel jumper
  5. Breadboard (opsional)
  6. Power supply (USB atau adaptor 5V)

Skema Rangkaian


Koneksi Rangkaian

Sensor SW-420 → Arduino Uno
Pin Sensor SW-420Arduino UNO
VCC5V
GNDGND
OUTD2
LCD I2C 16×2 → Arduino Uno
Pin LCD I2CArduino UNO
VCC5V
GNDGND
SDAA4
SCLA5

Library yang Harus Ditambahkan


Program Lengkap

//PROGRAM INI DI BUAT OLEH : MANFAHBOT INDUSTRIAL AUTOMATION
//HAK CIPTA PROGRAM/CODING : CARISSA DWI WIRASTUTI
//WEBSITE : http://manfahbot.cc

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// Inisialisasi LCD I2C (alamat biasanya 0x27 atau 0x3F)
LiquidCrystal_I2C lcd(0x27, 16, 2);

const int sensorPin = 2;    // Pin digital untuk SW-420

unsigned long terakhirGetar = 0;       // waktu terakhir ada getaran
const unsigned long jedaAman = 2000;   // jeda 2 detik agar status "AMAN" muncul

void setup() {
  pinMode(sensorPin, INPUT);

  lcd.begin();       // Inisialisasi LCD
  lcd.backlight();   // Nyalakan backlight LCD

  lcd.setCursor(0, 0);
  lcd.print("Pendeteksi Gempa");
  lcd.setCursor(0, 1);
  lcd.print("Menginisialisasi");
  delay(2000);
  lcd.clear();
}

void loop() {
  int statusGetaran = digitalRead(sensorPin);

  if (statusGetaran == HIGH) {
    // Jika ada getaran
    lcd.setCursor(0, 0);
    lcd.print("GEMPA TERDETEKSI! ");
    lcd.setCursor(0, 1);
    lcd.print("Segera Evakuasi! ");

    terakhirGetar = millis();
  } else {
    if (millis() - terakhirGetar >= jedaAman) {
      lcd.setCursor(0, 0);
      lcd.print("Status: AMAN     ");
      lcd.setCursor(0, 1);
      lcd.print("Tidak ada gempa ");
    }
  }

  delay(100); 
}

Cara Kerja Program

  1. Saat Arduino menyala, LCD menampilkan pesan inisialisasi.
  2. Sensor SW-420 membaca getaran.
    • Jika ada getaran → LCD menampilkan pesan “GEMPA TERDETEKSI! Segera Evakuasi!”
    • Jika tidak ada getaran → LCD menampilkan status “AMAN”.
  3. Program menggunakan delay aman (2 detik) agar LCD tidak langsung kembali ke status AMAN setelah getaran kecil.

Kesimpulan

Proyek ini memperlihatkan bagaimana Arduino, Sensor SW-420, LCD I2C dapat digunakan untuk membuat sistem pendeteksi gempa sederhana.
Meskipun sensor SW-420 tidak seakurat sensor seismik profesional, proyek ini sangat bermanfaat untuk belajar dasar elektronika, sensor, dan pemrograman Arduino.

🚀 Pengembangan lebih lanjut:

  • Menambahkan buzzer/alarm saat gempa terdeteksi
  • Mengirim notifikasi via IoT (ESP8266/ESP32)
  • Menyimpan log data getaran ke SD Card

Ingin belajar lebih banyak tentang otomasi industri & IoT?
MANFAHBOT siap membantu!

✅ Pelatihan Otomasi & PLC
✅ Pengembangan Sistem IoT & Simulasi
✅ Rancang Bangun Sistem Robotik
✅ Pendampingan Proyek Akhir / PKL SMK – D4 – S1

🌐 manfahbot.cc
📧 info@manfahbot.cc
📞 WhatsApp: +62 859-5646-3532

manfah.industri@gmail.com
manfah.industri@gmail.com
Articles: 30

Leave a Reply

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *