Laporan KP 101511019

75
Pembuatan dan Pemrograman Soccer Robot Untuk Pengikutsertaan Pertandingan Robo Soccer Humanoid League POLBAN LABORATORY OF ROBOTICS LAPORAN KERJA PRAKTEK Diajukan untuk memenuhi syarat kelulusan Mata Kuliah Kerja Praktek Disusun oleh : Muhammad Taufik Hidayat NIM. 101511019 PROGRAM DIPLOMA III TEKNIK KOMPUTER DAN INFORMATIKA POLITEKNIK NEGERI BANDUNG 2012

Transcript of Laporan KP 101511019

Pembuatan dan Pemrograman Soccer Robot

Untuk Pengikutsertaan Pertandingan

Robo Soccer Humanoid League

POLBAN LABORATORY

OF ROBOTICS

LAPORAN KERJA PRAKTEK

Diajukan untuk memenuhi syarat kelulusan Mata Kuliah Kerja Praktek

Disusun oleh :

Muhammad Taufik Hidayat NIM. 101511019

PROGRAM DIPLOMA III TEKNIK KOMPUTER DAN INFORMATIKA

POLITEKNIK NEGERI BANDUNG

2012

ii

Pembuatan dan Pemrograman Soccer Robot

Untuk Pengikutsertaan Pertandingan

Robo Soccer Humanoid League

POLBAN LABORATORY

OF ROBOTICS

Disusun oleh :

Muhammad Taufik Hidayat NIM.101511019

Laporan Kerja Praktek ini Telah Diperiksa dan Disahkan

di Bandung, Tanggal

Pembimbing JTK Polban,

Setiadi Rachmat, M.Eng.

NIP.19690404 199803 1 001

Pembimbing Industri,

Dr. Eril Mozef, MS., DEA

NIP. 132262138

Ketua Program Studi D III Teknik Informatika

JTK Polban

Irwan Setiawan, S.Si, M.T.

NIP. 19800419 200501 1 002

iii

KATA PENGANTAR

Segala puji dan syukur saya panjatkan kehadirat Allah SWT karena atas berkat

rahmat dan hidayah-Nya kita masih diberikan kesehatan dan keselamatan. Shalawat

serta salam tidak lupa saya ucapkan pada junjungan kita Nabi Besar Muhammad

SAW, beserta keluarga, sahabat dan seluruh umatnya hingga akhir zaman dimana

semoga kita termasuk didalamnya.

Pada kesempatan kali ini, penulis menyampaikan rasa terimakasih kepada:

Bapak Eril Mozef, selaku pembimbing sekaligus penanggung jawab yang terkait

dengan tempat diselenggarakannya kerja praktik, yang dalam hal ini ialah

laboratorium robotika Politeknik Negeri Bandung. Terimakasih atas kesempatan

yang telah diberikan kepada penulis untuk melakukan kerja praktik di

laboratorium tersebut dan segala fasilitas yang diberikan guna menunjang

pelaksanaan kerja praktik dengan baik.

Bapak Setiadi Rachmat, selaku pembimbing kerja praktik dari pihak jurusan.

Terimakasih kami ucapkan atas perhatian dan bimbingan bapak.

Tim kerja praktik Jurusan Teknik Komputer dan Informatika Politeknik Negeri

Bandung tahun 2010 yang tidak bisa disebutkan satu persatu. Terima kasih telah

memfasilitasi, memberikan pembekalan serta motivasi untuk melaksanakan kerja

praktik ini.

Seluruh pihak yang telah terlibat dalam kelancaran kerja praktik ini dan belum

disebutkan di atas, penulis ucapkan terima kasih.

Terakhir, kepada rekan-rekan satu tempat kerja praktik yang telah bersama-sama

belajar, menimba ilmu dari apa yang telah kita lakukan selama berlangsungnya kerja

praktik ini, semoga apa yang kita dapatkan bermanfaat untuk bekal kita kedepan.

Bandung, Agustus 2012

Penulis

iv

ABSTRAKSI

Laboratorium robotika merupakan tempat bagi tim Robotika Politeknik Negeri

Bandung (Polban) sebagai salah satu UKM yang bergerak dalam bidang pembuatan

dan pemrograman robot untuk keperluan kompetisi robot yang diselenggarakan setiap

tahun oleh DIKTI. Bertemunya tujuan tim robot untuk menjuarai kompetisi tersebut

dengan kesempatan kerja praktik yang diselenggarakan Jurusan Teknik Komputer

(JTK) Politeknik Negeri Bandung membuat kami sebagai anggota tim robotika

sekaligus mahasiswa JTK berkesempatan untuk melaksanakan kerja praktik pada

laboratorium robotika milik Polban.

Kerja praktik yang dilakukan melibatkan pembuatan robot untuk salah satu

kategori kompetisi robot, yakni Robo Soccer. Jenis kompetisi ini mengharuskan

dibuatnya robot humanoid sehingga mampu bertanding sepak bola dengan sesama

robot soccer lainnya. Untuk keperluan tersebut, digunakanlah sebuah kit robot yang

merupakan komponen-komponen pembentuk rangka robot yang berbentuk sedimikian

sehingga mudah untuk dibuat robot untuk kemudian dapat diprogram.

Pada pembuatan dan pemrograman robot yang dilakukan selama kerja praktik,

yang dikerjakan masih terbatas pada pembuatan robot dalam memenuhi kebutuhan

kemampuan untuk dapat berjalan dengan baik. Walaupun terasa seperti hal yang

sederhana, namun pada kenyataannya banyak ditemui kendala selama dilakukannya

kerja praktik. Hal tersebut disebabkan antara lain karena dilakukannya pembuatan

rangka robot yang menyesuaikan kebutuhan kompetisi sehingga gerakan jalan

standard yang diberikan oleh pabrik perlu dilakukan penyesuaian dengan tepat.

Pelaksanaan kerja praktik ini hanya berlangsung sekitar satu bulan dikarenakan

waktu yang disediakan oleh jurusan untuk pelaksanaan kerja praktik telah terpotong

oleh pengerjaan robot lainnya, yakni robot untuk kejuaraan DIKTI dalam bidang

robot seni dan pelaksanaan UAS jurusan yang tertunda.

v

DAFTAR ISI

KATA PENGANTAR ..................................................................................................iii

ABSTRAKSI ................................................................................................................ iv

DAFTAR ISI .................................................................................................................. v

DAFTAR TABEL ........................................................................................................ vii

DAFTAR GAMBAR ..................................................................................................viii

DAFTAR LAMPIRAN ................................................................................................. ix

BAB I PENDAHULUAN ......................................................................................... 1

I.1 Latar Belakang KP .......................................................................................... 1

I.2 Perumusan/Identifikasi Masalah ..................................................................... 1

I.3 Ruang Lingkup KP .......................................................................................... 2

I.4 Tujuan KP ....................................................................................................... 3

I.5 Tahapan KP ..................................................................................................... 3

I.6 Lokasi dan Waktu KP ..................................................................................... 3

I.7 Sistematika Penulisan ...................................................................................... 4

BAB II PROFIL PERUSAHAAN ............................................................................ 5

II.1 Tinjauan Umum Perusahaan ........................................................................... 5

II.2 Deskripsi Kerja ................................................................................................ 5

BAB III PANGETAHUAN DAN PERANGKAT PENDUKUNG ......................... 6

III.1 Pengetahuan Pendukung .............................................................................. 6

III.2 Perangkat Pendukung .................................................................................. 7

BAB IV ANALISIS DAN EVALUASI ................................................................... 9

IV.1 Gambaran Sistem Robot Bioloid Premium ................................................. 9

IV.2 Analisis Elemen Sistem ............................................................................. 10

IV.3 Evaluasi Hasil Analisis .............................................................................. 15

IV.4 Kesimpulan Requirement .......................................................................... 16

BAB V PERANCANGAN ..................................................................................... 17

BAB VI IMPLEMENTASI .................................................................................... 23

V.1 Implementasi Gyroscope ............................................................................... 23

V.2 Implementasi Modul Pandangan ................................................................... 31

vi

BAB VII PENUTUP ............................................................................................... 34

VII.1 Kesimpulan ................................................................................................ 34

VII.2 Saran .......................................................................................................... 35

DAFTAR PUSTAKA .................................................................................................. 36

LAMPIRAN ................................................................................................................. 37

vii

DAFTAR TABEL

Tabel 1. Spesifikasi Gyroscope ............................................................................... 12

Tabel 2. Daftar ID tiap servo yang terhubung dengan CM-510 .............................. 20

Tabel 3. Nilai-nilai yang terdapat dalam kotak Region Growing ............................ 32

viii

DAFTAR GAMBAR

Gambar 1. Logo Unit Kegiatan Mahasiswa Robotika Polban ............................... 5

Gambar 2. Contoh kode yang memiliki tipe file *.tsk ........................................... 7

Gambar 3. RoboPlus Motion untuk membuat gerakan robot ................................. 8

Gambar 4. Penampakan RoboPlus Manager .......................................................... 8

Gambar 5. CM-510 ............................................................................................... 10

Gambar 6. Dynamixel AX-12A ........................................................................... 11

Gambar 7. Gyroscope 2-axis ................................................................................ 12

Gambar 8. Alur komunikasi HaViMoGUI terhadap HaViMo ............................. 13

Gambar 9. Alur sistem robot Bioloid ................................................................... 14

Gambar 10. Ilustrasi pemasangan bahu kanan bagian dalam ................................ 18

Gambar 11. Ilustrasi pemasangan servo untuk lengan kanan ................................ 18

Gambar 12. Ilustrasi pemasangan servo pad badan bagian bawah ........................ 19

Gambar 13. (A) Ilustrasi pemasangan servo pada kedua kaki. (B) Ilustrasi

komposisi pemasangan servo pada kaki kanan ............................................................ 19

Gambar 14. Ilustrasi servo robot beserta ID-nya ................................................... 21

Gambar 15. Wujud Robot Bioloid Jenis Humanoid Tipe-A .................................. 22

Gambar 16. Potongan kode proses inisialisasi gyro (kalibrasi) ............................. 25

Gambar 17. Kendali proporsional .......................................................................... 27

Gambar 18. Grafik perbandingan sinyal dengan menggunakan kendali P (A) dan

tanpa menggunakan kendali P (B) ............................................................................... 28

Gambar 19. Pengolahan kendali P dari nilai gyroscope ........................................ 28

Gambar 20. Potongan kode penerapan variabel offset pada servo ........................ 29

Gambar 21. Flowchart pengolahan gambar menggunakan HaViMo..................... 31

ix

DAFTAR LAMPIRAN

Logbook 1. Pengerjaan Robot Seni ....................................................................... 37

Logbook 2. Logbook Kerja Praktik Pekan Pertama .............................................. 42

Logbook 3. Logbook KP Pekan Kedua ................................................................. 48

Logbook 4. Logbook KP Pekan Ketiga ................................................................. 54

Logbook 5. Logbook KP Pekan Keempat ............................................................. 60

1

BAB I

PENDAHULUAN

I.1 Latar Belakang KP

Kerja Praktik (KP) merupakan salah satu mata kuliah yang terdapat dalam

kurikulum Jurusan Teknik Komputer (JTK).Mata kuliah ini diperuntukkan bagi

mahasiswa/i JTK sebagai sarana untuk dapat menunjukkan kemampuan dan

keahliahlian pada dunia kerja secara langsung sekaligus agar dapat memperoleh

softskill dan hardskill tambahan yang belum sempat diterima oleh mahasiswa/i.

Pada tahun 2012, Kerja Praktik dilaksanakan selama lebih kurang dua bulan,

dimulai dari tanggal pertengahan Juni hingga pertengahan Agustus.Dengan bekal

softskill dan hardskill yang telah diberikan jurusan selama empat semester

diharapkan mahasiswa/i dapat turut membantu pihak industri/perusahaan dalam

mengerjakan pekerjaan-pekerjaannya khususnya yang terkait dengan proyek IT

yang sedang dikerjakan oleh industri/perusahaan tersebut.

I.2 Perumusan/Identifikasi Masalah

Kompetisi robotika di Indonesia yang diselenggarakan oleh DIKTI

merupakan kompetisi tahunan yang diikuti kampus-kampus di seluruh Indonesia.

Polban merupakan salah satu kampus yang tim robotikanya aktif mengikuti

kompetisi tersebut dan telah mampu meraih prestasi juara yang memuaskan pada

beberapa kategori perlombaan, khususnya kategori pemadam api beroda.

Tim robotika Polban merupakan tim yang biasa mempersiapkan robotnya jauh

sebelum diselenggarakannya kompetisi guna membuat robot yang handal agar

mampu kembali mejuarai kompetisi berikutnya.Seperti kompetisi sebelumnya,

untuk kompetisi robot mendatang, Polban berkeinginan mengikuti divisi robot

cerdas kategori robot soccer.

Pada kompetisi sebelumnya, tim robotika kategori robot soccer belum berhasil

menjadi juara dikarenakan beberapa hal yang kurang dipersiapkan dengan baik

karena memang waktu yang diluangkan oleh tim dalam mebuat robot sangat

sedikit sekali dan pembuatan yang tergolong mendadak mendekati hari kompetisi.

Salah satu kendala yang terlihat sangat menghambat tim dalam menjuarai

2

kompetisi yang lalu yaitu robot masih tidak mampu berjalan dengan baik

dikarenakan adanya perubahan dimensi robot sehingga tidak lagi mendukung

gerakan jalan robot yang sesuai untuk dimensi robot yang asli buatan pabrikan kit

robotyang dimiliki sehingga robot sering sekali terjatuh ketika bertanding.Hal

tersebut membuat robot tidak dapat bertanding dengan baik sehingga kalah dalam

pertandingannya. Hal lainnya yang menjadi penghambat ialah tidak dipenuhinya

aturan pertandingan yang mengharuskan robot soccer pada satu tim memiliki

wireless dengan maksud agar robot dapat dikontrol oleh wasit untuk memulai

pertandingan sekaligus agar robot sesama rekan tim dapat saling melakukan

komunikasi sehingga tercipta kerjasama tim dengan baik. Tidak terpenuhinya

aturan tersebut membuat tim dikenakan penalty waktu sehingga tim harus

