Kamis, 07 November 2013

Arduino - Baca Sensor Ultrasonic



Sensor ultrasonik buatan Parallax (Sensor PING ) dapat digunakan  untuk mengukur jarak sejauh 2 cm sampai 300 cm.
Karakteristik dari sensor ultrasonic “PING” adalah:
  • Tegangan supply : 5 VDC
  • Konsumsi arus : 30 mA (maksimum 35 mA)
  • Jarak : 2 cm sampai dengan 300 cm
  • Input Trigger : pulsa TTL positif, minimal 2 uS, 5 uS typical.
  • Echo pulse : pulsa TTL positif, 115 uS sampai dengan 18.5 ms
  • Echo Hold-off  : 750 uS
  • Frekuensi Burst : 40 kHz untuk 200 uS
  • Delay untuk pengukuran selanjutnya : minimal 200 uS

Cara Kerja Sensor PING

  • Sensor Ping mendeteksi jarak obyek dengan cara memancarkan gelombang ultrasonik (40 kHz) selama tBURST (200 µs) kemudian mendeteksi pantulannya.
  • Sensor Ping memancarkan gelombang ultrasonik sesuai dengan kontrol dari mikrokontroler pengendali (pulsa trigger dengan tOUT min. 2 µs). Gelombang ultrasonik ini melalui udara dengan kecepatan 340 meter per detik, mengenai obyek dan memantul kembali ke sensor.
  • Ping mengeluarkan pulsa output high pada pin SIG setelah memancarkan gelombang ultrasonik dan setelah gelombang pantulan terdeteksi Ping akan membuat output low pada pin SIG.
  • Lebar pulsa High (tIN) akan sesuai dengan lama waktu tempuh gelombang ultrasonik untuk 2x jarak ukur dengan obyek.


Program Arduino:

int signal=8;
int distance;
unsigned long pulseduration=0;
void setup()
{
 pinMode(signal, OUTPUT);
 Serial.begin(9600);
}
void measureDistance()
{
 // set pin as output so we can send a pulse
 pinMode(signal, OUTPUT);
// set output to LOW
 digitalWrite(signal, LOW);
 delayMicroseconds(5);

 // now send the 5uS pulse out to activate Ping)))
 digitalWrite(signal, HIGH);
 delayMicroseconds(5);
 digitalWrite(signal, LOW);

 // now we need to change the digital pin
 // to input to read the incoming pulse
 pinMode(signal, INPUT);

 // finally, measure the length of the incoming pulse
 pulseduration=pulseIn(signal, HIGH);
}
void loop()
{
 // get the raw measurement data from Ping)))
 measureDistance();

 // divide the pulse length by half
 pulseduration=pulseduration/2;

 // now convert to centimetres. We're metric here people...
 distance = int(pulseduration/29);

 // Display on serial monitor
 Serial.print("Distance - ");
 Serial.print(distance);
 Serial.println(" cm");
 delay(500);
}


Tersedia Kit Arduino Severino :Rp. 150.000,-
Spesifikasi: 
Arduino severino dengan ATMEGA8
Kabel Serial (untuk Upload program dan komunikasi dengan komputer)

Tidak ada komentar:

Posting Komentar