The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

Robotika Teori dan Aplikasi (Wisnu Jatmiko, Petrus Mursanto, M Iqbal Tawakal etc.) (z-lib.org)

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by Perpustakaan SMK Telkom Banjarbaru, 2022-04-01 00:00:13

Robotika Teori dan Aplikasi (Wisnu Jatmiko, Petrus Mursanto, M Iqbal Tawakal etc.)

Robotika Teori dan Aplikasi (Wisnu Jatmiko, Petrus Mursanto, M Iqbal Tawakal etc.) (z-lib.org)

2|BAB

2. BAB 2| Penerapan Robot Beroda

Pada bab ini kami membahas salah satu aplikasi robot yang digunakan
untuk membantu manusia dalam hal mengurangi dampak buruk yang
diakibatkan oleh bencana alam. Jenis robot yang akan dibahas adalah
robot beroda. Robot ini digunakan untuk memulihkan jaringan
telekomunikasi yang lumpuh di daerah bencana sehingga bantuan
dapat dialirkan dengan lancar dan tepat sasaran.

Untuk memudahkan para pembaca dalam memahami penerapan
robot beroda bagi pemulihan jaringan komunikasi pasca bencana
alam, kami akan memulai pembahasan mengenai latar belakang dan
kegunaan dari robot tersebut. Kemudian, dilakukan pembahasan
mengenai algoritma pergerakan yang digunakan pada robot beroda
untuk membentuk jaringan komunikasi. Algoritma tersebut akan
diimplementasikan dalam bentuk simulasi 3D menggunakan library
Open Dynamic Engine (ODE). Kemudian pembahasan dilanjutkan
dengan proses implementasi algoritma pergerakan tersebut pada
robot beroda riil, robot tersebut diberi nama robot Al-Fath. Dalam
sebuah jaringan komunikasi, diperlukan routing yang efisien dalam
mengirimkan pesan, hal tersebut akan menjadi topik pembahasan
akhir dari bab ini.

2.1 Latar Belakang dan Kegunaan

Bencana merupakan suatu peristiwa buruk yang dapat terjadi tanpa
mengenal ruang dan waktu. Terdapat berbagai bentuk peristiwa yang
dapat dikatakan sebagai suatu bencana seperti gempa bumi, banjir,
maupun gunung meletus. Dampak yang diakibatkan dari bencana ini
pun bermacam-macam antara lain kerusakan bangunan fisik,

51

kerusakan jaringan komunikasi, kerusakan jalur transportasi hingga
timbulnya korban jiwa. Manajemen bencana dapat dilakukan untuk
mengurangi dampak buruk dari bencana alam. Manajemen bencana
merupakan seluruh kegiatan yang meliputi aspek perencanaan dan
penanggulangan bencana, pada sebelum, sesaat dan sesudah terjadi
bencana.

Teknologi informasi dapat membantu proses manajemen bencana,
contohnya peringatan dini (early warning) yang merupakan bagian
dari aspek perencanaan dan penanggulangan bencana pada waktu
sebelum terjadi bencana. Setelah bencana terjadi, maka teknologi
informasi memiliki peran penting agar dunia luar dapat mengakses
lokasi bencana dan dapat memperkirakan seberapa besar dampak
kerusakan maupun korban jiwa di lokasi bencana tersebut. Selain itu,
beberapa hal yang harus diperhatikan pada saat terjadi bencana alam
adalah tetap tersedianya tempat perlindungan/pengungsian yang
layak, air bersih, makanan yang cukup dan berbagai informasi keadaan
sekitar tempat bencana terjadi. Dengan tersedianya informasi yang
cukup maka pihak terkait dapat menentukan tindakan yang tepat dan
meminimalisasi kerugian akibat bencana.

Gambar 2.1. Dampak akibat bencana gempa bumi dan gunung meletus

Bencana alam terkadang merusak beberapa bangunan fisik
komunikasi seperti menara BTS sehingga menimbulkan putusnya
komunikasi antara lokasi bencana dan lokasi di luar bencana.
Minimnya jaringan komunikasi membuat ketidakpastian mengenai
kebutuhan penting bagi korban bencana. Hal tersebut dapat
menghambat penanganan yang tepat, terhadap korban bencana
seperti tertundanya pengiriman bahan bantuan.

52

Gambar 2.2. Contoh menara BTS

Terdapat tiga hal yang menyebabkan kegagalan dalam pengiriman
atau penerimaan informasi di lokasi bencana, yaitu kerusakan fisik
perangkat utama komunikasi, kerusakan perangkat pendukung
komunikasi, dan kepadatan jaringan. Kerusakan bangunan utama fisik
komunikasi berupa rusaknya menara komunikasi, penguat sinyal, dan
lain sebagainya yang membutuhkan waktu yang lama untuk diperbaiki
seperti sediakala. Oleh karena itu, dibutuhkan suatu perangkat
mobilitas yang dapat menggantikan fungsi menara komunikasi dengan
cepat sehingga permasalahan terputusnya jaringan komunikasi dapat
cepat diatasi.

Salah satu solusi yang dapat digunakan untuk mengatasi
permasalahan terputusnya jaringan komunikasi yang diakibatkan
kerusakan infrastruktur telekomunikasi adalah menggunakan robot.
Dengan menggunakan banyak mobile robot yang dilengkapi dengan
BTS portable dan menyebar robot-robot tersebut ke berbagai penjuru
daerah bencana dengan menggunakan algoritma, komunikasi di
daerah bencana dapat dipulihkan. Agar komunikasi dapat pulih
dengan cepat dan efisien, diperlukan suatu algoritma untuk
melakukan penyebaran robot dengan tepat dan efisien. Simulasi
dengan komputer dapat digunakan untuk memeriksa apakah
algoritma yang digunakan dapat berjalan dengan baik atau tidak
dengan biaya yang lebih murah dibandingkan implementasi langsung
di lapangan. Implementasi dengan robot riil juga diperlukan untuk
memastikan bahwa algoritma tersebut benar-benar bisa berjalan
dengan baik jika nantinya digunakan di dunia nyata.

53

2.2 Robot Beroda Al-Fath

Seperti yang sudah dijelaskan pada subbab sebelumnya, mobile robot
dapat digunakan untuk menghubungkan jaringan komunikasi pada
daerah yang terkena bencana. Robot Al-Fath adalah salah satu mobile
robot beroda yang bisa digunakan untuk aplikasi tersebut. Pada bab
ini, spesifikasi detail dan beragam perangkat tambahan yang dipasang
di atas Al-Fath akan dijelaskan. Penggunaan robot Al-Fath pada
simulasi dan implementasi riil akan dijelaskan pada subbab-subbab
berikutnya.

Pada mulanya robot Al-Fath adalah robot yang dikembangkan untuk
kepentingan penelitian pencarian sumber kebocoran gas atau sering
disebut dengan istilah Odor Source Localization (OSL). Perkembangan
selanjutnya pada robot ini telah dilengkapi dengan berbagai macam
sensor dan modul untuk menunjang kepentingan-kepentingan
penelitian di bidang swarm robotic. pada Gambar 2.3 menunjukan
bentuk fisik dari robot Al-Fath dan sensor-sensornya.

Gambar 2.3 Tampilan robot Al-Fath dan sensor-sensornya
2.2.1 Anatomi
Chassis atau badan dari Al-Fath terdiri atas dua bagian, bagian
pertama disebut platform dan bagian kedua disebut layer mekanik.
Platform yang digunakan oleh Al-Fath adalah platform TraxterII yang
dibuat oleh RoboticsConnection. Beberapa keunggulan dari TraxterII

54

adalah bodinya yang kuat dan tahan terhadap guncangan. Selain
platform TraxterII, dua buah layer berbahan acrylic setebal 4mm
digunakan sebagai tempat untuk menopang berbagai perangkat
tambahan robot.
2.2.2 SRF08
SRF08 dipasang di bagian depan dan belakang dari Al-Fath. Sensor ini
digunakan untuk mengecek dan mencegah tabrakan di antara Al-Fath
dengan lingkungannya.

Gambar 2.4 SRF08 dipasang di Al-Fath
2.2.3 CMPS03
CMPS03 Magnetic Compass adalah kompas digital buatan Devantech
Ltd. Kompas digital yang memiliki harga terjangkau ini digunakan
untuk membantu sistem navigasi agar berfungsi dengan baik, efektif,
serta mudah digunakan.

Gambar 2.5 CMPS03 yang dipasang di robot Al-Fath
2.2.4 Controller
Robot Al-Fath memiliki tiga microcontroller. Satu microcontroller
bertugas sebagai pengendali utama yaitu ATMega 2560. Dua
microcontroller lainnya menjadi pengendali sekunder yaitu ATMega8.
55

Microcontroller sekunder digunakan untuk mengontrol motor secara
independen dan melakukan pembacaan pada encoder yang ada di
motor.

2.2.5 TraxterII Brush DC Gearhead Motor (plus Encoder)
Robot Al-Fath menggunakan dua buah motor, satu di kiri dan satu lagi
di kanan, yang digunakan untuk keperluan bergerak. Di dalam motor
sudah terintegrasi encoder yang digunakan untuk mengukur
perpindahan robot. Perpindahan robot ini bisa digunakan untuk teknik
lokalisasi dengan nama dead reckoning. Teknik dead reckoning akan
dijelaskan lebih lanjut di bab implementasi.

Gambar 2.6 Motor pada robot Al-Fath

2.3 Simulasi Pembentukan Jaringan Komunikasi
Menggunakan Open Dynamic Engine

Pemodelan penyelesaian masalah menggunakan simulasi menjadi suatu
kebutuhan penting bagi penelitian. Hal ini dikarenakan penyelesaian
menggunakan robot secara fisik kurang efisien dari sisi waktu dan biaya.
Untuk itu dilakukan pemodelan yang realistis dalam memodelkan
algoritma penyelesaian ini. Pemodelan 3D yang menerapkan prinsip-
prinsip fisika seperti gaya gesek, gaya berat, momentum, gravitasi, dan
lain sebagainya menjadi salah satu pilihan tepat untuk dapat mendekati
keadaan sebenarnya. Penggunaan 3D ini diharapkan dapat memberikan
hasil yang tidak terlalu berbeda ketika diimplementasikan terhadap
robot sebenarnya. Seluruh proses simulasi dibangun menggunakan
sebuah library Open Dynamic Engine(ODE). Pemilihan library ini didasari
oleh banyaknya fitur-fitur yang disediakan oleh ODE sehingga
memudahkan dalam proses simulasi. Penjelasan lebih lanjut mengenai
ODE terdapat pada subbab 2.4.1. Terdapat beberapa implementasi
simulasi yang akan dibahas pada subbab ini, diantaranya Path Planning,

56

Position by Line, Extended Position by Line, dan Self-Deployment yang
semuanya diperlukan untuk membangun jaringan komunikasi.

2.3.1 Position by Line
Position by line adalah sebuah algoritma yang bekerja dengan
memanfaatkan persamaan garis yang menghubungkan target dalam
suatu garis lurus. Berdasarkan teori geometri, jarak terpendek antara
dua titik adalah garis lurus yang menghubungkan keduanya sehingga
jika algoritma ini dapat menemukan konfigurasi berupa garis lurus
antara kedua target, maka solusi yang ditemukan adalah solusi yang
paling optimum. Persamaan garis lurus yang menghubungkan kedua
titik tersebut dapat diturunkan jika diketahui posisi kedua titik.

Penjelasan mengenai algoritma ini adalah sebagai berikut:
1. Robot otonom memulai simulasi dengan posisi awal yang acak,

sedangkan perangkat pengawas dan objek yang diawasi harus
diketahui posisinya.
2. Robot menyimpan informasi yang dibutuhkannya untuk
melakukan kegiatan eksplorasi, yaitu informasi mengenai posisi
dirinya masing-masing beserta informasi mengenai posisi target,
serta jumlah robot di dalam simulasi. Akan tetapi, robot tidak
mengetahui posisi robot-robot lainnya. Informasi ini diberikan
kepada robot otonom pada fase inisialisasi.
3. Robot memanfaatkan informasi posisi target yang akan
dihubungkan oleh jalur komunikasi, serta informasi radius
sensingarea-nya untuk mengetahui posisi-posisi mana saja yang
akan ditempati oleh semua robot agar dapat ditemukan jalur
berupa garis lurus antara target di dalam simulasi. Posisi-posisi
yang mungkin ditempati ini disebut feasibleposition.
4. Setelah melakukan perhitungan untuk mendapatkan semua
feasible position, robot kemudian menghitung jarak dari posisinya
kepada semua feasible position. Posisi dengan jarak terpendek
kemudian dijadikan prioritas tertinggi, hingga seterusnya sampai
posisi terjauh dengan prioritas terendah.
5. Robot kemudian bergerak mendekati feasible position dengan
prioritas tertinggi. Jika robot tidak dapat mencapai posisi tersebut

57

dikarenakan telah adanya robot lain yang menempatinya, maka
robot menentukan feasible position dengan prioritas tertinggi
berikutnya sebagai posisi tujuan. Robot bergerak menuju posisi
tersebut.
6. Ulangi langkah 5 secara berulang jika robot masih belum berhasil
mencapai posisi yang ditujunya. Jika semua tidak dapat dikunjungi,
maka robot akan berhenti.

Terdapat beberapa asumsi yang digunakan, yaitu sebagai berikut.
1. Spesifikasi robot yang digunakan harus memiliki empat fungsi

utama: Mengenali lingkungan (sensing), dapat berkomunikasi
(communication), dapat berpikir (computation), dan dapat
bergerak (locomotion). Robot hanya dapat berkomunikasi dengan
objek lain yang berada di dalam rentang sensing area-nya.
2. Robot diberikan tambahan informasi mengenai jumlah robot lain
di dalam simulasi pada saat fase inisialisasi.

Gambar 2.7. dapat memperlihatkan skema dasar perhitungan feasible
position dari algoritma ini.

Gambar 2.7. Ilustrasi algoritma Position by Line (Pambudi 2009)
2.3.2 Extended Position by Line
Algoritma ini merupakan pengembangan dari algoritma Position by
Line yang hanya melakukan perhitungan dengan 2 sumber. Untuk
dapat menyelesaikan permasalahan dengan banyak sumber, terdapat
sebuah algoritma baru yang merupakan lanjutan dari algoritma
Position by Line yang sudah dikembangkan sebelumnya. Pada
dasarnya, prinsip yang digunakan pada algoritma ini masih sama
dengan algoritma Position by Line, yaitu dengan menemukan posisi-
posisi yang layak untuk ditempati oleh semua robot. Dalam kasus
terjadinya bencana diharapkan ditemukan solusi bagi permasalahan

58

konfigurasi jaringan komunikasi yang diharapkan. Adapun cara untuk
menemukan solusi ini adalah dengan merepresentasikan solusi
permasalahan dalam suatu connected graph, akan ditentukan bentuk
konfigurasi graph yang baik untuk digunakan sehingga dapat diperoleh
nilai distance minimum antara semua target yang ada, dengan batasan
nilai cost jumlah robot yang tersedia.

Algoritma dari Extended Position By Line ini adalah sebagai berikut :
1. Hitung jarak antara masing-masing target dalam jaringan yang

akan dicari konfigurasinya. Nilai-nilai ini kemudian akan disebut
sebagai path.
2. Tentukan semua kemungkinan path yang jika dijumlahkan akan
bernilai lebih kecil atau sama dengan nilai cost jumlah robot yang
tersedia.
3. Ambil setiap konfigurasi path yang dapat membentuk connected
graph pada target-target yang akan dihubungkan oleh konfigurasi
jaringan. Konfigurasi ini kemudian akan disebut sebagai solusi
sementara.
4. Tentukan nilai distance dari semua target terhadap target yang
lain. Nilai ini diperoleh dengan menjumlahkan path yang dapat
menghubungkan suatu target terhadap target lain. Jika terdapat
lebih dari satu kemungkinan path, pilih yang jumlahnya lebih
minimum.
5. Jumlahkan semua nilai distance, di mana hasilnya akan
menentukan total distance dari solusi sementara tersebut.
7. Pilih satu solusi sementara dengan total distance yang paling kecil.
Solusi ini kemudian merupakan solusi akhir konfigurasi jaringan
yang dicari.
8. Gunakan algoritma Position by Line untuk menentukan feasible
position pada setiap garis yang termasuk ke dalam solusi
konfigurasi jaringan.

Ilustrasi gambar dari algoritma Extended Position By Line dapat dilihat
pada gambar 2.8 Konsep perhitungan total jarak optimal dari setiap
kemungkinan path yang terbentuk dapat mempergunakan Minimum
Spanning Tree.

59

Gambar 2.8. Ilustrasi pembentukan jalur pada algoritma Extended
Position by Line

2.3.3 Self Deployment
Self Deployment pertama kali dibuat oleh Takahashi, Sekiyama dan
Fukuda pada tahun 2007 (Takahashi, 2007). Algoritma ini berbeda
dengan algoritma Position by Line dan Extended Position by Line dalam
hal strategi pembentukan jaringan. Pada kedua algoritma ini, target
posisi robot telah ditentukan ketika inisialisasi atau awal proses
simulasi. Sedangkan, penentuan target pada algoritma Self
Deployment ditentukan sepanjang simulasi terjadi.

Pseudocode penerapan algoritma ini adalah sebagai berikut:
1. Pada mulanya, robot akan menuju prioritas utama yaitu node yang

terdekat dengan sink. Jika tidak terdapat node yang terdekat
dengan sink, maka robot akan menuju sink.
2. Setelah robot mencapai sink dalam jarak tertentu, maka robot
akan mengubah target ke prioritas utama berikutnya yaitu node
yang terdekat dengan target. Jika tidak ditemukan node yang
terdekat dengan target, maka robot akan menuju menara
komunikasi target.
3. Setelah mencapai jarak threshold untuk komunikasi wireless, maka
robot akan berhenti dan menyebarkan kepada tetangganya bahwa
ia merupakan node dengan prioritas tertinggi yang dekat dengan
target.
4. Sepanjang simulasi, terdapat kemungkinan bahwa robot bertemu
dengan robot lainnya yang telah berada dalam posisi stabil. Ketika

60

hal ini terjadi, maka robot akan berkomunikasi dengan robot
tersebut mengenai sink, target, dan node terdekat dengan target.
Jika ternyata informasi ini sesuai dengan keadaan robot yang
bertanya (sink dan target), maka robot tersebut akan langsung
bergerak menuju prioritas utama berikutnya yaitu node terdekat
dengan target.
5. Sepanjang simulasi, terdapat kemungkinan bahwa robot
mendapatkan informasi dari distancesensor mengenai rintangan.
Untuk itu, robot akan menjadikan algoritma pencegahan benturan
sebagai prioritas utama.

Penentuan sink dan target dari suatu robot diperoleh dengan
memperhatikan jarak terpendek yang dibentuk antar robot dengan
target dan robot dengan sink ketika proses inisialisasi. Menara
komunikasi dengan jarak terpendek ke robot akan menjadi sink dan
menara komunikasi lainnya akan menjadi target. Sedangkan jika
dilihat dari sisi pergerakannya, algoritma Self Deployment ini juga
memiliki perbedaan dalam penerapannya bergantung dari ada atau
tidaknya informasi peta lokasi. Dengan tidak adanya informasi peta
lokasi, pergerakan robot akan menuju target dalam bentuk garis lurus.
Namun, jika informasi peta grid diketahui, robot akan bergerak
menuju suatu target dengan jalur terpendek. Kedua hal ini serupa
pada penerapan algoritma Position by Line.

Pemberitahuan oleh robot ketika telah menempati posisi stabil
dilakukan secara rekursif terhadap seluruh node yang berada dalam
posisi stabil.

2.3.4 Open Dynamic Engine(ODE)
Open Dynamic Engine (ODE) merupakan library untuk mensimulasikan
pergerakan dinamis dari suatu benda sesuai hukum-hukum fisika
(gravitasi, gaya, dan lain-lain). Selain itu, Open Dynamic Engine
fleksibel, cepat dan telah mengimplementasikan collision detection
ketika terdapat benda bertubrukan. Berikut adalah fitur-fitur yang
disediakan oleh Open Dynamic Engine:
1. Distribusi massa suatu benda.

61

2. Tipe engsel yang beragam.
3. Tabrakan pada benda primitif.
4. Metode simulasi : persamaan simulasi diturunkan berdasarkan

model Lagrange multiplier velocity.
5. Pilihan terhadap metode perpidahan antar frame yang bervariasi.
6. Mengimplementasikan gaya gesek dan momentum ketika terjadi

kontak benda.
7. Menggunakan bahasa pemrograman C sebagai interface

utamanya.
8. Mendukung banyak platform dan optimisasi untuk spesifik

platform.

Gambar 2.9. Diagram alur dari arsitektur simulasi Open Dynamic
Engine (R.C Kooijman 2010)

Diagram alur dari arsitektur Open Dynamic Engine ditunjukan pada
gambar 2.9. Terdapat 2 hal penting dalam alur arsitektur ini yaitu
initialization dan simulation loop. Tahapan initialization merupakan
tahapan awal simulasi yaitu menciptakan dunia 3D dan
mempersiapkan beberapa variable/function seperti collision detection,
event handler, gravitasi dan lain-lain. Tahap jalannya simulasi
dilakukan pada tahap simulation loop. Pada tahap inilah obyek-obyek
dapat melakukan pergerakan simulasi pada dunia 3D. Keterkaitan

62

berbagai modul-modul pada Open Dynamic Engine termasuk simulasi
diperlihatkan pada gambar 2.10.
Open Dynamic Engine juga mendukung beberapa tipe obyek geometri
dan tipe engsel (penghubung 2 objek). Perhitungan gaya gesek, ERP
(Error Reduction Parameter) dan CFM (Constraint Force Mixing) juga
merupakan bagian penting dari library Open Dynamic Engine ini.

Gambar 2.10. Diagram alur interaksi berbagai modul pada Open
Dynamic Engine(R.C Kooijman 2010)

2.3.5 Pemodelan Al-Fath dengan Open Dynamic Engine
Seperti yang sudah dijelaskan pada subbab sebelumnya, robot yang
akan digunakan untuk aplikasi pembentukan jaringan adalah robot Al-
Fath. Oleh karena itu, robot Al-Fath perlu dimodelkan secara 3D
menggunakan ODE agar simulasi yang dihasilkan valid. Subbab ini akan
menjelaskan bagaimana memodelkan Al-Fath.
Pemodelan chassis robot Al-Fath pada ODE melalui tahapan
pembentukan objek geometry dan body. Bentuk 3D dari chassis Al-
Fath diperoleh dari perancangan objek robot pada perangkat lunak
Inventor yang dikembangkan oleh Dewanto (Dewanto dan Prasetya,

63

2011). Agar objek dapat digunakan pada ODE, maka file design objek
3D harus melewati beberapa proses.
Proses untuk konversi dari Inventor ke ODE antara lain, ekstraksi
vertex, penyederhanaan faces dan indices, dan konversi format ke
ekstensi .obj.

Gambar 2.11 Model 3D Al-Fath pada software Inventor dan 3DS Max

Berdasarkan hasil percobaan simulasi dengan model pada gambar di
atas yang memiliki vertex sejumlah 10612, simulasi berjalan lambat.
Oleh karena itu, dilakukan penyederhanaan pada objek model untuk
mempercepat jalannya simulasi.

Gambar 2.12 Penyederhanaan model chassis Al-Fath

Hal yang sama juga dilakukan untuk memodelkan roda dari Al-Fath.
Roda sebelumnya didesain menggunakan piranti lunak Inventor dan
kemudian dikonversi ke file .obj. Total vertex pada model roda ini
mencapai 4039.

64

Gambar 2.13 Pemodelan roda pada piranti lunak Inventor dan 3DS Max
Akan tetapi pada saat simulasi pada ODE, bentuk roda disederhanakan
menjadi bentuk silinder. Hal ini dilakukan karena jika tipe geometri
roda adalah trimesh dengan jumlah vertex yang besar, maka contact
area antara lantai dengan roda bisa melibatkan jumlah vertex yang
besar. Hal ini mempengaruhi proses perhitungan matriks dan dapat
meningkatkan error pada saat simulasi.

Gambar 2.14 Pemodelan roda pada ODE sebelum dan sesudah
penyederhanaan

2.3.6 Simulasi Collision Detection
Collision detection merupakan suatu hal yang penting karena pada
simulasi ini diperlukan untuk menentukan pergerakan robot,
memperoleh informasi jarak benda berdasarkan sensor jarak, serta
memperoleh informasi robot atau menara komunikasi yang terhubung
berdasarkan wireless sensor. Perolehan informasi sensor jarak dan
wireless sensor diperoleh dari letak terjadinya gesekan/benturan pada
distancesensor beam atau wireless sensor range.

65

Perolehan data titik tubrukan pada geometri kemudian dikirimkan
kepada obyek robot untuk dihitung jaraknya. Representasi dari titik
benturan yang dimaksud penulis dapat dilihat pada gambar 2.15
dengan bentuk kubus transparan berwarna biru. Persamaan
perhitungan jarak antara titik tubrukan dan titik pusat distancesensor
adalah sebagai berikut:

(y2 − y1) + (x2 − x1)
Dimana :

(x1, y1) Merupakan titik tubrukan pada distance sensor beam.
(x2, y2) Merupakan titik pusat sensor jarak.

Gambar 2.15 Titik benturan antara distance sensor beam dengan
rintangan

2.3.7 Simulasi Collision Avoidance
Suatu robot akan memprioritaskan untuk menghindari bentuan ketika
benturan terdeteksi oleh sensor jarak. Algoritma yang diterapkan
ketika menghindari benturan tergantung dari informasi yang diberikan
sensor jarak, yaitu jarak serta posisi relatif benturan. Posisi relatif
benturan diperoleh dari letak sensor yang memperoleh titik benturan
sehingga posisi relatif benturan dapat diperkirakan.

Pergerakan robot selanjutnya dipengaruhi oleh arah roda yang hanya
memiliki 2 arah saja, yaitu depan atau belakang. Sedangkan, motor
dari roda berada pada bagian depan saja. Tabel pergerakan robot ke
arah tertentu berdasarkan pergerakan motor dapat dilihat pada Jenis
pergerakan ini dibantu oleh gaya gesek sehingga dapat berbelok ke
arah tertentu. Tabel 2-1. Pergerakan Robot Al-Fath menunjukkan
konfigurasi roda untuk berbelok pada robot Al-Fath.

66

Tabel 2-1. Pergerakan Robot Al-Fath

Tipe Pergerakan Pergerakan Motor Pergerakan Motor
Depan Bagian Kanan Depan Bagian Kiri
Bergerak Ke Kiri Depan Belakang
Bergerak Ke Kanan Belakang Depan
Bergerak Ke Depan Depan Depan
Bergerak Ke Belakang Belakang Belakang

2.3.8 Simulasi Path Planning
Algoritma path planning merupakan algoritma yang berfungsi
mencapai target tertentu dengan menghindari rintangan. Penerapan
algoritma path planning pada robot Al-Fath membutuhkan beberapa
informasi yaitu informasi distance sensor, posisi global target, dan
posisi robot Al-Fath. Skema dasar dari penerapan algoritma path
planning ini dapat dilihat pada gambar 2.16. Penerapan algoritma ini
terdiri dari 2 penerapan algoritma dasar yaitu pergerakan robot
menuju suatu titik dalam bentuk garis lurus dan pergerakan robot jika
terjadi rintangan yang terdeteksi oleh sensor jarak.

Pada gambar 2.16 algoritma pergerakan robot diawali dengan
pengolahan informasi distance sensor, posisi global robot, posisi global
target, dan arah robot. Informasi dari sensor jarak dihitung
berdasarkan ada atau tidaknya benturan antara sensor jarak beam
dengan lingkungan. Posisi global robot dan arah robot (localization)
diperoleh menggunakan libraryOpen Dynamic Engine. Sedangkan,
posisi target robot diperhitungkan berdasarkan algoritma pembentuk
jaringan yang akan dijelaskan kemudian. Pada mulanya, akan dicek
apakah terjadi ancaman tumbukan atau tidak berdasarkan informasi
dari sensor jarak. Jika iya, maka algoritma pencegahan benturan akan
dijalankan. Jika tidak, maka akan dihitung posisi relatif target terhadap
robot dan sudut antara target dan robot. Berdasarkan perhitungan
sudut ini, pergerakan dari robot akan ditentukan.

67

Gambar 2.16. Skema pergerakan robot menuju suatu target (Hafidh
2011)

Perhitungan arah dari robot diperoleh berdasarkan quaternion matrix
yang dapat diperoleh dari fungsi yang telah disediakan oleh Open
Dynamic Engine. Quaternion matrix ini kemudian akan diolah untuk
menghitung sudut antara arah robot dengan sumbu-x. Pada simulasi,
representasi arah dengan sumbu-x ini disebut dengan roll.
Seperti yang terlihat pada gambar 2.17 aturan pergerakan ini adalah
sebagai berikut :
1. Jika theta bernilai 0, maka robot bergerak ke arah depan,
2. Jika theta bernilai antara 0 - П, maka robot berputar ke arah kiri,

dan
3. Jika theta bernilai antara П - 2П, maka robot berputar ke arah

kanan.

68

Gambar 2.17. Representasi Roll, Alpha, dan Theta
Hasil algoritma path planning ini dapat dilihat pada gambar 2.18.

Gambar 2.18. Contoh penerapan Path Planning dengan Collision
Avoidance (Hafidh 2011)

2.3.9 Simulasi Position by Line
Pada algoritma Position by Line terdapat 2 fase utama yaitu fase
inisialisasi dan fase iterasi. Fase inisialisasi merupakan fase pemberian
informasi awal kepada masing-masing robot. Informasi tersebut
adalah posisi menara komunikasi, posisi robot, arah robot, dan peta
dari lokasi. Peta dari lokasi merupakan informasi pilihan karena
implementasi beberapa algoritma berbeda dengan tanpa adanya
informasi ini. Namun, implementasi algoritma tersebut tidak
mengurangi konsep algoritma utama pada Position by Line ini.
Sedangkan, fase iterasi adalah fase jalannya simulasi dengan
serangkaian proses.

Penerapan algoritma Position by Line dibedakan berdasarkan ada atau
tidaknya informasi peta dari lokasi. Ada atau tidaknya peta lokasi dan
informasi posisi menara komunikasi menentukan jalur antar menara
komunikasi. Pada skenario tidak diketahuinya keadaan lingkungan
melalui peta, pembentukan jalur dilakukan dengan menarik garis lurus
antar menara komunikasi. Sedangkan ketika informasi peta diketahui,

69

maka jalur yang dibentuk disesuaikan dengan peta dengan melihat
apakah ada rintangan atau tidak di suatu titik tertentu. Jalur yang
dibentuk pun merupakan jalur terpendek antar menara komunikasi
yang hendak dihubungkan.

Pada skenario pembentukan jalur antar menara komunikasi
berdasarkan informasi peta grid, penulis menerapkan algoritma
floodfill dan backtracking untuk menemukan jalur terpendek antar
menara komunikasi. Pseudocode dari algoritma ini adalah sebagai
berikut :

1. Tandai titik awal dengan nilai 0.
2. Tandai 8 titik disekitarnya dengan nilai titik acuan ditambah 1,

dengan syarat sebagai berikut:
a. titik yang hendak ditandai merupakan jalan yang dapat dilalui,
b. titik yang hendak ditandai belum pernah ditandai sebelumnya,

dan
c. jika titik serong yang hendak ditandai maka titik yang terletak

di atas, bawah, kiri, dan kanan titik acuan harus dapat dilalui.
3. Lakukan langkah ke-2 hingga penandaan titik sampai pada posisi

target.
4. Lakukan backtracking berdasarkan urutan nomor dari terbesar ke

terkecil secara berurutan misalnya dari 10, 9, 8, 7, ......., hingga 0.
5. Ilustrasi jalanya algoritma floodfill dan backtracking ini dapat

dilihat pada gambar 2.19. (a), (b), (c), (d), (e), dan (f). Sedangkan,
hasil penerapan pada Open Dynamic Engine dapat dilihat pada
gambar 2.20.

70

Gambar 2.19. Perhitungan jalur terpendek menggunakan algoritma
Flood Fill dan Backtracking

Gambar 2.20. Contoh penerapan jalur terpendek menggunakan Flood
Fill dan Backtracking pada Open Dynamic Engine

Setelah ditentukan jalur antar menara komunikasi, hal yang dilakukan
selanjutnya adalah penentuan lokasi tujuan robot. Penerapan
penentuan lokasi tujuan tanpa adanya informasi peta lokasi dapat
diilustrasikan pada gambar 2.20. Pada mulanya, Al-Fath akan mengolah
informasi letak 2 buah menara komunikasi yang hendak dihubungkan
menjadi titik-titik posisi target (p1 ; p2 ; . . . ; pn). Masing-masing titik
posisi target akan diurutkan berdasarkan jarak posisi tersebut dengan
robot. Posisi target terdekatlah yang akan menjadi target utama robot.
persamaan perhitungan titik posisi target ini berdasarkan persamaan
sebagai berikut :
71

= ( − ) +( − )

( )= ((( − ) ∗ ∗ )) +

( ) = ((( − ) ∗ ∗ ))
+

= −1

Di mana :
(x , ) merupakan posisi menara komunikasi sink.
( , ) merupakan posisi menara komunikasi target.
d merupakan jarak antara sink dan target.
r merupakan wireless range dari suatu robot.
n merupakan posisi ke-n.
min merupakan jumlah robot minimal yang dibutuhkan.

Gambar 2.21. Ilustrasi target robot tanpa informasi peta lokasi

Sedangkan untuk perhitungan target dengan diketahui peta dalam
bentuk grid, maka perhitungan dari target tujuan untuk setiap robot
akan menjadi sedikit berbeda. Gambar 2.21 dapat memberikan
ilustrasi mengenai posisi menara komunikasi dan posisi target
berdasarkan jalur yang dibentuk. Persamaan perhitungan dari target
tersebut adalah sebagai berikut :

=

72

(( − )^2 + ( + ) − ) =