menunggu selama sekitar tig puluh detik setelah pertandingan dimulai baru dapat

mengikuti pertandingan tersebut.

Belajar melalui pengalaman agar kesalahan yang dilakukan tidak terjadi

kembalipada kompetisi robot soccer berikutnya, maka perlu disiapkan dengan

matang gerakan robot sehingga mampu bertanding dengan baik, salah satunya

ialah gerakan jalan robot sehingga robot tidak terlalu sering terjatuh. Selain itu

diperlukan pula pemahaman wireless untuk bisa ditanamkan pada robot sehingga

mampu mendukung kebutuhan robot agar mampu saling berkomunikasi untuk

menampilkan strategi permainan yang baik yang pada akhirnya mampu menjuarai

kompetisi.

I.3 Ruang Lingkup KP

Ruang lingkup pekerjaan yang dilakukan selama masa kerja praktik terbatas

pada perakitan robot hingga pemrograman robot untuk memenuhi kebutuhan

berjalan robot memanfaatkan fasilitas sensor gyroscope dan perangkat kemera

HaViMo yang berperan sebagai vision module untuk keperluan pendeteksian bola.

Pemrograman dilakukan menggunakan bahasa tingkat tinggi yang disediakan

oleh pabrik dan sangat terbatas dalam pembuatan variabel. Gyroscope yang

digunakan merupakan sensor yang terdapat dalam kit yang juga disediakan oleh

pabrik pembuat kit robotnya. Sedangkan, untuk vision module yang digunakan

memiliki kualitas gambar VGA dan software kalibrasi warnanya bersifat freeware

yang didapat lewat internet.

3

I.4 Tujuan KP

Tujuan dari kerja praktik yang dilakukan diantaranya adalah sebagai berikut:

Analisis cara kerja gyroscope dan penerapannya pada kit robot bioloid

premium.

Analisis cara kerja kamera HaViMo dan penerapannya pada kit robot bioloid

premium.

Membuat robot yang mampu berjalan dengan seimbang.

Membuat mekanisme yang membuat kamera HaViMo dapat mengikuti suatu

objek yang diinginkan.

Membuat robot yang dapat berjalan mengarah pada objek yang diinginkan

dengan menerapkan tujuan-tujuan sebelumnya.

I.5 Tahapan KP

Tahapan-tahapan yang dilalui selama kegiatan Kerja Praktik berlangsung

adalah sebagai berikut:

Perakitan robot menggunakan kit robot pabrikan Bioloid yaitu Bioloid

Premium Kit.

Melakukan pemrograman robot secara sederhana sehingga robot mampu

menerapkan gerakan jalan dengan menggunakan sensor gyroscope yang

tersedia.

Mengubah-ubah (tuning) nilai konstanta kendali proporsional yang

berpengaruh terhadap keseimbangan robot dalam melakukan gerakan

berjalan.

Membangun struktur pemasangan kamera pada robot.

Memrogram kamera agar selalu mengikuti objek yang diinginkan.

I.6 Lokasi dan Waktu KP

Pelaksanaan kerja praktik dilakukan selama lebih kurang dua bulan berawal

dari tanggal 18 Juni hingga 10 Agustus 2012. Namun, waktu kerja praktik yang

diberikan terpotong dikarenakan adanya keperluan untuk mempersiapkan

kompetisi robotika yang lalu, sehingga waktu yang tersedia tersisa hanya satu

4

bulan saja. Lokasi kerja praktik yang diambil ialah Laboratorium Robotika Polban

dikarenakan waktu yang tersisa tersebut sehingga sulit kalau harus melakukan

kerja praktik di industri hanya dalam waktu satu bulan saja. Selain itu, dipilihnya

Laboratorium Robotika Polban juga atas dasar keinginan dan kesepakatan jurusan

dengan pihak pembina tim Robotika Polban.

I.7 Sistematika Penulisan

Sistematika penulisan laporan kerja praktik, antara lain:

Bab 1 Pendahuluan menjelaskan latar belakang, identifikasi masalah, ruang

lingkup, tujuan, tahapan, lokasi, dan waktu KP serta sistematika penulisan.

Bab 2 Profil Perusahaan menjelaskan tinjauan umum perusahaan, struktur

organisasi, dan deskripsi kerja.

Bab 3 Pengetahuan dan Perangkat Pendukung menerangkan pengetahuan

dasar dan perangkat apa saja yang dibutuhkan dan digunakan dalam

menyelesaikan tugas selama masa kerja praktik.

Bab 4 Analisis dan Evaluasi menjelaskan gambaran sistem, deskripsi sistem,

evaluasi dan requirement sistem dalam ranah sistem robot.

Bab 5 Perancangan menjelaskan rancangan pembuatan rangka robot yang

dikerjakan.

Bab 6 Implementasi memaparkan penerapan teknologi sensor dalam

pembuatan robot beserta masalah yang dihadapi

Bab 7 Penutup berisi kesimpulan dan saran.

5

BAB II

PROFIL PERUSAHAAN

Pada bab ini diuraikan sekilas tentang tempat pelaksanakan kerja praktik yang

dipilih. Perusahaan yang dinyatakan pada bab ini bukanlah perusahaan industri

pada umumnya, melainkan merupakan sebuah laboratorium robotika, yakni

sebuah tempat yang berfungsi sebagai pusat pembelajaran dan riset mahasiswa

yang tergabung ke dalam UKM Robotika Polban dalam mengerjakan robot-robot

untuk dikompetisikan.

II.1 Tinjauan Umum Perusahaan

Unit Kegiatan Mahasiswa Robotika Politeknik Negeri Bandung, merupakan

kokurikuler yang bergerak di bidang penelitian riset dan pembuatan robot, yang

dibimbing langsung oleh dosen-dosen pembimbing, didukung, dan dibiayai oleh

institusi Politeknik Negeri Bandung. Tiap tahunnya unit robotika ini membuat

robot-robot baru oleh generasi-generasi mahasiswa untuk dilombakan di beberapa

kompetisi. Robot yang rutin hapir tiap tahunnya di buat yaitu, robot cerdas

pemadam api, robot pemain sepak bola, dan robot seni.

Gambar 1. Logo Unit Kegiatan Mahasiswa Robotika Polban

II.2 Deskripsi Kerja

Selama masa kerja praktik, tugas yang diamanahi ialah sebagai programmer

sekaligus perancang rangka robot. Programmer dibutuhkan agar mampu

menggerakan robot sesuai dengan yang diinginkan. Sedangkan, perancang

berperan dalam membuat rangka robot sehingga mendukung untuk melakukan

pergerakan yang diinginkan.

6

BAB III

PENGETAHUAN DAN PERANGKAT PENDUKUNG

Selama masa kerja praktik, pengetahuan dalam mengerjakan tugas yang

diberikan dapat bervariasi. Dapat dikatakan bahwa pengetahuan selalu dibutuhkan

oleh industri manapun, walaupun pengetahuan yang dituntut untuk dikuasai akan

bermacam-macam. Pengetahuan yang baik akan membuat pengerjaan lebih

mudah untuk dikerjakan. Dengan pengetahuan pula langkah yang diambil dalam

mengerjakan sesuatu akan lebih terarah. Pada bab ini akan dijelaskan hal-hal apa

saja yang mendukung pengerjaan tugas selama kerja praktik.

III.1 Pengetahuan Pendukung

Dalam melaksanakan kerja praktik (KP), terdapat pengetahuan yang

diperlukan untuk mendukung pengerjaan terhadap hal-hal yang harus dikerjakan.

Pengetahuan pendukung tersebut berperan dalam menyelesaikan tugas-tugas yang

menjadi tanggung jawab selama KP. Selama pelaksanaan KP di laboratorium

untuk pembuatan dan pemrograman robot, dirasa tidak terlalu banyak

pengetahuan yang sifatnya mendukung penyelesaian tugas. Walaupun demikian,

tetap ada pengetahuan yang diperlukan untuk mendukung pengerjaan tugas-tugas

selama KP. Pengetahuan pendukung yang dibutuhkan tersebut antara lain ialah:

Dasar-dasar Pemrograman

Ilmu ini diterapkan pada saat melakukan pemrograman terhadap robot.

Dengan dimilikinya ilmu pengetahuan ini, maka tidak sulit

untukmemahamisource code yang didapat sekaligus dapat mengubahnya

sesuai kebutuhan.

PID Controller

Dalam menggunakan sensor gyroscope untuk melakukan penyeimbangan

dalam berjalan, maka perlu dilakukan manipulasi terhadap nilai yang

dikeluarkan oleh sensor tersebut.Manipulasi tersebut perlu dilakukan

berdasarkan ilmu kontrol PID. Pada dasarnya, robot hendak dibuat agar stabil

dalam keadaan seimbang ketika berjalan. Dengan menerapkan ilmu ini, maka

nilai sensor dapatdikontrol dengan baik sehingga kestabilan robotdalam

berjalan dapat tercapai.

7

III.2 Perangkat Pendukung

Dalam mengerjakan tugas-tugas yang diberikan selama kerja praktik,

digunakan berbagai perangkat yang sifatnya sangat mendukung dalam pengerjaan

tugas membuat dan memrogram robot. Perangkat pendukung yang digunakan

berupa perangkat keras (hardware) dan perangkat lunak (software).

Perangkat keras (hardware) yang digunakan terbatas pada laptop dan

seperangkat peralatan yang terdapat dalam kit robot yang termasuk di dalamnya

ialah sensor gyroscope serta kamera HaViMo sebagai modul pandangan (vision

module) robot. Sedangkan, perangkat lunak (software) sebagai tools yang penulis

gunakan selama masa kerja praktik terbatas pada software kalibrasi kamera

HaViMo (HaViMo GUI) dan RoboPlus yang merupakan software yang termasuk

di dalam kit robot.

RoboPlus merupakan perangkat lunak yang berisi perangkat lunak lainnya

untuk menunjang pemrograman robot dan pembuatan gerakan robot serta

memiliki manual (guide) tentang komponen-konponen yang terdapat di dalam kit.

Berikut merupakan perangkat lunak yang terdapat pada RoboPlus:

RoboPlus Task

Merupakan perangkat lunak yang berperan sebagai tools untuk memrogram

robot dengan bahasanya sendiri yang tergolong berbeda dengan bahasa

pemrograman yang pernah dipelajari. Dalam menulis sintaks pemrograman,

programmer harus terlebih dahulu menentukan jenis sintaks yang diinginkan,

kemudian software akan membuatkan sintaks tersebut untuk kemudian

diisikan hal yang diinginkan.

Gambar 2. Contoh kode yang memiliki tipe file *.tsk

8

RoboPlus Motion

Perangkat lunak ini merupakan tools untuk membuat gerakan robot. Dalam

membuat gerakan, perangkat lunak ini memiliki layanan sehingga sikap

badan robot yang telah dibentuk secara manual dapat ditangkap untuk

kemudian dapat disimpan sebagai satu “Step” robot. Satu Step tersebut

terdapat dalam “Page”, sehingga ketika satu Page dipanggil, maka kumpulan

Step yang terdapat dalam Page tersebut akan dieksekusi secara berurutan dari

Step pertama hingga Step terakhir (dengan jumlah Step maksimal sebanyak

tujuh Step).

Gambar 3. RoboPlus Motion untuk membuat gerakan robot

RoboPlus Manager

Perangkat lunak ini berperan sebagai tools untuk memantau keadaan

controller robot, yakni sebuah device yang bertindak sebagai pusat kendali

robot. Dengan menggunakan perangkat lunak ini semua device yang

terhubung dengan controller akan terpantau keadaannya. Dengan perangkat

lunak ini dapat pula diketahui keadaan servo yang terhubung dengan

controller, seperti diantaranya ID servo, posisi servo, suhu, tegangan,

kecepatan putar gear servo, torsi, hingga beban yang ditopang servo.

Gambar 4. Penampakan RoboPlus Manager

9

BAB IV

ANALISIS DAN EVALUASI

Ketika kerja praktik pertama kali dilakukan, tugas-tugas yang diberikan untuk

diselesaikan pasti memiliki permalahan yang harus diselesaikan. Permasalahan

tersebut berikut ruang lingkupnya hendaknya dianalisis dan diuraikan. Dengan

dilakukannya analisis, maka langkah untuk mengerjakan tugas yang diberikan pun

akan terbentuk dengan jelas.

IV.1 Gambaran Sistem Robot Bioloid Premium

Bioloid Premium merupakan kit robot yang diproduksi oleh ROBOTIS. Kit

tersebut terdiri dari berbagai komponen dengan bentuk yang berbeda-beda yang

dapat dirakit ke dalam berbagai bentuk yang memungkinkan, salah satunya

membentuk rangka seperti manusia, yang lebih dikenal dengan sebutan humanoid.

Pada dasarnya, sistem robot yang dimiliki bioloid terdiri dari satu controller yang

mengendalikan sejumlah servo dengan jumlah maksimal sebanyak 25 servo.

Controller yang digunakan ialah CM-510, yakni seperangkat microcontroller

yang dilengkapi dengan lampu LED sebagai indikator dan sejumlah Port yang

memungkinnya menerima nilai sensor-sensor yang dimiliki pengguna. Sedangkan,

servo yang dikendalikan ialah Dynamixel bertipe AX-12A yang merupakan servo

digital yang dibekali dengan berbagai sensor di dalamnya sehingga membuatnya

menjadi servo digital yang tergolong canggih.

Robot dapat diprogram menggunakan RoboPlus Task. Kemudian kode yang

tidak terdapat error dapat di-download ke dalam CM-510 dengan keadaan robot

menyala menggunakan kabel khusus yang mampu menjembatani hubungan antara

komputer dengan robot. Kemudian, untuk menjalankan robot yang telah

diprogram, robot harus terlebih dahulu dinyalakan, lalu dengan menekan tombol

“MODE” pindahkan indikator LED pada bagian “PLAY”, lalu tekan tombol

“START” untuk membuat robot menjalankan program yang telah di-download ke

dalam CM-510.

10

Gambar 5. CM-510

Pada gambar di atas, yang dilingkari garis putus-putus berwarna merah

merupakan port untuk menerima sinyal sensor analog, sedangkan yang berwarna

