Cara Mudah Program Sensor Ultrasonic TANPA LIBRARY Dengan Arduino

Loading...
Loading...

Postingan kali ini akan membahas sensor Jarak dengan menggunakan Sensor Ultrasonic HC-SR04 dengan pemrograman Arduino. Saya akan menjelaskan cara kerjanya, menunjukkan beberapa fitur, sehingga dapat membantu anda dalam penyelesaian project yang sedang anda kerjaakan berkaitan dengan sensor jarak. dalam kasus ini dapat di aplikasikan pada proyek pengukuran tinggi air untuk waduk atau irigasi, pengukur tinggi badan, sebagai sensor navigasi untuk robot dan masih banyak lagi yang dapat anda kembangkan sendiri. Kebanyakan tutorial pemograman Sensor Ultrasonic, menggunakan library untuk mempermudah pemrogramannya, tapi yang ingin saya bahas kali ini adalah membuat program dari awal, sehingga kita dapat mengerti seperti apa cara kerja dari sensor ini. Tujuannya adalah untuk membantu Anda memahami bagaimana sensor ini bekerja dan kemudian Anda dapat menggunakan contoh ini dalam project Anda sendiri.

Sebelumnya siapkan terlebih dahulu alat/komponen yang dibutuhkan, yaitu:

  • 1x PC/Laptop yang sudah terinstall App Arduino IDE
  • 1x Arduino Uno
  • 1x Breadboard
  • 4x Kabel Jumper
  • 1X Sensor Ultrasonic HC-SR04

Deskripsi Sensor Ultrasonic HC-SR04

Sensor Ultrasonik HC-SR04 menggunakan sonar untuk menentukan jarak ke objek seperti pada kelelawar lakukan saat terbang. Sensor ini memiliki kemampuan deteksi yang sangat baik dengan akurasi tinggi dan pembacaan stabil dalam modul yang mudah digunakan, dari jarak 2 cm - 400 cm atau 1 inci sampai 4 meter. Dalam pengoperasiannya tidak terpengaruh oleh sinar matahari atau bahan hitam seperti pengukur jarak Sharp GP infrared (meskipun akustik bahan lembut seperti kain bisa sulit untuk mendeteksi).

Seperti yang kita tau, Sensor Ultrasonic memiliki 2 sensor kiri dan kanan, seperti penampakan dibawah ini.

HC-SR04 (Ultrasonic Sensor)

Yang kiri itu adalah Transmitter (pengirim sinyal suara) sebutannya adalah Trigger, dan yang kanan itu adalah Receiver (penerima sinyal suara) sebutannya adalah Echo

Sound-measure-pulse

Sehingga cara kerja sensor ini adalah Trigger mengirimkan suara ultrasonic kedepan, dan jika di depan ada benda, suara tersebut akan memantul dan diterima oleh Echo. Nah dari pantulan suara (pulsa) ini, kita dapat mengetahui berapa jarak benda yang ada di depan sensor.

Catatan :
Sensor ultrasonik ini bekerja dengan membaca waktu tempuh gelombang tembak untuk kembali lagi ke receiver. Ini berarti jarak sebenarnya adalah setengah dari jarak tempuh. Untuk lebih lengkap bisa cek datasheet.


Diagram Waktu HC-SR04

Sensor Ultrasonic HC-SR04 memerlukan sinyal logika ‘1’ pada pin Trig dengan durasi waktu 10 mikrodetik (us) untuk mengaktifkan rentetan (burst) 8x40KHz gelombang ultrasonik pada elemen Pembangkitnya. Selanjutnya pin Echo akan berlogika ‘1’ setelah rentetan 8×40 KHz tadi, dan otomatis akan berlogika ‘0’ saat gelombang pantulan diterima oleh elemen Pendeteksi gelombang ultrasonik.

Timing Diagran HC-SR04

 

Skema rangkaian Arduino dengan Sensor Ultrasonic HC-SR04

Rangkailah seperti penampakan dibawah ini, Pin Triger sensor terkoneksi ke Pin 11 arduino dan Pin Echo sensor terkoneksi ke Pin 12 Arduino, seperti biasa menggunakan tegangan +5volt dan (G)groud yang juga tersambung ke arduino.

Rangkaian-HC-SR04-Ultrasonic-Sensor

Program Arduino

Selanjutnya buka apliksi Arduino IDE, kemudian copy program di bawah

int trig= 11; // membuat varibel trig di set ke-pin 11 
int echo= 12; // membuat variabel echo di set ke-pin 12 
long durasi, jarak; // membuat variabel durasi dan jarak 

void setup() 
{ pinMode(trig, OUTPUT); // set pin trig menjadi OUTPUT
  pinMode(echo, INPUT); // set pin echo menjadi INPUT 
  Serial.begin(9600); // digunakan untuk komunikasi Serial dengan komputer 
} 

void loop() 
{ // program dibawah ini agar trigger memancarakan suara ultrasonic 
  digitalWrite(trig, LOW);
  delayMicroseconds(8); 
  digitalWrite(trig, HIGH); 
  delayMicroseconds(8); 
  digitalWrite(trig, LOW); 
  delayMicroseconds(8);
  durasi= pulseIn(echo, HIGH); // menerima suara ultrasonic 
  jarak= (durasi/2) / 29.1; // mengubah durasi menjadi jarak (cm) 
  Serial.println(jarak); // menampilkan jarak pada Serial Monitor 
}

Kalau sudah Done Uploading, kamu bisa buka Serial Monitor untuk melihat nilai jarak dari sensornya, coba untuk mendekatkan dan menjauhkan tangan dari sensor, dan lihat angkanya.

Catatan :
Jika Sensor Ultrasonic HC-SR04 tidak menerima echo maka output tidak pernah menjadi LOW. Jika Anda menggunakan pulsein seperti di atas maka dengan tidak kembali echo program akan menggantung selama 1 detik yang merupakan batas waktu default untuk pulsin yang artinya program anda akan berhenti sejenak tidak membaca nilai sensor secara realtime selama 1 detik dan Anda perlu menggunakan parameter timeout pada program sebagai pembatasan maksimum. HC-SR04 hampir tidak bekerja sampai 3 meter memberikan panjang jalur total 6 meter dan waktu tempuh sekitar 20ms sehingga mengatur batas waktu untuk sesuatu di atas itu, mengatakan 25 atau 30ms.
Loading...