## ROBOT SORTIR BOLA BERDASARKAN FITUR WARNA RGB BERBASIS LEGO MINDSTORMS NXT 2.0
1 DAVID dan 2 IVAN ARIESSANDI
1,2 Program studi Teknik Informatika Sekolah Tinggi Manajemen Informatika dan Komputer Pontianak Jl. Merdeka 372, Pontianak, Kalimantan Barat
1 E-mail: David_Liauw@yahoo.com dan DavidLiauw@gmail.com
2 E-mail: Ivan_Ariessandi@yahoo.com
ABSTRACT : Robots have been developed, because the robot is there to help the working man, for example,  for jobs that  require high accuracy in the field  of industry, doing work with a high risk of danger or doing work that requires great strength and so on. In the field of  industrial  robots  in  the  presence  of  the  production  process  will  be  faster.  Usually  in these  industries  to  distinguish  the  type  of  material  in  the  box  marked  as  a  color  box  or other  codes  that  can  distinguish  objects.  The  same  marks  on  objects  declared  type  of  the same material. In the industry, manufactured goods will be grouped by type of material or similar items. The robot is designed using the LEGO Mindstorms NXT 2.0 can separate the object  ball  in  accordance  with  the  color.  This  robot  can  only  detect  four  basic  colors, namely red, green, yellow, and blue. Color RGB (Red, Green, and Blue) was detected using a  color  sensor.  Meanwhile,  as  the  central  control  of  the  robot  using  the  NXT  Brick  is included in the Lego Mindstorms NXT 2.0 package, which is programmed using NXT-G 2.0 software. Robot design aims to separate the ball in accordance with a predetermined color (Color Sorter).
Keyword : Robot, Lego Mindstorms NXT 2.0, Color Sensor, Color Sorter, NXT-G 2.0 software

## 1. PENDAHULUAN
Perkembangan  teknologi  sekarang  ini  telah  menciptakan  berbagai  kemajuan  di bidang teknologi, khususnya teknologi bidang robotika. Perkembangan elektronika juga memberikan  kemajuan  dalam  mengontrol  robot  itu  sendiri.  Sekarang  ini,  ilmu pengetahuan  dan teknologi  sangat  diperlukan  untuk  membantu  aktivitas  manusia  yang semakin  berkembang.  Perkembangan  ilmu  dan  teknologi  ini  didasari  oleh  pola  pikir manusia  yang  semakin  cerdas  serta  keinginannya  untuk  mencari  segala  sesuatu  yang lebih mudah, praktis dan ekonomis. Salah satu teknologi  yang banyak digunakan pada sekarang  ini  adalah  teknologi  mikrokontoler.  Robot  merupakan  salah  satu perkembangan dalam bidang teknologi mikrokontroler.
Dalam  perkembangannya,  robot  dapat  digunakan  dalam  suatu  industri,  dengan adanya  robot  maka  proses  produksi  dalam  industri  akan  lebih  cepat.  Robot  juga memiliki  tingkat  ketelitian  yang  tinggi  jika  dibandingkan  dengan  ketelitian  manusia, sehingga faktor kesalahan dalam pelaksanaan tugas dapat diminimalisir.
Pada  sebuah  industri,  untuk  membedakan  jenis  produk  biasannya  di  bedakan dari warna pada objek atau kode-kode lain yang dapat membedakan objek. Warna yang sama pada objek menyatakan jenis  produk  yang  sama. Di dalam  industri,  barang hasil produksi  dikelompokkan  berdasarkan  jenis  yang  sama.  Dengan  adanya robot  color sorter yang  dapat  memisahkan  objek  atau  bola  secara  otomatis  tentu  mengurangi bahaya  terhadap  pekerja  dan  pekerjaan  akan  lebih  cepat.  Dalam  penelitian  ini,  robot color  sorter  dapat  mengenali  benda  atau  objek  berdasarkan  warna.  Robot  akan
mengelompokkan  objek  bola  yang  sejenis  secara  otomatis  sesuai  dengan  track  yang ditentukan.

## 2. LANDASAN TEORI

