Sensor ultrasonic adalah sensor yang berfungsi untuk merubah besaran fisis (suara) menjadi besaran listrik maupun sebaliknya yang dikonversi menjadi jarak.
Konsep dasar dari sensor ini yaitu memanfaatkan prinsip pemantulan gelombang suara yang dapat diaplikasikan untuk menghitung jarak benda dengan frekuensi yang ditentukan sesuai dengan sumber oscilator.
Disebut sebagai sensor ultrasonic dikarenakan sensor ini mengaplikasikan gelombang ultrasonik sebagai trandusernya.
Gelombang ultrasonic merupakan gelombang suara yang memiliki frekuensi tinggi yaitu pada kisaran 20 kHz.
Bunyi ini tidak bisa di dengar dengan telinga normal manusia, hanya bisa didengar oleh sistem pendengaran pada kelelawar, anjing, lumba-lumba, dan kucing.
Dan sifat dari gelombang ini yaitu hanya bisa merambat melalui zat cair, padat, dan gas.
Reflektivitas gelombang ultrasonik pada permukaan benda padat hampir sama dengan reflektivitas suara ultrasonik dengan permukan benda cair.
Meskipun begitu pada gelombang bunyi ultrasonik akan mudah diserap oleh bahan – bahan tertentu seperti bahan dari busa maupun tekstil .
Cara Kerja
Sensor ini dimulai dari gelombang ultrasonik dengan frekuensi tertentu yang dibangkitkan melewati alat yang disebut juga dengan nama piezoelektrik sebagai transmitter.
Alat ini akan menghasilkan gelombang ultrasonik yang berfrekuensi 40kHz (sesuai dengan osilator yang terpasang pada sensor).
Biasanya alat ini akan memancarkan gelombang pada suatu target dan jika sudah mengenai permukaan target, maka gelombang tersebut akan terpantulkan kembali.
Pantulan gelombang tersebut akan diterima oleh piezoelektrik (receiver) dan kemudian sensor akan mengkalkulasi perbedaan antara waktu pengiriman dan waktu gelombang pantul yang diterima.
ilustrasi prinsip kerja sensor ultrasonic
Keterangan :
Pemancar ultrasonik akan memancarkan gelombang dengan frekuensi 40kHz dengan jeda waktu tertentu.
Kecepatan rambat gelombang bunyi yaitu kisaran 340 m/s.
Sesudah gelombang pantulan mengenai alat penerima, gelombang tersebut akan diolah untuk dihitung jarak benda tersebut.
Rumus jarak benda dapat dihitung dengan rumus sebagai berikut :
S = 340.t/2
S = Jarak
t = Selisih waktu dipancarkan dan waktu diterima gelombang
[irp]
Bagian – bagian dari sensor ultrasonic antara lain :
1. Piezoelektrik
Berfungsi sebagai alat pengubah energi listrik dijadikan menjadi energi mekanik.
Material dasar yang terdapat pada piezoelektrik yang menghasilkan medan listrik saat terjadi tekanan mekanis dan sebaliknya.
Misalnya saja rangkaian pengukur dioperasikan pada mode pulsa dengan unsur piezoelektrik yang sama, sehingga bisa digunakan sebagai mode reiceiver dan transmitter.
Frekuensi dihasilkan tergantung dari osilator yang terpasang dan itu akan disesuaikan dengan frekuensi kerja dari transduser.
2. Transmitter
Merupakan alat yang mempunyai peran sebagai pemancar gelombang dengan frekuensi 40 kHz yang bersumber dari osilator. Frekuensi tersebut dihasilkan dari rangkaian osilator serta amplifier sinyal / penguat sinyal.
Pada amplifier sinyal akan menghasilkan sinyal listrik yang diumpankan ke piezoelektrik dan terjadilah reaksi mekanik.
Pada proses itu dimana piezoelektrik akan memancarkan gelombang sesuai dengan sumber osilatornya.
3. Receiver
terdiri dari transduser ultrasonik yang memakai piezoelektrik juga yang difungsikan sebagai penerima gelombang pantulan.
Bahan piezoelektrik mempunyai reaksi yang reversible, terdapat elemen keramik yang berfungsi sebagai pembangkit tegangan listrik.
Pada waktu gelombang datang dengan kriteria frekuensi yang resonan dan pada saat itu akan menggetarkan bahan piezoelektrik.
Spesifikasi
Modul yang ada dipasaran yang sering digunakan untuk arduino yaitu tipe HC-SR04 (seperti gambar diatas). Spesifikasi dari sensor ultrasonic tersebut :
- Jarak deteksi antara 2cm – 300cm
- Tingkat kepresisisan pengukuran jarak ±3 mm
- Tegangan operasional 5 Vdc
- Sudut sensor < 15 derajat
- Konsumsi arus berkisar 2mA
- Dimensi modul 45mm x 20mm
Tutorial Sederhana Mengakses Sensor Ultrasonic via serial monitor Arduino IDE
Untuk tutorial ini merupakan tutorial basic yang mengakses sensor ultrasonic dengan menggunakan 2 pin input output saja yaitu pin echo dan pin trigger.
Dan digunakan led built in arduino sebagai indikator batas nilai parameter bacaan.
Bahan yang perlu dipersiapkan antara lain :
- Arduino Uno
- Komputer + Software IDE Arduino
- Modul Sensor HC-SR04
- Breadboard
- Kabel Jumper
Skema yang perlu dirangkaikan
Program kode
/* --- www.nyebarilmu.com --- */ /* Sensor jarak HC-SR04 pin yang perlu dihubungkan VCC to arduino 5v GND to arduino GND Echo to Arduino pin 7 Trig to Arduino pin 8 */ #define echoPin 12 //Echo Pin #define trigPin 11 //Trigger Pin #define LEDPin 13 //Led default dari Arduino uno int maximumRange = 200; //kebutuhan akan maksimal range int minimumRange = 00; //kebutuhan akan minimal range long duration, distance; //waktu untuk kalkulasi jarak void setup() { Serial.begin (9600); //inisialiasasi komunikasi serial //deklarasi pin pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(LEDPin, OUTPUT); } void loop() { /* Berikut siklus trigPin atau echo pin yang digunakan untuk menentukan jarak objek terdekat dengan memantulkan gelombang suara dari itu. */ digitalWrite(trigPin, LOW);delayMicroseconds(2); digitalWrite(trigPin, HIGH);delayMicroseconds(10); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); //perhitungan untuk dijadikan jarak distance = duration/58.2; /* Kirim angka negatif ke komputer dan Turn LED ON untuk menunjukkan "di luar jangkauan" */ if (distance >= maximumRange || distance <= minimumRange) { Serial.println("-1");digitalWrite(LEDPin, HIGH); } else { /*Kirim jarak ke komputer menggunakan Serial protokol, dan menghidupkan LED OFF untuk menunjukkan membaca sukses. */ Serial.println(distance); digitalWrite(LEDPin, LOW); //waktu tunda 50mS delay(50); }}
Pada program diatas, untuk menampilkan jarak yaitu pada fungsi “Serial Monitor” software IDE, dan dapat diujicoba untuk memberikan jarak yang bervariasi.
Tutorial Mengakses 2 Sensor Ultrasonic 1 Arduino uno
Untuk tutorial kedua ini merupakan tutorial pengembangan dimana menggunakan lebih dari 1 sensor ultrasonic yang diakses menggunakan 1 kontroler. Hal ini memungkinan dengan mempertimbangkan jumlah input output yang tersedia di kontroler.
Sedangkan untuk program kodingnya memodifikasi nama variabelnya saja. Untuk melihat hasil pembacaan menggunakan serial monitor dengan setting baut rate yang menyesuaikan kodingan program code.
Bahan yang perlu dipersiapkan antara lain :
- Arduino Uno
- Komputer + Software IDE Arduino
- Modul Sensor HC-SR04 2pcs
- Kabel Jumper
Skema Rangkaian
Kode program koding
//IO sensor 1 #define echoPin 11 //Echo Pin #define trigPin 12 //Trigger Pin //IO Sensor 2 #define echoPin2 9 //Echo Pin #define trigPin2 10 //Trigger Pin int maximumRange = 200; //kebutuhan akan maksimal range int minimumRange = 00; //kebutuhan akan minimal range long duration, distance; //waktu untuk kalkulasi jarak int maximumRange2 = 200; int minimumRange2 = 00; long duration2, distance2; void setup() { Serial.begin (9600); //inisialiasasi komunikasi serial //deklarasi pin pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); pinMode(trigPin2, OUTPUT); pinMode(echoPin2, INPUT); } void loop() { digitalWrite(trigPin, LOW);delayMicroseconds(2); digitalWrite(trigPin, HIGH);delayMicroseconds(10); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); digitalWrite(trigPin2, LOW);delayMicroseconds(2); digitalWrite(trigPin2, HIGH);delayMicroseconds(10); digitalWrite(trigPin2, LOW); duration2 = pulseIn(echoPin2, HIGH); //perhitungan untuk dijadikan jarak distance = duration/58.2; distance2 = duration2/58.2; Serial.println(distance);Serial.print(" cm"); Serial.println(distance2);Serial.print(" cm"); }
Selain itu, pada program diatas dapat dimodifikasi menggunakan penampil LCD dan module i2c PCF8574.
Hasilnya dapat dilihat seperti gambar dibawah ini :
Dapat dicek di link ini :
[irp posts=”2392″ name=”Park assist cars use microcontroller”]
Selamat mencoba!
Terimakasih sudah berkunjung, dan semoga bermanfaat. Salam nyebarilmu.com!
Assalamualaikum, Kak… bagaimana itu codingannnya untuk program jarak sensor, misal jaraknya 14, maka robotnya mundur. trus menggunakan 1 sensor aja, Kak.. mohon bimbingannya, Kak..
oke gan, itu mudah buatnya
subcribe dulu aja website ini,
ane segera buatkan artikelnya, thanks
Mau tanya dong min kalo delaymicrosecond di pin trigger tujuannya untuk apa? Sama untuk distance kenapa durationnya dibagi 58,2? Makasih.
mau tanya bang itu di program minimum range kok terjadi kesalahan setelah saya klik veryfi pada soft ware arduino ide
coba cek di program pengembangannya di link ini gan
https://nyebarilmu.com/park-assist-cars-use-microcontroler/
codingnya ada yang salah ,,
sudah aku run di arduino uno , tapi ada yang salah ..
contoh di variable minimumRange udah dikasih (=) tapi kosong , ini maksutnya gimana ??
sorry gan, di programny ternyata kepencet space sama “{”
sekarang programnya sudah bisa digunakan
program pengembangan ada di artikel ini
https://nyebarilmu.com/park-assist-cars-use-microcontroler/