Skip to main content

PENGHITUNG RAKAAT SHALAT

πŸŽ₯ VIDEO TUTORIAL LENGKAP

Pengen bikin alat pengukuryang jarakbisa digitalbantu denganngitung Arduino?rakaat saat shalat? Simak dulu video berikutini biar makin paham dasaralurnya penggunaannya!sebelum ngetik kodenya:


πŸ”Œ WIRING ATAU RANGKAIAN

Gak perlu nebak-nebak!tebak-tebakan kabel! Skema pemasangan lengkap bisa kamu lihat di sinihalaman berikut ini: πŸ‘‰ WIRING MAKE KIT ULTRASONIC


πŸ’» SOURCE CODE: METERAN DIGITALCODE

Yuk kita masuk ke bagian utama: source code! Kode berikut akan membaca jarak dari sensor HC-SR04ultrasonik dan menampilkannyamenghitung kerakaat Serialberdasarkan Monitor.jumlah Praktissujud. danCukup cocokpraktis bangetuntuk buatdigunakan belajarsaat dasarlatihan sensoratau ultrasonik!pembelajaran. πŸš€

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

#define trigPin 9
#define echoPin 10
#define buzzerPin 8

LiquidCrystal_I2C lcd(0x27, 16, 2);

int sujudCount = 0;
int rakaatCount = 0;
bool isSujud = false; // status sebelumnya

void setup() {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(buzzerPin, OUTPUT);
  
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("Hitung Rakaat");
  delay(1500);
  lcd.clear();
}

void loop() {
  long duration;
  float distance;

  // KirimBaca sinyaljarak dari sensor ultrasonik
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  // Terima pantulan
  duration = pulseIn(echoPin, HIGH);
  // Konversi ke cm
  distance = (duration * 0.03430343) / 2;

  Serial.// Tampilkan jarak di LCD baris 1
  lcd.setCursor(0, 0);
  lcd.print("Jarak: ");
  Serial.lcd.print(distance)distance, 1);
  Serial.println(lcd.print(" cm"cm   ");

  // Deteksi sujud (misalnya kepala <10 cm dari sensor)
  if (distance < 10 && !isSujud) {
    sujudCount++;
    tampilkanSujud(sujudCount);
    isSujud = true;

    // Cek jika sudah genap 2 sujud => 1 rakaat
    if (sujudCount % 2 == 0) {
      rakaatCount++;
      tampilkanRakaat(rakaatCount);
      bunyikanBeep(rakaatCount);
    }
  }

  // Reset status saat tidak sujud (jarak lebih dari threshold)
  if (distance > 30) {
    isSujud = false;
  }

  delay(500)100);
}

void tampilkanRakaat(int rakaat) {
  lcd.setCursor(0, 1);
  lcd.print("Rakaat: ");
  lcd.print(rakaat);
  lcd.print("   ");
}

void tampilkanSujud(int sujud) {
  lcd.setCursor(13, 1);
  lcd.print("S");
  lcd.print(sujud);
  lcd.print("   ");
}

void bunyikanBeep(int jumlah) {
  for (int i = 0; i < jumlah; i++) {
    tone(buzzerPin, 1000);
    delay(200);
    noTone(buzzerPin);
    delay(200);
  }
}

πŸ“¦ Sudah siap?di-copy? TinggalSekarang tinggal upload ke Arduino-mu!board KalauArduino butuhkamu! Untuk panduan lengkap cara upload,upload bisaprogram, buka di sini πŸ‘‰buka: SEMUA TENTANG ARDUINO IDE


🧠 PENJELASAN PROGRAM

  • trigPin:Sensor Ultrasonik: MengirimDigunakan sinyaluntuk ultrasonikmendeteksi darijarak Arduinokepala ke sensor.lantai saat sujud.
  • echoPin:Deteksi Sujud: MenerimaJika pantulanjarak sinyalkurang dari objek10 dicm depandan sensor.sebelumnya belum sujud β†’ tambah 1 hitungan sujud.
  • pulseIn():Hitung Rakaat: MenghitungSetiap waktu2 pantulansujud dalamdianggap mikrodetik.1 rakaat. Jumlah rakaat otomatis bertambah.
  • Konversi:LCD Waktu dikalikan kecepatan suara (0.0343 cm/Β΅s) lalu dibagi dua karena sinyal bolak-balik.
  • Serial Monitor:16x2: Menampilkan hasiljarak pengukuran+ jarakstatus rakaat & sujud secara real-time.
  • Buzzer: Memberi bunyi tiap selesai 1 rakaat, jumlah beep sesuai jumlah rakaat.

✨ Alat ini cocok bangetuntuk latihan shalat mandiri, pembelajaran anak-anak, atau bahan eksperimen AIoT berbasis gesture sederhana. Cukup andal untuk dijadikandigunakan proyeksebagai awalpelatihan belajarlogika sensormikrokontroler jarak.juga!


Semoga Bisa dimodifikasi juga jadi pengukur tinggi badan, detektor benda,bermanfaat, dan sebagainya.semoga Selamatibadahmu mencoba!makin khusyuk dan teknologinya makin canggih! πŸŒ™πŸ€–