## 2.1 LEGO Mindstorms NXT 2.0
Dengan  LEGO  Mindstorms  NXT  2.0  (kode  set  8547)  dapat  dibangun  dan diprogram  robot  yang  akan  melakukan  apa  yang  diinginkan  user.  Dengan  isi  pada  set kita mendapatkan segala yang dibutuhkan untuk membangun dan memprogram sendiri robot LEGO cerdas, dan membuatnya melakukan banyak operasi  yang berbeda. Robot dapat dipasang, misalnya dengan sensor  yang mengontrol motor dan bereaksi terhadap cahaya, sentuhan, suara, dan lain-lain.
Gambar 1. Komponen I/O Lego Mindstorms NXT 2.0
Lego  Mindstorms  NXT  merupakan  generasi  kedua  produk  robotika  dari  Grup LEGO, yang meluncurkan generasi pertama produk Lego Mindstorms pada tahun 1998 dengan Robot Invention System (RIS) Mindstorms LEGO Robot.

## 2.2 NXT Intelligent Brick
NXT  brick  adalah  otak  dari  robot  MINDSTORMS.  Sebuah  kecerdasan, dikendalikan komputer LEGO Brick yang memungkinkan sebuah robot MINDSTORMS menjadi hidup dan melakukan operasi yang berbeda-beda.

## Gambar 2. NXT Brick
NXT  Intelligent  Brick memiliki mikroprosesor 32-bit  yang ampuh dan memori Flash,  ditambah  dukungan  untuk  Bluetooth  dan  USB  2.0.  NXT  Intelligent  Brick
memiliki  3  keluaran  ( output )  untuk  menghubungkan  motor  (Port  A,  B,  dan  C),  4 masukan  ( input )  untuk  menghubungkan  sensor  (Port  1,  2,  3,  dan  4).  Port  USB menghubungkan  kabel  usb  ke  port  usb  dan  mendownload  program  dari  komputer  ke NXT  (atau upload data  dari  robot  untuk  komputer).  Kita  juga  dapat  menggunakan koneksi bluetooth nirkabel untuk upload dan download.
Gambar 3. Digram Blok NXT Intelligent Brick

## 2.3 Sensor Warna ( Color Sensor )
Robot  juga  membutuhkan  masukan  ( input )  yang  akan  menentukan  apa  yang harus  dilakukan  oleh  robot.  Input  ini  umumnya  masuk  ke  dalam  otak  robot  dengan berbagai  macam  cara.  Ada  yang  menggunakan  remote,  atau  diberikan  sebelum  robot diaktifkan. Dan ada juga yang langsung diberikan pada robot melalui programnya. Pada jenis  yang  ketiga  ini,  begitu  robot  dihidupkan  ia  akan  menjalankan  apa  yang  sudah ditentukan baginya. Hal ini sangat berlaku bagi robot-robot industri pada umumnya.
Sedangkan,  untuk  tipe  yang  pertama  dan  kedua  agak  berbeda.  Perintah  datang dari  luar. Tentu  saja perintah-perintah ini  harus sesuai dengan kemampuan si  robot itu sendiri,  sebab  bila  tidak,  tentu  si  robot  tidak  akan  menjalankannya.  Robot  juga  dapat menerima  masukan  dari  robot  itu  sendiri  tanpa  adanya  campur  tangan  manusia  secara langsung, yaitu melalui sensor.
Sensor  warna  adalah  salah  satu  sensor  yang  memberikan  robot    penglihatan (layaknya  sensor  ultrasonik).  Sensor  warna  sebenarnya  memiliki  tiga  fungsi  yang berbeda dalam satu alat.
Gambar 4. Sensor Warna ( Color Sensor )
Sensor warna memungkinkan robot untuk membedakan antara warna, terang dan gelap.  Sensor ini  dapat  mendeteksi  6  warna  yang  berbeda,  membaca  intensitas  cahaya dalam  ruangan  dan  mengukur  intensitas  cahaya  permukaan  berwarna.  Sensor  warna juga dapat digunakan sebagai lampu warna.
Dalam menggunakan sensor warna ini sebagai sensor, ada 3 fungsi utama yang harus diperhatikan, yaitu :
a. Menggunakan sensor sebagai sensor warna. Untuk mendapatkan deteksi warna yang optimal, sensor harus diarahkan dalam sudut yang tepat sekitar 1 cm ke permukaan. Pembacaan warna yang salah dapat terjadi jika sensor ini diarahkan di sudut lain ke permukaan atau jika digunakan dalam cahaya terang.
b. Menggunakan  sensor  sebagai  sensor  cahaya.  Sensor  dapat  digunakan  untuk mengambil  pembacaan  intensitas  cahaya  tunggal.  Ini  berfungsi  sebagai  sensor cahaya  ketika  warna  cahaya  diatur  ke  warna  merah.  Dengan  menggunakan  warna terang  (hijau  atau  biru)  dapat  memberikan  hasil  yang  berbeda.  Sensor  ini  dapat digunakan untuk membaca intensitas cahaya dari lingkungan atau pantulan cahaya. Salah satu dari tiga warna bisa bersinar ketika membaca cahaya yang dipantulkan.
c. Menggunakan sensor sebagai lampu warna. Kita dapat menggunakan sensor sebagai lampu  warna  untuk  mengontrol  warna  keluaran  individu  (merah,  hijau,  atau  biru) dan menambahkan kepribadian untuk robot.

