Sensor Ultrasonik HC-SR04 adalah sensor yang
memancarkan ultrasonik untuk menentukan jarak suatu benda yang berada di
jangkauannya. Jarak jangkauan dari sensor HC-SR04 adalah dari 2cm sampai 400cm.
Ultrasonik itu sendiri merupakan gelombang suara
dengan frekuensi tinggi yaitu sekitar 20 kHz. Manusia tidak dapat mendengar
suara ini, hanya hewan tertentu seperti lumba-lumba dan kelelawar yang dapat
mendengarnya. Gelombang ultrasonik dapat merambat pada medium padat, cair dan
gas.
Sensor ini memiliki 4 pin, yaitu Vcc, Trigger, Echo
dan Ground. Seperti biasa Vcc disambungkan ke sumber tegangan 5V DC dan Ground ke
ground kontroler. Pin trigger dan echo disambungkan ke salah satu pin IO
kontroler yang kali ini saya menggunakan arduino uno. Pin trigger untuk
mentrigger output sensor yang berupa gelombang ultrasonik dengan 8x40KHz, untuk
mentriggernya adalah dengan memberikan tegangan positif pada pin trigger selama
10µs, dengan demikian sensor akan mengirimkan sinyal ultrasonik. Pin echo
sebagai penerima sinyal pantulan dari gelombang yang memantul dari benda.
Lalu bagaimana cara mengetahui jarak suatu benda
dengan sensor ini? langsung saja kita bahas.
Kita tau bahwa kecepatan suara adalah v = 340 m/s atau
0,034 cm/µs karena kita ingin jaraknya dalam bentuk satuan cm. Untuk menghitung
jarak kita gunakan persamaan s = v * t. Karena v = 0,034 cm/µs. Maka s = 0,034 *
t. Tidak hanya sampai disitu, karena waktu tempuh gelombang suara adalah dua
kali yaitu saat pertama dikeluarkan dan setelah memantul dari benda kembali ke
sensor maka persamaan tadi menjadi s = 0,034 * t/2.
Kecepatan suara
v = 340 m/s atau 0,034 cm/µs
Rumus jarak
s = v * t
s = 0,034 * t
Rumus jarak pada sensor ultrasonik HC-SR04
s = 0,034 * t/2
Berikut merupakan gambar rangkaian sensor dengan
arduino uno. Pin Vcc dihubungkan Vcc 5V dari arduino. Ground ke ground dari
arduino. Trigger ke pin 9 dan echo ke pin 8.
Program Sensor Ultrasonic HC-SR04 dengan Arduino Uno :
int trigPin = 9;
int echoPin = 8;
long distance, duration;
void setup() {
// put your
setup code here, to run once:
pinMode(trigPin, OUTPUT);//Setting pin trigger menjadi output
pinMode(echoPin, INPUT);//Setting pin echo menjadi input
Serial.begin(9600);//Memulai komunikasi serial
}
void loop() {
// put your
main code here, to run repeatedly:
/*Kode untuk
mentrigger sensor mengeluarkan gelombang ultrasonik*/
digitalWrite(trigPin, LOW);//Set sinyal trigger menjadi low
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);//Set sinyal trigger menjadi high
delayMicroseconds(10);/*Delay
10 us
digitalWrite(trigPin, LOW);//Set sinyal trigger low kembali
/*Membaca
hasil dari pin echo berupa waktu tempuh gelombang ultrasonik dalam microseconds*/
duration =
pulseIn(echoPin, HIGH);//Menghitung waktu saat pin echo high
/*Memasukkan
rumus untuk menghitung jarak dengan sensor ultrasonik*/
distance =
duration*0.034/2;
/*Tampilkan
hasil perhitungan jarak pada serial monitor arduino*/
Serial.print("Jarak = ");
Serial.print(distance);
Serial.print(" cm");
}
nice information min
ReplyDeleteobeng samsung plus