Anda di halaman 1dari 17

PAPER

MOBILE ROBOT

OLEH :

YANA INAYATULLAH

1806030071

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNIK

UNIVERSITAS NUSA CENDANA

KUPANG

2022
BAB I

PENDAHULUAN

1.1 Latar Belakang


Robot adalah seperangkat alat mekanik yang bisa melakukan tugas fisik, baik
dengan pengawasan dan kontrol manusia, ataupun menggunakan program yang telah
didefinisikan terlebih dahulu. Istilah robot berawal bahasa ceko“robota” yang berarti
pekerja atau kuli yang tidak mengenal lelah atau bosan. Robot biasanya digunakan
untuk tugas yang berat, berbahaya, pekerjaan yang berulang dan kotor. Biasanya
kebanyakan robot industri digunakan dalam bidang produksi. Penggunaan robot
lainnya termasuk untuk pembersihan limbah beracun, penjelajahan bawah air dan luar
angkasa, pertambangan, pekerjaan "cari dan tolong" (search and rescue), dan untuk
pencarian tambang.Belakangan ini robot mulai memasuki pasaran konsumen di
bidang hiburan, dan alat pembantu rumah tangga, seperti penyedot debu, dan
pemotong rumput. Saat ini hampir tidak ada orang yang tidak mengenal robot, namun
pengertian robot tidaklah dipahami secara sama oleh setiap orang. Sebagian
membayangkan robot adalah suatu mesin tiruan manusia (humanoid), meski demikian
humanoid bukanlah satu-satunya jenis robot.
Ini akan menjadi sistem yang kuat yang memperhitungkan dan mengatasi
ketidakakuratan dan ketidaksempurnaan. Singkatnya: pendekatan rekayasa yang valid
untuk tipikal masalah (industri). Ketiga dan terakhir, pemrograman mobile robot
menyenangkan dan menjadi inspirasi bagi siswa. Fakta bahwa ada sistem bergerak
yang perilakunya dapat ditentukan oleh perangkat lunak adalah sebuah tantangan. Ini
bahkan dapat diperkuat dengan memperkenalkan kompetisi robot di mana dua tim
robot bersaing dalam memecahkan tugas tertentu [Bräunl 1999] – mencapai tujuan
dengan robot yang beroperasi secara mandiri, bukan “perang robot” destruktif yang
dikendalikan dari jarak jauh.

1.2 Rumusan Masalah


Berdasarkan latar belakang diatas maka yang menjadi rumusan masalahnya yaitu
“bagaimana sistem kerja yang terdapat di dalam robot pengendali ?”

1.3 Tujuan
Adapun tujuan dari pembuatan paper ini adalah untuk mengetahui sistem kerja yang
terdapat di dalam robot pengendali.
BAB II
DASAR TEORI

2.1 Robot Seluler

Sejak berdirinya Lab Robot Seluler oleh penulis di Universitas Australia Barat pada
tahun 1998, kami telah mengembangkan sejumlah robot bergerak, termasuk robot
beroda, terlacak, berkaki, terbang, dan bawah air. Kami memanggil robot ini adalah
"keluarga EyeBot" dari robot seluler (Gambar 1.1), karena mereka semuanya
menggunakan pengontrol tertanam yang sama "EyeCon" (pengontrol EyeBot, lihat
bagian berikut).

Gambar 1.1: Beberapa anggota keluarga robot seluler EyeBot

Kasus mobile robot yang paling sederhana adalah robot beroda, seperti yang
ditunjukkan pada Gambar 1.2. Robot beroda terdiri dari satu atau lebih roda yang
digerakkan (digambar padat di gambar) dan memiliki roda pasif atau roda kastor
opsional (ditarik berlubang) dan mungkin roda kemudi (ditarik di dalam lingkaran).

Gambar 1.2: Robot beroda

Sebagian besar desain memerlukan dua motor untuk mengemudi (dan menyetir) robot
bergerak. Desain di sisi kiri Gambar 1.2 memiliki roda penggerak tunggal yang juga
dikemudikan. Dibutuhkan dua motor, satu untuk menggerakkan roda dan satu lagi
untuk berputar. Keuntungan dari desain ini adalah bahwa aksi mengemudi dan
berbelok telah sepenuhnya dipisahkan dengan menggunakan dua motor yang berbeda.
Oleh karena itu, perangkat lunak kontrol untuk kurva mengemudi akan sangat
sederhana. Kerugian dari ini desainnya adalah robot tidak dapat berputar di tempat,
karena roda yang digerakkan tidak terletak di pusatnya. Desain robot di tengah
Gambar 1.2 disebut "penggerak diferensial" dan merupakan salah satu desain mobile
robot yang paling umum digunakan. Kombinasi dari dua roda yang digerakkan
memungkinkan robot untuk digerakkan lurus, dalam kurva, atau ke nyalakan di
tempat. Terjemahan antara perintah mengemudi, misalnya a kurva radius tertentu, dan
kecepatan roda yang sesuai harus dilakukan menggunakan perangkat lunak.
Keuntungan lain dari desain ini adalah bahwa motor dan roda adalah: dalam posisi
tetap dan tidak perlu diputar seperti pada desain sebelumnya. Ini menyederhanakan
desain mekanik robot jauh.
Akhirnya, di sisi kanan Gambar 1.2 adalah apa yang disebut "Ackermann" Kemudi”,
yang merupakan sistem penggerak dan kemudi standar dari mobil penumpang yang
digerakkan belakang. Kami memiliki satu motor untuk menggerakkan kedua roda
belakang melalui diferensial kotak dan satu motor untuk kemudi gabungan kedua roda
depan. Sangat menarik untuk dicatat bahwa semua desain robot seluler yang berbeda
ini membutuhkan dua motor total untuk mengemudi dan kemudi. Kasus khusus dari
robot beroda adalah "penggerak Mecanum" omni-directional robot pada Gambar 1.3,
kiri. Menggunakan empat roda penggerak dengan desain roda khusus dan akan
dibahas lebih rinci dalam bab selanjutnya.

Gambar 1.3: Robot omni-directional, terlacak, dan berjalan


Salah satu kelemahan dari semua robot beroda adalah mereka membutuhkan jalan
atau semacamnya semacam permukaan datar untuk mengemudi. Robot yang dilacak
(lihat Gambar 1.3, tengah) adalah lebih fleksibel dan dapat bernavigasi di medan yang
kasar. Namun, mereka tidak dapat menavigasi seakurat robot beroda. Robot yang
dilacak juga membutuhkan dua motor, satu untuk setiap trek. Robot berkaki (lihat
Gambar 1.3, kanan) adalah kategori terakhir dari robot berbasis darat robot bergerak.
Seperti robot yang dilacak, mereka dapat bernavigasi di medan yang kasar atau naik
turun tangga, misalnya. Ada banyak desain berbeda untuk robot berkaki, tergantung
pada jumlah kakinya. Aturan umumnya adalah: semakin banyak kaki, lebih mudah
untuk menyeimbangkan. Misalnya, robot berkaki enam yang ditunjukkan pada
gambar dapat dioperasikan sedemikian rupa sehingga tiga kaki selalu berada di tanah.
sementara tiga kaki berada di udara. Robot akan stabil setiap saat, bertumpu pada
atripod yang dibentuk dari tiga kaki yang saat ini berada di tanah – asalkan pusatnya
massa jatuh dalam segitiga yang dijelaskan oleh ketiga kaki ini. Semakin sedikit kaki
robot memiliki, semakin kompleks untuk menyeimbangkan dan berjalan, misalnya
robot dengan hanya empat kaki yang perlu dikontrol dengan hati-hati, agar tidak
jatuh. A robot biped (berkaki dua) tidak dapat memainkan trik yang sama dengan
segitiga pendukung, karena itu membutuhkan setidaknya tiga kaki. Robot berkaki
biasanya membutuhkan dua atau lebih motor ("derajat kebebasan") per kaki, jadi
robot berkaki enam membutuhkan setidaknya 12 motor. Banyak desain robot berkaki
dua memiliki lima atau lebih motor per kaki, yang menghasilkan jumlah derajat yang
agak besar kebebasan dan juga dalam bobot dan biaya yang cukup besar.
Abstraksi konseptual yang sangat menarik dari aktuator, sensor, dan robot kontrol
adalah kendaraan yang dijelaskan oleh Braitenberg [Braitenberg 1984]. Jadi satu
contoh, kami memiliki interaksi sederhana antara motor dan sensor cahaya. Jika
sebuah sensor cahaya diaktifkan oleh sumber cahaya, secara proporsional akan
meningkatkan kecepatan motor yang terhubung dengannya.

Gambar 1.4: Kendaraan Braitenberg menghindari cahaya (fototrof)

Pada Gambar 1.4 robot kami memiliki dua sensor cahaya, satu di kiri depan, satu di
kanan depan. Sensor cahaya kiri terhubung ke motor kiri, sensor kanan ke motor
kanan. Jika sumber cahaya muncul di depan robot, itu akan mulai mengemudi ke arah
itu, karena kedua sensor akan mengaktifkan kedua motor. Namun, apa yang terjadi
jika robot mendekati sumber cahaya dan sedikit mati kursus? Dalam hal ini, salah satu
sensor akan lebih dekat ke sumber cahaya (sensor kiri pada gambar), dan oleh karena
itu salah satu motor (motor kiri digambar) akan menjadi lebih cepat dari yang lain. Ini
akan menghasilkan lintasan kurva robot kami dan itu akan kehilangan sumber cahaya.

Gambar 1.5: Kendaraan Braitenberg mencari cahaya (photovore)


Gambar 1.5 menunjukkan skenario yang sangat mirip dari kendaraan Braitenberg.
Namun, di sini kami telah menghubungkan sensor kiri ke motor kanan dan sensor
kanan ke motor kiri. Jika kita melakukan eksperimen yang sama seperti sebelumnya,
robot akan kembali mulai mengemudi saat menemukan sumber cahaya. Tapi ketika
semakin dekat dan juga sedikit menyimpang (belok ke kanan pada gambar), sensor
kiri sekarang akan menerima lebih banyak cahaya dan karenanya mempercepat motor
yang tepat. Ini akan menghasilkan kurva kiri, sehingga robot dibawa kembali ke jalur
untuk menemukan sumber cahaya. Kendaraan Braitenberg hanyalah abstraksi robot
yang terbatas. Namun, sejumlah konsep kontrol dapat dengan mudah ditunjukkan
dengan menggunakannya.

2.2 Pengontrol Tertanam

Inti dari semua desain robot kami adalah pengontrol tertanam kecil dan serbaguna
yang dibawa setiap robot. Kami menyebutnya "EyeCon" (EyeBot controller, Gambar
1.6), karena spesifikasi utamanya adalah untuk menyediakan antarmukauntuk kamera
digital untuk menggerakkan robot seluler menggunakan gambar on-board pengolahan
[Bräunl 2001].
Gambar 1.6: EyeCon, depan dan dengan kamera terpasang

EyeCon adalah pengontrol tertanam yang kecil, ringan, dan sepenuhnya mandiri. Ini
menggabungkan CPU 32bit dengan sejumlah antarmuka dan driver standar untuk
Motor DC, servos, beberapa jenis sensor, plus tentu saja kamera digital berwarna.
Tidak seperti kebanyakan pengontrol lainnya, EyeCon hadir dengan built-in yang
lengkap antarmuka pengguna: ini terdiri dari tampilan grafik besar untuk
menampilkan pesan teks dan grafik, serta empat tombol input pengguna. Juga,
mikrofon dan seorang pembicara disertakan.
Karakteristik utama EyeCon adalah:
• Pengontrol 32bit 25MHz (Motorola M68332)
• RAM 1MB, dapat diperpanjang hingga 2MB
• ROM 512KB (untuk sistem + program pengguna)
• 1 port paralel
• 3 port Serial (1 di V24, 2 di TTL)
• 8 input digital
• 8 Output digital
• 16 Input/output unit prosesor waktu
• 8 input analog
• PCB kompak tunggal
• Antarmuka untuk kamera berwarna dan skala abu-abu
• LCD grafis besar (128u64 piksel)
• 4 tombol masukan
• Tombol Atur ulang
• Saklar daya
• Keluaran audio
• Pembicara piezo
• Adaptor dan potensiometer volume untuk speaker eksternal
• Mikrofon untuk input audio
• Indikasi level baterai
• Konektor untuk aktuator dan sensor:
• Kamera digital
• 2 motor DC dengan encoder
• 12 Servo
• 6 sensor inframerah
• 6 input analog gratis
Salah satu pencapaian terbesar dalam merancang perangkat keras dan perangkat lunak
untuk Pengontrol tertanam EyeCon berinteraksi dengan kamera digital untuk
memungkinkan pemrosesan gambar waktu nyata onboard. Kami mulai dengan modul
kamera "QuickCam" abu-abu dan warna Connectix yang spesifikasi antarmukanya
tersedia. Namun, ini tidak lagi berlaku untuk model penerus dan itu hampir tidak
mungkin untuk menghubungkan kamera jika pabrikan tidak mengungkapkan
protokol. Ini mengarahkan kami untuk mengembangkan modul kamera kami sendiri
"EyeCam" menggunakan chip sensor CMOS resolusi rendah. Desain saat ini
mencakup buffer perangkat keras FIFO untuk meningkatkan throughput data gambar.
Sejumlah robot sederhana hanya menggunakan pengontrol 8bit [Jones, Flynn, Seiger
1999]. Namun, keuntungan utama menggunakan pengontrol 32bit versus 8bit
pengontrol tidak hanya frekuensi CPU yang lebih tinggi (sekitar 25 kali lebih cepat)
dan format kata yang lebih luas (4 kali), tetapi kemampuan untuk menggunakan
standar C dan Kompiler C++. Kompilasi membuat eksekusi program sekitar 10 kali
lebih cepat daripada interpretasi, jadi secara total ini menghasilkan sistem yang 1.000
kali lebih cepat.
Kami menggunakan kompiler silang GNU C/C++ untuk mengkompilasi kedua
operasi sistem dan program aplikasi pengguna di Linux atau Windows. Kompilator ini
adalah standar industri dan sangat dapat diandalkan. Itu tidak sebanding dengan salah
satu dari interpreter subset C tersedia. Pengontrol tertanam EyeCon menjalankan
"RoBIOS" kami sendiri (Robot Basic Input Output System) sistem operasi yang
berada di flashROM pengontrol. Ini memungkinkan pemutakhiran pengontrol yang
sangat sederhana hanya dengan mengunduh file sistem baru. Hanya membutuhkan
beberapa detik dan tidak ada peralatan tambahan, karena sirkuit debugger latar
belakang Motorola dan yang dapat ditulisi flash-ROM sudah terintegrasi ke dalam
controller.
RoBIOS menggabungkan program monitor kecil untuk memuat, menyimpan, dan
menjalankan program dengan perpustakaan fungsi pengguna yang mengontrol operasi
semua perangkat on-board dan off-board (lihat Lampiran B.5). Fungsi perpustakaan
antara lain menampilkan teks/grafik pada LCD, membaca status tombol, membaca
data sensor, membaca gambar digital, membaca data posisi robot, mengemudi motor,
antarmuka penggerak v-omega (vZ), dll. Termasuk juga berbasis utas sistem
multitasking dengan semaphore untuk sinkronisasi. Sistem operasi RoBIOS dibahas
secara lebih rinci di Bab B.
Bagian penting lainnya dari sistem operasi EyeCon adalah HDT (Tabel Deskripsi
Perangkat Keras). Ini adalah tabel sistem yang dapat dimuat ke flash-ROM
independen dari versi RoBIOS. Jadi dimungkinkan untuk mengubah konfigurasi
sistem dengan mengubah entri HDT, tanpa menyentuh RoBIOS sistem operasi.
RoBIOS dapat menampilkan HDT saat ini dan memungkinkan pemilihan dan
pengujian setiap komponen sistem yang terdaftar (misalnya sensor inframerah atau
motor DC) dengan rutinitas pengujian khusus komponen.
Gambar 1.7 dari [InroSoft 2006], produsen komersial EyeCon controller,
menunjukkan skema perangkat keras. Dibingkai oleh alamat dan bus data di bagian
atas dan jalur pemilihan chip di bagian bawah adalah komponen sistem utama ROM,
RAM, dan kait untuk I/O digital. Modul LCD adalah memori dipetakan, dan karena
itu terlihat seperti chip RAM khusus dalam skema.
Bagian opsional seperti ekstensi RAM diarsir dalam diagram ini. Digital kamera dapat
dihubungkan melalui port paralel atau buffer FIFO opsional. Sedangkan CPU
Motorola M68332 di sebelah kiri sudah menyediakan satu port serial, kami
menggunakan ST16C552 untuk menambahkan port paralel dan dua port serial lebih
lanjut untuk sistem EyeCon. Serial-1 dikonversi ke level V24 (kisaran +12V hingga –
12V) dengan bantuan chip MAX232. Ini memungkinkan kami untuk menautkan port
serial ini secara langsung ke perangkat lain, seperti PC, Macintosh, atau workstation
untuk program unduh. Dua port serial lainnya, Serial-2 dan Serial-3, tetap pada level
TTL (+5V) untuk menghubungkan perangkat keras komunikasi tingkat TTL lainnya,
seperti modul nirkabel untuk Serial-2 dan modul inframerah nirkabel IRDA untuk
Serial-3.
Sejumlah port CPU dipasangkan dengan komponen sistem EyeCon; semua lain dapat
secara bebas ditugaskan ke sensor atau aktuator. Dengan menggunakan HDT, ini
tugas dapat didefinisikan secara terstruktur dan transparan untuk program pengguna.

© InroSoft, Thomas Bräunl

Gambar 1.7: Skema EyeCon

Pengontrol motor terpasang dan enkoder umpan balik menggunakan: saluran TPU
yang lebih rendah ditambah beberapa pin dari port CPU E, sementara speaker
menggunakan saluran TPU tertinggi. Dua belas saluran TPU dilengkapi dengan
konektor yang cocok untuk servos, yaitu model mobil/motor pesawat dengan kontrol
modulasi lebar pulsa (PWM), sehingga mereka dapat dengan mudah dipasang dan
segera dioperasikan. Tombol input ditautkan ke port CPU F, sedangkan sensor jarak
inframerah (PSD, perangkat sensitif posisi) dapat dihubungkan ke port E atau
beberapa dari masukan digital.
Konverter analog ke digital (A/D) delapan baris terhubung langsung ke CPU. Salah
satu salurannya digunakan untuk mikrofon, dan satu lagi digunakan untuk status
baterai. Enam saluran yang tersisa gratis dan dapat digunakan untuk menghubungkan
sensor analog.
2.3 Antar Muka
Sejumlah antarmuka tersedia di sebagian besar sistem tertanam. Ini adalah input
digital, output digital, dan input analog. Output analog tidak selalu diperlukan dan
juga membutuhkan amplifier tambahan untuk menggerakkan aktuator apa pun.
Sebagai gantinya, motor DC biasanya digerakkan dengan menggunakan saluran
keluaran digital dan teknik berdenyut yang disebut "modulasi lebar pulsa" (PWM).
Mikrokontroler Motorola M68332 sudah menyediakan beberapa jalur I/O digital,
dikelompokkan bersama dalam port. Kami menggunakan port CPU ini seperti yang
dapat dilihat pada diagram skema Gambar 1.7, tetapi juga menyediakan tambah pin
I/O digital melalui kait.

serial 1 serial 2

Gambar 1.8: Pengontrol EyeCon M5, depan dan belakang


