BAB I PENDAHULUAN
1.1 Latar Belakang
Saat ini minat pada bidang robotika di Indonesia semakin marak, salah satunya ditandai dengan semakin banyaknya kompetisi robot yang diadakan di Indonesia.
Sayangnya dalam pembelajaran robotika, siswa atau mahasiswa sering terhambat akan mahalnya peralatan robot atau komponen robot. Permasalahan ini dapat diatasi dengan cara menggunakan aplikasi simulator robot. Hingga saat ini banyak simulator robot yang dapat diunduh dari Internet dan bersifat gratis. Walau begitu masih sedikit simulator yang ditujukan untuk mempelajari prinsip dasar gerakan robot, khususnya gerakan robot manipulator. Padahal materi tersebut adalah salah satu materi dasar dari ilmu robotika. Berangkat dari kebutuhan ini, penulis bersama tim simulator mengembangkan aplikasi Simulator Robot Manipulator Untuk Pembelajaran dan Perancangan (SIRUPP).
Berdasarkan penelusuran yang telah lakukan, pengembangan simulator robot manipulator telah dilakukan. Beberapa diantaranya adalah sebagai berikut.
1. ”RoboSim” oleh Dr. Thomas Braunl (1996). Thomas Braunl mengembangkan simulator berbasis C dan Java untuk mensimulasikan robot manipulator dengan 6 derajat kebebasan[2]. Perangkat lunak ini telah berhasil untuk diterapkan pada robot yang ada di laboratoriumnya. Sayangnya tidak disebutkan jenis dan tipe robotnya.
2. ”Perangkat Lunak Visualisasi Tiga Dimensi Kinematika Lengan Robot” oleh Rachmat Hariyanto (1999). Rachmat Hariyanto mengembangkan Vikilero3D yang ditujukan sebagai perangkat lunak untuk melakukan perancangan dan simulasi lengan robot[12]. Analisis dan perancangan desain simulator dilakukan dengan menggunakan metoda Coad dan Yordon, dan untuk pengembangan perangkat lunaknya digunakan C++ dan OpenGL. Vikilero3D telah berhasil menjalankan fungsionalitasnya yaitu untuk melakukan perancangan dan
3. ”Modelling dan Simulasi Suatu Sistem Lengan Robot” oleh Ir. Wahidin Wahab, MSc, Phd. Pemodelan dan simulasi lengan robot yang dikembangkan oleh Wahidin Wahab menekankan pada dinamika lengan robot[15]. Dimana visualisasi pemodelan hanya diperlihatkan dengan garis dan titik yang melambangkan link dan joint. Pemodelan dan simulasi tersebut dikembangkan menggunakan bahasa ASCL (Advanced Continous Simulation Language).
Dari tiga pengembangan yang telah disebutkan sebelumnya, diketahui bahwa pengembangan simulator robot manipulator hanya fokus pada sebagian aspek simulator robot. Misalnya Robosim hanya menekankan pada visualisasi dan pengendalian robot. Kemudian Vikilero lebih menitikberatkan pada aspek perancangan robot manipulator. Sedangkan penelitian oleh Ir Wahidin Wahab, MSc, Phd. menekankan pada pemodelan dan simulasi pada dinamika lengan.
Belum ada aplikasi yang memiliki fungsi perancangan dan pembelajaran robot manipulator. Oleh karena itu SIRUPP dirancang untuk memiliki empat fungsi utama, yaitu untuk mempelajari kinematika robot manipulator, memudahkan dalam perancangan robot manipulator, memperlihatkan visualisasi 3D gerakan robot manipulator dalam sebuah dunia virtual, dan untuk menjadi antarmuka ke unit kendali lengan robot PUMA 206.
Salah satu bagian utama dari aplikasi SIRUPP adalah modul simulator yang akan mensimulasikan perilaku robot dalam dunia virtual, yang pada diagram blok di atas menjadi bagian dari subsistem pemodelan. Modul simulator yang dibangun akan menggunakan physics engine sebagai perangkat untuk melakukan simulasi fisika. Physics engine adalah sebuah program komputer yang menyimulasikan model fisika Newtonian, menggunakan variable-variabel seperti massa, kecepatan, gesekan dan hambatan angin. Physics engine dapat menyimulasikan dan memprediksi efek-efek pada beberapa kondisi yang berbeda yang kurang lebih sama dengan apa yang akan terjadi di dunia nyata. Physics engine banyak digunakan pada simulasi sains dan game komputer. Physics engine biasanya berbentuk pustaka yang dapat digabungkan dengan komponen-komponen lain untuk membentuk sebuah aplikasi yang kompleks. Saat ini terdapat cukup banyak physics engine, baik yang bersifat komersial, maupun yang open source. Beberapa physics engine yang banyak digunakan antara lain PhysX, Havok, Newton, Open Dynamics Engine (ODE), dan Bullet.
Penggunaan physics engine untuk melakukan simulasi robot telah dilakukan pada beberapa penelitian antara lain oleh Pepper, Balakirsky, dan Scrapper (2007)[11]. Penelitian tersebut menggunakan Karma Physics Engine, yang merupakan physics engine pada game Unreal Tournament. Sebuah penelitian yang dilakukan NASA oleh Lorenzo Flückiger, dkk[6] menggunakan Mission Simulation Dynamics Engine, yang dikembangkan dari Open Dynamics Engine (ODE).
Tantangan yang muncul dalam membuat simulator adalah bagaimana mendapatkan hasil simulasi yang sama atau mendekati dengan perilaku sistem yang disimulasi. Pada simulator berbasis physics engine yang akan dikembangkan, akan diteliti parameter-parameter pada simulasi fisika yang harus ditala supaya diperoleh hasil simulasi yang valid dibandingkan dengan perilaku robot sesungguhnya.
1.2 Perumusan Masalah
Masalah yang akan dibahas dan dicari pemecahannya pada penelitian ini yaitu:
1. cara membangun model robot virtual.dalam simulator robot yang bersesuaian dengan model kinematika dan dinamika robot yang sesungguhnya, dalam kasus penelitian ini adalah robot PUMA 260.
2. cara mengimplementasikan modul simulator sesuai dengan model yang telah dibangun dan mengintegrasikannya dalam kerangka kerja aplikasi lengkap Simulasi Robot Manipulator untuk Pembelajaran dan Perancangan (SIRUPP).
1.3 Tujuan Penelitian
Tujuan dari penelitian ini adalah mendesain dan mengimplementasikan simulator robot manipulator berdasarkan model kinematika dan dinamika robot, sedemikian rupa agar gerakan robot virtual hasil simulasi mendekati lintasan dan waktu tanggap gerakan robot sesungguhnya, dalam kasus penelitian ini adalah robot PUMA 260.
1.4 Kontribusi Penelitian
Kontribusi penelitian ini adalah sebagai berikut.
1. Menghasilkan modul simulator berbasis physics engine yang mampu menyimulasikan robot manipulator.
2. Menyusun metoda validasi hasil simulasi dari simulator berbasis physics engine dibandingkan dengan perilaku sesungguhnya, diterapkan untuk kasus robot manipulator. Dengan metoda tersebut, ditentukan seperangkat parameter pada physics engine yang terkait dan nilai-nilai parameter yang sesuai untuk kasus robot manipulator PUMA 260.
3. Menghasilkan sebuah kerangka kerja aplikasi simulator berbasis physics
1.5 Pembatasan Masalah
Batasan masalah dalam penulisan tesis ini sebagai berikut.
1. Model robot manipulator yang digunakan adalah robot manipulator dengan 6 derajat kebebasan, yang diturunkan dari robot PUMA 260
2. Physics engine yang digunakan untuk membangun simulator adalah Open Dynamics Engine (ODE), sebuah pustaka physics engine yang bersifat open source. Walaupun demikian, kerangka kerja yang dibangun memungkinkan penggunaan physics engine yang lain untuk pengembangan selanjutnya.
3. Validasi simulasi akan dilakukan terhadap model robot yang diturunkan dari PUMA 260, dibandingkan dengan perilaku robot PUMA 260. Data dari robot riil akan diperoleh dari sebuah robot PUMA 260 yang dikendalikan dengan sebuah unit kendali berbasis mikrokontroller PIC- Servo.
4. Metoda pengendalian robot riil yang digunakan adalah profiling kecepatan trapezoidal dengan menggunakan filter kendali Proporsional-Integral- Derivatif (PID).
5. Validasi hasil simulasi yang dilakukan akan meninjau tanggapan sistem terhadap sinyal undak, yaitu perubahan parameter theta pada sendi tertentu robot manipulator. Analisa akan dilakukan dengan meninjau galat antara theta robot riil dengan theta robot virtual.
Gambar I.2 Mekanisme validasi hasil simulasi.
1.6 Metoda Penelitian
Metoda yang digunakan untuk menyelesaikan permasalahan dalam thesis ini adalah sebagai berikut.
1. Studi literatur, dilakukan untuk mengetahui penelitian-penelitian dalam bidang kajian simulasi robot, baik secara umum, maupun simulasi berbasis physics engine dan hasil yang telah diperoleh dalam bidang tersebut.
2. Menyusun spesifikasi kerangka kerja aplikasi yang harus dipenuhi oleh modul simulator berbasis physics engine. Framework tersebut juga harus mampu mengintegrasikan modul-modul lain yang dikembangkan anggota tim yang lain, seperti subsistem/modul koneksi jaringan dan modul perencanaan gerak. Selanjutnya dibangun sebuah framework aplikasi untuk mengakomodasi kebutuhan-kebutuhan tersebut.
3. Membangun modul simulator berbasis physics engine dengan menggunakan metoda pemrograman berorientasi objek dan mengintegrasikan modul tersebut dengan framework aplikasi SIRUPP.
4. Memodelkan robot PUMA 260 menjadi model robot virtual dan memodelkan metoda pengendalian yang digunakan untuk mengendalikan robot riil menjadi model pengendalian robot virtual.
5. Menggunakan modul yang telah dikembangkan untuk melakukan simulasi robot dan membandingkan hasil simulasi dengan perilaku robot sesungguhnya, dalam hal ini adalah PUMA 260. Selanjutnya menentukan parameter-parameter physics engine yang bersesuaian, dan mencari nilai- nilai yang tepat untuk parameter-parameter tersebut, sehingga diperoleh hasil simulasi yang valid dengan perilaku robot sesungguhnya.
6. Melakukan analisis terhadap hasil pengujian dan menyusun rekomendasi.
1.7 Sistematika Penulisan
Tesis ini terdiri dari lima bab, dimana sistematika penulisannya sebagai berikut.
BAB I. PENDAHULUAN, berisi tentang latar belakang, perumusan masalah, tujuan penelitian, kontribusi penelitian, batasan masalah, metoda penelitian, dan sistematika penulisan.
BAB II. TINJAUAN PUSTAKA, berisi tentang uraian materi sebagai landasan penelitian yang dilakukan, yaitu kinematika dan dinamika robot manipulator, physics engine, dan pengendalian robot riil dengan unit kendali berbasis PIC- Servo.
BAB III. PENGEMBANGAN MODUL SIMULATOR BERBASIS PHYSICS ENGINE, membahas mengenai spesifikasi modul simulator berbasis physics engine yang akan dibangun, serta desain dan implementasi modul tersebut. Bab ini juga mencakup penjelasan mengenai hubungan modul simulator dengan subsistem-subsistem lain dalam aplikasi Simulasi Robot Manipulator untuk Pembelajaran dan Perancangan. (SIRUPP).
BAB IV. PENGUJIAN DAN PEMBAHASAN, membahas mengenai pengujian fungsional dan pengujian validitas simulasi dari modul simulator. Hasil pengujian aplikasi tersebut kemudian dianalisa untuk mendapatkan kesimpulan.
BAB V. KESIMPULAN DAN SARAN, mengemukakan kesimpulan dari keseluruhan materi tesis dan saran untuk pengembangan sistem selanjutnya