//Tambahan //Akhir tambahan Fungky Corporation: Aplikasi Sensor Ultrasonic HC-SR04 Sebagai Pengukur Jarak

MAU PESAN ALAT BIDANG ELEKTRONIKA? KAMI FUNGKY CORPORATION SIAP MEMBANTU. HUBUNGI :

Email: fungkyking01@gmail.com | FB/TWITTER/YOUTUBE : FUNGKYKING |

WA (WhatsApp) Only : 0838 (Libur)


Lokasi Yogyakarta.

Sunday, 18 October 2020

Aplikasi Sensor Ultrasonic HC-SR04 Sebagai Pengukur Jarak

 

Aplikasi Sensor Ultrasonic HC-SR04
Sebagai Pengukur Jarak

Aplikasi Sensor Ultrasonic
A. Pendahuluan

Jangan lupa singgah ke blog saya à http://festyy.com/wNiBaj dan klik Follow agar tidak ketinggalan membaca tulisan materi-materi lainnya tentang Otomatisasi PLC maupun mikrokontroler dan juga Subscribe serta Like channel youtube saya di (fungky kinghttps://www.youtube.com/channel/UCWbN7TqlN68FxeFY7uCNhkA untuk melihat hasil dari percobaan-percobaan dengan mikrokontroler yang telah dibuat.

Sensor Ultrasonik HC-SR04 banyak digunakan sebagai pengukur jarak aman baik untuk mobil RC ataupun aplikasi lainnya diindustri terhadap penghalang baik disisi depan maupun belakang. Sensor Ultrasonik HC-SR04 terdapat pin khusus yang berfungsi sebagai pengirim dan penerima sinyal ultrasonik yaitu pin Trig (Trigger/Penyulut) dan pin Echo (Receive/Indikator).

Pin Trig (Trigger/Penyulut) bekerja dengan membangkitkan sinyal ultrasonik dan pin Echo (Receive/Indikator) digunakan untuk mendeteksi sinyal pantulan ultrasonik dari pin Trig. Berdasarkan timing diagram pada Gambar 01 yang terdapat pada datasheet dibawah ini:


Gambar 01. Timing Diagram Sensor Ultrasonik (www.google.com)


  1. Pembahasan

B.1. Sensor Ultrasonic HC-SR04

Sensor Ultrasonik 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.

Berdasarkan karakteristik diatas, dilakukan pengujian proses pembacaan data jarak dengan membuat program yang nantinya akan diamati tampilan datanya pada perangkat serial monitor yang tersedia pada software IDE Arduino. Berikut program yang akan memproses data jarak yang terbaca, dimana data yang terbaca tersebut akan langsung dapat diamati pada serial monitor.

// GF --- Smart Robot Car ---

#include <SoftwareSerial.h>   

 

//Sensor Jarak Depan

#define PIN_TRIG1 12

#define PIN_ECO1 13

long durasi1, jarak1;

 

//Sensor Jarak Belakang

#define PIN_TRIG2 25

#define PIN_ECO2 27

long durasi2, jarak2;

 

void setup() {Serial.begin(9600); }

 

void loop() { 

  //Sensor Depan

  digitalWrite(PIN_TRIG1, LOW);

  delay(2);

  digitalWrite(PIN_TRIG1, HIGH);

  delay(5);

  digitalWrite(PIN_TRIG1, LOW);

 

  durasi1 = pulseIn(PIN_ECO1, HIGH);

  jarak1 = (durasi1/2) / 29; 

  Serial.print("Depan   : ");

  Serial.println(jarak1);

  //End Sensor Depan

 

  //Sensor Belakang

  digitalWrite(PIN_TRIG2, LOW);

  delay(2);

  digitalWrite(PIN_TRIG2, HIGH);

  delay(5);

  digitalWrite(PIN_TRIG2, LOW);

 

  durasi2 = pulseIn(PIN_ECO2, HIGH);

  jarak2 = (durasi2/2) / 29;

  Serial.print("Belakang: ");

  Serial.println(jarak2);

  Serial.println();

  //End Sensor Belakang

   delay(100); }

 

