Contents
Pada studi kasus kali ini kita akan membuat sistem proximity (pendeteksi batas) dengan sensor jarak HC-SR04 yang berbasis suara elektronik. Data jarak kemudian ditampilkan di LCD 2004, sedangkan kontrol beban diindikasikan dengan LED. Sebagai pebdahuluan, dasar-dasar mengenai sensor ultrasonik HCSR04 dapat dibaca di artikel tentang sensor ultrasonik dan artikel ultrasonik dengan NodeMCU. Pada intinya sensor jarak ultrasonik bekerja berdasar waktu yang ditempuh gelombang ultrasonik dari pertama kali dikirim transmitter sampai diterima kembali oleh penerima (receiver)
Sensor ultrasonik yang tersedia di pasaran salah satunya adalah tipe HCSR04. Sensor ini cukup populer karena harganya yang murah, penggunaannya mudah dan hasil pengukuran yang relatif akurat (tingkat akurasinya 1 cm). Sensor ini memiliki 4 pin yaitu Vcc, TRIG, ECHO, dan Gnd. Pin TRIG digunakan untuk men-trigger awal pengukuran (awal ‘penembakan’ gelombang ultrasonik), sedangkan pin ECHO akan aktif ketika gelombang pantul sampai di receiver sensor (lihat gambar di atas)
Baiklah, mari kita segera buat sistemnya. Alat dan bahan yang diperlukan untuk membuat sistem penanda batas jarak dengan sensor HCSR04 da Arduino Uno ini adalah sebagai berikut:
Alat dan Bahan Percobaan On-Off LED dengan Arduino Uno dan Sensor Jarak HCSR04
- Arduino Uno
- Sensor ultrasonik HC-SR04
- Resistor 220
- LED merah
- Kabel jumper male to female secukupnya
- Protoboard
- LCD 2004 + I2C
Dari bahan-bahan di atas, buatlah rangkaian seperti gambar berikut
Source Code On-Off LED dengan Arduino Uno dan Sensor Jarak HCSR04
Setelah selesai membuat rangkaian di atas, mari kita isi Arduino Uno dengan program supaya dapat menjalankan sistem yang kita inginkan. Sketch ini membutuhkan library LiquidCrystal_I2C yang dapat diinstal melalui menu Tools-Manage Libraries (kmd ketikkan nama library di kotak search)
#include <Wire.h> // Memanggil library wire.h #include <LiquidCrystal_I2C.h> // Memanggil library LCD dengan I2C LiquidCrystal_I2C lcd(0x27, 20, 4); // Alamat I2C(0x27) LCD dan Jenis LCD (20x4) #define echoPin A0 //Deklarasi echo terhubung pada pin A0 HC-SR04 #define trigPin A1 //Deklarasi trig terhubung pada pin A1 HC-SR04 #define led 2 //Deklarasi LED terhubung pada pin 2 // defines variables long durasi; // variabel durasi suara int jarak; // variabel untuk mengukur jarak void setup() { lcd.init(); // instruksi untuk memulai LCD lcd.begin(20,4); // instruksi untuk menggunakan lcd 20x4 lcd.backlight(); // instruksi untuk mengaktifkan lampu latar LCD pinMode(trigPin, OUTPUT); // deklarasi pin trig sebagai output pinMode(echoPin, INPUT); // deklarasi pin echo sebagai input pinMode(led, OUTPUT); // deklarasi LED sebagai output Serial.begin(9600); // Serial Communication is starting with 9600 of baudrate speed } void loop() { digitalWrite(trigPin, LOW); // Trig tidak aktif delayMicroseconds(2); digitalWrite(trigPin, HIGH); // Trig aktif delayMicroseconds(10); digitalWrite(trigPin, LOW); // Membaca sinyal masuk pada echo durasi = pulseIn(echoPin, HIGH); // Menghitung Jarak jarak = durasi * 0.034 / 2; // Rumus menghitung jarak ultrasonik lcd.setCursor(2, 0); // karakter dimulai dari kolom 2 baris 1 lcd.print("Tutorial HC-SR04"); // Karakter yang akan ditampilkan pada LCD lcd.setCursor(4, 1); // karakter dimulai dari kolom 4 baris 2 lcd.print("Arduino Uno"); // Karakter yang akan ditampilkan pada LCD lcd.setCursor(0,2); // karakter dimulai dari kolom 1 baris 3 lcd.print("Jarak:"); // Karakter yang akan ditampilkan pada LCD lcd.print(jarak); // Menampilkan data jarak pada LCD lcd.print(" cm"); delay(10); if (jarak < 5){ // instruksi untuk mengaktifkan LED jika jarak benda kurang dari 5 cm digitalWrite(led, HIGH); lcd.setCursor(0,3); lcd.print("LED ON "); } else { digitalWrite(led, LOW); // instruksi untuk mematikan LED jika jarak benda lebih dari 5 cm lcd.setCursor(0,3); lcd.print("LED OFF"); } delay(1000); }
Upload program di atas ke Arduino Uno Anda, pastikan serial port yang dipilih sudah benar. Jika gambar rangkaian benar dan sketch yang diunggah sudah benar maka hasil percobaan seharusnya akan seperti gambar di bawah
Perhatikan baris program 43-53. Berdasarkan baris program ini, maka saat jarak benda yang terdeteksi lebih dari 5 cm maka LED akan padam dan saat jarak benda yang terdeteksi kurang dari 5 cm maka LED akan menyala (ON).
Demikian sedikit studi kasus bagaimana membuat sistem pendeteksi jarak dengan sensor HCSR04 dan Arduino Uno, semoga dapat bermanfaat bagi yang sudah mampir ke sini 😊. Jika ada pertanyaan silahkan disampaikan lewat kolom komentar. Terima kasih