Yang paling penting adalah TPU M68332. Ini pada dasarnya adalah CPU kedua yang
terintegrasi pada chip yang sama, tetapi khusus untuk tugas waktu. Ini sangat
menyederhanakan banyak fungsi yang berhubungan dengan waktu, seperti
pembangkitan sinyal periodik atau pulsa menghitung, yang sering diperlukan untuk
aplikasi robotika.
Gambar 1.8 menunjukkan papan EyeCon dengan semua komponen dan antarmukanya
sambungan dari depan dan belakang. Tujuan desain kami adalah untuk membuat
konstruksi robot di sekitar EyeCon sesederhana mungkin. Sebagian besar konektor
antarmuka memungkinkan plug-in langsung komponen perangkat keras. Tidak ada
adaptor atau kabel khusus diperlukan untuk menyambungkan servos, motor DC, atau
sensor PSD ke dalam EyeCon. Hanya perangkat lunak HDT yang perlu diperbarui
hanya dengan mengunduh konfigurasi baru dari PC; maka setiap program pengguna
dapat mengakses yang baru perangkat keras.
Port paralel dan tiga port serial adalah port standar dan dapat digunakan untuk
menghubungkan ke sistem host, pengontrol lain, atau sensor/aktuator kompleks.
Port serial 1 beroperasi pada level V24, sedangkan dua port serial lainnya beroperasi
pada tingkat TTL. Debugger latar belakang Motorola (BDM) adalah fitur khusus dari
pengontrol M68332. Sirkuit tambahan disertakan dalam EyeCon, jadi hanya kabel
diperlukan untuk mengaktifkan BDM dari PC host. BDM dapat digunakan untuk
debug program perakitan menggunakan breakpoints, satu langkah, dan memori atau
tampilan daftar. Ini juga dapat digunakan untuk menginisialisasi flash-ROM jika chip
baru dimasukkan atau sistem operasi terhapus secara tidak sengaja.

Gambar 1.9: Unit EyeBox


Di The University of Western Australia, kami menggunakan kotak yang berdiri
sendiri versi pengontrol EyeCon ("EyeBox" Gambar 1.9) untuk eksperimen lab di
kursus Sistem Tertanam. Mereka digunakan untuk blok pertama percobaan lab sampai
kita beralih ke EyeBot Labcars (Gambar 7.5). Lihat Lampiran E untuk kumpulan
percobaan laboratorium.

2.4 Sistem Operasi


Sistem yang disematkan dapat memiliki apa pun di antara operasi real-time yang
kompleks sistem, seperti Linux, atau hanya program aplikasi tanpa sistem operasi, apa
pun. Itu semua tergantung pada area aplikasi yang dituju. Untuk pengontrol EyeCon,
kami mengembangkan sistem operasi kami sendiri RoBIOS (Robot Basic Input
Output System), yang merupakan sistem operasi real-time yang sangat ramping yang
menyediakan program monitor sebagai antarmuka pengguna, fungsi sistem (termasuk:
multithreading, semaphore, timer), ditambah driver perangkat yang komprehensif
perpustakaan untuk semua jenis robotika dan aplikasi sistem tertanam. Ini termasuk
komunikasi serial/paralel, motor DC, servos, berbagai sensor, grafik/output teks, dan
tombol input. Rinciannya tercantum dalam Lampiran B.5.

User input/output

RoBIOS
User program
Monitor program

RoBIOS Operating system + Library functions

HDT

Hardware

Robot mechanics, actuators, and sensors


Gambar 1.10: Struktur RoBIOS
Program monitor RoBIOS dimulai saat power-up dan menyediakan antarmuka
kontrol yang komprehensif untuk mengunduh dan menjalankan program, memuat dan
menyimpan program dalam flash-ROM, menguji komponen sistem, dan untuk
mengatur sejumlah sistem parameter. Komponen sistem tambahan, terlepas dari
RoBIOS, adalah Tabel Deskripsi Perangkat Keras (HDT, lihat Lampiran C), yang
berfungsi sebagai lapisan abstraksi perangkat keras yang dapat dikonfigurasi
pengguna [Kasper et al. 2000], [Bräunl 2001].
RoBIOS adalah paket perangkat lunak yang berada di flash-ROM pengontrol dan
bertindak di satu sisi sebagai sistem operasi multithreaded dasar dan di sisi lain
sebagai perpustakaan besar fungsi pengguna dan driver untuk antarmuka semua
perangkat on-board dan off-board tersedia untuk pengontrol EyeCon. ROBIOS
menawarkan antarmuka pengguna yang komprehensif yang akan ditampilkan pada
LCD terintegrasi setelah start-up. Di sini pengguna dapat mengunduh, menyimpan,
dan menjalankan program, mengubah pengaturan sistem, dan menguji perangkat
keras apa pun yang terhubung yang telah terdaftar di HDT (lihat Tabel 1.1).

