+ All Categories
Home > Documents > Robot Autonomous Avoider Ultrasonic Bolabot

Robot Autonomous Avoider Ultrasonic Bolabot

Date post: 13-Dec-2014
Category:
Upload: mada-sanjaya-ws
View: 34 times
Download: 7 times
Share this document with a friend
Description:
this robot use ultrasonic sensor for detecting a wall
11
Mada Sanjaya WS, Ph.D Penerbit Bolabot 2013 MEMBUAT ROBOT AVOIDER ULTRASONIC
Transcript
Page 1: Robot Autonomous Avoider Ultrasonic Bolabot

Mada Sanjaya WS, Ph.D

Penerbit Bolabot

2013 MEMBUAT ROBOT AVOIDER

ULTRASONIC

Page 2: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

ROBOT PENGHINDAR HALANGAN

SENSOR ULTRASONIK

Kelelawar hewan nocturnal, yang

berada dikegelapan, kelelawar dapat terbang bebas tanpa menabrak

penghalang didepannya,, kelelawar dapat menghindari penghalang

didepannya karena kelelawar dapat mengeluarkan gelombang ultrasonic,

yang jika ada penghalang

kembali dan diterima oleh telinga kelelawar yang lebar, sehingga

kelelawar dapat menghindar secara spontan ketika didepannya ada

penghalang.

Gambar 1.

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

ROBOT PENGHINDAR HALANGAN

SENSOR ULTRASONIK

(UltraBOT Avoider)

Kelelawar hewan nocturnal, yang berkeliaran di malam hari...meski

berada dikegelapan, kelelawar dapat terbang bebas tanpa menabrak

penghalang didepannya,, kelelawar dapat menghindari penghalang

didepannya karena kelelawar dapat mengeluarkan gelombang ultrasonic,

yang jika ada penghalang maka gelombang tersebut akan dipantulkan

kembali dan diterima oleh telinga kelelawar yang lebar, sehingga

kelelawar dapat menghindar secara spontan ketika didepannya ada

Gambar 1. Prinsip kerja pengukuran jarak benda

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 2

ROBOT PENGHINDAR HALANGAN

malam hari...meski

berada dikegelapan, kelelawar dapat terbang bebas tanpa menabrak

penghalang didepannya,, kelelawar dapat menghindari penghalang

didepannya karena kelelawar dapat mengeluarkan gelombang ultrasonic,

maka gelombang tersebut akan dipantulkan

kembali dan diterima oleh telinga kelelawar yang lebar, sehingga

kelelawar dapat menghindar secara spontan ketika didepannya ada

Page 3: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Karakteristik Sensor Ultrasonic PING Paralax

Ultrasonik, sebutan untuk jenis suara diatas batas suara yang bisa

didengar manusia. Seperti

mendengar suara dengan frekuensi 20 Hz sampai 20KHz.

hanya beberapa jenis binatang ya

kelelawar dan lumba-

ultrasonik untuk mengindera benda

mengirimkan sebuah suara dan mengitung lamanya pantulan suara

tersebut maka dapat diketahui jarak kapal

tersebut. Mula-mula suara dibunyikan, kemudian dihitung lama waktu

sampai terdengar suara pantulan. Jarak dapat dihitung dengan

mengalikan kecepatan suara dengan waktu

dibagi 2. Misalnya lama waktu pantulan ada

adalah (344,424m/detik x 1 detik)/2 = 172m.

Ping))) Ultrasonic Range Finder, adalah modul pengukur jarak dengan

ultrasonic buatan Paralax

robotika. Dengan ukurannya yang cukup kecil (2,1

seharga 350 ribu rupiah ini dapat mengukur jarak antara 3 cm sampai

300 cm. Keluaran dari Ping))) berupa pulsa yang lebarnya

merepresentasikan jarak. Lebar pulsanya

18,5 mS.

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Ultrasonic PING Paralax

Ultrasonik, sebutan untuk jenis suara diatas batas suara yang bisa

didengar manusia. Seperti diketahui, telinga manusia hanya bisa

mendengar suara dengan frekuensi 20 Hz sampai 20KHz. Lebih dari itu

hanya beberapa jenis binatang yang mampu mendengarnya, seperti

-lumba. Lumba-lumba bahkan memanfaatkan

ultrasonik untuk mengindera benda-benda di laut. Dengan cara

sebuah suara dan mengitung lamanya pantulan suara

tersebut maka dapat diketahui jarak kapal selam dengan benda

mula suara dibunyikan, kemudian dihitung lama waktu

terdengar suara pantulan. Jarak dapat dihitung dengan

