MOBILE ROBOT
OLEH :
YANA INAYATULLAH
1806030071
KUPANG
2022
BAB I
PENDAHULUAN
1.3 Tujuan
Adapun tujuan dari pembuatan paper ini adalah untuk mengetahui sistem kerja yang
terdapat di dalam robot pengendali.
BAB II
DASAR TEORI
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).
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).
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.
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.
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.
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
User input/output
RoBIOS
User program
Monitor program
HDT
Hardware
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