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.
Pada sensor ini terdapat pin yang masing-masing punya fungsinya sendiri seperti pada tabel dibawah ini
Pin | Fungsi |
Vcc | Catu daya positif (5v) |
Gnd | Ground |
Trig | Trigger atau untuk memicu keluarnya sinyal dari sensor |
Echo | Untuk 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..
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 Arduino | Pin Sensor Ultrasonik Hc-sr04 |
VCC | 5 V |
Gnd | Gnd |
Trig | 2 |
Echo | 3 |
Alat dan bahan yang diperlukan :
- 1 Arduino (link pembelian arduino Dip, Arduino SMD)
- 1 Breadboard (link pembelian breadboard)
- 4 Kabel jumper male to male (link pembelian kabel jumper male to male)
- Sensor Ultrasonik (link pembelian Sensor Ultrasonik)
- 1 Komputer/laptop (yang sudah terinstall arduino IDE)
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--------------------------------------------