Mengukur Jarak dengan menggunakan Sensor Ultrasonik dan Arduino

Sebenarnya sensor ultrasonik ini banyak gunanya terutama pada alat-alat otomatis, misalnya seperti pintu otomatis, pengukuran level air pada tandon air dan masih banyak lagi. Alat-alat tersebut kebanyakan memanfaatkan jarak sebagai parameternya. Kalian pun juga dapat membuat alat-alat tersebut dengan mudah menggunakan sensor jarak ultrasonik. Langsung saja kita mulai.

Pengertian Sensor Ultrasonik Hc-sr04

Sensor ultrasonik adalah suatu alat atau sensor yang digunakan untuk mengukur jarak suatu benda menggunakan gelombang suara ultrasonik. Sensor ultrasonik bekerja dengan mengirimkan gelombang suara pada frekuensi diatas jangkauan pendengaran manusia sebesar 40.000 Hz (40kHz) yang bergerak diudara dan jika ada objek atau hambatan dijalurnya maka gelombang tersebut akan dipantulkan kembali ke sensor. Dengan mempertimbangkan nilai waktu tempuh dan nilai kecepatan udara, maka besarnya nilai jarak dapat diketahui.

Gambar Sensor Ultrasonik HC-SR04

Pada sensor ini terdapat pin yang masing-masing punya fungsinya sendiri seperti pada tabel dibawah ini

PinFungsi
VccCatu daya positif (5v)
GndGround
TrigTrigger atau untuk memicu keluarnya sinyal dari sensor
EchoUntuk menangkap sinyal pantul dari benda

Gelombang suara yang dikeluarkan oleh Trigger akan mengenai benda dan dipantulkan kembali ke sensor dan terima oleh bagian Echo. Dari proses inilah jarak dari sebuah objek dapat ditentukan. Dibawah ini adalah timing digram dari sensor ultrasonik..

Gambar timing diagram sensor ultrasonik Hc-sr04
Gambar skema proses kalkulasi jarak

Kecepatan gelombang suara bernilai 340 m/s, maka untuk 1 cm (0,01 m) memerlukan waktu 0,01/340 atau 0,0000294 s (29,4 us). Gelombang ultrasonik melakukan sebanyak 2 kali perjalanan yaitu saat pergi dan saat kembali. Setiap jarak tempuh 1 cm diperlukan waktu 29,4 us x 2 = 58,8 us. Dengan demikian untuk menghitung nilai jarak (dalam satuan cm) dapat ditentukan dengan menggunakan rumus jarak = waktu tempuh/ 58,8 s.

Pembuatan Rangkaian Sensor Ultrasonik Hc-sr04 dengan Arduino.

            Sebelumnya kalian sudah mempelajari apa itu sensor ultrasonik beserta prinsip kerjanya. Selanjutnya mari kita praktek bagaimana cara menggunakan sensor ini. Sensor ultrasonik dapat diakses menggunakan perangkat mikrokontroller salah satunya adalah arduino. Cara penggunaanya juga cukup mudah karena sensor ini dapat langsung dihubungkan ke arduino tanpa membutuhkan rangkaian elektronik tambahan. Berikut ini pengalamatan pin pada arduino.

Pin ArduinoPin Sensor Ultrasonik Hc-sr04
VCC5 V
GndGnd
Trig2
Echo3

Alat dan bahan yang diperlukan :

Gambar Rangkaian Arduino dengan Sensor Ultrasonik Hc-sr04

Pemrograman sensor HC-SR04 menggunakan Arduino IDE

Setelah pembuatan rangkaian selesai, pastikan kembali bahwa rangkaian tersebut sudah sesuai. Kemudian buka Arduino IDE pada komputer kalian dan tulis/copy program dibawah ini. Setelah proses upload program berhasil. Kalian bisa mencoba menghadapkannya pada benda datar disekitar kalian. Karena menggunakan prinsip pantulan, nilai pembacaannya akan bagus jika pada bidang rata dan begitu juga sebaliknya.

// -----------------------------start program----------------------------------- //
// Arduino Ultrasoninc Sensor HC-SR04
// Using Arduino IDE 1.8.13
// Using HC-SR04 Module
// ---------------------------------------------------------------- //

#define trigPin 2 //pasang pin D2 Arduino ke pin Triger HC-SR04
#define echoPin 3 // pasang pin D3 Arduino ke pin Echo HC-SR04

// defines variables
long duration; // variabel untuk durasi perjalanan gelombang suara
int distance; // variabel untuk pengukuran jarak

void setup() {
  pinMode(trigPin, OUTPUT); // Menetapkan trigPin sebagai OUTPUT
  pinMode(echoPin, INPUT); // Menetapkan echoPin sebagai INPUTINPUT
  Serial.begin(9600); // // Komunikasi Serial dimulai dengan kecepatan baudrate 9600
  Serial.println("Ultrasonic Sensor HC-SR04 Test"); // cetak beberapa teks di Serial Monitor
  Serial.println("with Arduino UNO R3");
}
void loop() {
  // Menghapus kondisi trigPin
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  // Menyetel trigPin TINGGI (AKTIF) selama 10 mikrodetik
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW); 
 duration = pulseIn(echoPin, HIGH);
  // Menghitung jarak
  distance = duration * 0.034 / 2; // Kecepatan gelombang suara dibagi 2 (pergi dan kembali)
  // Menampilkan jarak pada Serial Monitor
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");
//-----------------------------------------------end program--------------------------------------------

Leave a Reply