Pada tahap awal pembuatan program sebagai berikut ini:

digitalWrite(PIN_TRIG1, LOW);

delay(2);

digitalWrite(PIN_TRIG1, HIGH);

delay(5);

digitalWrite(PIN_TRIG1, LOW);

 

Pin TRIG1 diberi nilai LOW untuk memastikan bahwa ‘trigger’ tidak on atau menyala disaat sistem baru dinyalakan. Kemudian berikan delay selama 2 detik untuk kemudian pin TRIG1 bernilai HIGH agar dapat membangkitkan sinyal ultrasonik selama jeda waktu 5 detik, sebelum kemudian pin TRIG1 kembali bernilai LOW. Di saat yang bersamaan dimana pin TRIG1 kembali bernilai LOW, program durasi1 = pulseIn(PIN_ECO1, HIGH); diberikan fungsi pulseIn pada PIN_ECO1.

Fungsi pulseIn akan menunggu rentang waktu PIN_ECO1 dari LOW atau tidak aktif menjadi HIGH atau mendeteksi sinyal ultrasonic yang kembali, waktu tunggu tersebut akan terstore atau tersimpan ke dalam memory sehingga arduino dapat mengetahui waktu yang dibutuhkan untuk perjalanan suara dari trigger dan kembali ke echo karena pantulan benda.

Untuk mengetahui jarak dari hasil pantulan sinyal ultrasonic, maka menggunakan rumus durasi gelombang dibagi dengan waktu yang dibutuhkan sinyal untuk kembali. Karena duration adalah waktu bolak-balik (sensor-benda-sensor), maka perlu dibagi 2 untuk mendapatkan jarak dari sensor ke benda. Sehingga dalam penulisan program seperti berikut:

jarak1 = (durasi1/2) / 29;

Nilai konstanta 29 pada program diatas merupakan waktu yang dibutuhkan sinyal ultrasonic untuk kembali dibaca oleh sisi penerima sensor. Nilai 29 didapat berdasarkan hasil pengujian dengan objek yang diukur seperti Gambar 02, dalam pengujian ini menggunakan penggaris sepanjang 30cm sebagai acuan ukur. Namun untuk menghitung jarak dengan sensor ultrasonic dapat juga diganti menggunakan persamaan terhadap kecepatan rambatan udara sinyal ultrasonic seperti berikut:

distance = (duration/2) * 0.03483;

Dimana rumusnya sebagai berikut:


Keterangan:

Cair      = Rambatan Udara

331.3  = Nilai Konstanta (tetap)

0.606  = Nilai Konstanta (tetap)

(teta)= Suhu Udara

Dalam persamaan rumus diatas, teta adalah suhu udara sehingga dalam implementasinya sebagai berikut:

c = 331.3 + 0.606 * [suhu udara]

Jika Suhu 28 der celcius.

c = 331.5 + 0.606 * 28

c = 348.3 meter/second

Dikarenakan jarak mempunyai satuan mili/s. maka dirubah nilai 348.3 m/s ke micr/s. Hasilnya 348.3 * / 1000 = 0.03483 micro/s. Penetapan suhu sangat penting untuk menjaga presisi jarak dari sensor ke suatu objek, jika suhu yang dimasukan salah nilainya pun akan bergeser dari yang semestinya.

Program pengujian sensor ultrasonik diatas akan membaca jarak sensor terhadap benda didepannya dimana dapat diamati pada serial monitor IDE Arduino seperti Gambar 03 dimana adapun proses uji coba sensor terhadap objek seperti Gambar 02.


Gambar 02. Pengujian Sensor Ultrasonik Terhadap Benda

 


Gambar 03. Tampilan Data Jarak Pada Serial Monitor

 

Tabel 01. Hasil Pengujian Jarak Sensor Ultrasonik

