PROTOTIPE PENGGUNAAN KINECT DALAM PENGENDALIAN GERAK ROBOT.

(1)

PROTOTIPE PENGGUNAAN KINECT DALAM

PENGENDALIAN GERAK ROBOT

TUGAS AKHIR

Diajukan Sebagai Salah Satu Syarat untuk Menyelesaikan Program Strata I pada Jurusan Teknik Elektro Fakultas Teknik Universitas Andalas

Oleh : Faiz Iman Djufri NIM : 0910952040

Pembimbing I : Dr. Eng. Rahmadi Kurnia NIP. 19690820 199703 1 002

Pembimbing II : Ir. Darwison, M.T. NIP. 19640914 199512 1 001

JURUSAN TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS ANDALAS

PADANG

2014


(2)

ii Prototipe penggunaan Kinect dalam pengendalian gerak robot adalah sebuah sistem yang menggunakan Kinect, sensor yang mampu mendeteksi warna, jarak, gerakan, wajah, dan juga suara, sebagai pengendali gerak robot lewat gerakan anggota badan (isyarat) tanpa menggunakan remote control atau jenis controller yang sejenis sehingga pengendalian gerak robot menjadi lebih terasa nyata. Pada tugas akhir ini, sistem pengendalian sistem gerak robot dimulai dengan inputan dari gerakan isyarat tangan user (operator). Isyarat tangan tersebut kemudian ditangkap oleh Kinect dan dilakukan penerjemahan ke bentuk hand model (posisi tangan user yang diwakilkan oleh sebuah titik hijau pada Windows UI). Proses tersebut menggunakan aplikasi Processing berbasis Java

dengan menggunakan library tambahan SimpleOpenNI 0.27. Proses

penginterpretasian isyarat tangan ke perintah gerak diproses oleh komputer. Data berupa perintah orientasi gerak yang dihasilkan komputer, dikirimkan secara serial ke board arduino. Kemudian board arduino akan mengendalikan gerak robot dengan mengirimkan data logic dan PWM ke dua motor DC sesuai dengan data yang dikirim dari PC. Perintah yang dikerjakan dalam tugas akhir ini adalah perintah gerak maju, mundur, belok kanan, dan belok kiri. Jarak ideal tubuh user agar menjalankan aplikasi ini secara optimal yaitu pada jarak 1,2-1,5 m dari sensor Kinect dengan kecepatan isyarat tangan tidak lebih besar 4900 mm/s. Dari hasil yang diperoleh dapat disimpulkan bahwa sistem ini telah layak digunakan sebagai pengendali gerak robot.

Kata Kunci: Kinect, Arduino and Kinect, Processing, Arduino IDE, SimpleOpenNI 0.27, Hand Tracking, Gesture, Motion, Robot


(3)

iii

ABSTRACT