biru merupakan port untuk kabel khusus penghubung antara CM-510 dengan

servo dynamixel. Untuk kebutuhan dayanya, CM-510 dapat menggunakan batere

ataupun adapter, sedangkan port PC-link berperan agar controller dapat

terhubung dengan komputer menggunakan kabel serial yang disediakan pada kit

robot.

IV.2 Analisis Elemen Sistem

Dalam menjalankan sistem robotnya, robot Bioloid Premium bekerja dengan

cara memberikan perintah pada aktuator yang dalam hal ini merupakan servo

Dynamixel bertipe AX-12A untuk berada pada posisi tertentu yang diinginkan.

Serangkaian pergerakan sejumlah aktuator ke posisi yang diinginkan tersebutlah

yang kemudian membuat robot dapat melakukan gerakan.

Untuk dapat mengendalikan servo (aktuator) yang terhubung dengan

controller, seluruh servo harus terlebih dahulu dikenal dan diberi identitas oleh

11

controller, sehingga servo yang satu dengan yang lain dapat dibedakan. Pembeda

identitas servo merupakan sebuah ID. Servo-servo yang terhubung pada satu

controller yang sama tidak boleh memiliki ID yang sama, jika sama, maka servo

dengan ID yang sama seluruhnya tidak akan terbaca oleh controller. Perubahan ID

servo dapat dilakukan melalui software RoboPlus Manager.

Gambar 6. Dynamixel AX-12A

Program yang dibuat menggunakan RoboPlus Task dapat langsung

mengendalikan servo Dynamixel dengan parameter ID servo atau dengan cara

menjalankan Page yang telah di-download pada robot. Penggunaan Page

dikhususkan untuk membuat pengendalian seluruh servo sekaligus pada satu

waktu. Sedangkan, pengendalian servo menggunakan ID lebih digunakan untuk

pengendalian satu servo pada satu waktu yang lebih dimanfaatkan untuk

keperluan yang spesifik.

Demi memenuhi kebutuhan robot agar bisa berjalan dengan baik, maka robot

harus mampu mempertahankan dirinya dalam keadaan setimbangnya. Dengan

tujuan tersebut maka diperlukan suatu cara sehingga mampu mempertahankan

postur robot berada pada keadaan setimbang, yaitu dengan memanfaatkan sensor

yang memberikan respon terhadap perubahan. Pada masa kerja praktik, sensor

yang tersedia untuk kebutuhan tersebut ialah gyroscope, yakni sensor yang

memberikan respon terhadap kecepatan sudut.

12

Gambar 7. Gyroscope 2-axis

Sensor gyroscope yang digunakan merupakan sensor yang tersedia pada kit

robot dan memang diperuntukkan untuk penyeimbangan gerakan jalan robot.

Sensor ini memiliki 2-axis dengan masing-masing axis memiliki tiga buah pin

untuk kebutuhan tegangan, ground, dan penghasil sinyal analognya. Selain untuk

mengukur kecepatan sudut, sensor ini dapat dimanfaatkan untuk mengetahui ke

arah mana robot dimiringkan. Berikut tabel keterangan nilai sensor gyroscope

tersebut:

Nilai output 455

250

45

Kecepatan sudut +3000/s 0

0/s -300

0/s

Nilai tegangan 2,23 V 1,23 V 0,23 V

(Nilai standard tegangan vcc adalah 5 v)

Tabel 1. Spesifikasi Gyroscope

Berdasarkan tabel tersebut dapat diketahui bahwa ketika kecepatan sudutnya

nol (diam), nilai keluarannya berkisar 250, namun ketika tiba-tiba dimiringkan ke

salah satu axis, nilai keluaran maksimumnya ialah 450 dan nilai keluaran

minimumnya 45. Pada nilai kecepatan sudut, tanda bilagan menandakan arah

pergerakan kemiringan.

Selain membutuhkan keseimbangan dalam berjalan, robot soccer yang hendak

dibuat juga harus mampu mendeteksi bola yang memang menjadi inti dari

kompetisi soccer. Dalam hal mendeteksi bola, yang dalam hal ini merupakan

sebuah objek nyata, maka diperlukan suatu alat yang memungkinkan robot untuk

mendeteksi objek-objek nyata. Oleh karena itu, disimpulkan bahwa robot

13

memerlukan suatu modul pandangan yang membuat robot mampu menangkap

keadaan dunia nyata sekaligus mampu mencirikan suatu objek. Dengan landasan

tersebutlah dipilih sebuah kamera sebagai modul pandangan robot. Kamera

tersebut bernama HaViMo yang dirancang sehingga sesuai untuk dipasangkan

pada kit robot bioloid yang digunakan.

HaViMo merupakan modul pandangan yang ditemukan oleh Hamid

Muballegh, terdiri dari chip kamera CMOS terintegrasi dengan frame yang

dihasilkan beresolusi 160 * 120 piksel, sebuah mikrokontroler ATMega8 dengan

kapasitas memori 8 bit, dan bagian-bagian lainnya yang menunjang penggunaan

modul ini. Terdapat dua pin penghubung, yang pertama terdiri dari empat pin dan

yang kedua terdiri dari tiga pin yang digunakan untuk komunikasi dengan robot

bioloid dengan mode half duplex sehingga data dapat ditransmisikan atau diterima

secara dua arah, namun tidak dapat dilakukan secara bersamaan.

HaViMo merupakan modul pemroses gambar yang berbasiskan warna,

memiliki tabel warna yang terintegrasi di dalamnya sehingga bisa digunakan

untuk menampung warna yang diinginkan. Untuk keperluan pengolahan tabel

tersebut maka dapat digunakan software pengkalibrasi kamera HaViMo yang

bernama HaViMo GUI. Software ini mampu melakukan pengaturan kamera dan

mendefinisikan tabel warna yang dimiliki HaViMo juga dapat mengambil gambar

mentah dari HaViMo.

Gambar 8. Alur komunikasi HaViMoGUI terhadap HaViMo

Gambar di atas merupakan alur komunikasi yang terjadi ketika

pengkalibrasian kamera dilakukan. HaViMo akan mengirim tabel warna

berbentuk flash ke dalam CM-510. Ketika kamera diperintahkan mengambil

14

gambar oleh HaViMoGUI maka gambar mentah akan disampaikan kamera ke

HaViMoGUI melalui CM-510.

Untuk proses pengkalibrasian warna, mekanisme yang dilakukan ialah

membuat kamera menangkap gambar. Kemudian, hasil gambar mentahnya berikut

data-datanya diterima oleh HaViMo GUI. Ketika gambar yang telah ditangkap

tampil pada HaViMo GUI, maka pengguna hanya tinggal menekan tombol “ctrl”

+ klik kiri pada warna yang dikehendaki untuk disimpan. Untuk proses

penyimpanan warnanya, sebelum menekan tombol “ctrl” + klik kiri, pengguna

harus terlebih dahulu memilih salah satu penampung warna dari jumlah

keseluruhan sebanyak tujuh penampung warna yang disajikan dengan radio

button.

Berdasarkan komponen-komponen pendukung terbentuknya robot soccer

yang telah disebutkan di atas, maka dapat disimpulkan bahwa CM-510 menjadi

pusat kendali atas semua komponen. Sedangakan, pemrograman CM-510 itu

sendiri dilakukan melalui software RoboPlus sehingga terbentuk sebuah

mekanisme seperti yang diilustrasikan oleh gambar 9.

Gambar 9. Alur sistem robot Bioloid

15

IV.3 Evaluasi Hasil Analisis

Dalam penerapannya, untuk membuat robot humanoid yang dapat bermain

sepak bola dengan baik, maka HaViMo dan gyroscope harus dapat digunakan

secara bersama-sama. Hal tersebut dibutuhkan karena robot akan terus berjalan

mengejar bola dimana untuk keperluan pengejaran tersebut pendeteksian objek

dengan baik sangat diperlukan begitu juga dengan keseimbangan yang baik.

Untuk pemakaian gyroscope maka diperlukan suatu modul program yang

menerima sinyal sensor, modul yang terus menerus dieksekusi dalam interval

waktu yang telah ditentukan. Pada modul tersebutlah nilai gyro diolah untuk

keperluan penyesuaian postur tubuh agar berada pada keadaan setimbangnya.

Sedangkan, untuk pemakaian kamera, pada program harus ada perintah yang

mengakses alamat kamera secara langsung sehingga penangkapan gambar akan

dilakukan oleh HaViMo.

Dalam membuat proses berjalan robot agar berlangsung dengan seimbang,

maka nilai sensor harus diolah untuk mengatur postur robot secara langsung.

Dengan dilakukannya hal tersebut maka postur robot dapat dikontrol

menggunakan parameter sensor tersebut, yakni gyroscope. Untuk menunjang

kebutuhan “selalu mengontrol” postur robot, maka kebutuhan pembacaan sensor

secara berkala pada suatu interval tertentu harus dilakukan, karena dengan begitu

nilai sensor dapat terpantau dengan baik, sehingga apabila ada perubahan nilai

sewaktu-waktu, program dapat menangkap perubahan tersebut untuk kemudian

melakukan penyesuaian postur robot agar tetap berada pada posisi setimbangnya.

Sebenarnya, dalam membahas kesetimbangan postur robot yang memiliki

keterkaitan terhadap posisi setimbang, maka akan lebih dibutuhkan sensor yang

mampu memberikan informasi terkait posisi daripada informasi terkait kecepatan

sudut. Hal tersebut dibutuhkan karena untuk membuat robot berada pada postur

setimbangnya, maka perlu dipertahankan sudut kemiringan badan robot agar tetap

berada pada titik setimbangnya, dengan kata lain, diupayakan agar sudut

kemiringan badan robot selalu nol terhadap titik setimbangnya. Dengan

memperhatikan sudut kemiringan, maka informasi posisi akan sangat dibutuhkan

untuk melakukan pembenaran postur. Salah satu sensor yang memberikan

kebutuhan tersebut ialah accelerometer, sensor yang tidak tersedia ketika

pelaksanaan kerja praktik berlangsung.

16

IV.4 Kesimpulan Requirement

Berdasarkan hasil evaluasi analisis di atas, maka disimpulkan bahwa

kebutuhan yang diperlukan dalam membentuk robot soccer yaitu:

Sistem robot mampu membuat postur robot berada pada keadaan

setimbangnya sehingga tidak mudah jatuh

Sistem robot mampu mendeteksi bola pada pertandingan

Sistem robot mampu mengetahui posisi bola

Sistem robot dapat mengetahui kapan saatnya harus berjalan cepat dan

saatnya berjalan pelan

Sistem robot mampu membuat robot menendang bola pada pertandingan ke

arah gawang musuh

Sistem robot mampu berkomunikasi dengan robot satu tim sehingga mampu

membentuk kerjasama untuk memenangkan pertandingan

17

BAB V

PERANCANGAN

Untuk dapat membentuk robot soccer dengan dua kaki, maka diperlukan

pembuatan sebuah robot berjenis humanoid. Berdasarkan kebutuhan tersebut,

digunakanlah kit bioloid premium yang diproduksi oleh Robotis. Kit ini terdiri

dari bermacam-macam komponen yang dapat dirangkai ke dalam berbagai bentuk

yang diinginkan, salah satunya menjadi robot humanoid, yakni robot yang

memiliki bentuk seperti manusia.

Dalam buku manual yang termasuk ke dalam paket kit, dijelaskan bagaimana

cara merangkai komponen-komponen pada kit tersebut menjadi bentuk humanoid

dengan tiga jenis robot humanoid yang berbeda, yakni jenis A, B, dan C. Pada

masa kerja prakti, jenis robot yang dipilih ialah robot humanoid jenis A untuk

membangun rangka robot soccer yang hendak diprogram. Selain itu, dibuatnya

robot berjenis humanoid dikarenakan pembuatan robot ini dilakukan untuk

diikutsertakan dalam kompetisi robot soccer yang menerapkan aturan agar

digunakannya robot humanoid.

Dalam merangkai robot, selain komponen rangka robot, servo Dynamixel

juga terlibat secara langsung. Tanpa servo tersebut, rangkaian komponen hanyalah

serangkaian yang tidak dapat digerakkan. Ketika melibatkan perangkaian robot

menggunakan servo, maka pemasangan komponen terhadap servo tidak dapat

dilakukan secara sembarangan, karena servo memiliki posisi sehingga untuk

membentuk robot humanoid yang baik, penempelan komponen terhadap posisi

servo harus diperhatikan seperti yang dijelaskan dalam buku manual.

Robot yang dirakit memiliki spesifikasi servo sebagai berikut:

Bagian Lengan

Terdapat dua servo pada bagian bahu dalam, masing-masing untuk bahu

bagian kiri dan bagian kanan. Pemasangan dua servo ini dilakukan saling

membelakangi (dengan acuan bagian poros servo yang dapat diputar sebagai

bagian depan) sehingga membuat kedua servo dapat diputar secara vertikal.

18

Gambar 10. Ilustrasi pemasangan bahu kanan bagian dalam

Kemudian, yang dilakukan selanjutnya ialah pemasangan bahu luar atau

lengan bagian atas. Servo yang berada pada bagian ini dihubungkan dengan

bahu dalam dengan perantara komponen. Sedangakan, lengan bagian bawah

dihubungkan dengan lengan bagian atas untuk membentuk bagian sikut.

Hubungan antar servo juga dihubungkan melalui perantara komponen. Untuk

keperluan lengan bawah dan lengan atas, maka memerlukan servo sebanyak

empat buah untuk lengan bagian kiri dan bagian kanan, masing-masing

sebanyak dua buah. Sehingga, jumlah pemakaian servo untuk bagian lengan

ada sebanyak enam buah.

Gambar 11. Ilustrasi pemasangan servo untuk lengan kanan

Bagian Badan

Pada bagian badan bawah, terdapat dua servo untuk membantu tungkai kaki

diputar secara horizontal. Dengan kebutuhan dua servo ini, maka jumlah

servo yang dibutuhkan seluruhnya (pada lengan dan badan) ada sebanyak

delapan buah servo. Pada ilustrasi berikut, bagian yang diberi warna biru

merupakan poros servo yang membantu perputaran kaki secara horizontal.

19

Gambar 12. Ilustrasi pemasangan servo pad badan bagian bawah

Bagian Kaki

Pada bagian ini, masing-masing tungkai kaki membutuhkan servo sebanyak

lima servo, yakni dua servo untuk tungkai kaki bagian atas, satu servo pada

bagian lutut, dan dua servo pada bagian tungkai kaki bawah sehingga jumlah

keseluruhan servo (pada lengan, badan, dan kaki) yang diperlukan ada

sebanyak 18 buah. Bagian kaki merupakan bagian yang membutuhkan servo

paling banyak. Hal tersebut dikarenakan kaki berperan dalam menopang

beban robot sehingga membutuhkan banyak servo agar memiliki tenaga yang

lebih, juga agar beban robot terdistribusi dengan jumlah yang kecil sehingga

tidak cepat merusak servo karena kelebihan beban yang harus ditopangnya.

(A) (B)

Gambar 13. (A) Ilustrasi pemasangan servo pada kedua kaki. (B) Ilustrasi

komposisi pemasangan servo pada kaki kanan

20

Setelah perakitan rangka robot selesai, maka langkah selanjutnya ialah

pemberian ID untuk masing-masing servo menggunakan RoboPlus Manager.

Berikut disajikan tabel yang memberikan informasi ID untuk masing-masing

servo yang terhubung dengan CM-510 (controller).

ID Bagian robot

1 Bahu dalam bagian kanan

2 Bahu dalam bagian kiri

3 Lengan atas bagian kanan

4 Lengan atas bagian kiri

5 Lengan bawah bagian kanan

6 Lengan bawah bagian kiri

7 Badan bawah bagian kanan

8 Badan bawah bagian kiri

9 Tungkai kaki atas bagian belakang bagian kanan

10 Tungkai kaki atas bagian belakang bagian kiri

11 Tungkai kaki atas bagian depan bagian kanan

12 Tungkai kaki atas bagian depan bagian kiri

13 Lutut bagian kanan

14 Lutut bagian kiri

15 Pergelangan kaki bagian depan bagian kanan

16 Pergelangan kaki bagian depan bagian kiri

17 Pergelangan kaki bagian belakang bagian kanan

18 Pergelangan kaki bagian belakang bagian kiri

Tabel 2. Daftar ID tiap servo yang terhubung dengan CM-510

21

Berikut pemberian ID yang disajikan dalam bentuk ilustrasi robot:

Gambar 14. Ilustrasi servo robot beserta ID-nya

Selain servo, tentunya sensor gyroscope juga perlu dipasang. Sensor ini

dipasang di dalam rangka robot tepat di tengah badan robot, di atas antara tungkai

kaki kiri dan kaki kanan. Posisi tersebut memang disediakan sebagai tempat

pemasangan gyroscope. Gyroscope harus terpasang kokoh pada rangka robot

sehingga tidak tergoyang ketika robot melakukan gerakan. Selain itu, posisi

gyroscope diletakkan di tengah rangka robot, membuat kemiringan robot ke arah

depan dan belakang maupun kiri dan kanan memiliki nilai perbandingan yang

cenderung ekuivalen. Walaupun dalam penerapannya sensor gyroscope akan

dibuat untuk melakukan kalibrasi posisi dahulu untuk keperluan titik

setimbangnya.

Ketika perakitan robot dilakukan sesuai dengan bentuk bioloid tipe-A, maka

kendali pusat robot tersebut, yakni CM-510, memegang 18 servo. Kemudian,

karena dinilai perlunya pemasangan modul pandangan, maka diperlukan dua servo

tambahan untuk menunjang pergerakan kamera dalam mengeikuti objek yang

dideteksi sehingga memiliki jumlah total dua puluh servo. Memerlukan dua servo

tambahan karena kamera harus mengikuti objek yang terdeteksi baik secara

horizontal maupun vertikal. Dua servo tersebut di letakkan pada bagian kepala

agar robot mampu memiliki jangkauan pandang yang luas.

Untuk menunjang kebutuhan komunikasi, maka robot sebaiknya diperkaya

dengan modul komunikasi yang memanfaatkan wireless sebagai media

rambatnya. Namun, kendala yang muncul dengan kebutuhan ini ialah pemasangan

22

modul wiznet yang memiliki dimensi yang cukup besar sehingga dapat memberi

beban tambahan dan dapat mengganggu kesetimbangan robot. Oleh karena itu,

perlu ditemukan alternatif lain selain wiznet yang mampu menunjang kebutuhan

komunikasi secara wireless.

Sebagai tambahan, penulis mendapat saran dari pembimbing robotika bahwa

sebaiknya robot diberi mikrokontroler tambahan. Mikro ini berfungsi sebagai

pengendali tingkah laku robot, dengan kata lain, jika dianalogikan robot humanoid

sebagai kuda pacu, sedangkan mikro tersebut berperan sebagai jokinya sehingga

aktivitas yang dilakukan robot merupakan hasil perintah mikro tersebut. Kendala

yang muncul dari saran ini ialah perlunya eksplorasi yang lebih jauh agar dapat

mengolah komponen-komponen robot humanoid dengan suatu bahasa

pemrograman yang umum dan lebih ramah bagi penulis, yakni dengan C, C++,

atau C#. Apabila dapat mengendalikan komponen robot bioloid melalui CM-510

dengan bahasa pemrograman tersebut, maka dapat dimungkinkan dibuatkannya

interface antar dua mikro (yakni mikro tambahan, dan mikro pada CM-510) agar

terjalin komunikasi diantara keduanya. Berikut wujud robot yang dirangkai ketika

kerja praktik:

Gambar 15. Wujud Robot Bioloid Jenis Humanoid Tipe-A

23

BAB VI

IMPLEMENTASI

Pada bab ini, hal-hal yang telah dianalsis dan dirancang sebelumnya akan

diterapkan secara langsung. Pada kasus yang dikerjakan selama masa kerja

praktik, implementasi yang dilakukan ialah penerapan teknologi sensor dan

komponen yang mampu menunjang kemampuan robot sehingga dapat

berkelakuan sesuai dengan yang diharapkan.

V.1 Implementasi Gyroscope

Pada masa kerja praktik, pemikiran untuk memanfaatkan sensor gyroscope

dengan maksimal diajukan oleh pembimbing kerja praktik dari pihak

laboratorium. Pemikiran tersebut diajukan karena robot yang sebelumnya

mengikuti pertandingan soccer walaupun telah digunakan sensor gyroscope,

sering sekali terjatuh sehingga sulit dikatakan sebagai robot yang berperilaku

sebagai pemain sepak bola yang baik. Kemungkinan hal tersebut terjadi

dikarenakan pengolahan nilai gyro yang masih belum tepat.

Penggunaan sensor gyroscope pada robot bioloid dapat dimanfaatkan

sehingga robot dapat mengubah postur robot dalam melakukan suatu gerakan

yang posturnya telah ditentukan ketika membuat Page gerakan robot. Manfaat

tersebut sebenarnya didapat dengan cara memanfaatkan nilai keluaran sensor

untuk diterapkan pada variabel yang mampu menambahkan posisi servo sehingga

posisi servo yang telah dispesifikan pada gerakan yang diatur dalam page tidak

akan bersifat statis, akan tetapi mampu berubah menjadi posisi yang dinamis

sesuai dengan nilai variabel yang ditambahkan tersebut. Variabel tersebut

dinamakan variabel offset, yang bekerja untuk diberikan pada servo tertentu

dengan parameter ID servo tersebut.

Dengan kemampuan variabel offset, maka robot dapat melakukan perubahan

postur ketika melakukan pergerakan sesuai dengan yang dibutuhkan. Sebagai

contoh penerapan variabel offset, apabila dispesifikasikan di dalam suatu Page

posisi tiga servo dengan ID A,B, dan C untuk berada pada posisi 100, 200, dan

300 secara berurutan, kemudian variabel offset untuk ID A,B, dan C masing-

24

masing bernilai 20,-40, dan 10, maka posisi tiga servo tersebut menjadi 120, 160,

dan 310 untuk ID A, B, dan C secara berurutan.

Pemanfaatan nilai servo sebagai nilai untuk variabel offset dapat membantu

robot agar mampu membuat postur gerakan jalannya dinamis ketika dieksekusi.

Agar tujuan tersebut tercapai, maka harus dibuat fungsi yang mampu mengubah

nilai yang dikeluarkan servo sebagai parameter yang akurat dalam menentukan

variabel offset. Fungsi tersebut yang dibuat untuk selalu dipanggil sehingga

pemantauan nilai servo dilakukan secara terus-menerus agar penentuan variabel

offsetnya pun tepat. Apabila nilai yang diberikan kepada variabel offsetnya tepat,

maka dapat dipastikan robot mampu mempertahankan keadaan setimbangnya.

Sebelum mengolah nilai sensor sabagai parameter variabel offset, terdapat hal

lainnya yang perlu diperhatikan, yakni penentuan servo mana sajakah yang

hendak diberi variabel offset. Penentuan servo tentu diperlukan, karena dalam

melakukan penyeimbangan jalan, manusia sendiri mendinamiskan sendi-sendinya

agar tidak jatuh ketika berjalan. Untuk kasus robot humanoid, maka sendi tersebut

ialah komponen servonya.

Jawaban untuk permasalah di atas didapat melalui contoh source code yang

didapat melalui menu bantuan (help) pada RoboPlus. Dalam kode tersebut, servo-

servo yang dibuat untuk melakukan pendinamisan postur, atau yang diberi

variabel offset adalah seluruh servo yang terdapat pada tungkai kaki. Kedelapan

servo tersebut diberi variabel offset sesuai parameter ID-nya masing-masing

sehingga mampu mempertahankan robot pada keadaan setimbangnya dengan

melakukan pendinamisan postur ketika berjalan. Delapan servo tersebut, empat

diantaranya berperan dalam penyeimbangan arah depan-belakang, sedangkan

empat sisanya berperandalam penyeimbangan arah kiri-kanan.

Pada penerapannya, pengolahan nilai sensorlah yang menjadi hal yang paling

kritis, dimana hasil pengolahan tersebut berpengaruh terhadap proses

pendinamisan postur robot untuk tetap berada posisi setimbangnya. Kurang lebih

sekitar tiga minggu masa kerja praktik dihabiskan hanya untuk melakukan

pengolahan nilai sensor sehingga proses penyeimbangan robot berjalan dengan

baik dan hasilnya presisi.

Pada source code yang didapat terkait pengolahan data gyroscope,

disimpulkan bahwa dalam mengolah nilai yang dikeluarkan oleh sensor

25

gyroscope, kalibrasi nilai perlu dilakukan pada saat robot pertama kali dinyalakan.

Proses (kalibrasi) ini dilakukan dengan cara membaca data gyroscope beberapa

kali, kemudian hasilnya pun dibagi dengan jumlah pembacaan yang dilakukan,

sehingga didapat rata-rata nilai gyro. Setelah itu, nilai rata-rata yang didapat

dimasukan ke dalam suatu variabel untuk dijadikan nilai acuan titik setimbang

robot.

Kegiatan kalibrasi ini perlu dilakukan dengan cara pembacaan nilai gyro

beberapa kali dikarenakan data yang diberikan gyro tidak sepenuhnya akurat

akibat adanya perbedaan nilai bergantung pada tegangan VCC standard dan noise

sirkuit pada gyroscope-nya. Ketika proses kalibrasi berlangsung, robot tidak boleh

digerakkan karena dapat mengganggu nilai rata-rata yang hendak didapat. Berikut

potongan kode terkait proses kalibrasi:

Gambar 16. Potongan kode proses inisialisasi gyro (kalibrasi)

26

Pada gambar 16 terlihat bahwa dilakukannya pembacaan nilai sensor yang

diambil dari port 3 dan port 4. Kedua port tersebut merupakan port yang

terhubung dengan axis-x dan axis-y sensor gyroscope. Terlihat bahwa nilai

pembacaan akan diakumulasi sebanyak sepuluh kali untuk kemudian diambil rata-

ratanya dengan membagi nilai hasil akumulasi oleh banyaknya pembacaan, yakni

sepuluh. Dari kode tersebut diketahui bahwa proses ini membutuhkan waktu

sekitar 1,2 detik untuk sepuluh kali pembacaan. Terlihat pada bagian bawah kode

dilakukannya pengecekan nilai rata-rata. Kondisi yang dinyatakan merupakan

pengecekan apakah robot digerakkan ketika proses kalibrasi berlangsung, jika

demikian maka nilai rata-rata akan memenuhi kondisi ini sehingga gyroscope

dinyatakan tidak ada.

Setelah proses kalibrasi dilakukan, maka hasil nilai rata-ratanya dijadikan

nilai tengah dan digunakan untuk kebutuhan pengolahan hasil pembacaan-

pembacaan sensor gyroscope setelahnya. Kemudian, pada setiap pembacaan nilai

gyro, nilai yang yang terbaca dihitung selisihnya terhadap nilai tengah. Hasil

perhitungan selisih tersebut merupakan “error”, artinya setiap ada perbedaan nilai

terhadap nilai tengah, maka perbedaan tersebut dicatat sebagai error untuk

kemudian error tersebut diolah lebih lanjut.

Pada dasarnya, prinsip yang digunakan dalam pengolahan nilai gyro terhadap

postur robot ialah agar nilai error-nya mendekati nol. Karena nilai error

menggambarkan postur robot terhadap titik setimbang pada saat kalibrasi, maka

nilai error yang mendekati nol merupakan keadaan dimana postur robot berada

pada keadaan setimbang awalnya (postur ketika proses kalibrasi dilakukan).

Untuk dapat melakukan penyeimbangan yang baik, maka perlu dilakukan reaksi

terhadap postur robot sesuai dengan nilai error yang diperoleh.

Nilai error tentunya perlu diolah sedemikian sehingga reaksi yang harus

dilakukan oleh robot mampu membuat nilai error-nya mendekati nol untuk

pembacaan sensor yang berikutnya. Semakin cepat robot memberikan reaksi

untuk membuat nilai error yang mendekati nol, maka akan semakin baik. Dengan

demikian, robot pun dapat mencapai kestabilan dalam keseimbangan (steady-

state) dengan cepat.

Ketika kerja praktik, pembimbing robotika menjelaskan bahwa terdapat suatu

pengetahuan yang mampu mengolah nilai sensor untuk membentuk keadaan

27

steady-state, yakni keadaan dimana robot menjadi stabil berada pada titik

setimbangnya. Pengetahuan tersebut ialah kendali PID. Kendali PID merupakan

fungsi yang mampu menstabilkan nilai error. Apabila kendali PID-nya bagus,

maka proses penstabilan akan lebih cepat tercapai.

Kendali PID terdiri dari tiga kendali, yakni kendali P (proportional), I

(integral), dan D (derivative). Kendali tersebut berperan untuk mengendalikan

sistem dengan memanipulasi sinyal error, sehingga respon sistem (output) sama

dengan yang diinginkan (input). Dalam mencapai kestabilan, kendali P jika

dibuat dengan baik sebenarnya sudah mampu membuat sistem mendekati

kestabilan. Sedangkan, kendali D membuat sistem mampu mencapai tahap

kestabilannya dengan cepat. Kemudian, kendali I sebagai kendali yang dapat

membuat pencapaian kestabilan sistem lebih cepat lagi. Kendali I tidak dapat

digunakan sendiri, sedangkan, kendali P dan P&D dapat digunakan sendiri.

Namun, hanya jika ketiga kendali tersebut dipasang secara bersama-sama keadaan

steady-state dapat dicapai.

Dalam mencapai keseimbangan ketika berjalan, selama masa kerja praktik

hanya kendali proporsional (P) yang sempat diterapkan. Dalam penggunaannya,

kendali P merupakan hasil perkalian antara nilai “error” dengan “Konstanta

proporsional (Kp)”.

Gambar 17. Kendali proporsional

28

Pada gambar di atas, u(t) merupakan sinyal kontrol, yakni sinyal gyro yang

diolah, sedangkan, e(t) merupakan nilai error-nya. Penerapan kendali P yang tepat

dapat membantu menstabilkan sinyal seperti gambar di bawah.

(A) (B)

Gambar 18. Grafik perbandingan sinyal dengan menggunakan kendali P (A) dan

tanpa menggunakan kendali P (B)

Dapat diperhatikan bahwa penggunaan kendali P dapat menstabilkan sinyal,

bahkan semakin baik Konstanta proporsional proses pencapaian kestabilan

punakan semakin cepat. Berikut potongan kode yang digunakan untuk penerapan

kendali Proporsional:

Gambar 19. Pengolahan kendali P dari nilai gyroscope

29

Pada gambar di atas, nilai akhir atau nilai kendali P-nya terdapat pada variabel

FinalFBBal* sebagai variabel untuk menampung pengolahan axis-x dan FinalRL*

sebagai variabel untuk menampung pengolahan axis-y.

Berikutnya, variabel tersebut diterapkan ke dalam variabel offset untuk servo

yang bertanggung jawab dalam penyeimbangan proses berjalan, seperti yang

dilakukan pada potongan kode berikut:

Gambar 20. Potongan kode penerapan variabel offset pada servo

Dalam penggunaan kendali Proporsional (P), Konstanta proporsional (Kp)

memegang peranan penting dalam membentuk kendali P yang tepat. Konstanta

tersebut merupakan nilai yang didapat dengan cara percobaan. Konstanta ini akan

berbeda-beda sesuai kebutuhan sistem, yang pada kasus ini merupakan dimensi

robot.

Selama masa kerja praktik, pengujian (tuning) Konstanta proporsional pun

terus menerus dilakukan. Hal tersebut perlu dilakukan karena kendali proporsional

pada source code di atas hanya cocok untuk diterapkan pada robot humanoid tipe-

30

A yang standard. Sedangkan, robot yang dibentuk pada kerja praktik memiliki dua

servo tambahan untuk menunjang kebutuhan penggunaan kamera sehingga

dengan dimensi yang berbeda dan adanya beban tambahan pada robot, maka

Konstanta proporsional (Kp) untuk memenuhi kebutuhan penyeimbangan pun

akan berbeda.

Selama masa kerja praktik, percobaan (tuning) nilai Konstanta proporsional

(Kp) senantiasa dilakukan untuk membentuk proses penyeimbangan yang baik

dan presisi. Percobaan tersebut dikhususkan untuk penyeimbangan robot dengan

orientasi arah depan-belakang menggunakan nilai x-axis gyroscope. Beberapa hal

yang dapat disimpulkan dalam penentuan nilai Kp melalui observasi tingkah laku

robot ketika mengeksekusi gerakan jalannya diantaranya ialah:

Semakin kecil nilai Kp maka sinyal kendali akan semakin kecil. Peristiwa ini

membuat robot tidak terlalu sensitif dalam melakukan penyeimbangan postur.

Semakin besar nilai Kp maka sinyal kendali akan semakin besar. Peristiwa ini

membuat robot terlalu sensitif dan cenderung terus menerus melakukan

penyeimbangan (pengkoreksian postur) tiada henti.

Untuk membuat robot yang sensitif namun tidak terus menerus melakukan

penyeimbangan, maka selain memerlukan nilai Kp yang besar, diperlukan

nilai pembatas dalam suatu rentang nilai. Apabila nilai sensor berkisar pada

rentang nilai tersebut, maka nilai sinyal kendali dianggap nol sehingga tidak

dilakukan pengkoreksian postur.

Sinyal kendali untuk servo pada bagian lutut dibuat berbeda dengan bagian

pergelangan kaki agar beban untuk melakukan penyeimbangan melalui

variabel offset dapat terdistribusi dengan baik.

Pada akhir masa praktik, hasil akhir yang dicapai terkait pengolahan kendali

proporsional pada sinyal gyroscope antara lain ialah:

Untuk kepentingan proses penyeimbangan, perbandingan sinyal kendali

untuk servo lutut dan pergelangan kaki dibuat agar memiliki rasio 1:2.

Perbandingan tersebut membuat servo pergelangan kaki melakukan usaha

penyeimbangan dua kali lebih besar dibandingkan dengan usaha yang

dilakukan oleh servo lutut dalam hal penyeimbangan ke arah depan-belakang.

31

Nilai Kp cenderung diperkecil untuk menghindari sensifitas berlebihan dalam

pengkoreksian postur.

V.2 Implementasi Modul Pandangan

Komponen lain yang tak kalah penting untuk diolah pada robot humanoid

adalah kamera. Pada proses penangkapan gambar hingga penyimpanan data

gambar pada memori kamera HaViMo, program harus diberi jeda sekitar 0,25

detik. Setelah itu, baru kemudian dilakukan pembacaan data dan pengolahan data

gambar sehingga dapat ditentukan titik tengah objek yang hendak dideteksi

berdasarkan warnanya. Berikut ilustrasi diagram alur dalam penggunaan kamera

HaViMo.

Gambar 21. Flowchart pengolahan gambar menggunakan HaViMo

Pada gambar 21, proses Read Image merupakan tahap pengambilan gambar.

Sebenarnya, dalam mengolah gambar HaViMo memiliki dua algoritma, yakni

algoritma Region Growing dan algortima Griding. Region Growing merupakan

metode pengolahan yang bekerja dengan cara mengotak-kotak kumpulan piksel

dengan warna yang sama. Warna yang dicari merupakan warna yang terdaftar

32

dalam tabel warna dan tentunya warna yang diinginkan untuk dideteksi. Pada

setiap kotak yang dianggap sebagai suatu objek, terdapat informasi terkait kotak

tersebut. Penjelasan untuk setiap informasi tersebut ditunjukkan pada tabel 3.

Property Deskripsi

Index identitas untuk setiap kotak yang terbaca

Color warna yang dideteksi merupakan warna apa yang terdapat pada tabel

warna yang direpresentasikan dengan angka yang merupakan urutan

warna yang didaftarkan pada tabel warna

Pixels jumlah piksel yang terdapat pada kotak tersebut

SumX yakni jumlah koordinat X pada piksel-piksel yang terdeteksi

SumY yakni jumlah koordinat Y pada piksel-piksel yang terdeteksi

MaxX nilai (koordinat) batas kanan kotak

MinX nilai (koordinat) batas kiri kotak

MaxY nilai (koordinat) batas bawah kotak

MinY nilai (koordinat) batas atas kotak

Tabel 3. Nilai-nilai yang terdapat dalam kotak Region Growing

Selain itu, pengolahan lainnya, Griding, merupakan metoda pengolahan

dengan cara mengompres gambar kedalam bentuk 32*24 bagian. Setiap bagian

mewakili kotak berukuran 5*5 pada gambar aslinya. Pada setiap bagian, satu byte

dikalkukasi menghasilkan informasi yang dikandungnya antara lain ialah 4 bit

terrendah (terakhir) yang menentukan warna mana yang mendominasi pada

bagian tersebut. Sedangkan, 4 bit terbesar (terdepan) merupakan jumlah piksel

yang dimiliki warna tersebut. Jika lebih dari 15 piksel yang terdeteksi, jumlahnya

akan tetap 15.

Ketika masa kerja praktik, algoritma yang disediakan untuk pemrograman

menggunakan RoboPlus Task hanya algortima Region Growing. Algortma

tersebut diolah kembali sehingga hanya objek dengan jumlah piksel terbanyaklah

yang dideteksi. Dengan algortima inilah titik tengah suatu objek dapat ditentukan.

Namun, dalam penerapannya, penangkapan gambar dan pembacaan sensor

yang dilakukan secara berkala dalam interval yang dapat dikatakan sangat

sebentar tidak dapat dilakukan bersamaan. Hal tersebut tidak diketahui pasti apa

33

penyebabnya, diperkirakan bahwa pada saat penangkapan gambar hingga

pengolahan datanya, proses tersebut diinterupsi oleh modul pembacaan sensor

yang dieksekusi secara berkala yang membuat data gambar yang diperoleh

corrupt, sehingga objek tidak dapat terdeteksi. Kesimpulan tersebut muncul

karena ketika modul pembacaan sensor dihilangkan, maka kamera kembali dapat

berfungsi dengan baik dan dapat mengikuti objek walaupun terkadang objek yang

dikehendaki tidak terdeteksi. Walaupun begitu, hal tersebut hanyalah kesimpulan

sementara yang didapat melalui observasi ringan. Tidak diketahui apa sebenarnya

yang mengakibatkan kedua hal tersebut tidak dapat dilakukan secara bersamaan.

Selain masalah di atas, masalah lainnya yang muncul ialah ketika berjalan

robot cenderung berjalan memutar ke satu arah sehingga gerakan jalan robot

membentuk lingkaran. Padahal, hal yang diharapkan ialah robot dapat berjalan

dengan lurus. Setelah dilakukan perbandingan pada gerakan jalan robot yang

menggunakan gyroscope dan yang tidak menggunakan gyroscope, sebenarnya

robot tetap berjalan melingkar, hanya saja, ketika gyroscope digunakan, robot

berjalan lebih membelok ke satu sisi dibandingkan dengan gerakan tanpa

menggunakan gyroscope. Dengan kata lain, gerakan langkah salah satu kaki lebih

jauh dibandingkan gerakang langkah kaki yang satunya, sehingga fenomena ini

dapat terjadi. Sama seperti permasalahan sebelumnya, belum dapat dipastikan

mengapa fenomena ini dapat terjadi.

34

BAB VII

PENUTUP

VII.1 Kesimpulan

Hal-hal yang dapat penulis simpulkan setelah melakukan kerja praktik

diantaranya ialah:

Proses analisa cara kerja gyroscope dan penerapannya pada robot humanoid

pada dasarnya berhasil dilakukan.

Proses analisa cara kerja kamera HaViMo dan penerapannya pada robot

humanoid juga berhasil dilakukan.

Dalam membentuk suatu kontrol proporsional, Konstanta proporsional (Kp)

didapat dengan cara coba dan gagal. Semakin besar nilai Kp, maka sinyal

kendali pun akan semakin besar sehingga dalam penerapan gerakan jalan

robot, ketika sinyal yang diberikan sensor membuat error sedikit saja, maka

dengan sinyal kendali yang besar, kegiatan penyeimbangan postur akan

dilakukan secara berlebihan, mengakibatkan robot terlalu sensitif dalam

mengolah error yang muncul.

Dalam mengolah gambar, pendeteksian objek memanfaatkan titik tengah

objek tersebut, karena titik tengah akan tetap walau bendanya tampil dengan

ukuran yang berbeda sehingga lebih menggambarkan posisi objek yang

hendak dideteksi. Ketika mendeteksi objek, posisi kepala diupayakan selalu

mengacu pada objek dengan cara menghitung selisih titik tengah kamera

terhadap titik tengah objek. Perbedaan yang muncul akan dihilangkan dengan

menggerakan servo pada bagian kepala sesuai dengan perbedaan tersebut.

Untuk menyelaraskan titik tengah kamera terhadap titik tengah objek, sebagai

penyesuaian nilai koordinat x digunakan servo yang berotasi secara

horizontal. Sedangkan, untuk nilai koordinat y digunakan servo yang berotasi

secara vertikal.

Pembacaan gambar hingga pendeteksian objek menggunakan HaViMo tidak

dapat dilangsungkan apabila ada modul yang dipanggil secara berkala dalam

interval yang sebentar karena dapat mengganggu proses pendeteksian objek.

Robot terkadang masih terjatuh walau dengan frekuensi yang relatif kecil.

35

VII.2 Saran

Saran penulis terhadap pembuatan robot diantaranya ialah:

Belajar merupakan kunci dalam mencapai keberhasilan pada usaha

selanjutnya.

Perhitungan matematis sangat dibutuhkan dalam melakukan observasi dan

bereksperimen sehingga usaha yang dilakukan akan selalu memiliki hasil

(tidak sembarangan).

Hendaknya memahami domain permasalahan dalam hal yang ingin dicapai

sehingga dapat diidentifikasi hal-hal apa saja yang diperlukan.

Sebelum mengerjakan atau menghasilkan suatu hasil karya hendaknya hal

tersebut direncanakan dengan baik.

Berupaya semaksimal mungkin untuk dapat mencapai titik optimal usaha

