Sensor Ultrasonik Arduino HC-SR04 : Cara Kerja dan Program

Bagi kamu yang ingin membuat suatu project dan butuh pengukur jarak objek, maka kamu bisa menggunakan sensor ultrasonik Arduino tipe HC-SR04.
Sensor ini merupakan jenis sensor yang dapat mengubah besaran listrik menjadi besaran fisis (suara) maupun sebaliknya. Dimana nilai yang didapatkan nantinya dapat dikonversi menjadi nilai jarak. Sehingga kamu tak butuh lagi yang namanya penggaris atau meteran.
Prinsip kerja sensor ultrasonik adalah dengan memanfaatkan pengaplikasian gelombang ultrasonik sebagai transduser-nya. Sederhananya, sensor ini memanfaatkan pantulan gelombang ultrasonik untuk menghitung jarak benda.
Gelombang ultrasonik adalah gelombang suara yang berfrekuensi di atas 20 kHz dan tak dapat didengar oleh telinga manusia normal. Gelombang tersebut hanya bisa didengar oleh hewan tertentu seperti kelelawar, lumba-lumba, dan kucing.
Umumnya gelombang ultrasonik digunakan oleh kelelawar atau lumba-lumba untuk mendeteksi objek yang ada di depannya meskipun penglihatan mereka tak begitu jelas.
Cara Kerja Sensor Ultrasonic HC-SR04
Sensor HC-SR04 memiliki sepasang transduser ultrasonik yang berfungsi sebagai transmitter (memancarkan gelombang) dan receiver (menerima pantulan gelombang).Cara kerjanya berawal dari gelombang ultrasonik berfrekuensi 40 kHz (sesuai osilator) yang dibangkitkan oleh piezoelektrik sebagai transmitter-nya.
Kemudian gelombang yang terbentuk dipancarkan mengenai target.
Hasil pantulan gelombang tersebut nantinya akan diterima oleh receiver piezoelektrik untuk dikalkulasikan waktu pengiriman dan waktu diterimanya gelombang pantul tersebut.
Hasil pengalkulasian itulah nanti yang akan kita peroleh sebagai nilai jarak.
Kira-kira bentuk ilustrasinya seperti ini.

Untuk mendapatkan nilai jarak, dalam hal ini kita memanfaatkan rumus kecepatan. Karena sudah diketahui kecepatan rambat bunyi berada di kisaran 340 m/s, maka rumus untuk mencari jarak adalah:
S = 340.t/2Keterangan :
S= Jarak objek
t= Selisih waktu dipancarkan dan diterimanya gelombang
Baca Juga : Macam-Macam Sensor Arduino
Komponen Sensor Ultrasonik HC-SR04
- Piezoelektrik Fungsi dari komponen ini adalah mengubah energi listrik menjadi energi mekanik yang menghasilkan gelombang ultrasonik maupun sebaliknya.
- Transmitter Yaitu komponen yang berfungsi untuk memancarkan gelombang ultrasonik yang dihasilkan oleh piezoelektrik ke objek yang ingin diukur jaraknya
- Receiver Berfungsi untuk menerima pantulan gelombang ultrasonik dari objek yang ingin diukur jaraknya.
Spesifikasi Sensor Ultrasonik HC-SR04 Arduino
Jarak Deteksi | 2 - 300 cm |
---|---|
Akurasi Jarak | 3 mm |
Tegangan Operasi | 5 Volt |
Sudut Pantul | < 15 derajat |
Konsumsi Arus | 15 mA |
Panjang | 4,5 cm |
Lebar | 2 cm |
Tinggi | 1,5 cm |
Pengenalan Pin Sensor Ultrasonik HC-SR04
- Pin Trig (Trigger), berfungsi untuk memicu pemancaran gelombang ultrasonik. Gelombang akan terpancarkan saat pin ini diberikan logika HIGH.
- Pin Echo, berfungsi untuk mendeteksi pantulan gelombang ultrasonik apakah sudah diterima atau belum. Pin Echo bernilai HIGH jika gelombang pantulan belum diterima dan bernilai LOW jika pantulan sudah diterima.
- Pin VCC, berfungsi untuk mengoneksikan sensor ke power supply 5 volt Arduino. Jadi kamu bisa langsung mengoneksikan pin VCC ke pin 5V di Arduino.
- Pin GND, berfungsi untuk mengoneksikan sensor ke power supply ground. Sama dengan pin VCC, kamu juga bisa langsung menghubungkan pin GND ini ke pin GND Arduino.
Contoh Program dan Rangkaian Sensor Ultrasonik Arduino HC-SR04 Sederhana Dengan Serial Monitor
Hasil yang Diharapkan:
Sensor akan mengukur jarak objek lalu hasil pengukuran tersebut ditampilkan di serial monitor dengan komunikasi serial.Alat dan Bahan:
- Arduino Uno dan Kabelnya
- Software Arduino IDE
- Kabel Jumper Male to Female
Cara Kerja :
1. Hubungkan Arduino ke komputer dengan menggukan kabel USB.2. Buatlah rangkaian sesuai gambar berikut.

Konfigurasi pinnya yaitu :
Arduino | Ultrasonik |
---|---|
Pin 2 | TRIG |
Pin 3 | ECHO |
5V | VCC |
GND | GND |
3. Buka Arduino IDE lalu atur board dan port-nya sesuai board dan port yang kamu gunakan.
4. Ketikkan program berikut di Arduino IDE.
int trigPin = 2;5. Jika sudah, upload program tersebut ke papan Arduino
int echoPin = 3;
long waktu;
int jarak;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
waktu = pulseIn(echoPin, HIGH);
jarak= waktu*0.034/2;
Serial.print("Jarak: ");
Serial.println(jarak);
delay(200);
}
6. Buka serial monitor dan lihat apa yang terjadi.
Contoh Program dan Rangkaian Sensor Ultrasonik Arduino HC-SR04 dengan Lampu LED
Hasil yang Diharapkan :
Lampu LED akan menyala saat sensor ultrasonik membaca jarak objek yang berada kurang dari 100 cm.Alat dan Bahan :
- Arduino Uno dan Kabelnya
- Software Arduino IDE
- Kabel Jumper male to male
- Breadboard
- Lampu LED
Cara Kerja:
1 Hubungkan Arduino ke komputer dengan menggunakan kabel USB.2. Buat rangkaian sesuai gambar berikut.

3. Buka Arduino IDE dan pastikan board dan port-nya sudah sesuai
4. Ketikkan program atau sketch berikut ini di Arduino IDE.
int trigPin = 2;5. Apabila sudah, upload program ke papan sirkuit Arduino dan lihat apa yang terjadi.
int echoPin = 3;
int LED = 4;
long waktu;
int jarak;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(LED, OUTPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
waktu = pulseIn(echoPin, HIGH);
jarak= waktu*0.034/2;
Serial.print("Jarak: ");
Serial.println(jarak);
if(jarak<100) {digitalWrite(LED,HIGH);}
else{digitalWrite(LED,LOW);}
delay(200);
}
Catatan :
Selain beberapa contoh program dan rangkaian di atas, sobat juga bisa memadukan sensor ultrasonik HC-SR04 dengan beberapa komponen lain seperti LCD, buzzer, modul bluetooth, modul wifi ESP8266, dan lain sebagainya.
Halo min lam kenal.. bisa kah sensor ultrasonik ini tanpa arduino dan langsung ke modul relay?
BalasHapus