Cara mudah membaca Ultrasonik tanpa library

Kebanyakan tutorial pemograman ultrasonic, menggunakan library untuk mempermudah pemrogramannya. Tapi yang ingin saya bagikan kali ini adalah membuat program dari awal, sehingga dapat diketahui seperti apa cara kerja dari sensor ini.
Dan seperti yang kita tau, Sensor Ultrasonic memiliki 2 sensor kiri dan kanan, seperti penampakan dibawah ini.

 

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

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.

Sebelumnya siapkan terlebih dahulu komponen yang dibutuhkan, yaitu:

1x Arduino Uno
4x Kabel Jumper Male to Female
1X HC-SR04 Ultrasonic Sensor

Kemudian rangkailah seperti penampakan dibawah ini…

Seperti ini sketch nya

int trig= A0; // membuat varibel trig yang di set ke-pin A0
int echo= A1; // membuat variabel echo yang di set ke-pin A1
int jarak=0; // membuat variabel jarak=0

void setup() {
pinMode(trig, OUTPUT); // set pin trig menjadi OUTPUT
digitalWrite(trig, LOW); // set pin trig dengan logika LOW
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, HIGH);
delayMicroseconds(10);
digitalWrite(trig, LOW);

jarak=0;
while(digitalRead(echo)==LOW);
while(digitalRead(echo)==HIGH && jarak <=250){
jarak++; //menghitung jarak
delayMicroseconds(58);
}
Serial.println(jarak); // menampilkan jarak pada Serial Monitor
}

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

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *