SISTEM PENJEJAKAN BOLA BERBASIS PROSESSOR ARM 9 PADA MOBILE ROBOT Yanuar Setiawan(1), A.R Anom Besari S.ST, MSc(2), Setiawardhana, ST,M.T(2) Mahasiswa Program Studi Teknik Komputer, (2) Dosen Program Studi Teknik Komputer Politeknik Elektronika Negeri Surabaya – Institut Teknologi Sepuluh Nopember (ITS) Surabaya Kampus ITS, Sukolilo, Surabaya 60111 (1)
ABSTRAK Dalam otomatisasi konstruksi, pelacakan lokasi pekerja atau benda bergerak adalah penting bagi tenaga kerja baik pemantauan, pengelolaan sumber daya, dan koordinasi mesin. Untuk pelacakan obyek, kamera sering dipergunakan untuk mendapatkan informasi tentang gerak kendaraan konstruksi yang kemudian dapat digunakan dalam kontrol koordinasi. Pengembangan robot dengan prosessor Arm 9 merupakan suatu hal yang baru dalam pengembangan dunia robotika di Indonesia. Dengan menggunakan Operating sistem Linux diharapkan pemrosessan eksekusi program secara RTOS (Real Time Operating Sistem). Robot ini menggunakan kamera CMU cam2 untuk mendeteksi keberadaan suatu obyek. Dengan menggunakan kamera CMU Cam2 robot dapat mengenali obyek benda yang berupa warna merah. Informasi data yang berupa obyek gambar akan diterima oleh kamera, kemudian data tersebut dikirim ke ARM 9 Processor melalui komunikasi serial RS232. Robot ini akan bergerak secara autonomous (otomatis) sesuai dengan informasi data yang diterima. Pada pengujian pendeteksian bola pada siang hari menggunakan CMUCam2 dapat mengetahui dengan jarak maksimal 40 cm dengan sdut kamera 60 derajat dari garis tegak lurus. Pengujian titik tengah x dan y pada bola lebih kecil dibandingkan pengujian titik tengah x dan y dengan benda kotak ataupun silinder.
Kata Kunci : ARM9, CMUCam2, RTOS, Motor Servo . 1.
PENDAHULUAN Dewasa ini teknologi pelacakan lokasi pekerja atau benda bergerak adalah penting bagi tenaga kerja baik pemantauan, pengelolaan sumber daya dan koordinasi.mesin. Untuk pelacakan obyek informasi tentang gerak keadaan konstruksi yang kemudian dapat digunakan dalam control koordinasi. 2.
LATAR BELAKANG Dalam otomatisasi konstruksi, pelacakan lokasi pekerja atau benda bergerak adalah penting bagi tenaga kerja baik pemantauan, pengelolaan sumber daya, dan koordinasi mesin. Untuk pelacakan obyek, kamera sering dipergunakan untuk mendapatkan informasi tentang gerak kendaraan konstruksi yang kemudian dapat digunakan dalam kontrol koordinasi. Dalam proyek akhir ini akan dibuat sebuah mobile robot berbasis ARM 9 menggunakan kamera sebagai sensor yang merupakan pengembangan dari mobile robot yang telah dibuat sebelumnya berbasis mikrokontroller. Mobile robot ini menggunakan Processor Mobisense ARM 9 sebagai kontrol pergerakan robot dan kamera CMUCam2 sebagai mata robot. Kamera CMUcam2 digunakan untuk sensor mendeteksi warna benda dengan motor servo continuous sebagai aktuator pergerakan robot untuk mengikuti warna benda. Dengan mengirimkan beberapa perintah ke CMUCam2 maka kontroller processor ARM 9 akan memprosesnya data yang diterima dari CMUCam2 berupa karakter dari gambar yang akan diamati. Kemudian nilai tadi digunakan
untuk merubah pergerakan gerak motor servo dari mobile robot. 3.
PERANCANGAN SISTEM Secara garis besar penelitian ini terdiri dari tiga proses besar. Proses tersebut adalah proses Deteksi warna benda, Mengetahui titik tengah benda dan Pergerakan Mobile robot. Gambar 1 adalah bagian dari Blok diagram perencanaan System. PW Prosesso M R r ARM 9
Kamera CMUCa m2 x,y,pixel
PW ML
Servo Kanan
Servo Kiri
Gambar 1. Blok Diagram Sistem Pengenalan warna benda adalah tahap dimana beberapa warna benda kita catat RGB nya dengan software bawaan dari CMUCam2 untuk warna-warna tertentu. Perolehan nilai titik tengah dari bola ini diambil dari pengiriman data dari CMUCam2 ke ARM processor untuk mengetahui posisi dari bola tersebut.
Pergerakan Mobile Robot pada ARM Processor adalah tahap dimana algorithma pergerakan motor servo untuk mengikuti kemana benda berada dengan kecepatan tertentu. 3.1 Pembuatan Perangkat Keras
ARM 9 Processor
. Gambar 2. Koneksi CmuCam2 Dengan Robot Di gambar 2 CmuCam2 koneksi secara serial TTL dengan Mobisense Processor ARM 9 sekaligus untuk menggerakkan motor servo. 3.2 Pembuatan Mekanik Robot
Gambar 3. Gambar Depan Robot Pada gambar Cmucam2 ditempatkan ditengah robot dengan body robot berbentuk lingkaran yang akan digerakkan oleh kedua buah servo yang terhubung pada processor ARM9. Mekanik ini terdiri dari diameter robot 12 cm dan tinggi robot 17 cm disertai dengan diameter roda 5 cm. Sudut Kamera CMUCam2 menghadap 60 derajat dari garis lurus. 3.3 Perencanaan Software 3.3a) Persiapan Host Development Komputer yang harusdipersiapkan memiliki spek sebagai berikut: A) Hardware: Pentium CPU 256 MB RAM 1 RS232 serial port 1 Ethernet port (2 ports disarankan) 500 MB free disk space B) Software: Linux operating system (Kernel 2.6.x disarankan) DHCP server TFTP server
NFS server minicom atau program emulasi serial lainnya GCC 3.x MBS270 dapat berjalan: Sebagai standalone computer dengan kernel dan filesystem yang ada di dalam flash. Ini adalah cara khusus untuk menggunakan board ini sebagai embedded computer. Hanya TFTP server dibutuhkan untuk transfer program atau data file antara workstation dan MBS270. Dengan membuka NFS dengan kernel yang didownload dengan TFTP ketika waktu booting MBS270. Ini adalah cara yang tepat untuk digunakan ketika membangun sebuah aplikasi. Untuk mengembangkan sebuah workstation maka dibutuhkan beberapa software: Satu atau dua GCC toolchain untuk cross compiling programs untuk PXA270 Sebuah DHCP server untuk memberikan IP address ketika booting time, server boot dari file yang telah dibuka untuk prosees booting dan server dan path untuk root filesystem. Sebuah TFTP server untuk menstransfer boot image ke dalam MBS270. Sebuah NFS server untuk membuka root file system. 3.3b) Perancangan Sofware Penjejak Dalam membuat software penjejakan pada sistem ini kita tidak perlu untuk melakukan image processing karena telah dilakukan oleh kamera CMU Cam2. Pada saat system ON, program yang dijalankan adalah subprogram inisialisasi kamera CMU Cam2 dan warna obyek, sebab tanpa melakukan inisialisasi tersebut kamera CMU Cam2 tidak akan mengirimkan data koordinat obyek sebab warna yang harus di proses oleh CMU Cam2 tidak terdefinisi. Dan karena CMU Cam2 tidak mengirimkan sinyal data serial maka tidak terjadi Interrupt yang menyebabkan sistem melanjutkan process sehingga sistem tidak bekerja. Pada sub program tersebut, terdapat pengiriman data untuk melakukan setting kecerahan, mendapatkan titik tengah kamera dan reset kamera agar register-register kamera menjadi 0 sehingga system bekerja mulai dari awal. Untuk inisialisasi warna obyek cukup dengan melakukan pengiriman data dengan format sebagi berikut : TC minRed maxRed minGreen maxGreen minblue maxBlue \r Pada program sistem penjejak sebagai berikut : #define track_warna putsf("TC 147 240 80 176 16 16\r"). Pada gambar 4 akan dijelaskan flowchart sistem software penjejak bola.
4.2 Start
Akses LED GPIO driverProsessor ARM9 Mengetahui berfungsinya driver gpio LED dengan cara mengkoneksi atau meremote ARM9 dengan koneksi ssh dari host dan melakukan eksekusi program lewat terminal.
Inisialisasi camera Inisialilsasi warna obyek Buffer data serial dan parsing datangan Konversi data ASCII ke Integer
Titik Tengah Benda dan Pixel
Pergerakan Servo
Gambar 3. Pengujian Driver GPIO pada MBS270 Dalam mengakses driver LED dan GPIO sebenarnya sudah ada program utility dari Flash kernel MBS270 kita dapat mengakses secara langsung sedangkan untuk program secara Eclipse IDE kita dapat membuat aplikasi sederhana dengan menyalakan dan delay LED tersebut.
Finish 4.3 Gambar 3. Flowchart Software Penjejak 4.
UJI COBA DAN ANALISA Pada penelitian ini, penulis melakukan beberapa uji coba. Uji coba tersebut adalah uji coba secara perangkat lunak dan perangkat keras antara lain:
Penggunaan Kamera dalam Software Java Dalam mengakses driver LED dan GPIO sebenarnya sudah ada program utility dari Flash kernel MBS270 kita dapat mengakses secara langsung sedangkan untuk program secara Eclipse IDE kita dapat membuat aplikasi sederhana dengan menyalakan dan delay LED tersebut.
4.1
Pengujian Koneksi Host dan MBS270 Tujuan dari pengujian ini mencoba menyambungkan ping ip address dengan board MBS270. Proses ini digunakan untuk menstransfer hasil program executable dari host development ke Prosessor ARM9. Metode pengujian yang dlakukan pada bagian ini adalah dengan mengetik perintah ping ke ip address static MBS270 yaitu 192.168.1.95 dengan koneksi kabel cross pada Ethernet masingmasing.
Gambar 3. Pengujian Koneksi antara Host Develompent dengan MBS270
Gambar 3. Nilai Maksimum dan minimum Obyek Nilai TC didapatkan dengan cara terlebih dahulu mengcapture obyek dengan program yang telah disediakan oleh kamera bisa dillihat pada gambar diatas, dari hasil capture gambar tersebut akan didapat nilai maksimum dan minimum yang mana akan dimasukkan dalam perintah TC, nilai TC ini akan berguna untuk menentukan titik tengah dari obyek yang akan digunakan acuan untuk mengejar obyek.
4.4 Kecepatan respon Robot Mendeteksi Bola Dalam robot processor arrm9 mendeteksi keberadaan bola dalam jarak tertentu tentunya mempengaruhi kerja pergerakan robot. Pada aplikasi mendeteksi bola dengan processor ARM9 kurang merespon adanya pergerakan bola apabila berpindah posisi dikarenakan aplikasi ini belum adanya interrupt serial sehingga lambat pergerakan robot. Aplikasi yang dibangun sementara dieksekusi melalui userspace dari processor ARM9 sehingga membutuhkan eksekusi dari komputer host development.
3.
KESIMPULAN Berdasarkan hasil uji coba dan analisa, dapat disimpulkan, a) Kamera CMUCam2 memiliki sensitifitas pada intensitas cahaya serta kekontrasan warna obhyek pada saat tracking. Oleh karena itu kita perlu melakukan setting warna untuk tracking obyek di setiap tempat yang berbeda. b) Kamera MT9V032 yang termasuk kamera satu kit dengan MBS270 penulis merasa kesulitan dalam mengakses nilai pixel dan RGB dari gambar yang telah dicapture dikarenakan program untuk mengoperasikannya menggunakan tools Video 4Linux2 yang masih membutuhkan pemahaman lebih lanjut tentang materi ini c) Robot membutuhkan interrupt serial untuk melakukan pasing data secara langsung dan real time. d) Aplikasi penjejak harus ditempatkan di startup sistem operasi dari prosessor ARM agar tidak membutuhkan lagi komputer workstation. . REFERENSI [1] Rosenberg, Charles and Nourbakhsh, Illah,“ CMUcam2 Vision Sensor”, http://www.cs.cmu.edu/~cmucam, 2003. [2] Athar, Aulia. Pengembangan Autonomous Robot Soccer Dengan Menggunakan Kamera (Software/Algoritma),Tugas akhir: T. Elektronika PENS-ITS:2007. [3] Dokumentasi SM_mbs270_v2_0908 Mobisense Software manual pada http://www.mobisensesystems.com [4] Dokumentasi HM_mbs270_v2_0901 Mobisense Hardware manual pada http://www.mobisensesystems.com [5] Bassan, Jarrod, Petitt, Joshua, Bräunl, Thomas,” A Visual Servoing Approach Within a Behaviour Based Framework For Soccer Robots”, http://robotics.ee.uwa.edu.au, 2003
[6] Tharom, Tabratas, “Pengolahan Citra pada Mobile Robot”ilmucompute.com,2003 [7] http://www.ubicom.com/products/sx/sx.html. 22 Juli 2009 [8] Kortiko, Ade. Rancang Bangun Sistem Penjejak Objek Menggunakan Kamera CMU Dilengkapi Dengan Kontrol PID dan Prediksi Gerakan. Surabaya : EEPIS,2009. [9] Maharsya Aldith, ”Optimasi Kernel Linux Pada Prosesor OMAP 3430”, Politeknik Elektronika Negeri Surabaya, Teknik Telekomunikasi, Surabaya [10] Doug Abbott, ”Linux for Embedded and Real-time Application”, Newnes, U.S Amerika, 2003 [11] Machtelt Garrels, “Introduction to Linux : A Hands on Guide”, 2005 [12] P. Raghavan, Amol Lad, Sriram Neelakandan, “Embedded Linux System Design and Development ”, Auerbach Publications, U.S Amerika, 2006 [13] Andre Treptow, Andreas Masselli, Andreas Zell, “Real-Time Object Tracking for SoccerRobots without Color Information”, University of Tuebingen, Department of Computer Science, Tuebingen, Germany.
[15]
Dilengkapi Dengan Kontrol PID dan Prediksi Gerakan. Surabaya : EEPIS,2009.