mengalikan kecepatan suara dengan waktu pantulan. Kemudian hasilnya

dibagi 2. Misalnya lama waktu pantulan adalah 1 detik, maka

adalah (344,424m/detik x 1 detik)/2 = 172m.

Ping))) Ultrasonic Range Finder, adalah modul pengukur jarak dengan

ultrasonic buatan Paralax Inc. yang didesain khusus untuk teknologi

robotika. Dengan ukurannya yang cukup kecil (2,1cm x 4,5cm), sensor

0 ribu rupiah ini dapat mengukur jarak antara 3 cm sampai

Keluaran dari Ping))) berupa pulsa yang lebarnya

merepresentasikan jarak. Lebar pulsanya bervariasi dari 115 uS sampai

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 3

Ultrasonik, sebutan untuk jenis suara diatas batas suara yang bisa

diketahui, telinga manusia hanya bisa

Lebih dari itu

ng mampu mendengarnya, seperti

lumba bahkan memanfaatkan

laut. Dengan cara

sebuah suara dan mengitung lamanya pantulan suara

elam dengan benda

mula suara dibunyikan, kemudian dihitung lama waktu

terdengar suara pantulan. Jarak dapat dihitung dengan

pantulan. Kemudian hasilnya

lah 1 detik, maka jaraknya

Ping))) Ultrasonic Range Finder, adalah modul pengukur jarak dengan

Inc. yang didesain khusus untuk teknologi

4,5cm), sensor

0 ribu rupiah ini dapat mengukur jarak antara 3 cm sampai

Keluaran dari Ping))) berupa pulsa yang lebarnya

bervariasi dari 115 uS sampai

Page 4: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Gambar 2.

Pada dasanya, Ping))) terdiri dari sebuah chip pembangkit sinyal 40KHz,

sebuah speaker ultrasonik dan sebuah mikropon ultrasonik. Speaker

ultrasonik mengubah sinyal 40 KHz menjadi

ultrasonik berfungsi untuk mendeteksi pantulan suaranya. Pada modul

Ping))) terdapat 3 pin yang digunakan untuk jalur power supply (+5V),

ground dan signal. Pin signal

mikrokontroler tanpa tambahan komponen apapun.

Ping))) mendeteksi objek dengan cara mengirimkan suara ultrasonik dan

kemudian “mendengarkan” pantulan suara tersebut. Ping))) hanya akan

mengirimkan suara ultrasonik ketika ada pulsa trigger dari

mikrokontroler (Pulsa high selama 5uS). Suara ultrasonik dengan

frekuensi sebesar 40KHz akan dipancarkan selama 200uS. Suara ini

akan merambat di udara dengan kecepatan 344.424m/detik (atau 1cm

setiap 29.034uS), mengenai objek untuk kemudian terpantul kembali ke

Ping))). Selama menunggu pantulan, Ping))) akan menghasilkan sebuah

pulsa. Pulsa ini akan berhenti (low) ketika suara pantulan terdeteksi

oleh Ping))). Oleh karena itulah lebar pulsa tersebut dapat

merepresentasikan jarak antara Ping))) dengan objek.

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Gambar 2. Sensor ultrasonic PING))) Paralax

Pada dasanya, Ping))) terdiri dari sebuah chip pembangkit sinyal 40KHz,

ultrasonik dan sebuah mikropon ultrasonik. Speaker

ultrasonik mengubah sinyal 40 KHz menjadi suara sementara mikropon

ngsi untuk mendeteksi pantulan suaranya. Pada modul

Ping))) terdapat 3 pin yang digunakan untuk jalur power supply (+5V),

ground dan signal. Pin signal dapat langsung dihubungkan dengan

mikrokontroler tanpa tambahan komponen apapun.

ek dengan cara mengirimkan suara ultrasonik dan

kemudian “mendengarkan” pantulan suara tersebut. Ping))) hanya akan

mengirimkan suara ultrasonik ketika ada pulsa trigger dari

mikrokontroler (Pulsa high selama 5uS). Suara ultrasonik dengan

40KHz akan dipancarkan selama 200uS. Suara ini

akan merambat di udara dengan kecepatan 344.424m/detik (atau 1cm

setiap 29.034uS), mengenai objek untuk kemudian terpantul kembali ke

Ping))). Selama menunggu pantulan, Ping))) akan menghasilkan sebuah

Pulsa ini akan berhenti (low) ketika suara pantulan terdeteksi

oleh Ping))). Oleh karena itulah lebar pulsa tersebut dapat

merepresentasikan jarak antara Ping))) dengan objek.

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 4

Pada dasanya, Ping))) terdiri dari sebuah chip pembangkit sinyal 40KHz,

ultrasonik dan sebuah mikropon ultrasonik. Speaker

suara sementara mikropon

ngsi untuk mendeteksi pantulan suaranya. Pada modul

Ping))) terdapat 3 pin yang digunakan untuk jalur power supply (+5V),

dapat langsung dihubungkan dengan

ek dengan cara mengirimkan suara ultrasonik dan

kemudian “mendengarkan” pantulan suara tersebut. Ping))) hanya akan

mengirimkan suara ultrasonik ketika ada pulsa trigger dari

mikrokontroler (Pulsa high selama 5uS). Suara ultrasonik dengan

40KHz akan dipancarkan selama 200uS. Suara ini

akan merambat di udara dengan kecepatan 344.424m/detik (atau 1cm

setiap 29.034uS), mengenai objek untuk kemudian terpantul kembali ke

Ping))). Selama menunggu pantulan, Ping))) akan menghasilkan sebuah

Pulsa ini akan berhenti (low) ketika suara pantulan terdeteksi

oleh Ping))). Oleh karena itulah lebar pulsa tersebut dapat

Page 5: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Berdasarkan Datasheet

Berdasarkan Perhitungan Kalibrasi

Satu hal yang perlu diperhatikan adalah bahwa Ping))) tidak dapat

mengukur objek yang permukaannya dapat menyerap suara, seperti busa

atau sound damper lainnya. Pengukuran jarak

permukaan objek bergerigi dengan sudut tajam.

Jarak = (Lebar Pulsa/29.034uS)/2

Jarak = (Lebar Pulsa x 0.034442)/2

Karena 1/29.034 = 0.34442

Jarak =

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

atasheet

Berdasarkan Perhitungan Kalibrasi Bolabot Institute

Satu hal yang perlu diperhatikan adalah bahwa Ping))) tidak dapat

permukaannya dapat menyerap suara, seperti busa

atau sound damper lainnya. Pengukuran jarak juga akan kacau jika

permukaan objek bergerigi dengan sudut tajam.

Jarak = (Lebar Pulsa/29.034uS)/2 (dalam cm)

(Lebar Pulsa x 0.034442)/2 (dalam cm)

Karena 1/29.034 = 0.34442

Jarak = Lebar Pulsa * 0.021(dalam cm)

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 5

Satu hal yang perlu diperhatikan adalah bahwa Ping))) tidak dapat

permukaannya dapat menyerap suara, seperti busa

juga akan kacau jika

(dalam cm)

(dalam cm)

Page 6: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Desain Robot Avoider Ultrasonic

Gambar 3.

Program CV AVR Robot Avoider Ultrasonic

/*****************************************************

This program was produced by the

CodeWizardAVR V2.05.0 Professional

Automatic Program Generator

© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.

http://www.hpinfotech.com

Project : Robot Avoider Ultrasonic

Version : I

Date : 2/18/2013

Author : Mada Sanjaya WS, Ph.D

Company : Bolabot Techno Robotic Institute

Comments: -

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Avoider Ultrasonic

Gambar 3. Desain robot avoider ultrasonic

Robot Avoider Ultrasonic

/*****************************************************

This program was produced by the

CodeWizardAVR V2.05.0 Professional

2010 Pavel Haiduc, HP InfoTech s.r.l.

Project : Robot Avoider Ultrasonic

Author : Mada Sanjaya WS, Ph.D

Company : Bolabot Techno Robotic Institute

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 6

Page 7: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Chip type : ATmega8

Program type : Application

AVR Core Clock frequency: 12.000000 MHz

Memory model : Small

External RAM size : 0

Data Stack size : 256

*****************************************************/

#include <mega8.h>

#include <delay.h>

#include <stdio.h>

#include <stdlib.h>

unsigned int hitung;

float dutu;

void RF1(void)

{

unsigned int i=0;

hitung=0;

DDRC.5=1;

PORTC.5=1;

delay_us(5);

PORTC.5=0;

DDRC.5=0;

PORTC.5=1;

while(PINC.5==0){i++; if(i>=10000) break;}

while(PINC.5==1){hitung++; if(hi

PORTC.5=0;

delay_ms(10);

}

interrupt [TIM0_OVF] void timer0_ovf_isr(void)

{

}

// Declare your global variables here

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Program type : Application

frequency: 12.000000 MHz

*****************************************************/

while(PINC.5==0){i++; if(i>=10000) break;}

while(PINC.5==1){hitung++; if(hitung>=10000) break;}

interrupt [TIM0_OVF] void timer0_ovf_isr(void)

// Declare your global variables here

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 7

Page 8: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

void main(void)

{

// Declare your local variables here

// Input/Output Ports initialization

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=Out Func1=Out Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=0 State1=0 State0=T

PORTB=0x00;

DDRB=0x06;

// Port C initialization

// Func6=In Func5=In Func4=In Func3=

// State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTC=0x00;

DDRC=0x00;

// 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=0x00;

DDRD=0x00;

// Timer/Counter 0 initialization

// Clock source: System Clock

// Clock value: Timer 0 Stopped

TCCR0=0x00;

TCNT0=0x00;

// Timer/Counter 1 initialization

// Clock source: System Clock

// Clock value: 11.719 kHz

// Mode: Fast PWM top=0x00FF

// OC1A output: Non-Inv.

// OC1B output: Non-Inv.

// Noise Canceler: Off

// Input Capture on Falling Edge

// Timer1 Overflow Interrupt: Off

// Input Capture Interrupt: Off

// Compare A Match Interrupt: Off

// Compare B Match Interrupt: Off

TCCR1A=0xA1;

TCCR1B=0x0D;

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

// Declare your local variables here

// Input/Output Ports initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=Out Func1=Out Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=0 State1=0 State0=T

// Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State6=T State5=T State4=T State3=T State2=T State1=T State0=T

// 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

// Mode: Fast PWM top=0x00FF

// Timer1 Overflow Interrupt: Off

// Compare A Match Interrupt: Off

// Compare B Match Interrupt: Off

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 8

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=Out Func1=Out Func0=In

// 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

Page 9: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

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: Timer2 Stopped

// Mode: Normal top=0xFF

// OC2 output: Disconnected

ASSR=0x00;

TCCR2=0x00;

TCNT2=0x00;

OCR2=0x00;

// External Interrupt(s) initialization

// INT0: Off

// INT1: Off

MCUCR=0x00;

// Timer(s)/Counter(s) Interrupt(s) init

TIMSK=0x00;

// USART initialization

// USART disabled

UCSRB=0x00;

// Analog Comparator initialization

// Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off

ACSR=0x80;

SFIOR=0x00;

// ADC initialization

// ADC disabled

ADCSRA=0x00;

// SPI initialization

// SPI disabled

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

// External Interrupt(s) initialization

// Timer(s)/Counter(s) Interrupt(s) initialization

// Analog Comparator initialization

// Analog Comparator Input Capture by Timer/Counter 1: Off

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 9

Page 10: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

SPCR=0x00;

// TWI initialization

// TWI disabled

TWCR=0x00;

DDRD.5=1; // definisi output ke motor kiri

DDRD.6=1; // definisi output ke motor kiri

DDRD.7=1; // definisi output ke motor kanan

DDRB.0=1; // definisi output ke motor kanan

PORTD.5=1;

PORTD.6=1;

PORTD.7=1;

PORTB.0=1;

while (1)

{

RF1();

dutu = hitung*0.021; // rumus jarak berdasarkan kalibrasi sensor

if (dutu<=20) //jika jarak terhadap penghalang kurang dari sama dengan 20 cm

{

OCR1A=100;

OCR1B=100;

PORTD.5=0;

PORTD.6=1;

PORTD.7=0;

PORTB.0=0;

delay_ms(1000);

OCR1A=100;

OCR1B=100;

PORTD.5=1;

PORTD.6=0;

PORTD.7=1;

PORTB.0=0;}

else{

OCR1A=100;

OCR1B=100;

PORTD.5=1;

PORTD.6=0;

PORTD.7=1;

PORTB.0=0;}

}

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

// definisi output ke motor kiri

// definisi output ke motor kiri

// definisi output ke motor kanan

// definisi output ke motor kanan

dutu = hitung*0.021; // rumus jarak berdasarkan kalibrasi sensor

//jika jarak terhadap penghalang kurang dari sama dengan 20 cm

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 10

//jika jarak terhadap penghalang kurang dari sama dengan 20 cm

Page 11: Robot Autonomous Avoider Ultrasonic Bolabot

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

}

Realisasi Robot Avoider

(a)

Gambar 4.

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E

Copyright 2013 © Mada Sanjaya WS, Ph.D (Profesor Bolabot)

Realisasi Robot Avoider Ultrasonic

(b)

(c)

Gambar 4. Realisasi robot avoider sensor ultrasonic

B O L A B O T T E C H N O R O B O T I C I N S T I T U T E | 11


Recommended