Implementasi Gerakan Langkah Manusia pada Biped Robot
Menggunakan Lego NXT
LAPORAN TUGAS AKHIR
Disusun sebagai syarat kelulusan tingkat sarjana
oleh :
Hardani Maulana / 13503077
PROGRAM STUDI TEKNIK INFORMATIKA
SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA
INSTITUT TEKNOLOGI BANDUNG
2007
ii
Lembar Pengesahan
Program Studi Sarjana Teknik Informatika
Implementasi Gerakan Langkah Manusia pada Biped Robot Menggunakan Lego NXT
Tugas Akhir
Program Studi Sarjana Teknik Informatika ITB
Oleh
Hardani Maulana / 13503077
Telah disetujui dan disahkan sebagai laporan tugas akhir di Bandung, pada tanggal September 2007
Pembimbing
Nur Ulfa Maulidevi, S.T., M.Sc. NIP. 999023503
iii
RINGKASAN
Kesulitan dalam pembuatan biped robot adalah pada aspek perhitungan dalam melakukan pergerakan. Untuk mendapatkan perhitungan tersebut diperlukan juga hal pendukung lain seperti konstruksi dan kemampuan platform robot yang digunakan. Semakin canggih dan beragamnya platform robot yang ada saat ini memungkinkan untuk diimplementasikannya gerakan langkah manusia pada biped robot. Salah satu
platform yang sudah terkenal adalah Lego dengan jenis terbarunya Lego NXT.
Kemampuan Lego NXT untuk diprogram memungkinkan pembuatan biped robot yang akan mengimplementasikan gerakan langkah manusia.
Bahasa NXC dengan bantuan Brix Command Center dan library NXT# dengan bantuan Microsoft Visual Studio adalah dua dari lingkungan pemrograman yang digunakan untuk memprogram Lego NXT dalam implementasi gerakan langkah manusia.
Penilaian tingkat kemiripan gerakan langkah biped robot dengan gerakan langkah manusia dilakukan dengan membandingkan parameter gerakan langkah manusia berupa grafik perubahan sudut, perubahan momen, panjang langkah, frekuensi langkah, kecepatan langkah, dan perbandingan fase gerakan langkah. Dari hasil pengujian yang didapatkan ternyata frekuensi langkah yang dilakukan biped robot masih jauh dari frekuensi langkah manusia. Namun karakteristik gerakan langkah manusia yang lain seperti perubahan sudut, momen, dan gerakan sudah dapat ditiru sehingga biped robot dapat berjalan dengan kedua kakinya.
iv
KATA PENGANTAR
Puji syukur saya panjatkan kepada Allah SWT, karena tanpa ridha-Nya saya tidak akan mampu menyelesaikan tugas akhir yang berjudul ”Implementasi Gerakan Langkah Manusia pada Biped Robot Menggunakan Lego NXT” dengan baik. Mukjizat-Nya pula, yang telah menciptakan keajaiban dalam sistem kompleks gerakan langkah manusia, yang memberikan saya ide untuk tugas akhir ini.
Selama kuliah di Departemen Teknik Informatika ITB hingga diakhiri tahap pengerjaan tugas akhir ini, banyak pihak yang senantiasa membantu saya melewati berbagai macam rintangan dan hambatan serta memberikan dukungan tak henti-hentinya kepada saya. Oleh karena itu, pada kesempatan ini saya ingin mengucapkan terima kasih yang sebesar-besarnya kepada:
1. Ibu Nur Ulfa Maulidevi selaku dosen pembimbing tugas akhir saya. Terima kasih atas semua masukan dan ilmu yang diberikan selama pengerjaan tugas akhir ini. 2. Bapak Rinaldi Munir yang telah bersedia menjadi penguji saya pada saat seminar
dan sidang.
3. Bapak Bugi Wibowo yang telah bersedia menjadi penguji saya pada saat pra sidang dan sidang.
4. Zeddy Iskandar yang telah bersedia meminjamkan Lego NXT untuk digunakan pada tugas akhir saya dan seringkali memberi masukan.
5. Narenda Wicaksono yang telah memberikan banyak masukan dan ide konstruksi awal dari biped robot yang saya buat.
6. Ibu Henny Yusnita Zubir selaku dosen wali saya yang telah membimbing dan menjadi tempat konsultasi selama masa perkuliahan dari awal hingga akhir.
7. Semua dosen Program Studi Teknik Informatika yang telah memberikan banyak ilmu baik akademis maupun non-akademis selama perkuliahan.
8. Bapak Rasidi yang selalu siap sedia di balik jendela ruang tata usaha untuk membantu proses administrasi yang seringkali saya perlukan maupun menjadi teman berbincang di saat senggang.
v
9. Seluruh staf dan karyawan Program Studi Teknik Informatika yang telah memberikan bantuan dan kemudahan hingga saat ini.
10. Kedua orangtua saya di Jakarta, yang selalu memberikan kepercayaan, kasih sayang, dan doa. Juga seluruh keluarga yang telah mendukung saya selama saya berkuliah di Program Studi Teknik Informatika, terutama: Papa Iwan, Mama Popie, kakak-kakak sepupu, serta kedua adik.
11. Keluarga kedua saya selama tinggal di Bandung, di sebuah rumah kecil yang terletak di Cisitu Baru 65: Sony, Bdul, Oky, Putra, Edyson, Gogon. Tidak lupa Bibi dan teman-teman lain yang selalu meramaikan suasana rumah kontrakan kami: Icha, Yudi, Mimi, Dessy, Adhi, Juqi, Anil, Anna, Tsauri, serta kawan-kawan HMT, Terra, dan Salvozesta. Terima kasih untuk suasana seru dan canda tawa yang kalian hadirkan.
12. Teman-teman Persatuan Sepakbola ITB yang telah memberikan momen-momen indah di lapangan sepakbola, juga kesempatan bagi saya untuk berkarya dan menuangkan pikiran, serta tetap membesarkannya hingga saat ini. Memiliki kalian merupakan sebuah kebanggaan tersendiri bagi saya.
13. Teman-teman HMIF yang menjadi rekan selama saya berorganisasi di sana. Terima kasih untuk semua ilmu, nilai-nilai, kenangan, dan kebersamaan yang tercipta.
14. Teman-teman Sangkuriang Studio dengan mimpi besar kami. Perjuangan kita tidak akan pernah berakhir.
15. Rekan-rekan asisten Laboratorium Ilmu Rekayasa Komputasi yang telah bekerjasama selama sekitar 2.5 tahun lebih. Terima kasih atas kerjasamanya selama ini sebagai asisten tetap Lab IRK.
16. Teman-teman IF 2003 yang telah bersama melewati masa-masa kuliah dari tahun pertama hingga terakhir. Tidak akan ada kata yang dapat menggambarkan betapa istimewanya kalian.
17. Rekan satu bimbingan: Rian, Rika, Pramana, dan Donnie. Terima kasih atas kesempatannya untuk saling berbagi ilmu.
18. Teman-teman KMD dan Sangkuriang yang seringkali menjadi tempat persinggahan di kala mengerjakan tugas dan belajar bersama menjelang ujian. Terima kasih atas semua bantuan yang pernah kalian berikan.
vi
19. Tidak lupa beberapa teman yang memberikan masukan dan bantuan dalam proses pembuatan tugas akhir ini: Indi, Ipen, Gusto, Qie, Dewangga, Dean, Okta, Simon, Nadya, Umar, Haekal, dan Boyke.
20. Seluruh mahasiswa ITB yang kenal dan pernah berinteraksi dengan saya lewat berbagai macam kesempatan. Terima kasih atas kehangatan dan kebersamaan yang kalian ciptakan.
21. Semua orang yang tidak bisa saya sebut satu-persatu namun secara tidak langsung memberikan saya masukan baik melalui komentar atau hal apapun sehingga membuka cakrawala berpikir saya dalam merampungkan tugas akhir saya ini.
Semoga tugas akhir ini dapat memberikan manfaat bagi semua pihak yang membutuhkannya. Saya menyadari bahwa tugas akhir ini masih memiliki banyak kekurangan. Oleh karena itu, saran dan kritik dari pembaca sangat diharapkan.
Bandung, September 2007
vii
DAFTAR ISI
Lembar Pengesahan ... ii
RINGKASAN ...iii
KATA PENGANTAR ... iv
DAFTAR ISI ... vii
DAFTAR GAMBAR ... ix
DAFTAR TABEL ... x
DAFTAR ALGORITMA ... xi BAB I PENDAHULUAN ... I-1 I.1 Latar Belakang ... I-1 I.2 Rumusan Masalah ... I-3 I.3 Tujuan ... I-4 I.4 Batasan Masalah ... I-4 I.5 Metodologi ... I-4 I.6 Sistematika Pembahasan ... I-5 BAB II TINJAUAN PUSTAKA ... II-1 II.1 Gerakan Langkah Manusia ... II-1 II.1.1 Momentum Sudut Gerakan Langkah Manusia ... II-2 II.1.2 Trajectory Sendi Gerakan Langkah Manusia ... II-4 II.2 Analisis Biomekanik Langkah Manusia ... II-4 II.2.1 Perhitungan Sudut ... II-5 II.2.2 Perhitungan Momen ... II-6 II.2.3 Pengaruh Massa ... II-7 II.3 Biped Robot ... II-8 II.4 Zero Moment Point (ZMP) ... II-10 II.5 Fase Gerakan Langkah ... II-11 II.6 Pergerakan Langkah Biped Robot yang Menyerupai Manusia ... II-11 II.6.1 Proses Gerakan Satu Langkah ... II-11 II.6.2 Variabel Gerakan Langkah Manusia ... II-12 II.7 Lego NXT ... II-13 II.7.1 Sekilas Mengenai Lego NXT ... II-13 II.7.2 Perangkat Lego NXT: NXT Brick ... II-13
viii
II.7.3 Perangkat Lego NXT: Servo Motor ... II-14 II.8 Library dan Tools yang Digunakan ... II-15 II.8.1 NXC ... II-15 II.8.2 NXT# ... II-15 BAB III ANALISIS DAN PERANCANGAN ... III-1 III.1 Perhitungan Pergerakan Robot ... III-1 III.2 Konstruksi Biped Robot dengan Lego NXT ... III-2 III.3 Perancangan Langkah Biped Robot ... III-3 BAB IV IMPLEMENTASI DAN PENGUJIAN ... IV-1 IV.1 Implementasi Pemrograman Gerakan Langkah Biped Robot ... IV-1 IV.2 Aplikasi Pengujian Langkah Biped Robot ... IV-1 IV.3 Algoritma Gerakan Langkah Biped Robot ... IV-4 IV.3.1 Implementasi Menggunakan NXT# ... IV-4 IV.3.2 Implementasi Menggunakan NXC ... IV-8 IV.4 Hasil Pengujian ... IV-10 IV.4.1 Pengujian Keseimbangan ... IV-10 IV.4.2 Pengujian Ayunan Langkah ... IV-10 IV.5 Pengujian Zero Moment Point (ZMP) ... IV-11 IV.5.1 Perhitungan Pusat Massa ... IV-12 IV.5.1.1 Bagian Badan ... IV-12 IV.5.1.2 Bagian Kaki ... IV-14 IV.5.1.3 Fase Perhitungan Pusat Massa ... IV-15 IV.5.1.4 Hasil Perhitungan Pusat Massa ... IV-17 IV.5.2 Perhitungan ZMP ... IV-19 IV.6 Analisis Gerakan Langkah Biped Robot ... IV-23 IV.6.1 Perubahan Sudut ... IV-23 IV.6.2 Perhitungan Momen ... IV-24 IV.6.3 Variabel Perbandingan Gerakan Langkah Biped Robot dan Manusia IV-25 IV.6.4 Analisis Hasil Perbandingan Gerakan Langkah ... IV-27 BAB V KESIMPULAN DAN SARAN ... V-1 V.1 Kesimpulan ... V-1 V.2 Saran ... V-2 DAFTAR REFERENSI ... xii
ix
DAFTAR GAMBAR
Gambar II-1 Pergerakan Langkah Manusia [AZE01] ... II-1 Gambar II-2 Bidang Dasar Tubuh Manusia [AZE01] ... II-1 Gambar II-3 Pemodelan Manusia [HER06] ... II-2 Gambar II-4 Model Bidang Sagital Manusia ... II-4 Gambar II-5 Perubahan sudut anggota tubuh [FAU98] ... II-5 Gambar II-6 Nilai gaya putar anggota tubuh [FAU98] ... II-7 Gambar II-7 Pengaruh perubahan massa [FAU98] ... II-8 Gambar II-8 Model biped robot [HUA01] ... II-10 Gambar II-9 Stable region dan stability margin [HUA01] ... II-11 Gambar II-10 Brick Lego NXT ... II-13 Gambar II-11 Servo Motor Lego NXT ... II-14 Gambar II-12 Contoh Penulisan Bahasa Pemrograman NXC ... II-15 Gambar II-13 Contoh Penggunaan Library NXT# dengan Bahasa C# ... II-16 Gambar III-1 Rancangan Robot ... III-3 Gambar III-2 Rancangan Gerakan Langkah ... III-4 Gambar III-3 Timeline Gerakan Langkah ... III-4 Gambar IV-1 Antar Muka Aplikasi Pengujian Biped Robot ... IV-2 Gambar IV-2 Proses Satu Langkah Biped Robot ... IV-4 Gambar IV-3 Pemodelan Biped Robot dalam Bidang xy dan xz ... IV-12 Gambar IV-4 Pemodelan Bagian Badan ... IV-13 Gambar IV-5 Perubahan Pusat Massa Kaki ... IV-14 Gambar IV-6 Fase Perhitungan Pusat Massa dan ZMP ... IV-17 Gambar IV-7 Kurva Perbandingan Pusat Massa dan ZMP ... IV-22 Gambar IV-8 Kurva Perbandingan Pusat Massa dan ZMP ... IV-22 Gambar IV-9 Grafik Perubahan Sudut Biped Robot ... IV-23 Gambar IV-10 Grafik Perubahan Momen Biped Robot ... IV-24
x
DAFTAR TABEL
Tabel II-1 Gerakan Langkah Anak (3-19 tahun) [SCH00] ... II-12 Tabel II-2 Perangkat Lego NXT ... II-13 Tabel III-1 Rancangan Langkah Biped Robot ... III-5 Tabel IV-1 Hasil Pengujian Keseimbangan ... IV-10 Tabel IV-2 Hasil Pengujian Ayunan Langkah ... IV-11 Tabel IV-3 Letak Pusat Massa Sumbu-x Bagian Kaki ... IV-14 Tabel IV-4 Fase Perhitungan Pusat Massa ... IV-15 Tabel IV-5 Pusat Massa Per Bagian (Dengan Putaran Badan) ... IV-17 Tabel IV-6 Pusat Massa Per Bagian (Tanpa Putaran Badan) ... IV-18 Tabel IV-7 Pusat Massa Total (Gerakan Langkah dengan Putaran Badan) ... IV-18 Tabel IV-8 Pusat Massa Total (Gerakan Langkah Tanpa Putaran Badan) ... IV-18 Tabel IV-9 Nilai Variabel Kecepatan Untuk Setiap Bagian Dalam Setiap Sumbu IV-20 Tabel IV-10 Nilai Variabel Inersia Untuk Setiap Bagian Dalam Setiap Sumbu ... IV-20 Tabel IV-11 Nilai Variabel Kecepatan Sudut Untuk Setiap Bagian Per Sumbu ... IV-21 Tabel IV-12 ZMP Gerakan Langkah Dengan Putaran Badan ... IV-21 Tabel IV-13 ZMP Gerakan Langkah Tanpa Putaran Badan ... IV-22 Tabel IV-14 Variabel Gerakan Langkah Biped Robot ... IV-25 Tabel IV-15 Variabel Pembanding Gerakan Langkah Manusia ... IV-25 Tabel IV-16 Hasil Penyesuaian Skala Pembanding Dengan Tipe 1 ... IV-26 Tabel IV-17 Hasil Penyesuaian Skala Pembanding Dengan Tipe 2 ... IV-26 Tabel IV-18 Hasil Penyesuaian Skala Pembanding Dengan Tipe 3 ... IV-27 Tabel IV-19 Hasil Penyesuaian Skala Pembanding Dengan Tipe 4 ... IV-27 Tabel IV-20 Persentase Perbandingan Dengan Gerakan Langkah Manusia ... IV-28
xi
DAFTAR ALGORITMA
Algoritma III-1 Fungsi Setengah Langkah Kaki Dengan Putaran Badan ... IV-5 Algoritma III-2 Fungsi Setengah Langkah Kaki Tanpa Putaran Badan ... IV-6 Algoritma III-3 Fungsi Kaki Ayun ... IV-6 Algoritma III-4 Fungsi Kaki Tumpu ... IV-7 Algoritma III-5 Fungsi Pemutar Pinggang ... IV-7 Algoritma III-7 Gerakan Langkah Biped Robot Dengan Putaran Badan ... IV-8 Algoritma III-8 Gerakan Langkah Biped Robot Dengan Putaran Badan ... IV-9