No

Jarak Uji (cm)

Data Sensor

Error(%)

Depan

Belakang

Depan

Belakang

1

10

10

9

0

0.1

2

20

19

19

0

0

3

30

30

32

0

0.06

4

40

40

40

0

0

5

50

51

51

0

0

6

60

60

61

0

0.02

7

70

70

70

0

0

8

80

81

81

0.01

0.01

9

90

90

90

0

0

10

100

100

100

0

0

Error Rata-rata (%)

0.001

0.019

Berdasarkan hasil pengamatan pada Tabel 01 menunjukkan bahwa sensor ultrasonik bekerja pada jarak efektif 10cm sampai dengan 100cm. Dari hasil tersebut dapat diketahui bahwa sensor dapat bekerja sesuai perhitungan rumus program jarak1 = (durasi1/2) / 29; pada arduino. Terdapat beberapa ketidak sesuaian pembacaan nilai jarak terukur sebenarnya dengan jarak yang diuji berdasarkan program, namun masih dalam batas toleransi. Penyimpangan dapat terjadi dengan banyak faktor, baik dari segi objek pantulan yang tidak rata, dan gangguan lainnya.

Presentase kesalahan didapatkan dengan perhitungan menggunakan persamaan sebagai berikut :

                                     








                                          


Hasil kalibrasi pembacaan sensor diatas masih terdapat penyimpangan pembacaan dari sensor ultrasonic, hal ini dapat disebabkan dari sensitifitas atau resolusi pembacaan dari sensor ataupun dari alat ukur yang digunakan.

 

  1. Penutup

Demikian penjabaran singkat tentang “Aplikasi Sensor Ultrasonic HC-SR04 Sebagai Pengukur Jarak”. Untuk selanjutnya, buat yang ingin mempelajari Arduino dan lebih mengenal Arduino ataupun sistem Automation lainnya seperti PLC silakan follow akun sosial media saya di facebook “fungkyking” juga diblog saya di http://festyy.com/wNiBaj dan jangan lupa subscribe serta Like channel youtube saya juga di (fungky kinghttps://www.youtube.com/channel/UCWbN7TqlN68FxeFY7uCNhkA untuk melihat tulisan-tulisan serta hasil rancangan alat-alat berbasis mikrokontroler yang kami buat. Kami juga menerima pembuatan alat-alat elektronika baik untuk penelitian ataupun alat untuk syarat kelulusan.

Demikian pembahasan singkat yang dapat dibahas, mohon maaf jika terdapat kesalahan dalam penulisan yang mana semua ini semata-mata hanya opini pribadi berdasarkan pengalaman. Jika ada kekurangan dan tambahan dari materi pembahasan yang dibahas silahkan dapat teman-teman sertakan pada kolom komentar tambahan materi yang ingin disampaikan. Sampaikan pertanyaan dan isi kolom komentar dengan bijak.

           

Terima Kasih,

Salam Otomatisasi!

 

Afriansyah, S.T.

(Fungky King)

http://fungkynotes.blogspot.co.id

fungkyking01@gmail.com

 

Kata Kunci / Keywords: ATMEGA, Arduino, Arduino IDE, Arduino UNO, Bahasa C, fungkynotes.blogspot.co.id, fungky corporation, fungky king, microcontroller, otomatis, pemprograman, programming, plc, NodeMCU, ESP8266, Internet of Things (IoT), Wi-Fi, PWM, ADC, LED, Blink, I2C (Inter-Integrated Circuit), Two-wire (TWI), Program LCD 16X2 I2C (Inter-Integrated Circuit), Sensor Suhu LM35, LCD (Liquid Crystal Display), Motor Servo, Potensiometer, Sensor LDR, Ultrasonic HC-SR04

 

Referensi / Reference:

 

No comments:

Post a Comment

Berfikirlah kreatif dengan komentar yang bijak. Salam Otomatisasi.!

//Tambahan //akhir