## 2.4 Servo Motor
Tiga  buah  motor  servo  memberikan  robot  kemampuan  untuk  bergerak.  Jika menggunakan  blok  bergerak  dalam  perangkat  lunak  Mindstorms  NXT-G    untuk program motor, dua motor otomatis akan melakukan sinkronisasi, sehingga robot akan bergerak dalam garis lurus.

## Gambar 5. Servo Motor
Setiap  motor  memiliki  sensor  rotasi  built-in.  Hal  ini  memungkinkan  untuk mengontrol  gerakan  robot  dengan  tepat.  Sensor  mengukur  rotasi  motor  dalam  derajat atau  rotasi  penuh  (akurasi  ±  1  derajat).  Satu  rotasi  sama  dengan  360  derajat,  jadi  jika mengatur  motor  untuk  memutar  180  derajat,  poros  outputnya  akan  membuat  setengah putaran.
Gambar 6. Gambar Mekanik Servo Motor
Built-in sensor rotasi dalam setiap motor juga memungkinkan untuk menetapkan kecepatan yang berbeda untuk motor (dengan menetapkan parameter daya yang berbeda dalam perangkat lunak).

## 2.5 NXT-G
Perangkat  lunak  merupakan  faktor  penting  dalam  tahap  perancangan  robot. Perangkat  lunak  ini  merupakan  algoritma  gerak  dan  tugas  robot  dalam  bentuk  listing program  yang ditanamkan ke dalam  mikrokontroler. Program dapat bermacam-macam bentuk  versi  dan  bahasa  pemrogramannya,  sesuai  dengan  spesifikasi  dari mikrokontroler yang digunakan.
Menurut  Kelly  (2010)  NXT-G  adalah  alat  yang  akan  digunakan  untuk memberitahu robot harus berbuat apa. NXT-G memungkinkan untuk membuat program yang dapat di-upload (terpasang) untuk robot NXT. Program-program ini dapat menjadi petunjuk yang sederhana seperti "bergerak maju 2 cm dan berhenti". Robot NXT dapat dibangun dengan berbagai motor dan sensor. Tapi tanpa program yang baik, robot tidak akan tahu apa yang harus dilakukan.
Gambar 7. Lego Mindstorms NXT 2.0 (NXT-G)
NXT-G  diinstal  pada  komputer  (ada  versi  Windows  dan  Macintosh)  dan  hadir sebagai  perangkat  lunak.  Dasar-dasar  penggunaan  perangkat  lunak  dapat  di  lihat  pada panduan  LEGO  Mindstorms  NXT  yang  sudah  termasuk  dalam  NXT,  untuk  instruksi instalasi  dan  langkah-langkah  tentang  bagaimana  melakukan  langkah-langkah  dasar seperti membuat program baru, menyimpan program, dan lain-lain.
Membuat  dan  menyimpan  program,  kemudian  menghubungkan  robot  NXT  ke komputer.  Ketika  robot  tersambung,  akan  dapat  meng-upload  satu  atau  lebih  program untuk robot dan menjalankan (mengeksekusi).

## 3. METODE PENELITIAN
Bentuk  penelitian  yang  digunakan  adalah  studi  literature  dengan  metode penelitian  yang  dilakukan  penulis  yaitu  riset  eksperimental.  Dalam  penelitian  ini,
penulis melakukan studi kepustakaan untuk melakukan pengumpulan bahan materi yang berhubungan dengan robotika, seperti buku-buku, e-book, dan browsing di internet serta melakukan  pengumpulan  komponen-komponen  yang  dibutuhkan  pada  perancangan robot yang dibuat. Perancangan robotika dilakukan dengan mengaplikasikan teori yang didapat dalam perancangan sistem untuk perangkat keras dan perangkat lunak.
Pengujian  robot  dilakukan  dengan  melakukan  serangkaian  percobaan eksperimental  untuk  uji  coba  perangkat  keras  maupun  perangkat  lunak,  meliputi pengujian setiap komponen atau sensor-sensor dengan mengkalibrasi setiap sensor yang digunakan.  Setelah  itu  melakukan  analisa  data  terhadap  hasil  pengujian  robot  yang dibuat.

