Cara Mudah Program Sensor Ultrasonic Dengan Arduino TANPA LIBRARY
Kebanyakan tutorial pemograman ultrasonic, menggunakan library untuk mempermudah pemrogramannya. Tapi yang ingin saya share kali ini, kita akan membuat program dari awal, sehingga kita tau 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.
So, cara kerja sensor ini adalah Trigger mengirimkan suara ultrasonic kedepan, dan jika didepan ada benda, suara tersebut akan memantul dan diterima oleh Echo. Nah dari pantulan suara (pulsa) ini, kita dapat mengetahui berapa jarak benda yang ada didepan sensor. Yah, gak jauh beda dari kelelawar lah ya, hehe
Ada banyak jenis-jenis sensor ultrasonic, dan yang akan saya gunakan adalah HC-SR04. Kenapa? Karena murah, hehe
Ok! Sebelumnya siapkan terlebih dahulu komponen yang dibutuhkan, yaitu:
Kemudian rangkailah seperti penampakan dibawah ini…
Catatan:
- Pasang pin VCC HC-SR04 ke pin 5V Arduino
- Pasang pin Trig HC-SR04 ke pin 11 Arduino
- Pasang pin Echo HC-SR04 ke pin 12 Arduino
- Pasang pin GND HC-SR04 ke pin GND Arduino
Jika sudah, sekarang silahkan salin atau ketik ulang sketch program dibawah ini…
// Deklarasi pin untuk ultrasonic sensor
const byte trigPin = 11; // Pin output untuk trigger
const byte echoPin = 12; // Pin input untuk echo
// Variabel untuk menyimpan hasil pengukuran
long duration; // Durasi dari pulsa ultrasonic
int distance; // Jarak dalam centimeter
void setup() {
// Mengatur mode pin
pinMode(trigPin, OUTPUT); // Pin trigger sebagai output
pinMode(echoPin, INPUT); // Pin echo sebagai input
// Inisialisasi komunikasi serial
Serial.begin(9600); // Kecepatan 9600 baud
}
void loop() {
// Mengirimkan sinyal ultrasonic untuk mengukur jarak
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Menghitung durasi pulsa ultrasonic yang diterima
duration = pulseIn(echoPin, HIGH);
// Menghitung jarak berdasarkan durasi
distance = duration * 0.034 / 2; // Rumus: jarak = (durasi * kecepatan suara) / 2
// Menampilkan jarak di Serial Monitor
Serial.println(distance);
// Delay sebelum melakukan pengukuran berikutnya
delay(1000); // Delay 1 detik
}
Kalau sudah Done Uploading, kamu bisa buka Serial Monitor untuk melihat nilai jarak dari sensornya, coba untuk mendekatkan dan menjauhkan tangan dari sensor, dan lihat angkanya.
KALO MAU LEBIH KREATIF, COBAIN INI!!!
- Kamu tambahkan rangkaian 3 LED.
- Lalu buat program, jika jarak < 10 led 1 menyala, jika jarak < 20 led menyala, jika jarak <30 led 3 menyala, jika tidak semua led mati.
Cara membuat program led menyala sesuai jarak gimana om???
kalau dinamo gmn bang?
Misalnya gini, dengan 1 sensor ultrasonic/cahaya bisa menyalakan 3 dinamo. Tapi, ada jeda waktunya. Dalam waktu 1 detik dinamo pertama menyala lalu mati, lalu 3 detik selanjutnya dinamo kedua menyala lalu mati, lalu 5 detik selanjutnya dinamo ketiga menyala lalu mati.
Bisa enggak? Tutorialnya dong bang
Mas kalo untuk sensor smart tv jarak aman mennton tv gmna mas alat dan program nya?
jarak aman, ada warning gitu ya?
kasih sensor jarak aja, terus batasi kalo jarak amannya terlampaui tv mati misalkan.
Em. Kondisi nya kalo kita mnnton tv kalo jarak si penonton 3 cm maka tv tersebut akan mati, kalo kita mnnton jarak 10 cm tv tidak mati. Itu kn pake ultrasonic juga kan ya sama arduino juga?
Program nya kira2 gmna master?
Pada tanggal Min, 29 Apr 2018 13.21, Disqus menulis:
ya betul gan, dari program example agan tinggal tambhakn relay, relay ini fungsinya sama dengan saklar untuk mematikan dan menyalakan tv, nanti programnya tinggal tambahkan if dan else saja sudah cukup ko…
Bang gimana sourcecode ny kalau jarak lebih dari 5 cm relay nya hidup dan kalau jarak dibawah 5 cm relay mati
Tolong dishare disini ya bang