Monitor Program Fungsi Sistem Driver Perangkat


Manajemen Flash-ROM Pengaturan perangkat keras Output LCD
Upgrade OS Manajer memori Input kunci
Unduhan program Penanganan interupsi Kontrol kamera
Dekompresi program Penanganan pengecualian Pemrosesan gambar
Program menjalankan Multithreading Latches
Penyiapan perangkat keras Semaphore konverter A/D
dan uji
Timer RS232, port paralel
Setel ulang menolak. Variabel Audio
Servis, motor
pembuat enkode
antarmuka mengemudi
vZ
Bumper, inframerah,
PSD
Kompas
kendali jarak jauh televisi
Komunikasi radio
Tabel 1.1: Fitur RoBIOS
Struktur RoBIOS dan hubungannya dengan perangkat keras sistem dan program
pengguna ditunjukkan pada Gambar 1.10. Akses perangkat keras dari program
monitor dan program pengguna adalah melalui fungsi perpustakaan RoBIOS. Juga
program monitor berkaitan dengan pengunduhan file program aplikasi,
penyimpanan/mengambil program ke/dari ROM, dll.
Sistem operasi RoBIOS dan HDT terkait keduanya berada di flash-ROM pengontrol,
tetapi mereka berasal dari file biner terpisah dan dapat diunduh secara independen. Ini
memungkinkan pembaruan operasi RoBIOS sistem tanpa harus mengkonfigurasi
ulang HDT dan sebaliknya. Bersama-sama dua binari menempati 128KB pertama dari
flash-ROM; sisa 384KB digunakan untuk menyimpan hingga tiga program pengguna
dengan ukuran maksimum 128KB masing-masing (Gambar 1.11).

Start

RoBIOS (packed)
112KB
HDT (unpacked)
128KB
1. User program
(packing optional)

2. User program
(packing optional) 256KB
3. User program
(packing optional)
384KB
512KB
Gambar 1.11: Tata letak Flash-ROM
Karena RoBIOS terus ditingkatkan dan fitur serta driver baru ditambahkan, gambar
RoBIOS yang tumbuh disimpan dalam bentuk terkompresi di ROM. Program
pengguna juga dapat dikompresi dengan utilitas srec2bin sebelumnya mengunduh.
Saat memulai, pemuat bootstrap mentransfer RoBIOS terkompresi dari ROM ke versi
yang tidak terkompresi dalam RAM. Dengan cara yang sama, RoBIOS membongkar
setiap program pengguna saat menyalin dari ROM ke RAM sebelum dieksekusi.
Program pengguna dan sistem operasi itu sendiri dapat berjalan lebih cepat di RAM
daripada dalam ROM, karena waktu akses memori yang lebih cepat.
Setiap sistem operasi terdiri dari bagian-bagian yang tidak bergantung pada mesin
(misalnya fungsi tingkat yang lebih tinggi) dan suku cadang yang bergantung pada
mesin (misalnya driver perangkat untuk komponen perangkat keras tertentu).
Perawatan telah diambil untuk menjaga bagian yang bergantung pada mesin sekecil
mungkin, untuk dapat melakukan porting ke perangkat keras yang berbeda di masa
depan dengan biaya minimal.
BAB III
KESIMPULAN

Berdasarkan uraian di atas maka dapat disimpulkan bahwa di dalam robot


pengendenali terdapat beberapa sistem yang tersusun yang terdiri dari :
1. Robot seluler
2. Pengontrol tertanam
3. Antar muka
4. Sistem operasi

Anda mungkin juga menyukai