## 4. HASIL PENELITIAN
Setelah  selesai  membangun  robot,  langkah  selanjutnya  adalah  memprogram  robot. Untuk beberapa hal, pemrograman juga merupakan proses trial and error karena akan terus melakukan pengujian terhadap kode program untuk menentukan apa yang berhasil dan yang tidak.
Selama  fase  pemrograman,  proses  menulis  program,  menguji  program,  dan merevisi  kode  program  akan  selalu  dilakukan  secara  terus  menerus.  Ketika  robot beroperasi  sesuai  dengan  yang  diharapkan,  maka  program  dan  robot  selesai. Pembangunan  dan  pemprograman  robot  saling  terkait  satu  dengan  yang  lainnya. Kadang-kadang tahap membangun robot akan berhenti sejenak dan melakukan beberapa pemrogram  untuk  menguji  apa  yang  sedang  dibangun.  Pada  saat  yang  lain  berhenti melakukan  pemrograman  untuk  beberapa  saat  dan  melakukan  beberapa  modifikasi bangunan robot untuk memperbaiki masalah struktural atau mekanis sehingga program akan bekerja lebih maksimal. Singkatnya, dua hal tersebut di atas tidak dapat dipisahkan dalam penelitian ini.
Gambar 8. Langkah-langkah membangun robot
Diagram  alir  ( flowchart )  untuk  program  Robot  Sortir  Bola  dapat  di  lihat  pada Gambar 9.
Langkah 2
Membangun robot

## Langkah 3
Memprogram robot
Langkah 4
Mendokumentasikan robot

## Langkah 5
Menguji robot
Langkah 1 Mendapatkan ide untuk robot
Gambar 9. Diagram Alir program robot sortir bola
Gambar 10. Robot Sortir bola
Berikut  ini  merupakan hasil  pengujian  arah putaran servo motor  dan kecepatan servo motor terhadap warna.
Tabel 1. Hasil pengujian arah putaran servo motor
Warna A B C Biru - 1R   75 - - 1R   Speed Hijau - 1R   75 - - 1R   Speed Kuning - 1R   75 - 1R   Speed - Merah - 1R   75 - 1R   Speed - Keterangan : =   Forward (Arah putaran maju) =   Backward (Arah putaran mundur) 1R =   1 rotation (1 putaran / 360 derajat) Speed  =   Variabel (nilai standar = 50)
Berikut  ini  hasil  pengujian  waktu  pembacaan  warna,  motor  A,  motor  B  dan motor C.
Tabel 2. Hasil pengujian waktu Warna Sensor A B C Jumlah Biru 1 detik 1 detik - 1 detik 3 detik Hijau 1 detik 1 detik - 1 detik 3 detik Kuning 1 detik 1 detik 1 detik - 3 detik Merah 1 detik 1 detik 1 detik - 3 detik
Waktu untuk feeding atau memasukkan bola ke sensor tidak dihitung. Sehingga waktu  rata-rata  yang  dibutuhkan  untuk  memproses  12  bola  berwarna,  termasuk  juga proses feeding membutuhkan waktu ± 44 detik.
Berikut ini pengujian ketepatan hasil seleksi warna terhadap penempatan/pengelompokkan bola. Jumlah bola yang digunakan adalah 12 buah dengan jumlah 3 buah bola untuk masing-masing warna.

