P. 1
Dt Sense Usirr (ultrasonic and infrared ranger)

Dt Sense Usirr (ultrasonic and infrared ranger)

|Views: 1,567|Likes:
Dipublikasikan oleh goleklayangan
Dt Sense Usirr (ultrasonic and infrared ranger)
merupakan modul sensor pengukur jarak dengan media gelombang ultrasonic dan dapat dihubungkan dengan maksimum 2 buah infrared ranger (Sharp GP2D12). Modul ini dapat dengan mudah dihubungkan ke berbagai sistem berbasis mikrokontroler dan hanya membutuhkan 1 pin I/O saja. Modul ini dapat digunakan dalam aplikasi pengukur jarak, pintu otomatis, sekuriti, robot cerdas, dan lain-lain.
Dt Sense Usirr (ultrasonic and infrared ranger)
merupakan modul sensor pengukur jarak dengan media gelombang ultrasonic dan dapat dihubungkan dengan maksimum 2 buah infrared ranger (Sharp GP2D12). Modul ini dapat dengan mudah dihubungkan ke berbagai sistem berbasis mikrokontroler dan hanya membutuhkan 1 pin I/O saja. Modul ini dapat digunakan dalam aplikasi pengukur jarak, pintu otomatis, sekuriti, robot cerdas, dan lain-lain.

More info:

Published by: goleklayangan on Jul 12, 2009
Hak Cipta:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

07/14/2013

pdf

text

original

DT-SENSE USIRR (ultrasonic and infrared ranger) Avr atmega8535 Code vision avr

DT-SENSE UltraSonic and InfraRed Ranger merupakan modul sensor pengukur jarak dengan media gelombang ultrasonic dan dapat dihubungkan dengan maksimum 2 buah infrared ranger (Sharp GP2D12). Modul ini dapat dengan mudah dihubungkan ke berbagai sistem berbasis mikrokontroler dan hanya membutuhkan 1 pin I/O saja. Modul ini dapat digunakan dalam aplikasi pengukur jarak, pintu otomatis, sekuriti, robot cerdas, dan lain-lain.

Dimensi : 2,6 cm (p) x 4,1 cm (l) x 6,2 cm (t) Spesifikasi: : -. Memiliki 2 jenis antarmuka yang dapat aktif bersamaan, yaitu I2C-bus (fSCL maks. 65 kHz) dan pulse width (10µs/mm). -. 8 modul dapat digunakan bersama dalam satu sistem I2C-bus yang hanya membutuhkan 2 pin I/O mikrokontroler saja. -. Membutuhkan catu daya tunggal +5 VDC, dengan konsumsi arus 17 mA typ. (tanpa sensor infrared ranger). -. Terdapat 2 mode operasi yaitu full operation dan reduced operation. Pada mode reduced operation beberapa komponen ultrasonic ranger akan dimatikan (saat idle) dan konsumsi arus mejadi 13 mA typ. -. Terdiri dari sebuah ultrasonic ranger dengan spesifikasi: · Mengukur jarak dari 2 cm hingga 3 m tanpa dead zone atau blank spot. · Obyek dalam jarak 0 - 2 cm dideteksi sebagai 2 cm. · Menggunakan burst sinyal kotak 16 Vp-p dengan frekuensi 40 kHz. -. Dapat dihubungkan dengan maksimum 2 buah infrared ranger Sharp GP2D12 yang memiliki jangkauan pengukuran 10 - 80 cm. -. Data keluaran sudah siap pakai dalam satuan mm (untuk antarmuka I2C) sehingga mengurangi beban mikrokontroler. -. Ketelitian pengukuran jarak (ranger) adalah 5mm. -. Siklus pengukuran yang cepat, pembacaan dapat dilakukan tiap 25 ms (40 Hz rate). -. Memerlukan input trigger berupa pulsa negatif TTL (20µs min.) untuk antarmuka pulse width. -. Tersedia 1 pin output yang menunjukkan aktifitas sensor, dapat tidak dimanfaatkan. -. Tidak diperlukan waktu tunda sebelum melakukan pengukuran berikutnya. -. Kompensasi kesalahan dapat diatur secara manual untuk mengurangi pengaruh faktor perubahan suhu lingkungan dan faktor reflektifitas obyek.

Pengujian sensor usirr, bertujuan untuk mengetahui besar range yang dapat dijangkau oleh sensor ini, sensor ini tidak menyebar jadi, sensor ini fokus lurus ke objek, tidak seperti pada sensor SRF04 atau sensor infrared GP2D12, kedua sensor tersebut menyebar sekitar 400 (drajat). Untuk mengetahui besar range digunakan simulasi 2 buah motor servo pada sebuah robot, apabila diberi suatu halangan dan halangan tersebut digeser ke kiri atau ke kanan akan diketahui bahwa halangan tersebut masih terdeteksi oleh sensor atau tidak, hal tersebut bisa diketahui dari

gerak robot, jika tidak terdeteksi maka robot akan maju dan jika ada halangan maka robot akan berhenti. Berikut merupakan potongan untuk mengetahui besar range sensor USIRR.
////////////////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////////////// #include <mega8535.h> #include <delay.h> // Declare your global variables here unsigned int counter,US;

#define sinyal #define masuk #define atur #define kiri #define kanan cek() { atur = 1;

PORTA.2 PINA.2 DDRA.2 PORTA.0 PORTA.1

// set SIG pin as output

sinyal = 0; // delay_us(50); // send start pulse sinyal = 1; // atur = 0; // set SIG pin as input

counter=0; while ((masuk==1)&&counter<40000) { counter++; } US=0; while ((masuk!=1) && US<40000) { delay_us(1); US++; } } void maju() { int i; for(i=1;i<50;i++) { kanan=1; delay_us(850); kanan=0; delay_us(18000); kiri=1 ; delay_us(2000); kiri=0 ; delay_us(22000); } }

void mundur() { int i; for(i=1;i<50;i++) { kanan=1; delay_us(2000); kanan=0; delay_us(18000); kiri=1 ; delay_us(850); kiri=0 ; delay_us(22000); } }

void main(void) { // Declare your local variables here

// Input/Output Ports initialization // Port A initialization // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out // State7=1 State6=1 State5=1 State4=1 State3=1 State2=1 State1=1 State0=1 PORTA=0xFF; DDRA=0xFF; // Port B initialization // Func7=In Func6=In // State7=T State6=T PORTB=0x0c; DDRB=0x04; // Port C initialization // Func7=In Func6=In // State7=T State6=T PORTC=0x00; DDRC=0x00;

Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In State5=T State4=T State3=T State2=T State1=T State0=T

Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In State5=T State4=T State3=T State2=T State1=T State0=T

// Port D initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTD=0xFF; DDRD=0x00; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh // OC0 output: Disconnected TCCR0=0x00; TCNT0=0x00; OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer 1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off // INT2: Off MCUCR=0x00; MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; delay_us(100); while (1) { cek(); if (US>=1000) maju(); else mundur(); }; } /////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////

Kesimpulan dari percobaan ini dapat diketahui bahwa range dari sensor USIRR seperti terlihat pada gambar berikut.

Berbeda dengan sensor infrared sharp GP2D12, Sensor ini memiliki sudut elevasi hingga 40 drajat dan jarak maksimum yang dapat dijangkau adalah 80cm tegak lurus dari sensor. berikut gambar range dari sensor infrared

You're Reading a Free Preview

Mengunduh
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->