sehingga dapat dikatakan memperoleh keberhasilan pada usaha yang

dilakukan.

Dalam mengerjakan suatu hal yang tergolong tidak begitu sederhana

hendaknya dikerjakan secara berkelompok. Hal tersebut menunjang

kebutuhan sosial untuk berbagi keluhan dalam masalah yang dialami terkait

pengerjaan sehingga solusi bisa saja ditemukan lebih cepat apabila dipikirkan

bersama.

Ide dalam menentukan hal apa yang sekiranya dibutuhkan untuk menunjang

perilaku robot yang lebih baik sangat berdampak positif.

Peran pembimbing sebaiknya tidak hanya mengawasi pengerjaan, akan tetapi

akan lebih baik apabila turut memberikan gagasan atau pemikiran dalam

penentuan hal-hal apa saja yang perlu dan memang harus dilakukan.

36

DAFTAR PUSTAKA

1. www.robosavvy.com, diakses pada tanggal 16 Juli 2012 – 10 Agustus 2012

2. www.robotis.com, diakses pada tanggal 16 Juli 2012 – 10 Agustus 2012

37

LAMPIRAN

Logbook 1. Pengerjaan Robot Seni

No. : 1 Periode: 18 – 29 Juni 2012

Sub No. : 1.1

Proyek

Membuat Robot Tari untuk Kontes Robot Seni Indonesia

Pembina : Eril Mozef

Pembimbing : Setiadi Rachmat

Tugas

Membuat rangka robot sehingga memenuhi aturan

pertandingan

Membuat gerakan tari untuk robot sesuai dengan aturan

pertandingan

Membuat gerakan sehingga robot mampu berjalan

Membuat navigasi jalan robot, yakni jalan dengan

memperhatikan warna tempat berjalan

Mampu membuat robot melakukan gerakan tari sesuai

dengan warna tempat berjalan

Mampu membuat robot malakukan seluruh gerakan tari

selesai dalam waktu yang ditentukan

Waktu dan

Kegiatan

Harian

Pada awal kegiatan pembuatan mekanik robot, kami sebagai tim

KRSI mengikuti mekanik yang dibuat oleh UI yang didapat lewat

youtube.com. Berasal dari model itulah akhirnya kami mampu

membuat rangka robot yang sesuai aturan, yakni tinggi robot harus

sepanjang 55 cm ±5cm. Dengan perubahan rangka robot ini, tentu

titik berat robot menjadi berubah sehingga tidak bisa menggunakan

gerakan robot yang telah ada (robot yang digunakan merupakan kit

robot premium pabrikan Robotis). Pada rangka robot ini terdapat

tiga servo pada bagian masing-masing lengan, lima servo pada

bagian masing-masing kaki, empat servo pada badan, dan dua servo

pada bagian kepala, sehingga berjumlah total 22 servo. Seluruh

servo tersebut dikontrol oleh satu controller robot yang bertipe CM-

510.

Pada pembuatan mekanik kendala yang muncul ialah jasa

pembuatan rangka hanya menreima model dalam bentuk corel draw

38

(*.cdr) sehingga kami harus menggambar ulang rangka yang ada ke

dalam bentuk *.cdr menggunakan tools autocad untuk bisa

memberikan ukuran panjang sisi-sisi rangka, baru kemudian di

convert ke dalam format *.cdr. Kemudian, kendala lainnya ialah

rangka yang dibuat hanya dapat dilubangi silindris saja, sedangkan

lubang yang dibutuhkan satu sisinya harus lebih luas dari sisi

satunya untuk penyesuaian letak baud pada rangka sehingga

lubangnya harus dibuat sendiri dan terkadang salah membuat

lubang yang lebih luas pada sisi yang seharusnya (mis: yang

seharusnya lubang yang lebih luas berada pada sisi luar, namun

malah lubang sisi dalam yang dibuat lebih luas). Hal tersebut

mengakibatkan sisi yang satunya (yang seharusnya lebih luas) tidak

bisa diluaskan karena malah akan membuat lubang yang lebih

besar. Jika sisi yang seharusnya lebih luas menjadi tidak luas, maka

baud yang seharusnya dipasang diganti dengan baud yang lebih

besar, hal ini mengakibatkan pemasangan baud tidak bisa terlalu

dalam karena bisa membuat servo tidak dapat berputar.

Pemasangan baud yang tidak terlalu dalam kadang membuat

baudnya terlepas dan hal tersebut dapat mengakibatkan gerakan

robot menjadi tidak benar.

Selesai pembuatan mekanik robot kami langsung membuat gerakan

tari yang telah dispesifikasikan melalui peraturan pertandingan

(sebagai info: terdapat perubahan spesifikasi tari sebanyak dua kali

dari pihak panitia). Gerakan tari yang perlu dilakukan robot

berjumlah enam tarian dan dua jenis salam, yakni salam pembuka

dan salam penutup.

Gerakan tari kami buat dengan menggunakan software RoboPlus

Motion. Cara kerjanya ialah dengan menggerakan rangka robot,

lalu di-“freeze” sehingga pada gerakan robot tersebut nilai posisi

servo akan didapatkan dan kemudian disimpan ke dalam step-step

pada page yang ada pada software tersebut.

39

Dalam pembuatan gerakan tari tidak begitu terdapat masalah yang

serius, namun dalam pembuatan gerakan jalan robot, terdapat

beberapa masalah, diantaranya ialah konsep atau metode robot

dalam melangkahkan kaki-nya, yakni harus memiringkan badan ke

arah sebaliknya kaki yang hendak dilangkahkan, maksudnya

apabila hendak melangkahkan kaki kiri ke depan, maka kaki

kananlah yang menjadi tumpuannya, sehingga robot harus

dimiringkan. Pada pemiringan robot itulah yang menjadi

masalahnya, karena seperti apa kemiringan yang optimal, pada saat

apa robot harus dimiringkan, lalu bagaimana proses pengangkatan

kaki yang hendak dilangkahkan, hingga bagaimana pendaratan kaki

yang baik sehingga didapatkan keseimbangan ketika robot selesai

melangkahkan kakinya.

Permasalahan lain yang muncul ialah ketika membuat gerakan

servo sering sekali panas disebabkan oleh beban robot yang berat

dan servo diharuskan menggerakan beban tersebut yang juga

didukung oleh cuaca ruangan yang panas. Hal tersebut membuat

kami mendiamkan robot sejenak hingga servonya dirasa cukup

dingin untuk melakukan gerakan kembali sehingga ini membuat

pengerjaan robot menjadi terhambat. Kemudian hal lain yang

menghambat pengerjaan ialah servo sering kali tidak terdeteksi oleh

controllerCM-510 yang tidak diketahui penyebabnya secara pasti.

Hal tersebut biasanya terselesaikan dengan mencabut kabel servo

pada beberapa bagian yang dirasa bermasalah (karena servo dirasa

terlalu berat menahan beban, yakni kabel pada servo lutut dan

pergelangan kaki) kemudian dipasang kembali.

Kemudian peraturan yang mengharuskan robot baru mulai

melakukan gerakan jika terdengar musik pengiring tari berhasil

diimplementasikan walau kondisinya hanya jika terdengar suara

dengan volume yang keras.

40

Peraturan mengharuskan robot melakukan tari pada tiap-tiap zona

(terdapat tiga zona utama, yakni zona awal, zona tengah, dan zona

akhir, serta dua zona melakukan salam, yakni zona mulai dan zona

tutup) dimana pada setiap zonanya robot harus melakukan tari yang

dispesifikasikan khusus untuk zona tersebut (dua gerakan tari untuk

setiap zona utama) dimana setiap zona utama memiliki warna yang

berbeda-beda.

Untuk mengatasi permasalahan mendeteksi warna zona yang

dipijak robot, digunakanlah perangkat kamera Havimo. Kamera ini

mampu menampung warna (dengan kapasitas total 7 penampung)

dengan cara penyimpanan yakni pertama kamera dibuat menangkap

gambar dan warna yang ada pada gambar tersebut dapat diklik dan

disimpan komposisi Red, Green, Blue-nya pada penampung

tersebut. Pada tiap satu penampung kami menyimpan warna satu

zona sehingga terdapat total lima penampung kamera yang

digunakan (tiga untuk zona utama, satu untuk zona mulai dan

penutup yang memang sama warnanya, dan satu lagi untuk zona

mulai dan penutup yang lainnya, karena terdapat dua lapangan

dengan warna zona mulai yang berbeda).

Untuk algoritma pemrosesan gambar, Havimo memiliki algoritma

tersendiri yang dapat digunakan dalam mendeteksi objek yang

memiliki warna yang sama dengan warna yang terdapat pada

penampung. Sebenarnya terdapat dua algoritma pemrosesan yang

dimiliki Havimo, yakni pengotakan objek berwarna yang sesuai

dengan penampung dan pewarnaan piksel objek berwarna yang

sesuai dengan penampung. Namun melalui controller CM-510 kami

hanya mampu menggunakan algoritma pengotakan objek, sehingga

setiap kotak objek memiliki batas, atas, kanan, bawah, dan kiri.

Pada algoritma ini ditambahkan bahwa bila ada banyak pengotakan

objek dengan warna yang sama, maka objek dengan warna (jumlah

41

piksel) terbanyaklah yang akan diambil. Oleh karena itu,

pendeteksian letak pijakan kaki dapat dilakukan dengan cara

havimo menangkap gambar dengan servo leher memosisikan kepala

menghadap ke arah kaki. Kemudian, warna yang terkotakkan akan

diperiksa apakah tergolong ke dalam zona awal, tengah, atau akhir

sehingga robot dapat melakukan gerakan tari yang sesuai dengan

zonanya. Selanjutnya, apabila robot mendeteksi suatu zona dan

telah melakukan kedua gerakan tari, maka robot akan melakukan

gerakan jalan sampai menemukan zona dengan warna yang

berbeda.

Secara keseluruhan gerakan robot yang dibuat ialah:

Enam gerakan tari

Dua jenis salam

Serong kiri

Serong kanan

Melangkahkan kaki kiri (posisi awal sejajar)

Melangkahkan kaki kiri (posisi awal kaki kiri di belakang)

Melangkahkan kaki kanan (posisi awal sejajar)

Melangkahkan kaki kanan (posisi awal kaki kanan di

belakang)

Mensejajarkan (kaki kiri belakang) & mensejajarkan (kaki

kanan belakang)

Untuk gerakan melangkahkan kaki kanan (posisi awal sejajar) tidak

digunakan karena gerakan tersebut masih bermasalah. Kemudian

pembuatan gerakan serong kiri dan serong kanan tidak sama jauh

pergeserannya mengakibatkan robot tidak dapat melakukan

pelurusan arah dengan baik setelah melakukan salah satu gerakan

serong (kiri atau kanan).

Tools yang

digunakan

Robot Kit Premium

RoboPlus Task, RoboPlus Manager, RoboPlus Motion

Camera Havimo

42

Hasil Kerja

Robot belum sepenuhnya siap untuk dipertandingkan karena

gerakan jalan masih terkadang tidak stabil dan menyebabkan robot

terjatuh.

Keterangan

Jumlah page pada RoboPlus Motion ialah sebanya 255 page dan

setiap page-nya memiliki tujuh step.

Pada pembuatan robot kami tidak menggunakan gyro untuk

mengatur keseimbangan sehingga robot sering terjatuh.

Logbook 2. Logbook Kerja Praktik Pekan Pertama

No. : 2 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 2.1 Hari / Tanggal : Senin, 16 Juli 2012

Proyek

Pengembangan Aplikasi Robot Sensor Monitoring

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Mempelajari gyro

Membuat aplikasi pemantau aktivitas sensor robot

Waktu dan

Kegiatan

Harian

Sebelum Istirahat :

Aplikasi telah terbentuk dalam memenuhi salah satu requirement

fungsional, yakni menampilkan nilai (value) yang dikeluarkan

sensor pada robot ke dalam bentuk grafik pada aplikasi. Untuk saya

sendiri diberi tugas untuk mempelajari hal-hal yang terkait dengan

robot sepak bola (robo soccer) sebagai rencana pembentukan robot

tersebut untuk keperluan perlombaan mendatang. Hal yang

sementara dipelajari ialah penggunaan gyro untuk keperluan jalan

robot.

Sesudah Istirahat :

Untuk sementara saya beralih membantu rekan KP (Pajar

Fathurrahman) dalam menyelesaikan aplikasi pemantau sensornya.

Dari kegiatan ini inti aplikasi yang telah jadi sebelumnya sebagai

43

pemantau data sensor yang dikode masih sederhana dan “kasar”

diubah agar lebih baik. Langkah pertama yang dilakukan ialah

mengelompokkan jenis-jenis sensor.

Tools yang

digunakan Visual Studio 2010

Hasil Kerja

Aplikasi masih tetap seperti semula, namun sensor telah

dikelompokkan berdasarkan jenisnya, yakni sensor keseimbangan,

sensor logic, sensor jarak, dan sensor warna.

Keterangan

Sensor keseimbangan ialah sensor yang memiliki nilai yang

berubah jika posisi sensor tersebut berubah dari titik seimbangnya.

Sensor keseimbangan memiliki satu hingga tiga axis (x saja, x-y,

atau x-y-z).

Sensor logic ialah sensor yang mengeluarkan nilai 1 atau 0 saja.

Sensor yang memiliki prinsip ini diantaranya ialah sensor line

tracer, yakni sensor yang berfungsi untuk mengetahui jalur, biasa

dipakai untuk robot yang berjalan mengikuti suatu jalur tertentu

yang berupa garis berwarna hitam.

Sensor jarak ialah sensor yang mampu mendeteksi jarak dengan

cara mengirimkan gelombang dan gelombang tersebut akan

dipantulkan bila mengenai suatu permukaan. Waktu yang

dibutuhkan gelombang untuk kembali dikalkulasi dengan kecepatan

rambat gelombang tersebut sehingga didapatkan jarak yang

ditempuh gelombang tersebut.

44

Sensor warna bekerja dengan cara mendeteksi nilai warna suatu

permukaan. Biasanya warna yang dideteksi dijabarkan ke dalam

nilai Red, Green, Blue (RGB) permukaan tersebut.