The prototype of controlling robot using Kinect is a system that uses Kinect, a sensor have capability for recognizing color, distance, motion, face , and voice, for controlling robot via user’s gesture without using a remote control or a similar type of controller thus controlling the robot motion becomes more real. In this thesis, the controlling robot motion system starts with a hand gesture input from the user. Hand gestures are captured by the Kinect, it will be converted to hand shape models (the position of the user's hand, which is represented by a green dot on the Windows UI). The process uses Processing, a Java-based applications, using additional libraries SimpleOpenNI 0.27. Interpretation process of hand gesture into motion commands for robot are processed by computer. Data in the form of motion orientation command are generated by computer, transmitted serially to the Arduino board. Then the Arduino board will control the motion of robot by transmit logic and PWM data to the two DC motor according to the data sent from the PC. Motion commands are applicated in this thesis are motion commands for forward, backward, turn right, and turn left . The ideal distance of the user 's postion in order to run these applications are optimally at a distance of 1.2-1.5 m from the Kinect sensor with the speed of hand gestures is not greater than 4900 mm/s. From the result, it can be concluded this system has been properly uses for controlling motion robot system.

Keyword: Kinect, Arduino and Kinect, Processing, Arduino IDE, SimpleOpenNI 0.27, Hand Tracking, Gesture, Motion, Robot


(4)

1

PENDAHULUAN

I.1 Latar Belakang

Keterlibatan teknologi dalam kehidupan manusia merupakan suatu hal yang lumrah. Hal ini disebabkan karena pada hakikatnya teknologi adalah pengetahuan terhadap penggunaan alat dan kerajinan serta bagaimana hal tersebut mempengaruhi kemampuan untuk mengontrol dan beradaptasi dengan lingkungan alamnya [1]. Seiring peningkatan kebutuhan manusia untuk mendapatkan kehidupan yang lebih efektif dan efisien, teknologi pun terus mengalami perkembangan untuk memenuhi kebutuhan manusia akan kehidupan yang lebih efektif dan efisien. Khusus di bidang robotik, perkembangan teknologi telah memicu munculnya inovasi-inovasi baru untuk membantu manusia dalam melakukan aktivitas sehari-hari.

Salah satu contoh inovasi di bidang robotik ini adalah munculnya penggunaan Kinect sebagai sebuah pengendali sistem gerak robot. Dengan penggunaan perangkat Kinect, sensor yang mampu mendeteksi warna, jarak, gerakan, wajah, dan juga suara, robot dapat dikendalikan cukup dengan gerakan anggota badan tanpa menggunakan remote control atau jenis controller yang sejenis sehingga pengendalian gerak robot menjadi lebih terasa nyata [2].

Pada tanggal 1 Juni 2009, Microsoft memperkenalkan Kinect Project dengan nama Project Natal. 13 Juni 2010, nama tersebut diganti dengan nama baru yaitu Kinect. Nama berasal dari kata “kinetic” dan “connect” yang menggambarkan


(5)

2 ide dari alat ini. Motto yang digunakan perusahaan untuk proses pemasaran alat ini

yaitu “You are the controller” [3].Pada awalnya, Kinect adalah motion sensing perangkat input oleh Microsoft untuk video game Xbox 360 konsol dan PC Windows. Berdasarkan suatu gaya webcam-add-on perangkat untuk konsol Xbox 360, memungkinkan pengguna untuk mengontrol dan berinteraksi dengan Xbox 360 tanpa perlu menyentuh game controller cukup hanya dengan menggunakan gerak tubuh atau perintah lisan [4].

Perkembangan teknologi robotik yang terus berkembang saat hingga ini, menuntut kemudahan dalam pengendalian robot oleh user (operator). Dimana penggunaan perangkat kendali robot seperti, keyboard, mouse, joystick, gamepad dan lain sebagainya yang memiliki kontak langsung dengan operator semakin dikurangi karena dapat mengurangi mobilitas user. Oleh karena itu, pada tugas

akhir ini dibuat penelitian tentang “Prototipe Penggunaan Kinect Dalam

Pengendalian Gerak Robot”.

Telah banyak tulisan dan penelitian yang mengambil topik berkaitan dengan Kinect. Beberapa diantaranya yaitu:

1. Achmad Teguh Wibowo dkk pada penelitian yang berjudul “Teknologi Natural User Interface Menggunakan Kinect Sebagai Pemicu Kerja Perangkat Keras Berbasis Fuzzy Inference System”[5] yang membahas tentang penggunaan data citra berwarna, citra kedalaman, gesture, jarak, posisi dan ketinggian tubuh pengguna yang mampu ditangkap oleh Kinect dikombinasikan dengan Fuzzy Inferenece System metode TSK untuk diubah menjadi suatu perintah yang dapat dimengerti perangkat keras sehingga


(6)

3 perangkat keras sebagai simulasi sistem smart house.

2. Rendi Budiman pada tugas akhir yang berjudul “Integrasi Kinect dan Unreal Development Kit Menggunakan Kerangka Kerja OpenNI Pada Studi Kasus Game Berbasis Interaksi Gerakan”[6] yang membahas penggunaan kerangka kerja OpenNI untuk mengenali aliran data Microsoft Kinect ke dalam serangkaian metode dan fungsi yang dapat dikenali oleh Unreal Development Kit, game engine yang digunakan untuk membuat game 3D adalah game engine yang belum mendukung Microsoft Kinect sebagai kontrol permainannya.

3. Nuruddin Wiranda pada tugas akhir yang berjudul ”Implementasi Kinect Pada Penerjemah Bahasa Isyarat”[4] yang membahas penggunaan dalam pembuatan aplikasi penerjemah bahasa isyarat yang hasil keluarannya berupa teks dan suara sebagai pendukung pembelajaran berbentuk desktop based yang menyediakan fitur sesuai kebutuhan pengguna.

4. Yosafat Yuwono pada tugas akhir yang berjudul “Prototype Penggunaan Kinect Untuk Aplikasi Pembelajaran Nada”[3] yang membahas bagaimana pembuatan aplikasi pembelajaran nada menggunakan piano virtual berbasis Kinect.

5. Ispanji Pratama pada tugas akhir yang berjudul “Penangkap Gerak Dua

Dimensi Untuk Dongeng Interaktif”[7] yang membahas bagaimana

pembuatan cerita dongeng yang diperankan, lalu direkam ke dalam bentuk video dengan bantuan Kinect sebagai penangkap gerak dua dimensi sebagai alternatif dalam penyampaian dongeng.


(7)

4 I.2 Perumusan Masalah

Pada penelitian akan dilakukan beberapa proses, dimulai dengan proses melakukan pemograman pada Arduino IDE yang akan menjadi sistem kerja sistem robot melalui proses pengupload-an program. Pada sisi Kinect akan dilakukan pemograman melalui software Processing yang menjadi landasan sistem kerja nantinya. Keluaran yang dihasilkan Kinect melalui gerakan yang telah teridentifikasi akan dikirimkan ke robot sebagai input pengontrolan dari suatu sistem robot sehingga robot dapat bergerak sesuai keinginan.

I.3 Tujuan Penelitian

Adapun tujuan penelitian pada tugas akhir ini adalah:

1. Mengambil data pengujian Xbox 360 Kinect untuk mengidentifikasi gerak tubuh manusia.

2. Mengimplementasikan penggunaan Xbox 360 Kinect dalam pengendalian gerak robot.

I.4 Batasan Masalah

Adapun batasan masalah pada tugas akhir ini:

1. Penggunaan Xbox 360 Kinect sebagai pengendali gerak robot lewat gerak tubuh yang telah diidentifikasi sebelumnya.

2. Robot yang digunakan pada tugas akhir ini adalah robot yang telah diprogram sistem kerjanya melalui Arduino IDE.

3. Pemograman sistem kerja Kinect dilakukan dengan melakukan pemograman pada software Processing yang nantinya akan dikirimkan sebagai input pengontrolan gerak robot.


(8)

5 4. Perangkat sensor Kinect yang digunakan adalah Xbox 360 Kinect.

5. Mikroprosessor yang digunakan pada robot adalah Arduino 2560

6. Perangkat lunak yang digunakan adalah Processing 1.5.1 dan Arduino IDE 1.5.3.

7. Pengujian sistem dilakukan pada ruangan tertutup. I.5 Manfaat Penelitian

Penelitian Tugas Akhir ini diharapkan dapat menjadi langkah awal perancangan sistem pengendalian gerak robot yang memberikan tingkat mobilitas user yang cukup besar sebagai alat bantu manusia saat bekerja pada kondisi yang rumit jika hanya menggunakan tenaga manusia.

I.6 Sistematika Penulisan

Sistematika penulisan adalah langkah-langkah dalam membuat tugas akhir. Bertujuan untuk lebih mempermudah dan memperjelas dalam penyampaian informasi pembahasan masalah, dengan susunan sebagai berikut:

a. Bab I : Pendahuluan

Berisi tentang latar belakang masalah, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, dan sistematika penulisan Tugas Akhir.

b. Bab II : Tinjauan Pustaka

Membahas tentang teori-teori pendukung yang digunakan dalam perencanaan dan pembuatan Tugas Akhir. Berisi teori-teori tentang pengolahan citra digital, Kinect, Arduino, serta software Processing &


(9)

6 Arduino dan bahasa pemograman perancangan sistem serta penelitian-penelitian pendukung lainnya.

c. Bab III : Perancangan dan Implementasi Sistem

Berisi tentang gambaran sistem pada penelitian, perancangan perangkat keras, perancangan perangkat lunak, serta perancangan pengendalian gerak robot dengan menggunakan sinkronisasi Kinect dengan Arduino.

d. Bab IV : Hasil dan Analisa

Membahas hasil dari pengujian dan analisa sistem. Pengujian jarak dan kecepatan gerak pengguna yang mampu ditangkap Kinect.

e. Bab V : Penutup

Penutup berisikan kesimpulan dan saran untuk dapat dijadikan bahan pertimbangan dalam pengembangan perancangan berikutnya.


(1)

1

BAB I

PENDAHULUAN

I.1 Latar Belakang

Keterlibatan teknologi dalam kehidupan manusia merupakan suatu hal yang lumrah. Hal ini disebabkan karena pada hakikatnya teknologi adalah pengetahuan terhadap penggunaan alat dan kerajinan serta bagaimana hal tersebut mempengaruhi kemampuan untuk mengontrol dan beradaptasi dengan lingkungan alamnya [1]. Seiring peningkatan kebutuhan manusia untuk mendapatkan kehidupan yang lebih efektif dan efisien, teknologi pun terus mengalami perkembangan untuk memenuhi kebutuhan manusia akan kehidupan yang lebih efektif dan efisien. Khusus di bidang robotik, perkembangan teknologi telah memicu munculnya inovasi-inovasi baru untuk membantu manusia dalam melakukan aktivitas sehari-hari.

Salah satu contoh inovasi di bidang robotik ini adalah munculnya penggunaan Kinect sebagai sebuah pengendali sistem gerak robot. Dengan penggunaan perangkat Kinect, sensor yang mampu mendeteksi warna, jarak, gerakan, wajah, dan juga suara, robot dapat dikendalikan cukup dengan gerakan anggota badan tanpa menggunakan remote control atau jenis controller yang sejenis sehingga pengendalian gerak robot menjadi lebih terasa nyata [2].

Pada tanggal 1 Juni 2009, Microsoft memperkenalkan Kinect Project

dengan nama Project Natal. 13 Juni 2010, nama tersebut diganti dengan nama baru yaitu Kinect. Nama berasal dari kata “kinetic” dan “connect” yang menggambarkan


(2)

2 ide dari alat ini. Motto yang digunakan perusahaan untuk proses pemasaran alat ini yaitu “You are the controller” [3].Pada awalnya, Kinect adalah motion sensing

perangkat input oleh Microsoft untuk video game Xbox 360 konsol dan PC Windows. Berdasarkan suatu gaya webcam-add-on perangkat untuk konsol Xbox 360, memungkinkan pengguna untuk mengontrol dan berinteraksi dengan Xbox 360 tanpa perlu menyentuh game controller cukup hanya dengan menggunakan gerak tubuh atau perintah lisan [4].

Perkembangan teknologi robotik yang terus berkembang saat hingga ini, menuntut kemudahan dalam pengendalian robot oleh user (operator). Dimana penggunaan perangkat kendali robot seperti, keyboard, mouse, joystick, gamepad

dan lain sebagainya yang memiliki kontak langsung dengan operator semakin dikurangi karena dapat mengurangi mobilitas user. Oleh karena itu, pada tugas akhir ini dibuat penelitian tentang “Prototipe Penggunaan Kinect Dalam Pengendalian Gerak Robot”.

Telah banyak tulisan dan penelitian yang mengambil topik berkaitan dengan

Kinect. Beberapa diantaranya yaitu:

1. Achmad Teguh Wibowo dkk pada penelitian yang berjudul “Teknologi Natural User Interface Menggunakan Kinect Sebagai Pemicu Kerja Perangkat Keras Berbasis Fuzzy Inference System”[5] yang membahas tentang penggunaan data citra berwarna, citra kedalaman, gesture, jarak, posisi dan ketinggian tubuh pengguna yang mampu ditangkap oleh Kinect

dikombinasikan dengan Fuzzy Inferenece System metode TSK untuk diubah menjadi suatu perintah yang dapat dimengerti perangkat keras sehingga


(3)

3 mendapatkan hasil yang semaksimal mungkin dalam proses memicu kerja perangkat keras sebagai simulasi sistem smart house.

2. Rendi Budiman pada tugas akhir yang berjudul “Integrasi Kinect dan Unreal Development Kit Menggunakan Kerangka Kerja OpenNI Pada Studi Kasus Game Berbasis Interaksi Gerakan”[6] yang membahas penggunaan kerangka kerja OpenNI untuk mengenali aliran data Microsoft

Kinect ke dalam serangkaian metode dan fungsi yang dapat dikenali oleh

Unreal Development Kit, game engine yang digunakan untuk membuat

game 3D adalah game engine yang belum mendukung Microsoft Kinect

sebagai kontrol permainannya.

3. Nuruddin Wiranda pada tugas akhir yang berjudul ”Implementasi Kinect Pada Penerjemah Bahasa Isyarat”[4] yang membahas penggunaan dalam pembuatan aplikasi penerjemah bahasa isyarat yang hasil keluarannya berupa teks dan suara sebagai pendukung pembelajaran berbentuk desktop based yang menyediakan fitur sesuai kebutuhan pengguna.

4. Yosafat Yuwono pada tugas akhir yang berjudul “Prototype Penggunaan Kinect Untuk Aplikasi Pembelajaran Nada”[3] yang membahas bagaimana pembuatan aplikasi pembelajaran nada menggunakan piano virtual berbasis

Kinect.

5. Ispanji Pratama pada tugas akhir yang berjudul “Penangkap Gerak Dua Dimensi Untuk Dongeng Interaktif”[7] yang membahas bagaimana

pembuatan cerita dongeng yang diperankan, lalu direkam ke dalam bentuk video dengan bantuan Kinect sebagai penangkap gerak dua dimensi sebagai alternatif dalam penyampaian dongeng.


(4)

4 I.2 Perumusan Masalah

Pada penelitian akan dilakukan beberapa proses, dimulai dengan proses melakukan pemograman pada ArduinoIDE yang akan menjadi sistem kerja sistem robot melalui proses pengupload-an program. Pada sisi Kinect akan dilakukan pemograman melalui software Processing yang menjadi landasan sistem kerja nantinya. Keluaran yang dihasilkan Kinect melalui gerakan yang telah teridentifikasi akan dikirimkan ke robot sebagai input pengontrolan dari suatu sistem robot sehingga robot dapat bergerak sesuai keinginan.

I.3 Tujuan Penelitian

Adapun tujuan penelitian pada tugas akhir ini adalah:

1. Mengambil data pengujian Xbox 360 Kinect untuk mengidentifikasi gerak tubuh manusia.

2. Mengimplementasikan penggunaan Xbox 360 Kinect dalam pengendalian gerak robot.

I.4 Batasan Masalah

Adapun batasan masalah pada tugas akhir ini:

1. Penggunaan Xbox 360 Kinect sebagai pengendali gerak robot lewat gerak tubuh yang telah diidentifikasi sebelumnya.

2. Robot yang digunakan pada tugas akhir ini adalah robot yang telah diprogram sistem kerjanya melalui Arduino IDE.

3. Pemograman sistem kerja Kinect dilakukan dengan melakukan pemograman pada software Processing yang nantinya akan dikirimkan sebagai input pengontrolan gerak robot.


(5)

5 4. Perangkat sensor Kinect yang digunakan adalah Xbox 360 Kinect.

5. Mikroprosessor yang digunakan pada robot adalah Arduino 2560

6. Perangkat lunak yang digunakan adalah Processing 1.5.1 dan Arduino IDE 1.5.3.

7. Pengujian sistem dilakukan pada ruangan tertutup. I.5 Manfaat Penelitian

Penelitian Tugas Akhir ini diharapkan dapat menjadi langkah awal perancangan sistem pengendalian gerak robot yang memberikan tingkat mobilitas user yang cukup besar sebagai alat bantu manusia saat bekerja pada kondisi yang rumit jika hanya menggunakan tenaga manusia.

I.6 Sistematika Penulisan

Sistematika penulisan adalah langkah-langkah dalam membuat tugas akhir. Bertujuan untuk lebih mempermudah dan memperjelas dalam penyampaian informasi pembahasan masalah, dengan susunan sebagai berikut:

a. Bab I : Pendahuluan

Berisi tentang latar belakang masalah, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, dan sistematika penulisan Tugas Akhir.

b. Bab II : Tinjauan Pustaka

Membahas tentang teori-teori pendukung yang digunakan dalam perencanaan dan pembuatan Tugas Akhir. Berisi teori-teori tentang pengolahan citra digital, Kinect, Arduino, serta software Processing &


(6)

6 Arduino dan bahasa pemograman perancangan sistem serta penelitian-penelitian pendukung lainnya.

c. Bab III : Perancangan dan Implementasi Sistem

Berisi tentang gambaran sistem pada penelitian, perancangan perangkat keras, perancangan perangkat lunak, serta perancangan pengendalian gerak robot dengan menggunakan sinkronisasi Kinect dengan Arduino.

d. Bab IV : Hasil dan Analisa

Membahas hasil dari pengujian dan analisa sistem. Pengujian jarak dan kecepatan gerak pengguna yang mampu ditangkap Kinect.

e. Bab V : Penutup

Penutup berisikan kesimpulan dan saran untuk dapat dijadikan bahan pertimbangan dalam pengembangan perancangan berikutnya.