## Tabel 3. Pengujian Ketepatan Seleksi Warna
No  Warna Kolom 1 (Merah) Kolom 2 (Kuning) Kolom 3 (Hijau) Kolom 4 (Biru) 1  Kuning - - - 2  Biru - - - 3  Hijau - - - 4  Biru - - - 5  Kuning - - - 6  Biru - - - 7  Hijau - - - 8  Merah - - - 9  Merah - - - 10  Kuning - - - 11  Hijau - - - 12  Merah - - -
Setelah  selesai  menguji  ketepatan  warna,  proses  terakhir  adalah  menguji keefektifan robot. Proses ini menguji robot tingkat keberhasilan robot. Robot dikatakan sukses  jika  dapat  melakukan  tugas  sesuai  dengan  fungsinya.  Fungsi  robot  sortir  bola adalah  memasukkan  semua  bola  berwarna  tepat  pada  tempat  yang  disediakan.  Jadi, pembuatan  robot  sortir  bola  dikatakan  berhasil  dan  bekerja  dengan  baik  jika  robot mampu  mengklasifikasikan  warna  dengan  baik  oleh  sensor  warna.  Pengujian  akan dilakukan dengan menempatkan 15 buah bola berwarna secara acak dengan komposisi warna  yang  beragam.  Pengujian  dilakukan  sebanyak  10  kali  pengujian.  Berikut  ini adalah tabel hasil pengujian robot color sorter.

## Tabel 4. Pengujian keefektifan Robot sortir bola
Pengujian ke -  Warna Bola yang diacak  Waktu (dalam detik) Hasil 1 HMHHKHHMBBKKKHM 71 Berhasil 2 MBHHBMMBHMKKMHB 71 Berhasil 3 HMKMHBMHMBBBBMK 59 Berhasil 4 BKBKKMHKBMKHBKK 66 Berhasil 5 MMKMHKBKMBHKKHB 68 Berhasil 6 MHBBHMMHMMKHMKM 57 Berhasil 7 HBBHBKKKMMKMHHK 71 Berhasil 8 KKMHMHMHKHHHMMB 59 Berhasil 9 BMBMKKBMHMKMBKB 70 Berhasil 10 HKKBMHMBHMMKBKM 63 Berhasil Keterangan : K = Kuning, M = Merah, H = Hijau dan B = Biru
Data hasil pengujian yang tertera pada tabel 4 menunjukkan bahwa Robot sortir bola dapat mengklasifikasikan semua bola yang ada. Hal ini membuktikan bahwa robot sortir  bola  sudah  bekerja  dengan  baik.  Perancangan  Robot  sortir  bola  berbasis  Lego NXT 2.0 berhasil mendapatkan robot yang bisa bekerja sesuai dengan tujuan pembuatan robot.

## 5. KESIMPULAN
Dari  seluruh  penjelasan  dan  pengujian  robot  sortir  bola  berdasarkan  perbedaan warna RGB Berbasis Lego Mindstorms NXT 2.0 dapat diambil kesimpulan yang dapat dijadikan  acuan  dalam  perancangan  robot,  yaitu  robot  dirancang  sebagai  prototype mesin sortir bola untuk memudahkan pengguna dalam melakukan pemilahan bola-bola berwarna  dan  mengelompokkan  berdasarkan  kesamaan  warna,  robot  dapat  bekerja sesuai dengan program yang telah dibuat dan dapat mendeteksi warna bola dengan cepat dan  benar  serta  sistem  kerja  dari  robot  ini  dapat  diterapkan  ke  dalam  mesin  industri yang sebenarnya, dimana akan memiliki kapasitas dan kecepatan sortir yang lebih besar. Hasil  perancangan,  pemrograman  dan  pengujian  robot  masih  banyak  kekurangan- kekurangan sehingga diperlukan penampung bola sebelum di sortir sehingga tidak perlu memasukkan bola satu per satu serta meminimalkan jumlah penggunaan motor servo.

## DAFTAR PUSTAKA
Perdue.,  David  J.,  dan  Valk.,  Laurens.,  2011, The  Unofficial  Lego(R)  Mindstorms(R) de , No Starch Press, Inc., San Francisco, California. Scholz., Matthias Paul., 2007, Advanced NXT:  The Da Vinci Inventions  Book , Apress, Inc., Berkeley, California.
Bergren., Charles M., 2003, Anatomy of a Robot , McGraw-Hill Companies, Inc., United States of America.
Astolfo., Dave., dan Ferrari., Mario., dan Ferrari., Giulio., 2007, Building Robots with LEGO Mindstorms NXT , Elsevier, Inc., Burlington, Massachusetts. Kelly.,  James  Floyd.,  2010, LEGO  MINDSTORMS  NXT-G  Programming  Guide ,  edisi kedua, Apress, Inc., Berkeley, California.
McComb.,  Gordon.,  2011, ,  edisi  keempat,  McGraw-Hill Companies, Inc., United States of America.