( − 2 + ) + (( + ) − 2( + ) + )=
+ ) + )=
( − 2 + ) + (( − 2 + ) − 2( −2 + =

( −2 + )+ ( −2 + )−2

(1 + ) + (−2 + 2 − 2 ) + ( + − 2 + − ) = 0

Karena persamaan di atas adalah persamaan kuadrat sehingga dapat
dicari solusinya dengan mensubsitusikan nilai A,B, dan C ke
persamaan:

(− ± ( − 4 )
,= 2

Persamaan diatas akan memberikan 2 buah nilai x, maka diperlukan
pengecekan terhadap nilai x yang terletak diantara pasangan titik
pusat tile yang dipilih. Setelah nilai x ditemukan, maka nilai y dapat
diperoleh hanya dengan dengan mensubstitusi nilai x ke persamaan
garis awal atau persamaan lingkaran. Ilustrasinya dapat dilihat pada
gambar 2.22 dan gambar 2.23.

Gambar 2.22. Ilustrasi target robot dengan informasi peta lokasi
73

Gambar 2.23. Perpotongan antara lingkaran dan garis

Pada Open Dynamic Engine, penerapan kedua algoritma untuk
menentukan posisi target robot yang telah dijelaskan sebelumnya
dapat dilihat pada gambar 2.24 (a) dan (b).

(a)Tanpa Informasi Peta (b) Berdasarkan Informasi Peta

Gambar 2.24. Penerapan penentuan posisi target algoritma Position by
Line pada Open Dynamic Engine

Setelah melakukan perhitungan jalur serta posisi target pada masing-
masing robot, maka robot akan bergerak menuju posisi target
berdasarkan jalur terpendek ke posisi terdekat. Pada skenario peta
yang tidak diketahui, robot akan bergerak berdasarkan garis lurus
menuju target posisi dengan menggunakan algoritma path planning
yang telah dijelaskan sebelumnya. Sedangkan pada skenario peta yang
diketahui berupa grid, robot akan menghitung jalur terpendek menuju
posisi terdekat. Posisi terdekat dihitung berdasarkan algoritma flood

74

fill dan backtracking ke semua titik target yang diperoleh. Tampilan
ketika robot menuju target utama dengan kedua skenario ini dapat
dilihat pada gambar 2.25 (a) dan (b).

(a)Tanpa Informasi Peta (b) Berdasarkan Informasi Peta

Gambar 2.25. Path Planning menuju posisi stabil pada Open Dynamic
Engine

Setelah menempati posisi stabil, terdapat kemungkinan bahwa robot
lainnya menuju posisi yang sama dengan robot ini. Oleh karena itu,
antar robot diperlukan komunikasi untuk menentukan apakah posisi
target dari suatu robot telah ditempati oleh robot lain atau tidak.
Ketika suatu robot menemukan bahwa lokasi yang ditujunya sudah
ditempati robot lain, maka robot akan menuju target lainnya yang
terdekat dengan posisi robot saat itu. Penentuan posisi terdekat
ditentukan dari jarak robot dengan posisi target berikutnya, tetapi
pada kondisi peta grid yang diketahui, jarak terdekat ditentukan dari
algoritma flood fill.

2.3.10 Simulasi Extended Position by Line
Penerapan algorima Extended Position by Line dimaksudkan untuk
mengatasi kurangnya implementasi pada algoritma Position By Line
untuk kasus di mana menara komunikasi lebih dari 2. Implementasi
algoritma ini bertujuan untuk menentukan pasangan menara
komunikasi yang seharusnya dihubungkan sehingga diperoleh hasil
optimum yang dapat dibentuk. Oleh karena itu, masalah ini dapat
direduksi menjadi masalah pembentukan Minimum Spanning Tree dari
suatu complete graph yang dibentuk dengan menara komunikasi

75

sebagai vertex. Setelah dibentuk pasangan menara komunikasi dengan
jarak terkecil, maka langkah selanjutnya adalah melakukan algoritma
Position By Line untuk setiap pasang menara komunikasi. Diagram alur
dari penerapan algoritma ini dapat dilihat pada gambar 2.26.

Gambar 2.26. Diagram alur algoritma Extended Position by Line
Pembentukan complete graph pada algoritma pembentuk jaringan
tanpa informasi peta dan dengan informasi peta memiliki perbedaan
dalam menentukan bobot suatu edge. Pada kondisi tanpa informasi
peta, bobot dari edge diperoleh dari jarak antara satu vertex ke vertex
lainnya dalam bentuk garis lurus. Sedangkan pada kondisi peta
diketahui, penentuan bobot edge diperoleh dari bobot shortest path
yang diperoleh oleh algoritma floodfill. Perhatikan gambar 2.27 untuk
contoh penerapan Extended Position by Line dan gambar 2.28 (a) dan
(b) untuk hasil penerapannya pada Open Dynamic Engine.

Gambar 2.27. Contoh Penerapan Algoritma Extended Position By Line

76

(a) Tanpa Informasi Peta (b) Dengan Informasi Peta

Gambar 2.28. Contoh penerapan algoritma Extended Position by
Linepada Open Dynamic Engine

Algoritma Minimum Spanning Tree yang dipilih oleh penulis adalah
algoritma Prim. Algoritma ini terbukti cukup efisien dengan
kompleksitas yang terbaik.

2.3.11 Simulasi Self Deployment
Penerapan algoritma Self Deployment Takahashi, Sekiyama, dan
Fukuda berbeda dengan algoritma Position by Line dan Extended
Position by Line dalam hal strategi pembentukan jaringan. Pada kedua
algoritma ini, target posisi robot telah ditentukan ketika inisialisasi
atau awal proses simulasi. Sedangkan, penentuan target pada
algoritma Self Deployment ditentukan sepanjang simulasi terjadi.
Pseudocode penerapan algoritma ini pada Open Dynamic Engine
adalah sebagai berikut:
1. Pada mulanya, robot akan menuju prioritas utama yaitu node yang

terdekat dengan sink. Jika tidak terdapat node yang terdekat
dengan sink, maka robot akan menuju sink.
2. Setelah robot mencapai sink dalam jarak tertentu, maka robot
akan mengubah target ke prioritas utama berikutnya yaitu node
yang terdekat dengan target. Jika tidak ditemukan node yang
terdekat dengan target, maka robot akan menuju menara
komunikasi target
3. Setelah mencapai jarak threshold untuk komunikasi wireless, maka
robot akan berhenti dan menyebarkan kepada tetangganya bahwa

77

ia merupakan node dengan prioritas tertinggi yang dekat dengan
target
4. Sepanjang simulasi, terdapat kemungkinan bahwa robot bertemu
dengan robot lainnya yang telah berada dalam posisi stabil. Ketika
hal ini terjadi, maka robot akan berkomunikasi dengan robot
tersebut mengenai sink, target dan node terdekat dengan target.
Jika ternyata informasi ini sesuai dengan keadaan robot yang
bertanya (sink dan target), maka robot tersebut akan langsung
bergerak menuju prioritas utama berikutnya yaitu node terdekat
dengan target.
5. Sepanjang simulasi, terdapat kemungkinan bahwa robot
mendapatkan informasi dari sensor jarak mengenai rintangan.
Untuk itu, robot akan menjadikan algoritma pencegahan benturan
sebagai prioritas utama.

Penentuan sink dan target dari suatu robot diperoleh dengan
memperhatikan jarak terpendek yang dibentuk antar robot dengan
target dan robot dengan sink ketika proses inisialisasi. Menara
komunikasi dengan jarak terpendek ke robot akan menjadi sink dan
menara komunikasi lainnya akan menjadi target. Sedangkan jika
dilihat dari sisi pergerakannya, algoritma self deployment ini juga
memiliki perbedaan dalam penerapannya bergantung dari ada atau
tidaknya informasi peta lokasi. Dengan tidak adanya informasi peta
lokasi, pergerakan robot akan menuju target dalam bentuk garis lurus.
Namun, jika informasi peta grid diketahui, robot akan bergerak
menuju suatu target dengan jalur terpendek. Kedua hal ini serupa
pada penerapan algoritma Position by Line. Hasil simulasi pergerakan
ini dapat dilihat pada gambar 2.29.

78

(a) Tanpa Informasi Peta (b) Dengan Informasi Peta

Gambar 2.29. Implementasi algoritma Takahashi, Sekiyama, dan
Fukuda pada Open Dynamic Engine

Pemberitahuan oleh robot ketika telah menempati posisi stabil
dilakukan secara rekursif terhadap seluruh node yang berada dalam
posisi stabil. Ilustrasi ini dapat dilihat pada gambar 2.30. Pada simulasi
ini, pemberitahuan informasi melalui wireless connection ini tidak
menggunakan metode routing protocol standar dan tidak mem-
pertimbangkan waktu delay.

Gambar 2.30. Proses Pemberitahuan Posisi Robot
Terdapat dua buah skenario pada algoritma sehingga suatu menara
komunikasi dapat dikatakan terhubung satu sama lain. Pada skenario
pertama, robot berusaha menghubungkan antara menara komunikasi
sink menuju menara komunikasi target, tanpa ada robot lain yang
menghubungkan dari menara komunikasi sebaliknya. Pada skenario
ini, suatu menara dianggap telah terkoneksi ketika robot terakhir pada

79

prioritas telah terhubung dengan menara komunikasi target. Ilustrasi
gambar dapat dilihat pada gambar 2.31.

Gambar 2.31. Skenario pertama terkait keterhubungan antara menara
komunikasi pada algoritma Self Deployment

Skenario berikutnya adalah ketika terdapat beberapa robot yang
menghubungkan menara komunikasi antara sink dan target serta
beberapa robot lainnya yang menghubungkan menara komunikasi
antara target dan sink. Akibatnya, terdapat kemungkinan bahwa
robot-robot tersebut bertemu pada suatu titik ditengah-tengah
menara komunikasi sink dan target. Dalam skenario ini, antar robot
akan berkomunikasi untuk menyatakan bahwa menara komunikasi
telah terhubung dan siap melakukan pertukaran informasi antar
menara komunikasi. Ilustrasi gambar dari skenario ini dapat dilihat
pada gambar 2.32.

Gambar 2.32. Skenario kedua terkait keterhubungan antara menara
komunikasi pada algoritma Self Deployment

2.4 Implementasi Riil Robot

Setelah proses simulasi selesai dengan hasil simulasi yang baik, maka
tahapan selanjutnya adalah mengimplementasikan seluruh rancangan
sistem secara riil pada robot. Subbab ini akan menjelaskan mengenai
proses implementasi riil algoritma pembentukan jaringan dengan
menggunakan robot Al-Fath. Penjelasan lebih lanjut mengenai robot

80

Al-Fath dapat ditemukan pada subbab 2.5.1. Selain itu dijelaskan juga
algoritma-algoritma yang diimplementasikan pada robot Al-fath,
diantaranya adalah algoritma sink localization PSO untuk mencari
posisi menara BTS. Pada akhir subbab ini dibahas beberapa kendala
yang dihadapi pada saat implementasi riil yang tidak ditemui pada saat
simulasi.

2.4.1 Particle Swarm Optimization
Particle swarm optimization(PSO) adalah sebuah teknik komputasi
yang diperkenalkan oleh R.C. Eberhart dan J. Kennedy pada tahun
1995 (Wu, 2011). PSO adalah sebuah algoritma pencarian yang
melibatkan sebuah populasi yang berbasis simulasi perilaku sosial dari
burung, lebah atau ikan (Yun et al,. 2010). Algoritma PSO menentukan
bagaimana velocity vector diperbaharui. Aturan pembaharuan velocity
vector pada PSO ditunjukkan oleh persamaan (2.1) sedangkan posisi
individu tersebut diperbaharui dengan persamaan (2.2).

= + . ( ). ( − ) + . ( ). − (2.1)

=+ (2.2)

Berikut adalah penjelasan masing-masing variable yang terlibat dalam
Persamaan (2.1) dan Persamaan (2.2).

: Velocity vector individu ke-i pada iterasi ke n+1
: Velocity vector individu ke-i pada iterasi ke-n
: Konstanta penentu bobot komponen kognitif individu
: Konstanta penentu bobot komponen sosial
: Posisi local best individu ke-i pada iterasi ke-n
: Posisi global bestindividu ke-i pada iterasi ke n

: Posisi individu ke-i pada iterasi ke-n
(): Fungsi random yang menghasilkan bilangan 0-1
: Posisi individu ke-i pada iterasi ke-n
: Posisi individu ke-i pada iterasi ke n+1
: Constriction factor

PSO sering digunakan untuk menemukan solusi dari sebuah
persamaan matematis. Namun, pada perkembangannya banyak

81

dikembangkan aplikasi PSO dalam berbagai bidang termasuk robotika,
seperti pencarian sumber gas atau bau yang dikenal dengan istilah
odor source localization (OSL) (Pambudi, 2009). Secara umum cara
kerja metode ini adalah dengan selalu memperbaharui posisi local
best dan global best kemudian memperbaharui velocity vector hingga
kondisi terminasi dicapai. Berikut ini beberapa kondisi yang
menyebabkan metode PSO terhenti (Pambudi,2009):

1. Waktu pencarian sudah melebihi batas waktu yang ditentukan
Batas waktu ini digunakan untuk mencegah robot melakukan
pencarian terlalu lama. Jika waktu yang digunakan robot dalam
pencarian solusi melebihi batas waktu tertentu, pencarian tidak
perlu dilanjutkan lagi.

2. Solusi telah ditemukan
Biasanya digunakan suatu nilai ambang batas (threshold) untuk
menentukan apakah sebuah solusi telah ditemukan.

3. Tidak ada peningkatan dalam beberapa iterasi
Jika tidak ada peningkatan dalam beberapa iterasi tertentu, ada
indikasi bahwa tidak ada individu yang melakukan pergerakan
atau PSO telah menuju titik konvergen.

Algoritma PSO ini dipakai untuk fase lokalisasi, menentukan posisi
robot pada environment, dan ketika robot bergerak. Ketidakpastian
atau error yang terjadi pada robot karena ketidaksempurnaan
pembacaan sensor ataupun presisi pergerakan roda diharapkan dapat
diatasi dengan algoritma PSO.

2.4.2 Dead Reckoning
Dead reckoning adalah suatu prosedur matematis untuk menentukan
posisi sebuah kapal pada suatu saat menggunakan pengetahuan
mengenai posisi sebelumnya dan perkiraan perpindahan yang dialami
kapal tersebut dalam suatu periode waktu (Siegwart, 2004). Prosedur
ini juga dapat diterapkan pada mobile robot untuk memperkirakan
posisi mobile robot menggunakan sebuah sensor.

82

Gambar 2.33. Quadratic Optical Encoder (Siegwart, 2004)

Sensor yang digunakan disebut encoder, sensor ini merupakan sebuah
alat yang digunakan untuk menerjemahkan perputaran roda menjadi
pulsa listrik. Terdapat tiga buah keluaran yang masing-masing
menghasilkan jenis pulsa yang berbeda. Secara umum bentuk
keluarannya seperti ditunjukan pada gambar 2.33. Pada keluaran A dan
B menghasilkan pulsa yang sebenarnya identik tetapi berbeda fase
sebesar 90 derajat dan keluaran I menghasilkan sebuah pulsa hanya
ketika roda telah berputar sebesar 360 derajat. Dengan menghitung
banyaknya pulsa yang dihasilkan, kita dapat memperkirakan besar
perpindahan linier roda. Prosedur yang digunakan untuk menentukan
posisi robot jika posisi robot diketahui sebelumnya adalah sebagai
berikut:
1. Misalkan posisi robot dan orientasi robot saat ini adalah

( , , ). Kemudian dalam suatu interval waktu tertentu robot
melakukan sebuah pergerakan.
2. Roda kanan dan kiri robot berputar dan encoder menghasilkan
pulsa masing-masing , dan , . Untuk menghitung
perpindahan linear masing-masing roda digunakan Persamaan
(2.3) dan Persamaan (2.4). adalah diameter roda dan adalah
resolusi encoder, yakni banyaknya pulsa yang dihasilkan dalam
satu putaran.
3. Perpindahan titik pusat robot (centerpoint) dapat dihitung
menggunakan Persamaan (2.5).
4. Orientasi robot setelah pergerakan dapat dihitung dengan
menghitung perubahan arah hadap robot menggunakan
Persamaan (2.6) kemudian menambahkan perubahan tersebut
terhadap orientasi robot sebelumnya menggunakan Persamaan

83

(2.7). Simbol pada Persamaan (2.6) adalah jarak wheelbase,

yakni jarak antara titik kontak roda kanan dan roda kiri.

5. Koordinat robot setelah pergerakan dapat dihitung menggunakan

Persamaan (2.8) dan Persamaan (2.9).

=/ (2.3)

∆ ⁄, = ⁄, (2.4)
(2.5)
∆ = ∆ , + ∆ , /2

∆ = ∆ , −∆ , / (2.6)
=∆ +∆ (2.7)

= +∆ (2.8)

= +∆ (2.9)

2.4.3 Perangkat Komunikasi Robot Al-Fath
Untuk keperluan komunikasi dengan sesama anggota kawanan, robot
Al-Fath dilengkapi dengan modul komunikasi XBee yang meng-
implementasikan protokol komunikasi Zigbee. Zigbee adalah sebuah
protokol komunikasi untuk komunikasi jarak dekat yang beroperasi
pada frekuensi 2.4 GHz. Frekuensi Zigbee sama dengan frekuensi yang
digunakan dalam standar Wi-Fi sehingga bisa terpengaruh oleh sinyal
dari modul Wi-Fi di sekitarnya. Untuk mengatasi ini, frekuensi tersebut
dibagi menjadi 16 channel. Untuk mengatasi collision pada paket
apabila paket tidak berhasil dikirimkan dilakukan pengiriman ulang.
Penggunaan daya pada Zigbee juga relatif kecil dan berbagai macam
tipe jaringan bisa dibentuk secara otomatis degan standar Zigbee.
Banyak percobaan localization dalam wirelesensor network
menggunakan standard Zigbee maupun modul yang mempunyai basis
yang sama dengan Zigbee karena harganya yang murah dan
ketersedian modul yang mudah didapatkan.

Salah satu modul yang sering digunakan adalah modul X-Bee IEEE
802.15.4. Modul ini menggunakan standar komunikasi yang sama
dengan Zigbee tanpa implementasi protokol pembentukan jaringan.
Modul X-Bee sangat cocok untuk kepentingan localization karena
dimensinya yang kecil dan harganya yang relatif murah. Gambar 2.34.
menunjukkan bentuk fisik dari X-Bee.

84

Gambar 2.34. Bentuk fisik X-Bee
Pada saat transmisi data akan terjadi proses modulasi untuk
menggabungkan frekuensi yang digunakan dengan sinyal digital yang
telah dikonversikan ke sinyal analog. Setelah itu, hasil modulasi akan
dikirim ke antena untuk menghasilkan gelombang elektromagnetik
transmisi. Sedangkan pada saat menerima paket, gelombang
elektromagnetik akan ditangkap oleh antena receiver yang kemudian
didemodulasi untuk memisahkan frekuensi gelombang carrier dengan
sinyal analog yang dikirim oleh transmitter. Kemudian sinyal analog ini
diubah menjadi sinyal digital agar bisa diproses oleh robot.

Salah satu kelebihan modul X-Bee ini adalah kemampuan untuk
melakukan pengukuran kuat sinyal dari paket yang diterima. Besaran
kuat sinyal ini biasa disebut dengan istilah Received Signal Strength
Indicator (RSSI). Nilai RSSI bisa digunakan untuk menentukan posisi
suatu node dengan memanfaatkan kaitan antara jarak dan nilai RSSI.
Beberapa teknik yang umumnya digunakan untuk penentuan posisi
suatu node tanpa melakukan pergerakan diantaranya dikembangkan
oleh Yuan Xu, Juergen Graefenstein, dan peneliti lain (Graefenstein,
2008), (Graefenstein, 2009), (Xu, 2011), (Luo, 2010), (Azenha, 2010).
Gambar 2.35. menunjukkan hasil pengukuran sinyal selama 24 jam.

85

Gambar 2.35. Hasil Pengukuran Kuat Sinyal Selama 24 jam (Janire
Larranaga, 2010)

2.4.4 Implementasi Arsitektur Mobile Robot
Autonomous mobile robot yang dikembangkan akan berkoordinasi
satu sama lain untuk mencapai tujuannya. Oleh sebab itu, diperlukan
komponen-komponen penunjang fungsi koordinasi tersebut. Gambar
2.36. menunjukkan gambar arsitektur sistem secara umum.

Gambar 2.36. Arsitektur sistem secara umum

86

Seperti terlihat pada gambar tersebut, terdapat sebuah program yang
digunakan untuk memonitor pergerakan robot yang berjalan di atas
sebuah PC. Program tersebut dikembangkan dengan bahasa Java
sehingga bisa dijalankan di berbagai macam platform. Selain untuk
monitoring, PC tersebut terhubung ke sebuah perangkat USB-to-Serial
Converter yang kemudian terhubung ke sebuah modul X-Bee Wireless.
Modul X-Bee yang terhubung ke PC tersebut berfungsi sebagai BTS
(Base Transceiver Station) yang mengirimkan paket-paket periodik
secara broadcast. Paket yang dikirimkan BTS berisi identifier dan posisi
BTS tersebut. Dalam paket yang sama juga terdapat informasi
mengenai identifier dan posisi BTS yang ingin disambungkan dengan
BTS tersebut. Hal ini diperlukan agar robot-robot mengetahui posisi
BTS-BTS yang ingin dihubungkan. Ilustrasi sistem komunikasi antar
robot dan antara robot dengan BTS digambarkan oleh gambar 2.37.

Gambar 2.37. Sistem komunikasi robot dengan BTS
Pada sistem ini, setiap robot adalah sebuah agent autonomous di
mana keputusan pergerakan dan seluruh algoritma terdapat di robot
itu sendiri, bukan di PC. Dengan demikian semua data di sensor diolah
pada microcontroller yang ada di robot.

87

2.4.5 Perangkat Lunak
Salah satu perangkat lunak penunjang penelitian ini adalah sebuah
program monitoring yang disebut Real Time Al-Fath Monitor. Program
ini bisa digunakan untuk mengetahui pergerakan robot pada setiap
iterasi. Berikut ini adalah tampilan perangkat lunak yang
dikembangkan.

Gambar 2.38 Tampilan antar muka Real Time Al-Fath Monitor
Program ini memiliki tiga fitur utama antara lain:
1. Menampilkan posisi robot secara real time.

Fitur ini bekerja dengan cara menerima posisi yang dikirim robot
lalu menampilkannya secara dua dimensi dan menampilkan posisi
robot dalam koordinat x dan y. Skala yang digunakan adalah
adalah 1:60, yaitu satu grid pada program yang sama dengan 60
cm di dunia nyata.
2. Memberikan posisi BTS kepada seluruh robot.
Pemberian posisi BTS perlu dilakukan pengaturan dengan cara
memasukan koordinat BTS dalam format “x,y” kedalam textfield.
Setelah memasukan koordinat BTS, klik tombol “send BTS info”
agar program ini dapat digunakan.
3. Melakukan uji coba koneksi antara BTS melalui mobile note berupa
robot Al-Fath.

88

Beberapa pengaturan yang harus dilakukan antara lain, pertama
kita harus memilih serial port yang terhubung pada modul X-Bee.
Kedua, tekan tombol “connect/disconnect” agar terhubung
dengan perangkat X-Bee. Status akan menunjukan apakah
program telah terhubung atau belum dengan perangkat X-Bee.

2.4.5.1. Real Time Operating System (RTOS) pada Al-Fath
Pada penelititan ini digunakan sebuah RTOS open source bernama
FreeRTOS. RTOS ini mendukung berbagai macam arsitektur
microcontroller dan kodenya bersifat terbuka sehingga modifikasi
dapat dilakukan sesuai kebutuhan. Modifikasi dilakukan pada file
“port.c” dan “port.h”. Selain fungsi yang digunakan untuk contex-save
dan contex-restore, modifikasi juga dilakukan pada setting timer yang
digunakan untuk menghasilkan tick interrupt dalam RTOS. Secara
umum program yang dibuat dibagai menjadi 5 task yang berbeda,
diantaranya:

1. vMainTask
Task ini berisi algoritma utama yang digunakan, yakni sink
localization menggunakan PSO dan algoritma Position by Line.

2. vUpdatePos untuk
Task ini menjalankan algoritma dead reckoning
memperbaharui posisi robot selama melakukan navigasi.

3. vTXService
Task ini melakukan pengiriman data posisi robot, nilai local best
position robot, posisi local best, posisi robot saat ini, dan indeks
target posisi yang sudah ditempati pada algoritma PBL.

4. vRXService
Task ini melakukan pengecekan apakah terdapat paket dari robot-
robot lain maupun BTS.

5. DebugService
Task ini digunakan untuk melakukan debugging dengan mencetak
variabel-variabel penting ke layar LCD.

2.4.5.2. Penentuan Posisi Robot dan Orientasi
Implementasi algoritma particle swarm optimization dan Position by
Line membutuhkan informasi posisi robot pada setiap langkah. Pada

89

robot Al-Fath, terdapat sensor penghitung perputaran roda, yang juga
disebut encoder. Sensor ini mengubah perputaran roda menjadi pulsa
listrik yang kemudian dijadikan masukan ke microcontroller untuk
menghitung perpindahan robot. Spesifikasi sensor encoder dari robot
Al-Fath ini ditunjukkan oleh gambar 2.39. Pada gambar tersebut
ditunjukkan tampilan motor yang digunakan dari berbagai macam
sudut beserta spesifikasi teknis encoder yang tergabung dengan motor
tersebut.

Gambar 2.39. Spesifikasi motor dan encoderrobot Al-Fath (Dewanto
2010)

Pada saat pertama kali dijalankan, diasumsikan bahwa robot sudah
mengetahui posisi dirinya sendiri, data posisi tersebut disimpan di
dalam EEPROM. Perhitungan pergerakan akan dimulai ketika robot
mulai bergerak. Posisi robot sendiri direpresentasikan dalam suatu
grid yang setara dengan 10 cm sedangkan untuk posisi arah robot
direpresentasikan dalam satuan kelipatan 45 derajat sehingga
didapatkan 360/45 = 8 arah hadap robot seperti yang terlihat pada
Gambar 2.40.

90

Gambar 2.40. Representasi arah terhadap robot

2.4.5.3. Sistem Navigasi
Pergerakan yang dilakukan robot adalah melakukan navigasi point-to-
point, pergerakan ini memungkinkan robot untuk bergerak dari suatu
koordinat tertentu saat ini menuju koordinat tujuan. Pergerakan ini
dibagi menjadi dua tahapan, yakni pengaturan arah hadap dan
pergerakan maju lurus hingga mencapai titik tertentu. Navigasi perlu
diakhiri apabila salah satu dari beberapa hal berikut ini terjadi:
1. Terdapat penghalang di depan robot

Sebelum melakukan pergerakan pada setiap langkah, robot akan
melakukan pembacaan sensor jarak dan menentukan apakah
terdapat suatu obyek di depan robot tersebut.
2. Posisi target yang dituju sudah ditempati oleh robot lain
Setiap kali sebuah robot telah menempati suatu posisi target,
robot akan memberi tahu posisi yang telah ditempatinya ke robot-
robot yang lain melalui perangkat wireless yang ada

2.4.5.4. Pengaturan Modul X-Bee
Terdapat beberapa mode operasi yang dapat dipilih untuk suatu
modul. Secara umum, terdapat 2 jenis jaringan yang dapat dibentuk
oleh modul X-Bee 802.15.4 ini yaitu Peer to peer dan Non-Beacon with
coordinator. Pada penelitian ini penulismenggunakan mode pertama
dengan tujuan agar setiap node dapat berkomunikasi dengan semua
node yang berada didalam jangkauan tanpa perlu adanya penentuan
coordinator.

91

2.4.5.5. Implementasi X-Bee 802.15.4 API
Terdapat dua cara penggunaan modul X-Bee, yakni transparent mode
dan Application Programming Interface (API) mode. Transparent
mode memungkinkan penggunaan modul X-Bee berlaku layaknya
perangkat wireless UART biasa. Pada mode ini tidak ada format paket
tertentu untuk melakukan komunikasi, pengguna bebas menentukan
paket yang digunakan. Namun, pada mode ini jika kita ingin mengubah
alamat tujuan pengiriman paket, maka kita harus masuk ke AT-mode,
yakni sebuah sub-mode dari mode transparent untuk melakukan
konfigurasi. Mode yang lain adalah Application Programming Interface
(API) mode yang memungkinkan pengiriman ke alamat-alamat yang
berbeda tanpa harus memasuki mode kongifurasi AT. Setiap data yang
dikirim harus berupa sebuah paket yang formatnya telah ditentukan
oleh API.

2.4.5.6. Pembatasan Jangkauan Komunikasi
Pada kondisi nyata posisi antara robot terpisah cukup jauh sehingga
bisa saja terjadi kehilangan komunikasi antar robot namun hal ini
cukup sulit untuk dilakukan pada proses penelitian karena
membutuhkan area yang sangat luas untuk mensimulasikannya.
Perangkat komunikasi yang dipasangkan pada robot memiliki
jangkauan efektif sekitar 100 meter line of sight. Penggunaan tiga
buah robot pada pengujian paling tidak membutuhkan area percobaan
300 meter sehingga untuk memudahkan pengujian maka dilakukan
pembatasan jangkauan komunikasi dengan menggunakan pendekatan
piranti lunak.

Telah dijelaskan sebelumnya bahwa jarak antar BTS sekitar 720 cm
dengan jumlah robot 3 buah sehingga posisi ideal yang paling efektif
memiliki jarak antara robot dengan robot atau robot dengan BTS
sekitar 180 cm. Gambar 2.41. berikut ini adalah gambaran lebih jelas
mengenai posisi akhir ideal hasil pencarian.

92

Gambar 2.41. Posisi akhir robot yang diharapkan setelah algorima
Position by Line

Uji coba lain dilakukan untuk mengetahui keterkaitan antara kekuatan
sinyal dari paket yang diterima dengan jarak antara node pengirim dan
node penerima. Pengujian dilakukan dengan mengukur nilai RSSi pada
jarak 0 hingga 3 meter dengan interval sebesar 0.6 meter.
Pengukuran dilakukan dengan 4 variasi orientasi dengan 4 arah mata
angin dan untuk setiap arah dilakukan sampling 10 kali. Gambar 2.42
merupakan grafik hasil pengujiannya, terlihat bahwa terdapat kaitan
yang hampir linear antara kedua variabel tersebut. Kaitan tersebut
bisa dimanfaatkan untuk menentukan batas ambang kekuatan sinyal
untuk komunikasi efektif.

Gambar 2.42. Kaitan antara sinyal X-Bee dengan jarak

93

2.4.6 Implementasi Algoritma Sink Localization dengan Particle
Swarm Optimization

Pada penelitian ini digunakan varian PSO yang dilengkapi dengan
mekanisme detect and respond. Detect and respond dalam hal ini
berarti dilakukan pendeteksian kondisi lingkungan, kemudian robot
melakukan suatu respon untuk menangani kondisi tersebut. Inti dari
algoritma PSO adalah pembaharuan velocity vector robot. Rumusan
perhitungan velocity vector disederhanakan mejadi persamaan
berikut:

= +. ( ). ( − ) + . ( ). −

Digunakan nilai c1 dan c2 yang sama, yakni nilai 1. Hal ini
mengakibatkan faktor kognitif (individu, c1) mempunyai bobot yang
sama dengan faktor sosial (c2). Penyesuaian lain adalah pembatasan
perhitungan velocity vector. Bilangan acak pertama dan kedua
mempunyai nilai yang berbeda dan dihasilkan dengan pseudorandom
generator yang ada pada library C standar.

1. Pembatasan Velocity Vector
Implementasi PSO dalam simulasi pada umumnya tidak
membutuhkan batasan kecepatan karena partikel dianggap dapat
berpindah tempat secara tiba-tiba. Namun, dalam implementasi
pada robot, terdapat batasan-batasan tertentu yang harus
dipenuhi agar PSO dapat berjalan dengan baik terutama dalam
konteks robot Al-Fath.

Velocity vector diterjemahkan sebagai vektor perpindahan yang
diinginkan dari posisi sekarang. Robot akan berusaha untuk
bergerak menuju posisi yang baru. Namun, jika perpindahan yang
dimungkinkan tidak dibatasi, maka bisa jadi robot melakukan
perpindahan yang cukup jauh sehingga iterasi berikutnya terjadi
setelah waktu yang lama. Agar pergerakan dalam PSO dapat
berjalan secara lebih dinamis, perpindahan robot dibatasi hanya
sejauh 8 grid atau sekitar 80 cm setiap iterasi. Selain pembatasan
kecepatan, pembatasan arah sudut juga dilakukan. Sudut hasil
perhitungan velocity vector akan dibulatkan ke sudut kelipatan 45

94

derajat terdekat. Pembatasan ini sejalan dengan pembatasan arah
hadap untuk sistem navigasi yang dijelaskan pada sub-bab
sebelumnya.
2. Representasi Local Best dan Global Best
Implementasi PSO pada penelitian ini menggunakan nilai RSSI
sebagai kriteria keberhasilan penemuan BTS. Pada penjelasan
sebelumnya telah diketahui bahwa nilai RSSI berkaitan langsung
dengan jarak antar node X-Bee.

Gambar 2.43. Pergerakan pembaharuan nilai dan posisi Local Best
Setiap robot mempunyai nilai dan posisi local best masing-masing.
Nilai local best adalah nilai yang RSSI paling kecil dari setiap paket
dari BTS yang pernah diterima robot. Nilai ini diperbaharui setiap
kali robot menerima paket dari BTS seperti yang terlihat pada
Gambar 2.43. BTS akan mengirim paket-paket secara periodik ke
semua node yang ada di sektira BTS. Pada penelitian ini
diasumsikan hanya salah satu BTS yang melakukan pengiriman
paket secara broadcast. Informasi local best pada setiap robot
akan dibagikan ke robot-robot lain sehingga setiap robot dapat
mendapatkan informasi local best dari semua robot yang lain
melalui modul X-Bee. Setiap robot kemudian akan menentukan
global best, yang merupakan nilai local best dari semua robot
termasuk dirinya sendiri yang paling minimum. Tujuan utama
algoritma sinklocalization menggunakan PSO ini adalah untuk

95

menemukan area di sekitar BTS yang memungkinkan komunikasi
efektif berjalan.

2.4.7 Implementasi Algoritma Position by Line Pada Robot Al-Fath
Tahapan selanjutnya adalah mengimplementasikan Algoritma Position
by Line. Tahapan ini dilakukan setelah robot berhasil mencapai jarak
komunikasi efektif dengan salah satu BTS, robot akan mendapatkan
informasi mengenai posisi kedua BTS yang ingin dihubungkan secara
wireless. Dalam mengimplementasikan algoritma ini perlu dilakukan
beberapa tahapan. Tahapan pertama adalah penentuan posisi-posisi
target atau feasible position. Gambar 2.44. merupakan gambar
ilustrasi dari feasible position.

Gambar 2.44. Feasible position dalam algoritma Position by Line
Pada tahapan kedua dilakukan pergerakan menuju target. Langkah ini
dilakukan untuk mencapai titik feasible position yang sudah
ditentukan pada tahapan pertama. Robot melakukan navigasi keposisi
paling dekat dengan robot. Pengukuran posisi paling dekat dilakukan
dengan menghitung Euclidean distance antara posisi robot dengan
setiap feasible positions. Pada saat bernavigasi robot juga melakukan
pengecekan apakah posisi yang dituju sudah ditempati oleh robot lain
atau belum, jika sudah maka robot akan berhenti dan menuju pada
titik feasible position yang lain.

2.4.8 Hasil Implementasi
Pada bagian selanjutnya akan dibahas hasil pengujian dan
pengembangan sistem Autonomous Mobile Robot (AMR). Pengujian
sistem AMR dilakukan pada sebuah ruangan berukuran ± 10 x 10
meter. Pada ruangan tersebut hanya terdapat beberapa robot Al-Fath

96

dan dua buah kotak yang dianalogikan sebagai BTS. Gambar 2.45.
dapat mendeskripsikan mengenai area pengujian.

Gambar 2.45. Pengaturan Area Uji Coba
Dari hasil pengujian dapat di simpulkan bahwa algoritma
sinklocalization dan Position by Line telah berhasil diimplementasikan
dan diujicobakan. Nampak pada gambar tiga buah robot dan dua buah
balok sebagai representasi BTS-BTS yang ingin dihubungkan. Kedua
BTS tersebut ditempatkan pada dua ujung ruangan dan robot akan
berusaha membentuk garis lurus antara dua buah BTS tersebut.

97

Gambar 2.46. Snapshot pergerakan robot pada uji coba

Pada Gambar 2.46. menunjukan hasil pengujian, tampak pada gambar
(a) kondisi awal robot yang diletakan secara acak. Pada gambar (b) dan
(c) tampak robot sedang mencari posisi yang tepat untuk
menyambungkan dua buah BTS dan gambar (d) robot berhasil
membentuk formasi garis lurus sejajar dengan BTS.

Pada proses pengujian terdapat beberapa kendala yaitu pergerakan
robot yang tidak presisi, penggunaan sensor jarang yang jumlahnya
terbatas sehingga memungkinkan terjadinya tabrakan pada saat
pengujian seperti yang terlihat pada gambar 2.47.

Gambar 2.47. Tabrakan antara dua robot Al-Fath

98

Kendala yang lain yaitu data hasil pengukuran kompas sangat
terpengaruh dengan keadaan lingungan sehingga terjadinya kesalahan
penentuan posisi robot terhadap BTS (Gambar 2.48).

Gambar 2.48. Pengujian kompas yang dipengaruhi benda disekitarnya
Selain itu, hal lain yang menjadi kendala adalah terjadinya packet
droppada saat proses komunikasi. Terjadinya packet drop
menyebabkan data-data informasi mengenai posisi robot dan update
posisi local best dan global best terlambat. Hal ini menyebabkan
sistem tidak responsif dan waktu yang dibutuhkan untuk mencapai
tujuan menjadi lebih lama.

2.5 Protokol Routing

Routing adalah proses untuk memilih rute mana yang akan dilalui
pada sebuah jaringan ketika suatu paket lewat. Penggunaan protokol
routing yang tepat dapat meningkatkan kemampuan jaringan dalam
mengirimkan data.

Dengan menggunakan mobile robot dipakai sebagai agen sekaligus
router untuk menyambungkan jaringan, jaringan komunikasi dapat
dipulihkan dengan bantuan teknologi mobile ad-hoc network (MANET)
Protokol routing yang berjalan di atas MANET disebut ad-hoc routing
protocol. Beberapa ilmuwan telah mem-propose beberapa algoritma
protokol routing dengan berbagai pertimbangan.

Subbab ini akan menjelaskan mengenai arsitektur sistem MANET itu
sendiri, lalu protokol routing yang berjalan diatasnya, dan beberapa
jenis protokol routing yang tersedia. Protokol routing ini akan

99

membuat pemulihan jaringan yang dilakukan robot menjadi lebih
powerful jika algoritmanya dipasangkan di robot.

2.5.1 Mobile ad-hoc Network
Mobile ad-hoc Network (MANET) adalah jaringan yang memungkinkan
setiap node yang terhubungkan oleh sebuah wireless link dapat
bergerak bebas, sehingga perubahan topologinya bersifat konstan
(Bresciani, 2008). Mobile ad-hocnetwork (MANET) terdiri atas
beberapa mobilehost yang dapat saling berkomunikasi. Sebuah mobile
ad-hocnetwork juga dapat mempunyai akses ke beberapa host lain
dalam infrastruktur, tergantung pada tipe dari mobile ad-hoc network
tersebut. Pemanfaatan mobile ad-hocnetwork ini diantaranya adalah
untuk proses koordinasi regu penyelamat pada saat terjadinya
bencana, serta sebagai sarana informasi bagi kalangan militer di
daerah pertempuran.

MANET memiliki kemampuan self-configured. Kemampuan tersebut
memungkinkan MANET mengkonfigurasikan dirinya sendiri untuk
beradaptasi dengan lingkungan di mana dia berjalan dan kemampuan
untuk mencari dan mempertahankan rute jaringan walaupun host dari
MANET tersebut mengalami perubahan topologi (Deza, 2009).

Gambar 2.49. Topologi MANET

Gambar 2.49. menunjukkan sebuah topologi dari MANET, dimana
terdapat kumpulan mobilenode yang dapat saling berkomunikasi satu
sama lainnya. Setiap mobilenode mempunyai range transmisi yang
terbatas, sehingga node-node tersebut mengandalkan teknologi
routing untuk dapat saling berkomunikasi dengan node lainnya.

100


Click to View FlipBook Version