No. : 2 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 2.2 Hari / Tanggal : Selasa, 17 Juli 2012

Proyek

Pengembangan Aplikasi Robot Sensor Monitoring

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Menyelesaikan aplikasi pemantau sensor robot

Waktu dan

Kegiatan

Harian

Sebelum Istirahat :

Membuat kelas sensor, karena pada prinsipnya semua sensor sama-

sama memiliki nilai (value) hanya saja jumlah nilai yang

dikeluarkannya, sehingga pada kelas ini attribute yang dimilikinya

ialah nama sensor serta value nya. Value sensor tersebut dibungkus

dalam kelas tersendiri karena selain ada nilainya, value tersebut

juga harus disandingkan dengan waktu didapatkannya value

tersebut guna menunjang pemantauan sensor secara cermat.

Sesudah Istirahat :

Meng-kode aplikasi yang “kasar” untuk menerapkan kelas sensor

dan value-nya.

Tools yang

digunakan Visual Studio 2010

45

Hasil Kerja

Kelas sensor berhasil diimplementasi pada aplikasi dan dibuat

dalam bentuk list (list of sensor). Aplikasi diuji secara kasar

terhadap sensor gyro pada robot dan aplikasi menampilkan grafik

sesuai value yang diberikan. Struktur data yang terbuat:

Sensor: ● String sensorName

● structValue: ● list of integer

● time

Keterangan

Aplikasi dibuat dengan menggunakan media wireless, aliran data

berjalan dari robot menuju media transmisi wireless (zig bee) dan

diterima oleh media transmisi yang dipasang pada aplikasi.

No. : 2 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 2.3 Hari / Tanggal :Rabu, 18 Juli 2012

Proyek

Pengembangan Aplikasi Robot Sensor Monitoring

Project Manager : Eril Mozef

Technical Leader : -

Tugas Meneruskan pengerjaan aplikasi monitoring sensor robot

Waktu dan

Kegiatan

Harian

Sebelum Istirahat :

Memanfaatkan fasilitas kelas timer yang ada pada C# untuk

membuat delay (jeda) dalam penampilan (penyajian data) grafik

sehingga diharapkan aplikasi tidak terlalu cepat dalam men-

generate grafiknya.

Sesudah Istirahat :

Membuat timing pada aplikasi, timing akan mewakili waktu dalam

satuan millisecond, timing ini akan digunakan untuk keperluan

struktur data structValue

46

Tools yang

digunakan Visual Studio 2010

Hasil Kerja

Timer dan timing berhasil diimplementasi dengan baik, sehingga

grafik dapat ditampilkan dengan menggunakan delay timing

berjalan dengan baik pada aplikasi sehingga struktur data time pada

structValue terisi sesuai dengan nilai timer dari aplikasi.

Keterangan

Walaupun data ditampilkan dengan ada delay, penampilan grafik

masih terlihat berkedip-kedip dikarenakan proses penampilan

grafik yang sifatnya di-recreate setiap kali hendak menyajikan data,

bukan hanya kurva yang di-generate ulang, tapi seluruh komponen

grafik di-generate ulang ketika proses penampilan grafik dipanggil

No. : 2 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 2.4 Hari / Tanggal :Kamis, 19 Juli 2012

Proyek

Pengembangan Aplikasi Robot Sensor Monitoring

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Meneruskan pengerjaan aplikasi monitoring sensor robot

Waktu dan

Kegiatan

Harian

Sebelum Istirahat :

Membuat form ekstra guna memfasilitasi pengguna (user) dalam

memilih sensor apa yang hendak dipantau dan berapa jumlahnya.

Form dibuat dengan kelas khusus yang diberi nama kelas wizard

dan berperan dalam menampung list of sensor sementara. List of

sensor yang ditampung akan dikirim ke kelas form yang utama,

yakni kelas mainform setelah user memilih tombol „OK‟

Sesudah Istirahat :

Menggunakan toolbox pada form membuat UI sederhana, namun

47

kesulitan dalam pengiriman data, yakni data list of sensor yang

sementara ke list of sensor pada mainform

Tools yang

digunakan Visual Studio 2010

Hasil Kerja Aplikasi masih belum selesai, form masih berantakan

Keterangan

No. : 2 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 2.5 Hari / Tanggal : Jumat, 20 Juli 2012

Proyek

Pengembangan Aplikasi Robot Sensor Monitoring

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Meneruskan pengerjaan aplikasi monitoring sensor robot

Waktu dan

Kegiatan

Harian

Sebelum Istirahat :

Menemukan masalah bahwa list of sensor tidak bias dikirim dari

satu form ke form yang lainnnya, error message mengatakan

“inconsistent accessibility” terhadap list tersebut. DIketahui bahwa

tipe list of sensor bersifat private sedangkan data yang bersifat

48

private tidak bisa dikirim ke kelas lain sehingga tidak bisa dibuat

method untuk mengirim list of sensor yang telah dibuat oleh kelas

wizard.

Tools yang

digunakan Visual Studio 2010

Hasil Kerja

Sempat googling dan menyimpulkan bahwa kelas sensor tidaklah

bersifat public sehingga ketika ada kelas yang membuat list of

sensor sifatnya tidak bisa public yang membuat list tersebut tidak

bisa dikirim ke kelas lain. Hal lain yang membingungkan pada

kelas sensor pembuatan kelas dituliskan “class Sensor” dengan

penulisan ini saya mengetahui bahwa kelas itu sebenarnya sudah

bersifat public tapi entah mengapa tidak bisa membuat list of sensor

yang bersifat public

Keterangan

Logbook 3. Logbook Kerja Praktik Pekan Kedua

No. : 3 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 3.1 Hari / Tanggal : Senin, 23 Juli 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Berpindah mengerjakan robot pesepak bola

49

Waktu dan

Kegiatan

Harian

Beralih kembali pada pengerjaan seputar robot pesebakbola. Baru

sempat merakit kembali robot yang sebelumnya digunakan untuk

robot senin ke dalam bentuk robot pabrikannya untuk dapat

digunakan sebagai robot pesepak bola. Manajer menugaskan untuk

menguasai hal-hal yang dibutuhkan dalam membangun robot

pesebak bola yang handal. Hal- hal tersebut diantaranya pengolahan

image lewat kamera, dan pengontrolan gerak robot agar bisa

mengejar dan menendang bola layaknya pemain sepakbola. Hal lain

yang perlu diperhatikan ialah bagaimana mengatur seberapa jauh

robot harus berjalan untuk mendapatkan bola yang letaknya jauh,

bagaimana robot mampu menendang bola dengan benar ke arah

gawang lawan.

Tools yang

digunakan RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Hasil Kerja Robot belum sepenuhnya terakit dengan utuh

Keterangan

Membutuhkan part robot yang tertinggal pada kotak robot yang

terletak di ruang manajer sehingga pengerjaan perakitan robot

tertunda

No. : 3 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 3.2 Hari / Tanggal : Selasa, 24 Juli 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

50

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Sebelum Istirahat :

Merakit robot hingga siap digunakan untuk melakukan gerakan

jalan buatan pabrik

Sesudah Istirahat :

Mencoba menggunakan sensor gyro, pengujian dilakukan dengan

satu servo. Mencoba mengimplementasikan rumus penerapan nilai

gyro pada posisi servo. Rumus yang ada memiliki cara kerja:

pertama kali, rumus melakukan inisialisasi titik tengah gyro

(kalibrasi), kemudian titik tersebut dijadikan titik seimbang, dan

setiap nilai yang dikeluarkan gyro akan dikurangi terhadap titik

seimbang tersebut sehingga didapat nilai error-nya. Nilai error

tersebut lah yang kemudian diproses untuk menggerakan actuator

(servo) yang diuji.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja

Terdapat masalah karena rumus yang digunakan membuat nilai

gyro akan berubah bila ada percepatan sudut terhadap gyro

tersebut. Tepat ketika percepatan sudutnya 0, artinya gyro berhenti

dimiringkan, maka nilai yang dikeluarkan rumus tersebut menjadi 0

(tidak diharapkan).

Keterangan

Implementasi perubahan nilai gyro diskalakan dan ditambahkan

pada posisi servo sehingga servo melakukan penyesuaian posisi

agar didapatkan posisi seimbang robot (yang diharapkan). Pada

prinsipnya nilai error (kemiringan robot) harus diantisipasi dengan

malukan gerakan penyesuaian sehingga didapat keseimbangan.

Pengantsipasian nilai error tersebut bekerja dengan cara

51

menambahkan nilai error yang telah diproses dan diskalakan

(dengan rumus) ke dalam posisi servo yang seharusnya, sehingga

posisi servo akan berubah menjadi: “yang seharusnya” + “nilai

error yang diskalakan” (ini menjadi variable yang dinamakan

offset)

No. : 3 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 3.3 Hari / Tanggal : Rabu, 25 Juli 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Hari ini percobaan gyro diimplementasikan langsung terhadap

robot, dengan memanfaatkan rumus pengaturan gyro terhadap

perubahan posisi actuator (servo) yang ada. Menguji coba

keseimbangan robot ketika memakai gyro dan tidak memakai gyro.

Pengujian keseimbangan dilakukan dengan cara khusus, yakni

menarik robot ke arah depan atau belakang, kemudian dorong ke

arah sebaliknya. Robot tanpa pemrosesan gyro akan terjatuh ketika

didorong kea rah sebaliknya, berbeda dengan yang menggunakan

pemrosesan gyro, robot mampu menyeimbangkan badan sehingga

tidak jatuh ke arah dorongan tersebut.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

52

Hasil Kerja

Robot mampu menyeimbangkan diri ketika diberi percepatan

terhadap tubuhnya berbeda dengan ketika robot tidak memakai

gyro yang langsung terjatuh.

Implementasi rumus gyro dilakukan terhadap empat servo tertentu

untuk menyeimbangkan posisi depan belakang. Empat servo yang

libat untuk penyeimbangan badan depan belakang ialah servo lutut

kiri dan lutut kanan, serta servo pergelangan kaki kiri dan kanan.

Sedangkan untuk proses penyeimbangan badan kiri kanan servo

yang digunakan ialah servo pada pergelangan kaki kiri dan kanan

dan servo pinggul kiri dan kanan.

Keterangan

Robot memiliki dua servo di pergelangan kaki kiri (begitu juga

dengan bagian kanan), juga dua servo di bagian pinggul kiri (begitu

juga dengan bagian kanan). Apabila dorongan terlalu besar robot

tetap terjatuh.

No. : 3 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 3.4 Hari / Tanggal : Kamis, 26 Juli 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Menguji penerapan sensor dalam gerakan jalan robot dan mencoba

merubah-rubah konstanta yang ada pada rumus. Konstanta yang

berbeda diharapkan mengubah proses robot dalam melakuka

penyeimbangan.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

53

Hasil Kerja

Robot memiliki prilaku penyeimbangan yang bebeda ketika

konstantanya berbeda. Semakin besar konstanta maka

penyeimbangannya tidak ekstrim dan membuat servo melakukan

koreksi posisi yang terlalu sedikit. Sebaliknya, semakin kecil

konstanta maka robot akan melakukan penyeimbangan yang

ekstrim, bila sedikit saja ada kemiringan yang disertai percepatan

maka robot akan melakukan koreksi posisi yang terlalu besar

mengakibatkan robot terlalu sensitif yang justru malah membuat

proses penyeimbangan tidak stabil, karena dalam proses

penyeimbangan juga pasti ada percepatan (yang diperoleh lewat

proses penyeimbangan badan) walau nilainya kecil namun karena

terlalu sensitif maka sebagai akibatnya robot tidak berhenti

melakukan keseimbangan (terus bergoyang-goyang melakukan

penyeimbangan) .

Keterangan

Rumus: “error” = “nilaiGyro” – “titikSeimbang”

“errorTerskala” = “error” * 4

“balanceLutut” = “errorTerskala” / konstanta1

“balancePergelangan” = “errorTerskala” / konstanta2

No. : 3 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 3.5 Hari / Tanggal : Jumat, 27 Juli 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

54

Waktu dan

Kegiatan

Harian

Mengubah-ubah nilai konstanta1 dan konstanta2 dan mengujinya

pada robot dalam melakukan gerakan jalan.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja

Robot mampu berjalan tanpa jatuh jika permukaan jalan sedikit

kasar, jika di karpet masih jatuh ke arah belakang setelah beberapa

langkah (biasanya 5-7 langkah). Masih perlu dicari tahu bagaimana

caranya robot akan melakukan koreksi bila terjadi

ketidakseimbangan sedikit saja, sehingga terhindar dari jatuh

karena bila kemiringan sedikit saja langsung dikoreksi

(menyeimbangkan badan), maka kemiringan yang mengakibatkan

robot jatuh dapat dihindari. Sedangkan untuk kemiringan ke depan

masih dapat diseimbangkan selama dorongan ke depannya tidak

terlalu besar.

Keterangan

Nilai balance yang harus dicapai masing-masing (total: 8) servo

akan dieksekusi jika robot melakukan gerakan, sehingga pada

gerakan tersebut posisi servo yang digunakan untuk

menyeimbangkan nilainya akan berubah mengikuti nilai balance-

nya.

Logbook 4. Logbook Kerja Praktik Pekan Ketiga

No. : 4 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 4.1 Hari / Tanggal : Selasa, 31 Juli 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

55

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Masih merubah-rubah nilai konstanta1 dan konstanta2 dan

mengujinya pada robot dalam melakukan gerakan jalan pada

permukaan yang kasar (kayu) dan halus (karpet).

Memperhatikan video robot bioloid premium yang mampu

menyeimbangkan dengan baik, namun disimpulkan bahwa

membutuhkan accelerometer untuk melakukan penyeimbangan

tersebut, karena gyro tidak mendeteksi kemiringan, namun

percepatan sudut. Sehingga gyro hanya efektif dalam menangani

gaya luar yang cukup cepat yang mampu memberikan perubahan

nilai gyro.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja

Melakukan beberapa kali percobaan nilai konstanta yang berbeda,

pada awalnya nilai konstanta1 adalah 18, dan konstanta2 adalah 54,

sehingga perbandingannya ialah 1:3, perubahan nilai konstanta

