Sensor Ultrasonic Ping Parallax

SAHUURR...SAHUURR..SAHURR...!!!
Sambil nunggu sahur mendingan ngeposting tentang sensor ping)))...

Sensor ultrasonic adalah sebuah sensor yang memanfaatkan pancaran gelombang ultrasonic. Sensor ultrasonic ini terdiri dari rangkaian pemancar ultrasonic yang disebut transmitter dan rangkaian penerima ultrasonic disebut receiver.  

Sensor  ini dapat mengukur jarak antara 2 cm sampai 300 cm. keluaran dari sensor ini berupa pulsa yang lebarnya merepresentasikan jarak. Lebar pulsanya bervariasi dari 115 uS sampai 18,5 mS. Sensor ultrasonic ping parallax terdiri dari sebuah chip pembangkit sinyal 40KHz, sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon ultrasonik berfungsi untuk mendeteksi pantulan suaranya.


Berikut adalah cara kerja sensor ultrasonic ping parallax.
  1. Pin yang digunakan sebagai jalur data sensor dijadikan output. 
  2. Mikrokontroler memberikan pulsa trigger (pulsa high dengan tOUT selama 2 µs sampai 5 µs). 
  3. Kemudian setelah memberikan trigger, pin tersebut dijadikan input. 
  4. Sensor memancarkan gelombang ultrasonic sebesar 40KHz selama 200 µs (tBURST). 
  5. Gelombang ultrasonic ini akan merambat diudara dengan kecepatan 344.424 m/detik atau 1 cm setiap 29.034 µs. 
  6. Gelombang tersebut akan mengenai objek kemudian terpantul kembali ke sensor.
  7. Selama menunggu pantulan, sensor akan menghasilkan sebuah pulsa (high) 
  8. Pulsa ini akan berhenti (low) ketika gelombang suara pantulan terdeteksi oleh sensor. 
  9. Lebar pulsa tersebutlah yang yang dipresentasikan sebagai jarak antara sensor ping dengan objek.
  10. Lebar pulsa high (tIN) akan sesuai dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur dengan obyek yang kemudian dapat merepresentasikan jarak antara sensor ping dengan objek.
  11. Sinyal yang diterima oleh rangkaian receiver dikirimkan ke rangkaian mikrokontroler untuk selanjutnya diolah untuk menghitung jarak terhadap benda.
  12. Benda di sini adalah benda yang bersifat memantul, bukan benda yang bersifat meredam sinyal.


   Untuk menghitung jarak yang terukur dari waktu terima sensor dapat menggunakan persamaan berikut ini.

Di mana:
V          = adalah kecepatan suara 344 m/s
t           = adalah waktu tempuh (s)
s           = adalah jarak (m)

 Contoh perhitungan jika diketahui kecepatan suara 344,424m/s, kemudian waktu tempuhnya adalah 115uS (tIN min sensor ping parallax) dan 18,5mS (tIN max sensor ping parallax), berapa jarak yang terukur ?


Untuk program (Arduino) pembacaan sensor ping parallax dari awal memberikan trigger pulsa high sampai didapatkan nilai jarak dari pembacaan sensor dapat dilihat dibawah ini.

void setup() {
  //inisialisasi komunikasi serial
  Serial.begin(9600);
}

void sensor_ping(const int pingPin)
{
  //inisialisasi variabel
  float duration, cm;

  //pin arduino dijadikan output
  pinMode(pingPin, OUTPUT);

  //berikan pulsa low sebelumnya
  //untuk memastikan pulsa high nanti, selama 2us
  digitalWrite(pingPin, LOW);
  delayMicroseconds(2);

  //memberikan trigger pulsa high selama 2-5 us
  digitalWrite(pingPin, HIGH);
  delayMicroseconds(5);
  digitalWrite(pingPin, LOW);

  //pin arduino dijadikan input
  pinMode(pingPin, INPUT);

  //membaca nilai sinyal yang diberikan oleh sensor ping (pulsa high)
  //sampai sinyal tersebut berhenti (pulsa low)
  //durasi pulsa high tersebutlah waktu(uS) pemancaran gelombang  
  //ultrasonik dari awal
  //sampai ping mendeteksigelombang tersebut lagi
  //membaca pulsa mengunakan fungsi pulseIn pada software arduino
  duration = pulseIn(pingPin, HIGH);

  //mengkonversi waktu tempuh ke jarak
  //kecepatan suara 344 m/s atau 29 us/cm
  //jarak perjalanan gelombang ultrasonic adalah dari memancarkan
  //sampai terpantul benda kemudian diterima kembali oleh sensor
  //kemudian di bagi 2 untuk mendapatkan jarak benda
  cm = duration / 29 / 2;

  //menampilkan data pembacaan sensor
  Serial.print(duration);
  Serial.print(" uS | ");
  Serial.print(cm);
  Serial.print(" cm");
  Serial.println();
  delay(200);
}

void loop()
{
  //pemangilan fungsi sensor ping
  sensor_ping(7);
}
 
Previous
Next Post »

5 comments

Click here for comments
Unknown
admin
February 23, 2013 at 1:35 AM ×

menampilkan di visual basic bagaimana?

Reply
avatar
Anonymous
admin
May 19, 2013 at 7:58 AM ×

Buat source nya terlebih dahulu,
agar lebih mudah di proses oleh jenis2 komputer pakai vb6 saja, walaupun vb.net jg bs,
konsep bagaimana cara membuat nya adalah konsep hyperterminal yang ada di windows..
salam, tq.

Reply
avatar
Unknown
admin
August 21, 2013 at 4:28 PM ×

mas ini mau tanya ne... dengan source yang sama seperti di atas, Tapi kenapa ya sensor PING saya pembacaan jarak maksimal nya hanya 1 meter. kenapa bisa begitu ya ? tolong pencerahan nya ?

Reply
avatar
Anonymous
admin
January 7, 2015 at 9:16 AM ×

Allohu Allohu

Reply
avatar
Thanks for your comment