bab 1 pendahuluan

advertisement
BAB 1
PENDAHULUAN
1.1
Latar Belakang
Sistem operasi adalah kumpulan dari program-program yang mengatur
hardware pada sebuah komputer, dimana tugas sistem operasi menyediakan
lingkungan untuk menjalankan aplikasi end user diatas sistem operasi secara nyaman
dan efisien. Contoh-contoh sistem operasi adalah Linux, Windows, Mac
OS(Operating System) dimana OS-OS tersebut adalah GPOS (General Purpose
Operating System). GPOS umumnya digunakan untuk aplikasi yang bersifat normal
atau sehari-hari tanpa kebutuhan khusus, sehingga pada GPOS tidak ada kemampuan
untuk mendapat sifat deterministic ataupun time critical seperti RTOS (Real Time
Operating System). RTOS atau sistem operasi waktu nyata merupakan jenis OS yang
mampu memproses berbagai task dengan tingkatan prioritas yang dapat di atur
sehingga dapat menghasilkan hasil yang dapat di prediksi dan presisi dalam
menjalankan sebuah task yang sifatnya critical. Beberapa contoh RTOS adalah
QNX, RTAI, RTLinux, FreeRTOS. RTOS tidak secara langsung akan meningkatkan
performa atau kecepatan eksekusi program pada sebuah system, namun dengan
pengaturan prioritas dan pembagian CPU time yang diatur dengan algoritma realtime adalah keuntungan utama sebuah RTOS dibandingkan dengan sistem operasi
general-purpose karena dengan algoritma real-time, sebuah RTOS dapat
menjalankan sebuah task dengan spesifikasi hardware yang lebih rendah jika di
1
2
bandingkan dengan GPOS dengan spesifikasi hardware yang lebih tinggi ketika
kedua sistem tersebut di jalankan pada kondisi terbebani.
Salah satu contoh aplikasi yang membutuhkan OS yang dapat bekerja dengan
waktu nyata (realtime) dan berbasis multiple task (loaded condition) pada satu waktu
adalah airbag pada mobil. Airbag bekerja dengan cara membaca sensor-sensor
benturan yang terdapat di sekeliling mobil secara terus menerus. Dengan pembacaan
yang demikian padat, ketika sensor memberikan trigger saat terjadi tabrakan maka
pada kurun waktu yang sangat singkat balon airbag harus terbuka dan
menyelamatkan
penumpangnya.
Prediktibilitas
pada
kondisi
apapun
dan
responsivitas terhadap sensor input dan output balon pada airbag deployment
merupakan kunci utama keberhasilan sistem airbag yang bekerja secara real time.
1.2
Formulasi Masalah
 Apakah sistem mampu memproses seluruh hasil input sinyal dari sensor
ultrasonik dalam waktu yang lebih singkat dengan menggunakan Real
Time Operating System?
 Apakah sistem reliable dalam memproses data?
 Apakah sistem responsif terhadap input yang diterima dan output yang di
keluarkan terhadap perubahan lingkungan?
 Apakah sistem akurat dalam membaca hasil data input dan memprosesnya
hingga menghasilkan data output?
3
1.3
Tujuan dan Manfaat
Tujuan penelitian ini adalah :
 Untuk mempelajari, mengimplementasi dan menggunakan Real Time
Operating System(Linux RT-Patched) pada Single Board Computer.
 Untuk melakukan pemograman aplikasi menggunakan Qt untuk dijalankan
diatas Linux RT-Patched.
 Untuk mengembangkan aplikasi berbasis real time yang menggunakan
sensor ultrasonik sebagai input yang mengontrol prototype.
Manfaat yang didapatkan antara lain:
 Menambah pengetahuan, pengalaman dan wawasan, khususnya mengenai
pengetahuan mengenai Linux RT-Patched sebagai RTOS.
 Mengerti kelebihan dan kekurangan dari implementasi Single Board
Computer (SBC) menggunakan Pandaboard yang berbasis TI-OMAP 4460.
 Memperdalam
pembelajaran,
penggunaan
dan
aplikasi
bahasa
pemrograman C/C++ dengan Qt library.
 Membandingkan
dan
mengerti
mengenai
sensor
ultrasonik
dan
implementasinya.
 Mengimplementasikan, mengembangkan dan menghasilkan sebuah sistem
keseluruhan yang berbasis RTOS.
1.4
Ruang Lingkup
Dalam membangun perancangan penelitian ini, terdapat tiga kelompok
berbeda yang menjadi basis penelitian ini yaitu hardware, bahasa pemrograman, dan
4
sistem operasi. Hardware yang dipergunakan adalah Single Board Computer (SBC)
Pandaboard berbasis prosesor TI-OMAP 4460, sensor ultrasonik HC-SR04, dan
mobile robot dengan continuous wheel.
Bahasa pemrograman yang digunakan dalam penelitian ini adalah bahasa
C/C++. Penggunaan bahasa C/C++ dipilih karena memiliki kompatibilitas dengan
program SDK(Software Development Kit) Qt. Bahasa C/C++ jg dapat digunakan
baik untuk pemograman dengan tingkat abstraksi yang tinggi ataupun dengan tingkat
abstraksi yang rendah dan dapat digunakan untuk implementasi real-time program.
Dalam pemograman khususnya gerakan robotic device, algoritma berbasis PID
ataupun closed-loop control bukan menjadi bagian penelitian ini karena penelitian ini
memiliki titik berat kepada penggunaan RTOS sehinnga menggunakan algoritma
robot yang sederhana sebagai implementasi bukti hasil respon RTOS.
Sistem operasi yang digunakan adalah Linux Ubuntu dengan RT-patched
kernel. Penggunaan OS Linux RT-patched pada perancangan ini dikarenakan
sifatnya open source dan tidak membatasi akses kernel untuk dimodifikasi oleh
penggunanya. Selain itu, pemakaian OS Linux RT-patched memudahkan proses
pemrograman mobile robot ini karena dengan RT-patched, sebuah process dari userspace dengan prioritas yang lebih tinggi dapat mendahului (preempt) process yang
ada pada kernel. Pembuatan program dari sisi user-space tentunya akan lebih mudah
karena lebih umum dibandingkan dengan kernel programming. Penggunaan library
Qt dalam Linux juga dapat di aplikasikan untuk mempermudah pemrograman
berbasis multithread dan realtime.
Terdapat berbagai pembatasan dalam penelitian ini, antara lain.

Tidak memasukan faktor efisiensi daya.

Tidak membandingkan dengan RTOS jenis lain.
5

Tidak memperdulikan masalah medium untuk sensor ultrasonik.

Robot hasil rancangan hanya bergerak dengan algoritma sederhana tanpa
feedback pada sistem dan tanpa kemampuan self-learning.
Download