masih menggunakan perbandingan ini, sehingga hanya konstanta1

yang dirubah dan konstanta2 mengikuti (yakni 3 kalinya). Pada

akhir pengerjaan didapat konstanta1 sebesar 13 menjadi nilai yang

paling tepat untuk menyeimbangkan robot dalam berjalan dan

menjadi tidak jatuh baik pada kayu maupun pada karpet.

Keterangan Rangka robot menggunakan standar tipe A dengan menggunakan

kepala tanpa sensor infra merah.

56

No. : 4 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 4.2 Hari / Tanggal : Rabu, 1 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Mengetahui bahwa informasi beban saat ini dapat dijadikan

parameter pengukur untuk menentukan keseimbangan robot.

Dengan mengetahui hal tersebut maka dicoba untuk mengolah nilai

beban sehingga dapt dimanfaatkan untuk melakukan balancing

pada robot.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja

Belum berhasil mengolah data beban servo menjadi sebuah

informasi untuk melakukan balancing pada robot. Beberapa usaha

yang dilakukan ialah memperhatikan perubahan nilai beban dan

nilai posisi servo yang aktual. Didapati bahwa terdapat perubahan

nilai beban yang tidak diinginkan, yakni beban berubah dengan

delta yang berbeda jika dipaksa diputar searah jarum jam (yakni

delta yang didapat langsung meloncat ke nilai 1032 ke atas)

dibandingkan dengan dipaksa diputar berlawanan arah jarum jam

(delta yang didapat berkisar 12 hingga 70an). Delta yang dapat

dikatakan tidak akurat sebagai parameter nilai untuk melakukan

penyeimbangan menjadi hal yang menyulitkan dalam melakukan

balancing pada robot.

57

Keterangan

Pada video balancing dengan metoda “load sensing” terlihat bahwa

perubahan gerak (respon) robot kurang cepat, dan robot baru dapat

melakukan balancing setelah kemiringannya cukup besar.

No. : 4 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 4.3 Hari / Tanggal : Kamis, 2 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Mencoba kembali mengolah data beban servo, kali ini data yang

dilibatkan ialah posisi aktual servo. Posisi aktual servo dijadikan

acuan untuk pengontrolan value servo yang berbeda antara searah

jarum jam dengan yang berlawanan. Jika servo diputar searah

jarum jam maka posisi aktual servo menjadi lebih kecil

dibandingkan posisi servo yang seharusnya, sebaliknya, jika diputar

berlawanan posisi aktual servo menjadi lebih besar dibanding posisi

servo yang seharusnya. Beberapa pengontrolan yang dilakukan

masih sebatas jika selisih posisi aktual servo terhadap posisi servo

yang seharusnya negatif (diputar paksa searah jarum jam, yang

membuat nilai beban melonjak langsung menjadi 1000), maka nilai

beban dikontrol menjadi 1/5-nya, sedangkan jika selisihnya positif

(berlawanan arah jarum jam, nilai berkisar 12 hingga 70an), maka

nilai beban dikontrol menjadi 4 kalinya. Namun, tetap saja value

yang dikeluarkan masih sulit dikontrol karena masih terjadi nilai

beban yang bernilai 1000 masuk ke dalam kondisi yang dikalikan

4, sehingga nilainya menjadi 4000, padahal nilai yang diinginkan

berkisar 80 hingga 400 saja.

58

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja

Tidak menemukan cara yang tepat dalam menyeimbangkan

akhirnya saya menyerah untuk mengelola data beban servo sebagai

informasi untuk melakukan balancing dan kembali pada gyro.

Ternyata ketika tidak menggunakan gyro robot masih tidak terlalu

sering jatuh, sehingga belum terdapat perbedaan yang pasti antara

memakai dengan tidak memakai gyroscope. Akhirnya dibuat

rangka robot dengan menambah dua servo di bagian kepala

sehingga robot menjadi lebih berat dan dapat membuat robot

terjatuh lebih sering. Hal ini dilakukan mengikuti saran manajer

untuk menambah beban robot hingga robot sering terjatuh baru

kemudian dilakukan pembandingan antar memakai dengan tidak

memakai gyro terhadap jalan robot.

Setelah hal tersebut dilakukan ternyata pengaturan gyro yang

sebelumnya menjadi buruk dan tetap membuat robot terjatuh

sehingga harus dilakukan pengolahan nilai gyro kembali.

Keterangan

No. : 4 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 4.4 Hari / Tanggal : Jumat, 3 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

59

Waktu dan

Kegiatan

Harian

Mencoba mengimplementasi source code balancing yang mampu

melakukan penyeimbangan dalam keadaan berdiri (jika

dimiringkan ke arah belakang, maka badan akan mencondongkan

ke depan, begitu pun sebaliknya, dan berlaku pula untuk

dimiringkan ke arah kiri dan kanan) terhadap gerakan jalan robot.

Selain itu mencoba menyesuaikan kembali pengaturan nilai gyro

agar robot mampu berjalan stabil kembali.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja

Source code yang didapat untuk menyeimbangkan robot tidak dapat

memberikan hasil yang diharapkan, malah robot dapat melakukan

penggerakan yang tidak diinginkan. Dalam code tersebut, yang

dijadikan parameter dalam melakukan balancing tidak hanya nilai

gyro, namun selisih antara posisi servo aktual terhadap posisi servo

yang diinginkan.Selisish tersebut didapat dengan menjumlahkan

selisih servo kiri dan selisih servo kanan lalu dibagi dua (dirata-

ratakan). Selisih ini kemudian diakumulasi ke dalam suatu variable

(yang dinisialisasi 0). Nilai akumulasi ini kemudian disatukan

dengan nilai gyro (yang telah diproses) untuk digunakkan

(dimasukkan ke dalam variable offset – lih. Logbook sub 1.8 ).

Proses akumulasi ini terdapat dalam satu fungsi yang dipanggil

secara terus menerus sehingga hal ini yang kemungkinan

mengakibatkan kepada “proses pengkoreksian” diluar yang

diharapkan.

Keterangan

60

Logbook 5. Logbook Kerja Praktik Pekan Keempat

No. : 5 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 5.1 Hari / Tanggal : Senin, 6 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Melakukan penyeimbangan kembali pada robot dalam berjalan,

dengan merubah-rubah konstanta yang terkait pada rumus

pengolahan data gyro. Sebelumnya, dua servo pinggang (untuk kea

rah depan-belakang) digunakan untuk membantu penyeimbangan,

namun sekarang tidak lagi digunakan karena malah memperburuk

kondisi robot dalam berjalan (unstable).

Selain itu, dicoba pula penggunaan kamera havimo pada robot

untuk mendeteksi suatu objek (yang dalam hal ini bola tenis

berwarna jingga) dengan cara mengambil sample warna objek dan

disimpan ke dalam penampung warna yang merupakan fitur

havimo.

Kamera ini digunakan agar selalu bisa mengikuti objek yang

hendak dideteksi. Dengan maksud tersebut, maka diperlukan dua

servo tambahan agar bisa menggerakkan kamera ke arah vertikal

maupun horizontal.

Untuk pengolahan servo sehingga kamera harus ke arah kiri, kanan,

atas, atau bawah, maka digunakan pengolahan gambar yang

diambil oleh kamera Havimo. Pada prinsipnya kamera havimo akan

mampu mendeteksi objek, sehingga persoalannya ialah bagaimana

kamera tersebut mengikuti objek jika objek digerakkan.

Pengolahan gambar yang dilakukan sehingga kamera dapat

mengikuti objek yang dideteksi ialah dengan menentukan titik

pusat objek. Titik pusat tersebut di dapat dengan cara

61

menjumlahkan nilai batas atas dan batas bawah lalu dibagi dua

untuk mendapatkan koordinat x, dan perlakuan yang sama terhadap

batas kiri dan kanan untuk mendapatkan koordinat y. Setelah titik

pusat objek didapat, maka langkah selanjutnya ialah mengkalkulasi

jarak tengah objek terhadap jarak tengah kamera, hasilnya

dijadikan pergeseran yang harus dilakukan oleh servo baik ke arah

horizontal maupun vertikal.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Havimo

Hasil Kerja

Robot sedikit jatuh, artinya lebih stabil dibandingkan dengan

menggunakan dua servo (kiri-kanan) pinggang. Namun, robot

seringkali dalam berjalan posisi badan terlalu condong ke depan,

mengakibatkan kaki robot tersandung dalam melakukan gerakan

jalan sehingga robot terjatuh.

Pengaturan kamera disandingkan dengan dua servo tambahan untuk

menggerakkan kamera ke arah vertikal maupun horizontal

mengikuti objek yang hendak dideteksi, hasilnya kamera mampu

mengikuti objek yang diinginkan, hanya saja responnya sangat

lambat dan terkadang kamera seolah-olah “mati” sehingga tidak

mengikuti objek.

Keterangan Tengah kamera memiliki koordinat 80,60 (x,y).

No. : 5 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 5.2 Hari / Tanggal : Selasa, 7 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

62

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Menggabungkan pembacaan havimo dengan gerakan jalan dan

melakukan pengubahan gerakan jalan robot sehingga kaki lebih

diangkat ketika mengayunkan kaki.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Havimo

Hasil Kerja

Kamera tidak dapat mendeteksi objek ketika digabungkan dengan

pengolahan data gyro untuk keperluan berjalan. Hal tersebut diduga

sistem pengambilan gambar oleh kamera havimo tidak dapat

disandingkan dengan modul yang bersifat callback/interrupt,

karena diduga ketika proses pengambilan gambar sedang

dilakukan, modul yang sifatnya callback tersebut terjalankan

sehingga proses pengambilan gambar terganggu sehingga

mengakibatkan pengambilan gambar yang rusak.

Terkait pengubahan gerakan robot, robot menjadi tidak mudah

jatuh ke depan (seperti yang sebelumnya, karena rangka dengan

tambahan dua servo membuat robot condong ke depan dalam

berjalan).

Keterangan

63

No. : 5 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 5.3 Hari / Tanggal : Rabu, 8 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

Waktu dan

Kegiatan

Harian

Mengolah kembali data gyro untuk penyeimbangan dengan

menerapkan ilmu kontrol PID yang diberikan oleh project manager.

Hal yang diinginkan ialah membuat robot berada pada titik tengah,

bila terjadi pergeseran badan sebesar θ maka diharapkan robot

mampu mengkoreksi posisi sebanyak θ pula dengan melawan arah

pergeseran.

Kontrol yang baru hendak dicoba ialah kontrol proposional dan

kontrol derivatif. Kontrol proposional berguna untuk

penyeimbangan secara kasar, sedangkan kontrol derivatif berguna

untuk mencapai penyeimbangan tersebut dalam waktu yang lebih

singkat dibandingkan dengan hanya menggunakan kontrol

proposional.

error = present value – set point

proposional = “Kp” * “error”

derivatif = “Kd” (“errort-1“ – “errort”)

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Havimo

Hasil Kerja

Perhitungan kontrol PID cocok diterapkan untuk sensor yang

nilainya berbeda pada kondisi yang berbeda yang dalam hal ini

accelerometer, tidak cocok untuk gyro yang setelah didapatkannya

error, maka error menjadi hilang beberapa saat kemudian (setelah

percepatan berhenti), berbeda dengan accelerometer yang memang

64

mampu memberikan error sesuai dengan posisi pada saat tertentu

(tidak terpengaruh oleh percepatan). Accelerometer dapat

digunakan sebagai parameter yang baik untuk pengontrolan nilai

PID untuk gerakan (penyeimbangan) robot.

Penerapan kontrol derivatif tidak berpengaruh pada akhirnya dalam

pengujian yang dilakukan, karena pada dasarnya pada gaya

pengujian yang dilakukan, robot akan setimbang dengan

sendirinya.

Keterangan

Kp merupakan Konstanta Proporsional yang dapat di-tuning

dengan cara trial and error

Kd merupakan Konstanta Derivatif yang dapat di-tuning sama

seperti Kp

Set Point merupakan nilai yang diinginkan (untuk gyro merupakan

nilai setimbang robot yang didapat dengan cara kalibrasi nilai gyro

terhadap posisi robot di awal program)

Present Value merupakan nilai saat ini (dalam hal gyro, nilai yang

dikeluarkan gyro yang sifatnya aktual)

No. : 5 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 5.4 Hari / Tanggal : Kamis, 9 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

65

Waktu dan

Kegiatan

Harian

Memperbaiki pengkabelan robot, dan mengubah-ubah konstanta

kembali, karena dirasa masih banyak jatuhnya, walaupun frekuensi

jatuh lebih banyak ketimbang tanpa penggunaan gyro.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja

Tidak diketahui apa penyebabnya tapi robot selalu saja berjalan

memutar (tidak lurus ke depan) bila gyro digunakan. Semakin kecil

nilai konstanta yang diberikan, semakin kecil lintasan putaran

jalannya. Sehingga konstanta1 diubah menjadi 20 dengan

perbandingan 1:2 untuk pergelangan kaki berbanding lutut, dengan

begini putaran yang dilakukan robot tidak terlalu kecil, walau

masih berputar.

Keterangan Kamera tidak lagi digunakan, namun beban dua servo tambahan

tetap terpasang.

No. : 5 Periode: 16 Juli 2012 – 10 Agustus 2012

Sub No. : 5.5 Hari / Tanggal : Jumat, 10 Agustus 2012

Proyek

Pengerjaan Robot Soccer Humanoid

Project Manager : Eril Mozef

Technical Leader : -

Tugas

Membuat robot soccer yang seimbang dalam berjalan

66

Waktu dan

Kegiatan

Harian

Mempelajari komunikasi serial yang memungkinkan terjalinnya

komunikasi antar dua microcontroller, namun yang dipelajari ialah

komunikasi yang dilakukan secara wireless yang dilakukan melalui

set perangkat yang dinamakan zig100/110. Perangkat ini mampu

berkomunikasi dengan ID tertentu dan mampu menerima/mengirim

data secara broadcast.

Tools yang

digunakan

RoboPlus Motion, RoboPlus Task, RoboPlus Manager

Gyro Sensor

Hasil Kerja Tidak ada hasil terkait kemajuan pengerjaan robot.

Keterangan