pengolahan sinyal suara sebagai pemicu gerakan robot ... · arduino due sistem pertama berhasil...
TRANSCRIPT
TUGAS AKHIR
PENGOLAHAN SINYAL SUARA SEBAGAI PEMICU
GERAKAN ROBOT BIOLOID CM-530
MENGGUNAKAN ARDUINO
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Disusun oleh :
AMANDA RUSDIARTO
NIM : 135114012
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
FINAL PROJECT
AUDIO SIGNAL PROSCESSING AS A TRIGGER
FOR BIOLOID CM-530 MOVEMENT BASED ON
ARDUINO
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Electrical Engineering Study Program
Constructed By :
AMANDA RUSDIARTO
NIM : 135114012
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
HALAMAN PERSETUJUAN
TUGAS AKHIR
PENGOLAHAN SINYAL SUARA SEBAGAI PEMICU
GERAKAN ROBOT BIOLOID CM-530
MENGGUNAKAN ARDUINO
Disusun oleh :
AMANDA RUSDIARTO
NIM : 135114012
Telah disetujui oleh:
Pembimbing I
Ir.Tjendro. M.Kom. Tanggal : 12 Juli 2017
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
HALAMAN PENGESAHAN
TUGAS AKHIR
PENGOLAHAN SINYAL SUARA SEBAGAI PEMICU
GERAKAN ROBOT BIOLOID CM-530
MENGGUNAKAN ARDUINO
oleh:
AMANDA RUSDIARTO
NIM: 135114012
Telah dipertahankan di depan panitia penguji
Pada tanggal 31 Juli 2017
Telah disetujui oleh:
Susunan panitia penguji:
Nama Lengkap Tanda Tangan
Ketua : Djoko Untoro Suwarno, S.Si., M.T. __________________
Sekretaris : Ir. Tjendro, M.Kom. __________________
Anggota : Ir. Th. Prima Ari Setiyani, M.T. __________________
Yogyakarta,___________2017
Fakultas Sains dan Teknologi
Universitas Sanata Dharma
Dekan,
Sudi Mungkasi, S.Si., M. Math.Sc., Ph.D.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya
orang lain, kecuali yang saya sebutkan dalam kutipan dan daftar pustaka layaknya sebuah
karya ilmiah.
Yogyakarta, 12 Juli 2017
AMANDA RUSDIARTO
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
Motto Hidup:
“Trying to be usefull for humanity”
Elon Musk
Skripsi ini saya persembahkan untuk
Allmighty Allah S.W.T
Keluarga dan Kerabat Terdekat, serta orang Terkasih
Teman-teman Teknik Elektro
本当にありがとうございました。
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
LEMBAR PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:
Nama : Amanda Rusdiarto
Nomor Mahasiswa : 135114012
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas
Sanata Dharma karya ilmiah yang berjudul:
PENGOLAHAN SINYAL SUARA SEBAGAI PEMICU
GERAKAN ROBOT BIOLOID CM-530
MENGGUNAKAN ARDUINO
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam
bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara
terbatas, dan mempublikasikannya di internet atau media lain untuk kepentingan akademis
tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya sebagai penulis
Demikian pernyataan yang saya buat dengan sebenarnya.
Yogyakarta,12 Juli 2017
Amanda Rusdiarto
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Kontes Robot Seni Tari Indonesia (KRSTI) merupakan suatu ajang kompetisi
perancangan dan pembuatan robot yang disertai dengan unsur-unsur seni dan budaya bangsa
yang telah terkenal di bumi pertiwi. Peraturan KRSTI 2016 panitia mewajibkan robot
peserta menggunakan Bluetooth sebagai media penerima musik yang dimainkan. Penelitian
ini bertujuan membuat suatu sistem untuk mengolah musik yang diterima Bluetooth Audio
menjadi pemicu gerakan robot, serta melakukan sinkronisasi gerakan antara robot pertama
dan robot kedua.
Bluetooth audio receiver Rapid i7 digunakan sebagai penerima musik yang dimainkan
panitia. Musik diolah Arduino Due pada sistem pertama menggunakan algoritma FFT untuk
mengetahui frekuensi penyusun. Penghitungan detak frekuensi 260Hz digunakan untuk
menentukan pemicuan gerakan robot. Arduino Due mengirimkan kode gerakan ke Arduino
Nano pada sistem kedua. Arduino pada masing-masing sistem robot kemudian
membangkitkan sinyal PWM tertentu untuk memicu kontroler robot CM-530 melakukan
gerakan spesifik sesuai dengan sinyal PWM yang dikirimkan.
Arduino Due sistem pertama berhasil mengolah musik yang diterima Bluetooth audio
receiver Rapid i7 menjadi pemicu gerakan robot menggunakan algoritma FFT dan
perhitungan detak pada frekuensi 260Hz. Pengolahan yang berhasil berimplikasi sistem
robot pertama bergerak mengikuti musik. Arduino Due dan Arduino Nano dapat
berinteraksi secara serial tanpa kabel (wireless) menggunakan modul Bluetooth HC-05
dengan kesuksesan 100%. Arduino dan kontroler robot CM-530 mampu berkomunikasi
dengan ketepatan 100%. Rata-rata ketepatan pemicuan gerakan berdasarkan metode
pencacahan frekuensi sistem satu robot memiliki tingkat keberhasilan sebesar 33%,
sementara rata-rata ketepatan pemicuan sistem dua robot memiliki tingkat keberhasilan 22%.
Kata kunci: KRSTI, Bluetooth audio, Arduino Due, Arduino Nano, FFT, CM-530, Robot
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
Indonesian Robotic Dance Competition (KRSTI) is a contest about designing and
creation of a robot that consist cultural and artistic value that is well known in Indonesia.
The rule of KRSTI 2016 stated that all the contestant must use Bluetooth as the main source
to receive the music played from the comitee. This research creates a system to process the
music received by the Bluetooth, and add synchronization for the first and second robot’s
movements.
Bluetooth audio receiver Rapid i7 was used to receive the music. The music is then
processed in the Arduino Due on the first system using FFT to identify the constructing
frequencies. The frequency of 260Hz Was then counted to determine the trigger code for
the robot to use. Arduino Due then sends the “motion” code to Arduino Nano on the second
system. Each Arduino generate an PWM signal to trigger CM-530 robot controller to do a
specific motion.
Arduino Due on the first system managed to process the music received from the
Bluetooth audio receiver Rapid i7 using the FFT algorithm and counting the 260Hz
frequency. The robot from the first system managed to dance according to the music.
Arduino Due and Arduino Nano can interact wirelessly using Bluetooth HC-05 module and
yields 100% success rate. Arduino and CM-530 robot controller successfully communicate
with a 100% success rate. The success rate of triggering based on frequency counting in a
single system robot averaged at 33%, while the two system robot averaged at 22%.
Keywords: KRSTI, Bluetooth audio, Arduino Due, Arduino Nano, FFT, CM-530, Robot
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji dan syukur penulis hantarkan kepada Allah S.W.T atas berkat rahmat dan
karunianya penulis mampu menyelesaikan tugas akhir dengan judul “Pengolahan Sinyal
Suara Sebagai Pemicu Gerakan Robot Bioloid CM-530 Menggunakan Arduino” dengan
cukup memuaskan.
Selama pembuatan tugas akhir ini, penulis menyadari adanya bantuan dan dukungan
dari berbagai pihak. Maka dari itu, penulis mengucapkan terimakasih kepada:
1. Ir. Tjendro M.kom. selaku dosen pembimbing yang telah memberikan solusi,
saran, serta kritik yang membangun dalam menyelesaikan tugas akhir ini.
2. Seluruh dosen dan laboran Teknik Elektro yang telah memberikan ilmu serta
dukungan kepada penulis saat perkuliahan.
3. H. Rusdijarto Pomou, Endang Susanti, Diangga M.R, Aisyah Pinkan R dan
keluarga yang telah mendukung penulis semasa kuliah hingga menyelesaikan
tugas akhir ini.
4. Kakak serta adik dari the circle (Allan, Agus, Bram, Ina, Egy, Yohanes) yang
senantiasa memberikan semangat untuk mengerjakan dan bantuan untuk
menyelesaikan tugas akhir ini
5. Rizky Izaziningtyas yang selalu berusaha menghibur dan memberi semangat
ketika sedang tidak termotivasi.
6. Teman teman Daddy Darling Squad dari Teknik Elektro (Agas, Mawan, Fajar,
Tegar, Fendish, Jhony) yang saling menyemangati menyelesaikan tugas akhir ini.
7. Teman-teman Teknik Elektro yang telah membantu penulis menjadi orang yang
lebih baik.
8. Countless refference and guides on the internet. Espescially, “magician” from the
arduino.cc forum to provide FFT library for Arduino Due.
Penulis menyadari bahwa tulisan ini jauh dari kesempurnaan. Oleh karena itu, kritik
dan saran dari semua pihak yang membangun sangat diharapkan. Semoga Skripsi ini dapat
berguna untuk semua pihak. Terimakasih
Yogyakarta,12 juli 2017
Penulis
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
DAFTAR ISI
TUGAS AKHIR ........................................................................................................... i
HALAMAN PERSETUJUAN .................................................................................. iii
HALAMAN PENGESAHAN .................................................................................... iv
PERNYATAAN KEASLIAN KARYA ...................................................................... v
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ........................................... vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH
UNTUK KEPENTINGAN AKADEMIS .................................................................. vii
INTISARI ................................................................................................................ viii
ABSTRACT ............................................................................................................... ix
KATA PENGANTAR ................................................................................................. x
DAFTAR ISI .............................................................................................................. xi
DAFTAR GAMBAR ................................................................................................. xv
DAFTAR TABEL ................................................................................................. xviii
BAB I PENDAHULUAN ....................................................................................... 1
1.1. Latar Belakang ............................................................................................ 1
1.2. Tujuan dan Manfaat ..................................................................................... 2
1.3. Batasan Masalah .......................................................................................... 2
1.4. Metodologi Penelitian ................................................................................. 2
BAB II DASAR TEORI ........................................................................................... 5
2.1. Peraturan Kontes Robot Seni Tari Indonesia .............................................. 5
2.1.1. Penjelasan Gerakan Tari “Topeng Betawi” ............................................. 6
2.2. Pengolahan Sinyal Suara ........................................................................... 10
2.2.1. Pengolahan Sinyal ................................................................................. 10
2.2.2. Sinyal Suara .......................................................................................... 11
2.2.3. Sampling Sinyal Suara .......................................................................... 11
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
2.3. Mikrokontroler AVR ATmega 328 ........................................................... 11
2.3.1. Audio Input ........................................................................................... 12
2.3.2. Beat Detection (deteksi nada) ............................................................... 14
2.3.3. Komunikasi Serial ................................................................................. 15
2.4. Mikrokontroler AVR ATmega32U4 ......................................................... 15
2.5. Bioloid Premium Kit ................................................................................. 16
2.5.1. CM-530 ................................................................................................. 16
2.5.2. Motor Servo Dynamixel AX-12A ........................................................ 17
2.5.3. Roboplus ............................................................................................... 18
2.6. Rapid I7 Bluetooth Audio Receiver .......................................................... 19
2.7. HC-05 Bluetooth Module .......................................................................... 20
2.8. Level Logic Converter (LLC) Module ...................................................... 21
BAB III RANCANGAN PENELITIAN.............................................................. 22
3.1. Proses Kerja Sistem ................................................................................... 22
3.2. Perancangan Perangkat Keras ................................................................... 22
3.2.1. Sistem Robot Pertama ........................................................................... 24
3.2.2. Sistem Robot Kedua ............................................................................. 26
3.2.3. Perancangan Robot Bioloid .................................................................. 26
3.3. Perancangan Perangkat Lunak .................................................................. 28
3.3.1. Diagram Alir Arduino pada Sistem Robot Pertama ............................. 30
3.3.2. Diagram Alir Arduino pada Sistem Robot Kedua ................................ 32
3.3.3. Diagram Alir Kontroler Robot CM-530 ............................................... 32
3.4. Perancangan Pemicuan Gerakan Berdasarkan Musik Pengiring............... 32
3.5. Rancangan Gerakan Tari Robot ................................................................ 36
3.5.1. Gerakan Adeg-adeg............................................................................... 39
3.5.2. Gerakan Kewer ..................................................................................... 39
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
3.5.3. Gerakan Selancar .................................................................................. 39
3.5.4. Gerakan Cendol Hijau ........................................................................... 40
3.5.5. Gerakan Pak Blang ............................................................................... 40
3.5.6. Gerakan Gibang .................................................................................... 40
BAB IV HASIL DAN PEMBAHASAN ............................................................. 41
4.1. Hasil Implementasi .................................................................................... 41
4.2. Perubahan Rancangan ............................................................................... 43
4.2.1. Perubahan Kontroler Sistem Robot Pertama ........................................ 44
4.2.2. Perubahan Metode Pengolahan Sinyal Suara ....................................... 45
4.2.3. Perubahan Metode Beat Detection dan Pemicuan Gerakan ................. 45
4.2.4. Perubahan Komunikasi antara Arduino dengan CM-530 ..................... 48
4.2.5. Perubahan Perangkat Lunak pada Arduino Sistem Pertama ................. 51
4.2.6. Perubahan Perangkat Lunak pada Arduino Sistem Kedua ................... 54
4.2.7. Perubahan perangkat lunak pada kontroler robot CM-530 ................... 55
4.3. Analisa Keberhasilan Sistem ..................................................................... 56
4.3.1. Pengolahan Sinyal Suara dan Kesesuaian Pemicu Gerakan Robot ...... 56
4.3.2. Komunikasi Antar Sistem Arduino ....................................................... 58
4.3.3. Komunikasi Antara Arduino dengan Kontroler Robot CM-530 .......... 59
4.3.4. Perbandingan dengan Robot Tanpa Sistem Tambahan......................... 60
4.4. Pembahasan Perangkat Keras .................................................................... 61
4.4.1. Pembahasan Perangkat Keras Sistem Pertama ..................................... 61
4.4.2. Pembahasan Perangkat Keras Sistem Kedua ........................................ 64
4.5. Pembahasan Perangkat Lunak ................................................................... 67
4.5.1. Perangkat Lunak dalam Arduino pada Sistem Pertama ........................ 67
4.5.2. Pembahasan Perangkat Lunak dalam Kontroler Robot CM-530 pada
Sistem Pertama ..................................................................................... 73
4.5.3. Perangkat Lunak dalam Arduino pada Sistem Kedua .......................... 76
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
4.5.4. Pembahasan Perangkat Lunak dalam Kontroler Robot CM-530 pada
Sistem Kedua ........................................................................................ 79
BAB V KESIMPULAN DAN SARAN ................................................................. 80
5.1. Kesimpulan ................................................................................................ 80
5.2. Saran .......................................................................................................... 80
DAFTAR PUSTAKA ................................................................................................ 81
LAMPIRAN ............................................................................................................. L1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR GAMBAR
Gambar 1.1. Diagram blok perancangan................................................................... 3
Gambar 2.1. Gambar gerakan adeg-adeg.................................................................. 6
Gambar 2.2. Gambar gerakan kewer......................................................................... 7
Gambar 2.3. Gambar gerakan selancar………………………………..................... 7
Gambar 2.4. Gambar gerakan cendol hijau………………………………………... 8
Gambar 2.5. Gambar gerakan pak blang…………………………………………... 9
Gambar 2.6. Gambar gerakan gibang……………………………………………… 9
Gambar 2.7. Visualisasi sinyal analog dan sinyal digital………………………….. 10
Gambar 2.8. Contoh gelombang audio…………………………………………….. 11
Gambar 2.9. Mikrokontroler Atmega 328 dengan board Arduino Uno…………… 12
Gambar 2.10. Pengkondisi sinyal masukan audio…………………………………. 13
Gambar 2.11. Sebuah sinyal dan Envelope dalam warna merah…………………... 14
Gambar 2.12. Rangkaian demodulator envelope…………....................................... 14
Gambar 2.13. Mikrokontroler Atmega 32U4 dengan board Arduino Nano……….. 15
Gambar 2.14. Robotis Bioloid Premium Kit………………………………………. 16
Gambar 2.15. Kontroler CM-530...............................................................................17
Gambar 2.16. Motor servo Dynamixel AX-12A…………………………………... 18
Gambar 2.17. Roboplus software user interface....................................................... 19
Gambar 2.18. Rapid i7 Bluetooth Audio Receiver………………………………… 20
Gambar 2.19. Modul Bluetooth HC-05……………………………………………. 21
Gambar 2.20. Modul LLC…………………………………………………………. 21
Gambar 3.1. Gambar Keseluruhan Sistem………………………………………… 23
Gambar 3.2. Desain robot bioloid………………………………………………….. 27
Gambar 3.3. Flowchart pada board Arduino sistem pertama dan kedua………….. 29
Gambar 3.4. Flowchart pada kontroler robot CM-530 kedua sistem robot………... 30
Gambar 3.5. Penjelasan proses beat detection pada sistem robot pertama………… 31
Gambar 3.6. Penggambaran musik pengiring KRSTI 2016……………………….. 33
Gambar 3.7. Penggambaran lagu pengiring dengan panandaan gerakan………….. 35
Gambar 3.8. Ilustrasi initial pose tampak depan……………………………………37
Gambar 3.9. Ilustrasi initial pose tampak samping…………………………………37
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
Gambar 3.10. Ilustrasi initial pose tampak belakang………………………………. 38
Gambar 3.11. Ilustrasi initial pose tampak serong………………………………… 38
Gambar 4.1. Perbandingan keluaran FFT tanpa input (A) dengan keluaran FFT
tanpa input terinterferensi (B,C)……………………………….........………...…… 42
Gambar 4.2. Board Arduino due…………………………………………………… 44
Gambar 4.3. Hasil komputasi FFT dengan MATLAB pada marker lagu M7……... 46
Gambar 4.4. Hasil perbesaran gambar 4.3 komputasi FFT menggunakan
MATLAB pada marker lagu M7….....…………………………………………….. 46
Gambar 4.5. Bin frekuensi 260Hz…………………………………………………. 47
Gambar 4.6. Format penulisan communication packet Robotis ………………… 49
Gambar 4.7. rangkaian sirkit konverter PWM ke DC……………………………... 49
Gambar 4.8. Flowchart Arduino pada sistem pertama…………………..………… 52
Gambar 4.9. Flowchart fungsi pemilih…………………………………..………… 53
Gambar 4.10. Flowchart Arduino pada sistem ke dua………………………..……. 54
Gambar 4.11. Flowchart CM-530 pada sistem pertama…..……………………….. 55
Gambar 4.12. Flowchart CM-530 pada sistem kedua………………………………56
Gambar 4.13. Data terkirim Arduino sistem pertama……………………………… 58
Gambar 4.14. Data diterima Arduino sistem kedua………………………………... 59
Gambar 4.15. Schematic perangkat keras Arduino sistem pertama………………...61
Gambar 4.16. Rangkaian pengkondisi sinyal audio (DC offset)…………………… 61
Gambar 4.17. Arduino sistem pertama………………...…………………………... 62
Gambar 4.18. Robot sistem pertama tampak depan…………………...…………... 63
Gambar 4.19. Robot sistem pertama tampak samping…………...………………... 63
Gambar 4.20. Robot sistem pertama tampak belakang…………...………………... 64
Gambar 4.21. Schematic perangkat keras Arduino sistem kedua………………….. 64
Gambar 4.22. Arduino sistem kedua…………………………………………...…...65
Gambar 4.23. Robot sistem kedua tampak depan……………………………...…... 66
Gambar 4.24. Robot sistem kedua tampak serong…………………………...…….. 66
Gambar 4.25. Robot sistem kedua tampak belakang……………………………..... 67
Gambar 4.26. Listing program pada Arduino sistem pertama (Inisialisasi)……….. 68
Gambar 4.27. Listing program pada Arduino sistem pertama (setup)……...……… 69
Gambar 4.28. Listing program pada Arduino sistem pertama (main program)……. 69
Gambar 4.29. Listing program pada Arduino sistem pertama (Fungsi prnt_out2).... 70
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
Gambar 4.30. Listing program pada Arduino sistem pertama (Fungsi pemilih)…... 72
Gambar 4.31. Listing program CM-530 pada sistem pertama dalam Roboplus
Task (part 1).......…………………………………………………………………… 73
Gambar 4.32. Listing program pada CM-530 pada sistem pertama dalam
Roboplus Task (part 2a)...………………………………………………………….. 74
Gambar 4.33. Listing program pada CM-530 pada sistem pertama dalam
Roboplus Task (part 2b)...………………………………………………………….. 75
Gambar 4.34. Listing program pada CM-530 pada sistem pertama dalam
Roboplus Task (part 3)…………………………………………………………….. 76
Gambar 4.35. Listing program pada Arduino sistem kedua (inisialisasi)………….. 77
Gambar 4.36. Listing program pada Arduino sistem kedua (setup)……………….. 77
Gambar 4.37. Listing program pada Arduino sistem kedua (utama)………………. 78
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xviii
DAFTAR TABEL
Tabel 2.1. Spesifikasi ATmega328 dengan menggunakan board Arduino Uno....... 12
Tabel 2.2. Spesifikasi ATmega32U4 board Arduino Mikro..................................... 16
Tabel 2.3. Spesifikasi kontroler robot CM-530......................................................... 17
Tabel 2.4. Spesifikasi motor servo Dynamixel AX-12A........................................... 17
Tabel 2.5. spesifikasi Bluetooth Audio Receiver Rapid i7........................................ 19
Tabel 2.6. Spesifikasi dan fitur modul Bluetooth HC-05.......................................... 20
Tabel 3.1. Perkiraan derajat kebebasan masing-masing motor servo........................ 28
Tabel 3.2. Hubungan musik dan gerakan tarian “Topeng Betawi”............................ 33
Tabel 3.3. Penandaan titik perubahan gerakan penari............................................... 34
Tabel 4.1. Hasil Pengujian Pemicu Gerakan Robot Sistem Pertama......................... 41
Tabel 4.2. Hasil Pengujian Pemicu Gerakan 2 Robot Sistem final........................... 43
Tabel 4.3. spesifikasi Board Arduino due.................................................................. 44
Tabel 4.4. Jumlah ketukan frekuensi 260Hz pada masing-masing marker lagu
pengiring KRSTI 2016............................................................................................... 47
Tabel 4.5 Hasil rata-rata data dari tabel 4.4 pada setiap marker lagu ........................48
Tabel 4.6 kode gerakan yang dikirimkan sistem pertama untuk sistem kedua.......... 48
Tabel 4.7. Tabel output PWM, Tegangan DC, nilai Analog pada sistem robot
pertama....................................................................................................................... 50
Tabel 4.8. Tabel output PWM, Tegangan DC, nilai analog pada sistem robot
kedua.......................................................................................................................... 50
Tabel 4.9. Tabel pemetaan batas analog yang terbaca CM-530 sistem pertama
dengan gerakan sistem pertama................................................................................. 51
Tabel 4.10. Tabel pemetaan batas analog yang terbaca CM-530 sistem kedua
dengan gerakan sistem kedua.....................................................................................51
Tabel 4.11. Keberhasilan pemicuan gerakan robot sistem pertama sesuai musik
pengiring KRSTI 2016............................................................................................... 57
Tabel 4.12. Keberhasilan pemicuan gerakan robot sistem final sesuai musik
pengiring KRSTI 2016............................................................................................... 58
Tabel 4.13. Perbandingan data terkirim Arduino sistem pertama dengan data
diterima Arduino sistem kedua.................................................................................. 59
Tabel 4.14. Pengujian komunikasi Arduino sistem pertama dengan CM-530.......... 60
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xix
Tabel 4.15. Pengujian komunikasi Arduino sistem kedua dengan CM-530..............60
Tabel 4.16. Hubungan gerakan, variabel, dan nilai awal dan akhir variabel............. 76
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Kontes robot seni tari Indonesia (KRSTI) merupakan suatu ajang kompetisi
perancangan dan pembuatan robot yang disertai dengan unsur-unsur seni dan budaya bangsa
yang telah terkenal di bumi pertiwi. Pelaksanaan kontes robot seni tari Indonesia (KRSTI)
telah berlangsung sejak 2009 (dahulu disebut KRSI) [1]. KRSI setiap tahunnya memiliki
tema yang berbeda-beda, diawali dengan pengangkatan tema “Robot Penari Jaipong”, pada
tahun 2010 mengangkat tema “Robot Penari Pendet”, tahun 2011 mengangkat tema “Robot
Penari Kelono Topeng”, tahun 2012 mengangkat tema “Robot Penari Piring”, tahun 2013
mengangkat tema “Robot Anoman Duto”, dan tahun 2014 mengangkat tema “Topeng
Betawi” [1].
Kontes robot pada tahun 2015 mengusung tema tari dari daerah Betawi yakni “Robot
Penari Topeng Betawi”. Kontes tersebut dilaksanakan pada awal tahun 2016. Kegiatan
KRSTI 2016 ini dibagi menjadi empat regional, dan pada setiap regionalnya diikuti oleh
beberapa universitas tersohor. Universitas Sanata Dharma mengikuti perlombaan kontes
robot seni tari Indonesia (KRSTI) untuk pertama kalinya pada tahun tersebut.
Peraturan yang diberlakukan panitia KRSTI 2016 serta peraturan KRSI sebelumnya
[2] terdapat perbedaan, yakni pada peraturan KRSTI 2016 panitia mewajibkan robot peserta
menggunakan Bluetooth sebagai media penerima musik yang diputar oleh panitia, dan tidak
ada pada peraturan-peraturan sebelumnya.
Tim yang dikirimkan Universitas Sanata Dharma mendasarkan robot rakitan
menggunakan kit “Robotis Bioloid Premium Kit” yang telah dimodifikasi sehingga
memenuhi kualifikasi peraturan. Ketika bertanding, tim Universitas Sanata Dharma masih
belum berhasil sepenuhnya untuk mengolah musik pengiring yang dikirimkan
menggunakan Bluetooth.
Penelitian ini berusaha untuk mengatasi masalah yang timbul dalam perlombaan
dengan cara menambahkan kontroler khusus untuk memproses iringan musik. Penelitian ini
juga berusaha untuk menambahkan sinkronisasi gerakan robot pertama, robot kedua dan
musik pengiring lomba.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
1.2. Tujuan dan Manfaat
Penelitian ini bertujuan untuk menghasilkan sistem robot yang lebih handal dalam
pemrosesan musik pengiring KRSTI 2016 dibandingkan robot yang tidak menggunakan
sistem tambahan. Melakukan komunikasi antara kontroler robot (CM-530) dengan Arduino.
Mensinkronkan gerakan robot pertama, dan robot kedua, serta musik pengiring lomba.
Manfaat yang diharapkan dari penulisan skripsi ini adalah:
Dapat menjadi pedoman untuk pengembangan robot humanoid dalam berpartisipasi
dalam kontes robot seni tari Indonesia di tahun yang akan mendatang.
1.3. Batasan Masalah
Agar tugas akhir ini bisa mengarah pada tujuan dan untuk menghindari terlalu
kompleksnya permasalahan yang muncul, maka perlu adanya batasan-batasan masalah yang
sesuai dengan judul dari tugas ini. Adapun batasan masalah adalah :
1. Menggunakan kontroler robot CM-530 sebagai pengendali robot.
2. Menggunakan Arduino sebagai pengolah sinyal suara yang dikirimkan melalui
Bluetooth.
3. Penggunaan Bluetooth audio sebagai penerima sinyal suara.
4. Musik yang digunakan adalah cuplikan musik pengiring KRSTI 2016.
5. Gerakan robot adalah gerakan KRSTI 2016.
1.4. Metodologi Penelitian
Berdasarkan pada tujuan yang ingin dicapai metode-metode yang digunakan dalam
penyusunan tugas akhir ini adalah:
1. Studi literatur
Tahap ini dilakukan dengan mendapatkan data dengan membaca buku-buku dan
jurnal-jurnal yang berkaitan dengan permasalahan yang dibahas dalam tugas akhir
ini.
2. Dokumenter
Tahap ini dilakukan dengan mendapatkan sumber informasi berdasarkan data atau
arsip yang telah ada sehingga dapat membantu dalam mengerjakan tugas akhir ini.
3. Eksperimen
Tahap ini dilakukan dengan langsung melakukan praktek maupun pengujian
terhadap hasil pembuatan alat dalam pembuatan tugas akhir ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
4. Perancangan sub sistem hardware
Tahap ini bertujuan untuk mencari bentuk model yang optimal dari sistem yang
akan dibuat dengan mempertimbangkan dari berbagai faktor permasalahan dan
kebutuhan yang telah ditentukan dalam batasan masalah. Gambar 1.1
memperlihatkan blok model yang akan dirancang.
Gambar 1.1. Diagram Blok Perancangan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
5. Pembuatan sub sistem hardware.
Berdasarkan gambar 1.1, sistem akan menerima sinyal suara melalui media
Bluetooth. Sinyal tersebut akan diterima oleh Atmega 328 melalui pin analog dan
sinyal suara akan dikodekan menjadi kode motion page menggunakan metode
frekuensi analisis.
6. Proses pengambilan data
Pengambilan data pada penelitian ini adalah dengan cara memutar cuplikan musik
pengiring lomba KRSTI 2016. Membandingkan respon pemicuan gerakan robot
masing-masing sistem terhadap penandaan gerakan robot dalam musik pengiring.
Data yang diambil berupa ketepatan perubahan nilai pemicu gerakan dari setiap
sistem terhadap penandaan gerakan robot dalam musik pengiring.
7. Analisis dan penyimpulan hasil percobaan
Analisis data dilakukan dengan cara perbandingan antara gerakan robot pertama,
robot kedua, musik, dan hasil pengolahan Arduino, serta nilai yang diterima di
masing-masing kontroler robot.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
BAB II
DASAR TEORI
Pada bab ini akan dibahas mengenai landasan-landasan teori yang digunakan dalam
pembuatan tugas akhir yang berjudul “PENGOLAHAN SINYAL SUARA SEBAGAI
PEMICU GERAKAN ROBOT BIOLOID CM-530 MENGGUNAKAN ARDUINO”.
2.1. Peraturan Kontes Robot Seni Tari Indonesia
Dalam kontes robot seni tari Indonesia tahun 2015 yang diselenggarakan pada awal
tahun 2016 memiliki ketentuan umum sebagai berikut [1];
1. Setiap tim yang terdiri dari tiga mahasiswa dan satu orang dosen pembimbing
diharuskan membuat dua robot humanoid yang mampu melakukan gerakan
menari mengikuti musik kesenian gamelan pengiring “Topeng Betawi”.
2. Jumlah robot maksimum dua, dan harus dibuat sendiri.
3. Robot penari harus mempunyai struktur tubuh manusia dengan tinggi 55±5cm
diukur di posisi kepala tidak termasuk aksesoris.
4. Derajat kebebasan robot minimal 23.
5. Berat satu robot maksimum 30kg.
6. Tegangan baterai sebagai catu daya harus menggunakan tegangan DC dengan
level tinggi tegangan tidak dibatasi.
7. Robot harus dirancang untuk dapat mendengar alunan musik melalui
Bluetooth.
8. Robot harus dapat menari di atas arena persegi-panjang dengan start berwarna
merah atau biru, arena berukuran (2000x2000)mm.
9. Gerak tari dalam tarian “Topeng Betawi” strukturnya terdiri dari gerakan
adeg-adeg, kewer, selancar, cendol, pak blang, dan gibang yang diselaraskan
dengan irama musik pengiring tari “Topeng Betawi”.
10. Musik pengiring didengarkan langsung dari sistem audio gedung tempat
lomba.
11. Musik pengiring tari robot adalah musik khas tari gamelan yaitu musik tari
“Topeng Betawi” yang akan disediakan oleh panitia.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
12. Waktu yang disediakan untuk setiap unjuk kebolehan tari dalam lomba ini
adalah tiga hingga empat menit sesuai dengan panjang atau durasi irama musik
pengiring.
13. Dalam waktu tiga hingga empat menit, musik pengiring akan berhenti
sebanyak satu kali selama sepuluh hingga lima belas detik.
14. Setiap tim pada setiap game diberikan kesempatan ”retry”.
15. Setiap retry akan dikenakan hukuman pengurangan nilai (penalty).
16. Bagi tim dengan teknik dan seni tari terbaik akan dinyatakan sebagai
pemenang.
2.1.1. Penjelasan Gerakan Tari “Topeng Betawi”
Penjelasan gerakan tari “Topeng Betawi” adalah sebagai berikut [1];
1. Gerakan Adeg-adeg
Gerakan adeg-adeg merupakan gerakan kaki dan badan. Kedua tumit bertemu
dengan jarak satu kepal tangan. Kemudian, lutut ditekuk dan badan dicondongkan
ke arah depan
Gambar 2.1. gambar gerakan adeg-adeg [1].
2. Gerakan Kewer
Gerakan kewer disebut juga gerakan lenggang. Gerakan kewer terdiri atas
gerakan-gerakan berikut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
a. Kaki kanan diletakkan di depan, sedangkan kaki kiri silang di belakang.
b. Tangan kiri diletakkan di pinggang. Sedangkan, tangan kanan lurus ke
samping dan digerakkan ke bahu, kemudian diluruskan kembali
Gambar 2.2. Gambar gerakan Kewer [1].
3. Gerakan Selancar
Gerakan selancar disebut juga gerakan mengayun. Gerakan selancar terdiri atas
gerakan-gerakan berikut ini:
a. Tangan kanan diletakkan di depan dan pergelangan tangan diputar (ukel).
Sedangkan tangan kiri diluruskan ke samping bersamaan dengan gerakan
kaki kiri ke depan.
b. Tangan kiri diletakkan di depan dan pergelangan tangan diputar(ukel).
Sedangkan tangan kanan diluruskan ke samping bersamaan dengan
gerakan kaki kanan ke depan.
c. Gerakan tangan kanan dan tangan kiri dilakukan secara bergantian.
Gambar 2.3. Gambar gerakan Selancar [1].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
4. Gerakan Cendol Hijau
Gerakan cendol hijau adalah gerakan menggoyangkan pinggul. Gerakan cendol
hijau terdiri atas gerakan-gerakan berikut ini:
a. Kedua tangan diletakkan di pinggang.
b. Kedua tumit dirapatkan dan telapak kaki dibuka sehingga membentuk
huruf V.
c. Pinggul digoyangkan ke kanan dan ke kiri.
Gambar 2.4. Gambar gerakan Cendol hijau [1].
5. Gerakan Pak Blang
Gerakan pak blang terdiri atas gerakan-gerakan berikut ini:
a. Badan tegak dan tangan kiri diangkat ke atas kepala dengan telapak tangan
menghadap ke bawah. Kemudian, tangan kanan lurus ke samping dengan
jari tangan melentik.
b. Badan tegak dan tangan kanan diangkat ke atas kepala dengan telapak
tangan menghadap ke bawah. Kemudian, tangan kiri lurus ke samping
dengan jari tangan melentik.
c. Gerakan kaki mengikuti gerakan tangan. Jika tangan kiri di atas kepala,
maka kaki kanan melangkah ke depan. Demikian pula sebaliknya, jika
tangan kanan di atas kepala, maka kaki kiri melangkah ke depan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
d. Gerakan tangan dan kaki dilakukan secara bergantian dengan gerakan
yang lentur dan luwes.
Gambar 2.5. Gambar gerakan Pak blang [1].
6. Gerakan Gibang
Gerakan gibang terdiri atas gerakan-gerakan berikut ini:
a. Badan condong ke depan. Tangan kiri di pinggang, sedangkan tangan
kanan lurus ke samping.
b. Kaki kanan disilangkan di depan kaki kiri.
c. Gerakan tangan dan kaki dilakukan secara bergantian.
d. Lakukan gerakan berjalan berputar dengan delapan hitungan. Pada
hitungan ke delapan, posisi kembali seperti semula (gerakan awal) disertai
gerakan kedua tangan melempar selendang (seblak).
Gambar 2.6. Gambar gerakan Gibang [1].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
2.2. Pengolahan Sinyal Suara
Dalam penelitian ini sinyal suara yang dimaksudkan adalah musik gamelan khas
betawi yang digunakan panitia dalam kompetisi robot seni tari Indonesia pada tahun 2016.
Musik tersebut akan digunakan sebagai pemicu gerakan-gerakan tarian robot.
2.2.1. Pengolahan Sinyal
Pengolahan sinyal adalah spesialisasi dalam Teknik Elektro yang mempelajari dan
mengembangkan metode manipulasi, analisa, dan interpretasi sinyal. Pengolahan sinyal
berkaitan erat dalam statistik, teori informasi, maupun matematika terapan. Sinyal yang
diolah dapat berbentuk sinyal apapun, namun yang lazim untuk diolah adalah sinyal elektrik.
Contoh dari sinyal tersebut misalnya : sinyal suara dari mikrofon, video, EKG, dan lain
sebagainya.
Menurut representasinya, sinyal dapat dibedakan menjadi dua jenis. Kedua jenis
sinyal yakni, sinyal analog, dan sinyal digital [15]. Berikut penjelasan dari masing-masing
sinyal;
a. Sinyal analog adalah suatu besaran yang berubah dalam waktu dan atau dalam
ruang, dan mempunyai semua nilai untuk setiap waktu. Sinyal analog adalah
sinyal data dalam bentuk gelombang yang kontinyu, sinyal analog membawa
informasi dengan mengubah karakteristik gelombang. Dua parameter terpenting
yang dimiliki oleh sinyal analog adalah amplitudo dan frekuensi. Sinyal analog
biasanya dinyatakan dengan gelombang sinus, mengingat gelombang sinus
merupakan dasar untuk semua bentuk sinyal analog. Hal ini didasarkan kenyataan
bahwa berdasarkan analisis fourier, suatu sinyal analog dapat diperoleh dari
perpaduan sejumlah gelombang sinus.
b. Sinyal digital merupakan sinyal data dalam bentuk pulsa yang dapat mengalami
perubahan yang tiba-tiba, dan mempunyai besaran 0 dan 1. Sinyal digital hanya
memiliki dua keadaan, yakni 0 dan 1.
Gambar 2.7. Visualisasi sinyal analog dan sinyal digital [4].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
Tujuan dari dilakukannya suatu pengolahan sinyal antara lain adalah, sebagai
penapisan sinyal, sebagai pendeteksian sinyal, serta sebagai kompresi sinyal.
2.2.2. Sinyal Suara
Sinyal suara atau bunyi adalah gelombang mekanik berupa gelombang longitudinal
yang dihasilkan dari sebuah benda yang bergetar pada range frekuensi yang dapat didengar
manusia. Tinggi rendahnya nada bergantung pada frekuensi, dan keras lemahnya bunyi
bergantung pada amplitudo [4]. Sinyal suara mempunyai pola sama yang berulang pada
interval tertentu, hal ini disebut sebagai periode.
Gambar 2.8. Contoh gelombang audio.
2.2.3. Sampling Sinyal Suara
Pada dasarnya semua suara audio, baik vokal maupun bunyi tertentu merupakan suatu
bentukan dari sebuah sinyal analog. Teknik sampling dapat mengubah sinyal analog
tersebut menjadi bit-bit digital. Dengan menggunakan sampling maka sinyal analog tersebut
menjadi lebih mudah untuk dimanipulasi [16].
Dalam teknik sampling perlu batasan tentang frekuensi sampling, agar sinyal hasil
sampling dapat dikembalikan ke sinyal analog tanpa ada perubahan frekuensi. Hal ini diatur
oleh kriteria Nyquist. Kriteria Nyquist menyatakan bahwa nilai frekuensi sampling
sekurang-kurangnya bernilai dua kali nilai frekuensi yang akan disampling [17].
2.3. Mikrokontroler AVR ATmega 328
Penelitian ini akan menggunakan Mikrokontroler AVR Atmega328 sebagai inti
sistem utama pemrosesan sinyal suara yang dikirimkan melalui Bluetooth audio. Penelitian
ini menggunakan board Arduino Uno, guna mempermudah pemrosesan nada-nada yang
diterima.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
Gambar 2.9. Mikrokontroler Atmega 328 dengan board Arduino Uno [3].
Mikrokontroler AVR ATmega328 dengan menggunakan board Arduino Uno
memiliki spesifikasi sebagai berikut [3] :
Tabel 2.1. Spesifikasi AVR ATmega328 dengan menggunakan board Arduino Uno.
Operating voltage 5 Volt
Input Voltage (dianjurkan) 7 hingga 12 Volt
Input Voltage (limit) 6 hingga 20 Volt
Digital I/O pin 14 Pin
Analog Input Pin 6 Pin
Arus DC pada setiap I/O pin 20 mA
Clock Speed 16 MHz
Dalam penelitian akan digunakan beberapa fitur dari Mikrokontroler AVR Atmega
328 Arduino Uno board diantaranya :
1. Audio Input
2. Beat detection
3. Serial comunication
2.3.1. Audio Input
Ketidak tersediaan masukan audio jack pada board Arduino memerlukan modifikasi
port maupun pembuatan port masukan audio yang dapat bekerja dengan Arduino. Dengan
memanfaatkan enam port ADC yang tersedia dalam board Arduino maka diharapkan dapat
membaca tegangan yang diberikan oleh komponen audio eksternal pemberi sinyal. Port
ADC Arduino hanya dapat membaca tegangan nol hingga lima volt [5]. Akibat dari
keterbatasan kemampuan port ADC Arduino tersebut, sehingga pengkondisi sinyal
diperlukan agar sinyal audio dapat diproses dalam Arduino.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Gambar 2.10. Pengkondisi sinyal masukan Audio [5].
Gambar 2.10. merupakan suatu pengkondisi sinyal yang dapat memperkuat sinyal
(amplifier) masukan audio. Selain memperkuat sinyal, rangkaian tersebut juga digunakan
sebagai DC Offset yang berfungsi untuk mengubah titik nol keluaran amplifier pada
tegangan 2,5 volt [5].
Berikut rumus yang dapat digunakan untuk menghitung nilai komponen dari gambar
2.10.
𝐴 = (1 +𝑅1
𝑅2)
di mana
𝐴 =𝑉 𝑘𝑒𝑙𝑢𝑎𝑟𝑎𝑛
𝑉 𝑚𝑎𝑠𝑢𝑘𝑎𝑛
Audio input pada Arduino memungkinkan Arduino untuk mengolah sinyal audio.
Sinyal audio yang terdeteksi oleh Arduino dapat diolah sebagai pendeteksi nada, analisa
frekuensi, deteksi amplitude, dan percobaan lainnya. Penelitian ini akan menggunakan
metode deteksi nada sebagai pemicu gerakan robot.
(2.1)
(2.2)
R4
R3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
2.3.2. Beat Detection (deteksi nada)
Penelitian ini menggunakan deteksi nada dalam Arduino untuk menganalisa sinyal
suara masukan. Musik tersebut diolah dan digunakan untuk memicu gerakan dari robot
bioloid. Kegunaan deteksi nada dalam penelitian ini digunakan untuk menentukan nada
nada yang unik, sehingga ketika terdeteksi nada tersebut maka board Arduino dapat
memberikan respon yang telah ditetapkan sebelumnya kepada kontroler robot CM-530.
Menurut Damian Peckett dalam percobaannya menyimpulkan secara umum deteksi
nada dapat menggunakan tiga jenis algoritma [6]. Tiga algoritma tersebut yakni:
1. Envelope detector
2. Fourier analysis dan DFT (Discrete Fourier Transform)
3. Envelope detector dengan Bandpass filter
Setiap algoritma memiliki keunggulan dan kekurangannya masing masing. Envelope
detector merupakan yang paling sederhana, sistem kerja algoritma tersebut pada dasarnya
adalah membuat kurva imajiner yang menggaris bentukan nilai ekstrim sebuah sinyal audio
[7]. Algoritma ini memiliki kekurangan yakni input harus diberi band-pass filter di daerah
frekuensi yang akan dideteksi, dan rentan terhadap derau [6].
Gambar 2.11. Sebuah sinyal dan Envelope dalam warna merah [7].
Gambar 2.12. Rangkaian demodulator envelope [8].
Berikut rumus untuk menentukan nilai resistansi dan kapasitansi dari gambar 2.12. [8].
𝑓𝑜 =1
2𝜋𝑅𝐶 (2.3)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
fo = frekuensi cutoff (Hz)
R = Nilai Resistansi (Ω)
C = Nilai Kapasitansi (F)
Dengan
1. fo<<fc (frekuensi carrier)
2. fo>>fd (frekuensi data maksimum)
Dengan algoritma analisa Fourier maka musik masukan dapat diidentifikasikan
komponen-komponen yang membentuk frekuensi instrumentalnya. Kekurangan dari
algoritma ini yakni memiliki perhitungan matematika yang cukup kompleks, sehingga
dibutuhkan waktu yang cukup lama untuk mengolah sinyal [6]. Algoritma ini dikhawatirkan
sinyal masukan terlambat dibaca oleh board Arduino.
Algoritma terakhir memiliki metode yang sama dengan metode pertama dengan
perbedaan yakni, sebelum memasuki envelope detector sinyal masukan dilewatkan
bandpass filter terlebih dahulu, sehingga mendapatkan frekuensi yang diinginkan sebelum
dilakukannya envelope detection [6].
2.3.3. Komunikasi Serial
Komunikasi serial adalah suatu metode komunikasi di mana hanya satu bit data yang
dikirimkan melalui seuntai kabel pada suatu waktu tertentu [9]. Penelitian ini memanfaatkan
komunikasi serial untuk menghubungkan kedua Arduino, serta Arduino ke kontroler robot
CM-530.
2.4. Mikrokontroler AVR ATmega32U4
Mikrokontroler AVR ATmega32U4 akan digunakan pada sistem robot kedua. Mikro
kontroler Atmega 32U4 yang akan digunakan dalam penelitian ini menggunakan board
Arduino Mikro.
Gambar 2.13. Mikrokontroler Atmega32U4 dengan board Arduino mikro [10].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
Berikut spesifikasi dari AVR ATmega32U4 board Arduino Mikro sebagai berikut
[10]
Tabel 2.2. Spesifikasi AVR ATmega32U4 board Arduino Mikro.
Operating voltage 5 Volt
Input Voltage (dianjurkan) 7 hingga 12 Volt
Input Voltage (limit) 6 hingga 20 Volt
Digital I/O pin 20 Pin
Arus DC pada setiap I/O pin 20 mA
Clock Speed 16 MHz
2.5. Bioloid Premium Kit
Bioloid premium kit merupakan sebuah kit robot modular yang dapat membantu
pengguna untuk mempelajari cara kerja suatu robot. Kit robot tersebut diproduksi oleh
Robotis. Dalam setiap set Bioloid premium kit terdapat kontroler robot CM-530, servo
Dynamixel AX-12A, body part, software installer, dan berbagai aksesoris yang dapat
mendukung pengguna kit robot tersebut untuk mempelajari membangun dan
mengembangkan robot yang akan dirakit sendiri oleh pengguna.
Gambar 2.14. Robotis Bioloid Premium Kit [11].
2.5.1. CM-530
CM-530 merupakan suatu kontroler robot yang dikembangkan oleh Robotis yang
terkandung dalam setiap pembelian Bioloid premium kit. Kontroler robot tersebut berfungsi
selayaknya kontroler pada umumnya, tetapi kontroler tersebut tidak bersifat open source
sehingga memiliki keterbatasan dalam pemrosesan data masukan yang diberikan pengguna.
Berikut spesifikasi dari kontroler tersebut[11].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
Tabel 2.3. Spesifikasi kontroler robot CM-530.
CPU ARM Cortex STM32F103RE
Tegangan Operasi 6 hingga 15 Volt
Internal I/O device
enam tombol
satu MIC (Pendeteksi Suara)
satu Voltage sensor
External I/O device lima AX/MX series tiga pin connector
enam OLLO compatible I/O lima pin
port
Gambar 2.15. Kontroler CM-530 [11].
2.5.2. Motor Servo Dynamixel AX-12A
Setiap paket Bioloid premium kit terdapat 18 unit motor servo Dynamixel AX-12A.
Motor servo tersebut memiliki spesifikasi sebagai berikut [19].
Tabel 2.4. Spesifikasi motor servo Dynamixel AX-12A.
Berat 54.6 gram
Dimensi 32mm * 50mm * 40mm
Resolusi 0,29°
Torsi 1.5 N.m
kecepatan tanpa beban 59 rpm
derajat kebebasan 0° ~ 300°
Mode bebas berputar
ID servo 0 ~ 253
Tegangan 9 hingga 12 V
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
Gambar 2.16. Motor servo Dynamixel AX-12A [19].
2.5.3. Roboplus
Roboplus merupakan software utama yang diberikan Robotis untuk mengoperasikan
robot yang telah dirakit oleh pengguna. Roboplus memiliki beberapa kegunaan sebagai
berikut
1. Roboplus Task, digunakan untuk membuat perintah-perintah yang dapat
dikirimkan ke kontroler robot CM-530 untuk menjalankan sebuah tugas serta
memantau nilai yang diberikan kontroler kepada komputer pengguna.
2. Roboplus Motion, digunakan untuk menentukan data posisi dan kecepatan satu
atau lebih motor servo yang terhubung dengan kontroler robot CM-530.
Selain kedua fungsi diatas, roboplus juga memiliki fitur Roboplus Manager yang
mampu memantau aktifitas kontroler robot, maupun servo-servo yang terhubung kepada
kontroler robot.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Gambar 2.17. Roboplus software user interface.
2.6. Rapid I7 Bluetooth Audio Receiver
Rapid i7 Bluetooth audio merupakan sebuah gawai yang berfungsi sebagai penerima
sinyal musik yang telah dipancarkan melalui Bluetooth. Berikut penjelasan dan spesifikasi
produk Rapid i7 Bluetooth audio receiver berdasarkan web dimana produk ini didapatkan.
Rapid i7 Bluetooth audio receiver merupakan mini Bluetooth A2DP music audio
receiver yang dapat mengirimkan audio stereo tanpa menggunakan kabel. Rapid i7
Bluetooth audio receiver memiliki port 3,5 mm plug yang dapat digunakan mayoritas jack
audio. Rapid i7 Bluetooth audio receiver memiliki 30 pin iPod docking socket untuk iPhone
speaker. Rapid i7 Bluetooth audio receiver memiliki mikrofon built in untuk menerima
panggilan, serta Tombol forward dan backward untuk media playback [12].
Tabel 2.5. spesifikasi Bluetooth Audio Receiver Rapid i7.
konektifitas PC Bluetooth 2,1 + EDR
Audio Output 3,5 mm Audio plug
jarak penerima 10 Meter
Batere Lithium Ion
Sensitifitas -74dB
Frekuensi 2,4GHz - 2,4835GHz
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
Gambar 2.18. Rapid i7 Bluetooth Audio Receiver [12].
2.7. HC-05 Bluetooth Module
Modul Bluetooth HC-05 merupakan modul Bluetooth SPP (Serial Port Protocol)
yang mudah digunakan dan didesain untuk melakukan komunikasi serial secara nirkabel.
Serial port Bluetooth modul sanggup untuk digunakan dengan bluetooth V2.0+EDR
(Enhanced Data Rate) 3 Mbps modulation dengan 2,4 GHz radio transceiver dan baseband.
Modul ini menggunakan CSR Bluecore 04-External single chip Bluetooth system yang
menggunakan teknologi CMOS dan memiliki AFH (Adaptive Frequency Hopping Feature)
Bluetooth HC-05 dapat diatur menjadi Bluetooth master, maupun menjadi Bluetooth slave
[13].
Berikut spesifikasi dan fitur dari modul Bluetooth HC-05 [13]
Tabel 2.6. Spesifikasi dan fitur modul Bluetooth HC-05.
Sensitifitas -80dBm
Transmit power Hingga +4dBm RF
Operation Power 1,8 hingga 3,6 Volt untuk I/O
Fitur
PIO Kontrol
UART Interface dengan Programable Baud Rate
Antena terintegrasi
Otomatis terhubung dengan device terakhir dikoneksikan
Auto-Reconnect dalam waktu 30 menit ketika terputus akibat
masalah jarak
dapat diatur sebagai Bluetooth master dan Bluetooth slave
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
Gambar 2.19. Modul Bluetooth HC-05 [13].
2.8. Level Logic Converter (LLC) Module
Level logic converter module berfungsi untuk mengubah level tegangan sinyal 5 volt
menjadi 3,3 volt maupun sebaliknya [14]. Modul LLC digunakan untuk mengkonversi
sinyal dari mikrokontroler untuk dikirimkan ke port Rx di kontroler robot CM-530.
Gambar 2.20. Modul LLC [14].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
BAB III
RANCANGAN PENELITIAN
3.1. Proses Kerja Sistem
Arduino pada sistem robot pertama dan sistem robot kedua akan melakukan pairing
Bluetooth HC-05. Setelah berhasil melakukan pairing, cuplikan musik pengiring KRSTI
2016 diputar dengan media Bluetooth yang sudah melakukan pairing dengan Bluetooth
audio receiver Rapid i7. Hal tersebut bertujuan untuk memenuhi peraturan KRSTI 2016
poin ke tujuh yang tertera dalam dasar teori bab dua, sub bab pertama mengenai peraturan
KRSTI 2016. Sinyal masukan tersebut diterima melalui Bluetooth audio receiver Rapid i7.
Sinyal keluaran dari Rapid i7 akan melewati serangkaian pengkondisi sinyal sehingga dapat
diolah masukan ADC pada board Arduino sistem robot pertama.
Sinyal masukan tersebut akan melalui proses deteksi nada. Jika nada yang terdeteksi
sesuai dengan nada yang telah ditentukan, maka board Arduino pada sistem robot pertama
menghasilkan kode unik sesuai dengan nada tersebut. kode unik tersebut dikirimkan ke
kontroler robot CM-530, serta dikirimkan ke Arduino sistem robot kedua melalui bluetooth
HC-05 secara serial. Arduino sistem kedua akan meneruskan kode unik tersebut ke kontroler
robot CM-530. Masing-masing sistem robot akan menjalankan serangkaian motor servo
yang telah disusun menyerupai penari untuk melakukan gerakan-gerakan tarian “Topeng
Betawi” yang sesuai dengan petunjuk KRSTI 2016 .
3.2. Perancangan Perangkat Keras
Rancangan perangkat keras dapat dilihat pada gambar 3.1. dalam gambar tersebut
dijabarkan komponen-komponen yang membangun sistem keseluruhan, baik pada sistem
robot pertama maupun sistem robot kedua.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
Gam
bar
3.1
. G
ambar
K
esel
uru
han
Sis
tem
.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
Berdasarkan gambar 3.1. media penerima Bluetooth yang dikirimkan oleh user
menggunakan Rapid i7 Bluetooth audio receiver. Alasan penggunaan modul ini adalah,
modul tersebut telah terbukti berhasil melakukan pairing dengan modul pemancar
Bluetooth panitia KRSTI 2016. Dalam penelitian ini sistem robot pertama dan sistem robot
kedua terpisah, namun masih tetap berkomunikasi antara kedua sistem robot tersebut.
Komunikasi sistem robot pertama terhadap sistem robot kedua terjadi secara nirkabel
melalui modul Bluetooth HC-05. Berikut penjelasan dari masing masing sistem robot.
3.2.1. Sistem Robot Pertama
Berdasarkan pada gambar 3.1. sistem robot pertama terdiri dari sebuah Arduino Uno,
pengkondisi sinyal, modul level logic converter (LLC), dan Bluetooth modul HC-05.
Berikut kegunaan serta alasan pemilihan dari masing-masing komponen yang digunakan.
Arduino Uno berfungsi sebagai pengolah sinyal audio yang diterima oleh Bluetooth
audio receiver Rapid I7. Selain mengolah sinyal audio, Arduino Uno juga digunakan untuk
mengirimkan hasil pengolahan tersebut ke komponen yang lainnya. Arduino Uno digunakan
karena merupakan suatu kontroler yang cukup handal dalam memproses sinyal masukan,
nilai yang ekonomis, serta banyaknya referensi yang mudah dicari secara online sehingga
menjadi pertimbangan pemilihan komponen tersebut .
Modul level logic converter (LLC) mengubah nilai tegangan digital pin D1 dari
Arduino yang semula 5 volt menjadi tegangan akhir 3,3 volt sehingga aman untuk diterima
oleh masukan serial kontroler robot CM-530. Modul tersebut juga mampu mengubah logika
3,3 volt menjadi logika 5 volt sehingga modul dipilih untuk penelitian ini.
Modul Bluetooth HC-05 digunakan sebagai pengirim data hasil pengolahan sinyal
audio kepada sistem robot kedua. Fleksibilitas modul, serta kemudahan pemakaian modul
tersebut menjadi pertimbangan penggunaan modul tersebut dalam penelitian ini.
Pengkondisi Sinyal digunakan untuk mempersiapkan sinyal audio sehingga dapat
diproses oleh Arduino. Pengkondisi sinyal audio dapat menggunakan rangkaian yang ada
pada gambar 2.10. namun sebelum dijadikan masukan Arduino, rangkaian disisipkan
rangkaian untuk envelope detector yang berada pada gambar 2.12. pengkondisi sinyal
tersebut berguna untuk mempersiapkan gelombang sinyal suara masukan agar dapat diolah
di dalam Arduino
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Nilai resistansi dan kapasitansi dari rangkaian pengkondisi sinyal bagian Operational
Amplifier dan DC Offset akan dihitung dengan rumus 2.1. Perhitungan adalah sebagai
berikut.
Dengan mengasumsikan nilai tegangan audio sekitar 200 mV, untuk mencapai 2,5
volt maka dibutuhkan penguatan sebesar 12,5 kali. Nilai tersebut dihitung menggunakan
rumus 2.2. dimana tegangan audio sebagai Vmasukan dan 2,5 volt sebagai Vkeluaran
sehingga didapat penguatan (A) sebesar 12,5 kali. Berdasarkan perhitungan tersebut maka
didapatkan,
12,5 = (1 +𝑅1
𝑅2)
Jika nilai resistansi dari R1 = 10 kilo Ohm
Maka nilai resistansi dari R2 = 869.6 Ohm
Agar nilai penguatan tegangan dapat diubah-ubah jika diperlukan, maka R2
digantikan menggunakan potensiometer. Nilai R2 mudah untuk dimanipulasi sehingga
didapatkan penguatan yang sesuai. Nilai potensiometer yang akan digunakan bernilai 20
kilo Ohm maka penguatan paling kecil yang didapat yakni sebesar 1,5 kali. Sementara nilai
R3 = 10 kilo Ohm, R4 = 10 kilo Ohm, C1 = 10 uF, dan nilai C2 = 47 nF.
Nilai resistansi dan kapasitansi dari envelope detector akan dihitung dengan rumus
2.3. Perhitungan adalah sebagai berikut,
Dengan mengasumsi frekuensi cut off sebesar 200Hz (suara dentuman bass) maka
200 =1
2𝜋𝑅𝐶
Jika nilai kapasistansi dari C = 47 nF
Maka nilai resistansi dari R = 16.931 kilo Ohm
Nilai R akan dibulatkan menjadi 17 kilo Ohm yang akan mempengaruhi nilai
frekuensi cut off menjadi 199.2 Hz, perubahan nilai tidak signifikan sehingga masih dapat
diterima dalam penelitian ini. Untuk mendapatkan resistor 17 kilo Ohm maka digunakan
rangkaian resistor seri antara 16 kilo Ohm dan 1 kilo Ohm. Dioda yang akan digunakan
merupakan seri 1N4002.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
3.2.2. Sistem Robot Kedua
Berdasarkan gambar 3.1. Sistem robot kedua terdiri dari sebuah Arduino Mikro,
modul level logic converter (LLC), dan Bluetooth modul HC-05. Berikut kegunaan serta
alasan pemilihan dari masing-masing komponen yang digunakan.
Arduino Mikro digunakan sebagai pengatur kinerja dari modul Bluetooth HC-05 dan
sebagai penerus data dari modul Bluetooth HC-05 menuju ke kontroler CM-530 melalui
modul LLC. Arduino mikro digunakan karena merupakan suatu kontroler yang cukup
handal dalam memproses sinyal masukan, nilai yang ekonomis, serta banyaknya referensi
yang mudah dicari secara online sehingga menjadi pertimbangan pemilihan komponen
tersebut .
Modul level logic converter (LLC) memiliki fungsi yang sama dengan fungsi pada
sistem robot pertama, yakni sebagai pengubah nilai tegangan digital pin D1 dari Arduino
yang semula 5 volt menjadi tegangan akhir 3,3 volt sehingga aman untuk diterima oleh
masukan serial kontroler robot CM-530. Modul tersebut juga mampu mengubah logika 3,3
volt menjadi logika 5 volt sehingga modul dipilih untuk penelitian ini.
Modul Bluetooth HC-05 digunakan sebagai penerima data hasil pengolahan sinyal
audio dari sistem robot pertama. Fleksibilitas modul, serta kemudahan pemakaian modul
tersebut menjadi pertimbangan penggunaan modul tersebut dalam penelitian ini.
3.2.3. Perancangan Robot Bioloid
Untuk memenuhi peraturan kompetisi robot seni tari Indonesia 2016 poin ke empat
mengenai jumlah derajat kebebasan maka robot Bioloid dirancang seperti gambar 3.2.
berikut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
Gambar 3.2. Desain robot bioloid.
Gambar 3.2. menggambarkan robot Bioloid premium kit yang telah dimodifikasi.
Setiap persegi panjang berwarna kuning merepresentasikan sebuah motor servo AX-12A.
Nomor yang berada pada setiap persegi panjang menandakan identitas dari motor servo AX-
12A yang terhubung dengan kontroler robot CM-530. Setiap motor servo digambarkan
memiliki sebuah panah berwarna biru, panah tersebut mempresentasikan titik gerak dan
arah gerak dari masing masing servo tersebut.
Desain robot yang digambarkan pada gambar 3.2. merupakan sebuah Bioloid
premium kit yang ditambahkan dengan lima buah motor servo Dynamixel AX-12A. Persegi
yang memiliki lebih dari satu nomor identitas menandakan bahwa di titik tersebut terdapat
dua buah servo yang digabungkan. Gabungan motor servo tersebut berfungsi agar
tercapainya kebebasan gerakan dari robot. Dua motor servo yang digabungkan berada pada
identitas servo nomor 9 dengan 11, 10 dengan 12, 15 dengan 17, serta 16 dan 18.
Berdasarkan datasheet motor servo Dynamixel AX-12A, motor servo tersebut mampu
berputar sejauh 0 hingga 300 derajat. Batasan-batasan pada motor servo timbul akibat
adanya bodi robot, sehingga setiap motor servo memiliki derajat kebebasan yang bervariasi.
Berikut tabel derajat kebebasan dari masing-masing identitas motor servo.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Tabel 3.1. Perkiraan jangkauan sudut putar masing-masing motor servo.
Identitas servo
Jangkauan
sudut putar
1 0° hingga 300°
2 0° hingga 300°
3 0° hingga 180°
4 0° hingga 180°
5 0° hingga 180°
6 0° hingga 180°
7 0° hingga 300°
8 0° hingga 300°
9 0° hingga 120°
10 0° hingga 120°
11 0° hingga 150°
12 0° hingga 150°
13 0° hingga 160°
14 0° hingga 160°
15 0° hingga 130°
16 0° hingga 130°
17 0° hingga 160°
18 0° hingga 160°
19 0° hingga 300°
20 0° hingga 300°
21 0° hingga 90°
22 0° hingga 300°
23 0° hingga 300°
3.3. Perancangan Perangkat Lunak
Gambar 3.2. menunjukkan diagram alir program dari Arduino pada sistem robot
pertama dan Arduino pada sistem robot kedua. Pada gambar 3.3. menunjukkan diagram alir
program dari kedua kontroler robot CM-530. Diagram alir kontroler robot CM-530 pada
sistem robot pertama maupun sistem robot kedua identik. Pemrograman kontroler robot
CM-530 akan dilakukan didalam Roboplus Task.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
Gambar 3.3. Flowchart pada board Arduino sistem pertama dan kedua.
inisialisasi kode unik
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
Gambar 3.4. Flowchart pada kontroler robot CM-530 kedua sistem robot.
3.3.1. Diagram Alir Arduino pada Sistem Robot Pertama
Diagram alir pada sistem robot pertama ditunjukan pada gambar 3.3. di bagian kiri.
Program diawali dengan mengkonfigurasi port A0 pada board Arduino sebagai masukan.
Digital pin D1 dikonfigurasi sebagai pin TX. Selain inisialisasi kedua pin tersebut modul
HC-05 pada sistem robot pertama dikonfigurasi menjadi Bluetooth master dan melakukan
pengaturan baud rate, serta password yang sama dengan yang akan digunakan pada HC-05
pada sistem robot kedua. Terakhir adalah melakukan beberapa inisialisasi kode unik yang
dapat diterima oleh kontroler robot CM-530.
Setelah berhasil melakukan insialisasi awal, sesuai dengan flowchart sistem akan
membaca nilai ADC pada port A0 guna mendapatkan sinyal audio yang telah diberi
rangkaian pengkondisi sinyal. Nilai ADC tersebut akan digunakan untuk beat detection
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
dengan metode envelope. Berikut flowchart yang akan coba digunakan dalam penelitian ini
untuk mendapatkan nilai dari envelope.
Gambar 3.5. Penjelasan proses beat detection pada sistem robot pertama.
Berdasarkan gambar 3.5. nilai envelope adalah nilai sinyal audio yang sebelumnya
telah dilewatkan beberapa rangkaian pengkondisi sinyal dikurangi nilai rerata. Pada awal
percobaan, nilai rerata senilai dengan 512 karena sistem dianggap dimulai dari titik nol
audio. Nilai rerata tersebut akan terus diperbaharui secara kontinyu sejalan dengan aktifnya
sistem. Dengan metode tersebut diharapkan didapatkan nilai puncak maupun nilai terendah
dari gelombang sinyal suara.
Keluaran yang didapatkan dari pengolahan envelope tersebut dapat dikomparasikan
dengan nilai-nilai yang sudah ditentukan. Board Arduino akan memberikan kode unik yang
sesuai dengan nada yang telah teridentifikasi. Kode unik tersebut ditentukan dengan
melakukan pengamatan terhadap penari “Topeng Betawi” melalui video penampilan para
penari yang ada di YouTube yang akan dijelaskan dalam sub bab 3.4. Pengamatan tersebut
diharapkan dapat menentukan pada nada musik manakah robot harus melakukan salah-satu
dari enam gerakan dari tari “Topeng Betawi” yang telah dijelaskan dalam dasar teori.
Kode unik tersebut akan dikirimkan secara serial menuju port TX yang terhubung
dengan Bluetooth HC-05 dan serial port pada controler robot CM-530 sistem robot pertama.
Berikut sepenggal kode yang akan dicoba untuk digunakan dalam penelitian ini
1. Serial.write(KodeUnik);
Jika dalam 15 detik tidak ada masukan sinyal suara maka robot akan berhenti bekerja.
Alasan pengambilan waktu 15 detik yakni, dalam peraturan KRSTI 2016 pada poin ke 13
menyebutkan bahwa musik paling lama diberhentikan hanya sekitar 10 hingga 15 detik saja.
Jika musik terhenti lebih dari 15 detik maka dianggap pertandingan atau penelitian usai
dilakukan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
3.3.2. Diagram Alir Arduino pada Sistem Robot Kedua
Diagram alir pada sistem robot kedua ditunjukan pada gambar 3.3. di bagian kanan.
Program diawali dengan mengkonfigurasi Digital pin D0 sebagai pin RX, dan Digital pin
D1 sebagai pin TX. Selain inisialisasi kedua pin tersebut, modul HC-05 pada sistem robot
kedua dikonfigurasi menjadi Bluetooth slave dan melakukan pengaturan baud rate, dan
password yang sama dengan yang akan digunakan pada HC-05 pada sistem robot pertama.
Setelah berhasil melakukan inisialisasi, board Arduino pada sistem robot kedua
dirancang untuk membaca port RX yang terhubung dengan Bluetooth modul HC-05. Hasil
pembacaan nilai proses tersebut diteruskan ke kontroler robot CM-530 menggunakan
protokol serial melalui pin TX.
3.3.3. Diagram Alir Kontroler Robot CM-530
Diagram Alir kontroler Robot CM-530 ditunjukan pada gambar 3.4. Program diawali
dengan menginisialisasi gerakan robot dari nomor 1 hingga nomor 6. Gerakan robot pertama
adalah gerakan pembuka (adeg-adeg), gerakan robot kedua adalah gerakan kewer, gerakan
robot ketiga adalah gerakan selancar, gerakan robot keempat adalah gerakan cendol,
gerakan robot kelima adalah gerakan pak blang, dan yang terakhir gerakan gibang. Gerakan
tersebut sesuai dengan gerakan yang telah dijelaskan dalam peraturan KRSTI 2016.
Setelah inisialisasi, kontroler robot CM-530 akan membaca nilai masukan serial port.
Pembacaan nilai masukan serial ini bertujuan untuk mendapatkan kode-kode unik yang
dikirimkan oleh board Arduino di masing masing sistem robot. Kode unik ini akan
digunakan untuk memicu gerakan mana yang harus dilakukan. Ketika suatu gerakan telah
berjalan, kontroler robot akan menggerakkan servo yang telah terhubung dengan kontroler
robot tersebut sesuai dengan gerakan yang sudah didesain sebelumnya.
Kontroler akan menunggu hingga gerakan sudah selesai dikerjakan untuk memulai
membaca masukan serial port kembali. Jika dalam waktu lebih dari 15 detik tidak ada
perintah dari masukan serial port maka robot akan berhenti bekerja dan menganggap
pertandingan maupun penelitian telah usai, serta robot akan masuk ke mode standby.
3.4. Perancangan Pemicuan Gerakan Berdasarkan Musik Pengiring.
Gambar 3.6. merupakan penggambaran dari musik pengiring KRSTI 2016. Musik
tersebut merupakan musik gamelan khas betawi. Musik tersebut akan digunakan sebagai
pemicu gerakan robot bioloid untuk “menari”.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Gambar 3.6. Penggambaran musik pengiring KRSTI 2016.
Berdasarkan video dari kanal YouTube AbangNoneJakarta yang berjudulkan “Tari
Topeng Opening Sandiwara Musikal Betawi DOEL - Abang None Jakarta (2010) [18]”
musik pengiring KRSTI 2016 kemungkinan besar diambil dari video tersebut, terbukti
dengan kemiripan yang tinggi antara musik dalam video dengan musik pengiring KRSTI
2016 yang diberikan panitia. Setelah diamati dan dicocokkan dengan dasar teori, maka
disimpulkan bahwa
Tabel 3.2. Hubungan musik dan gerakan tarian “Topeng Betawi”.
Waktu video
(Menit:Detik)
Waktu musik
(Menit:Detik) Gerakan
00:00-00:51 00:00-00:18 Adeg-adeg
00:51-00:58 00:19-00:26 Kewer
00:59-01:05 00:27-00:33 Gibang dengan urutan
terbalik
01:05-01:34 00:33-01:02 Pak Blang
01:35-01:40 01:03-01:08 Selancar
01:41-01:58 01:09-01:26 Pak Blang
02:00-02:11 01:28-01:39 Gibang dengan urutan
terbalik
02:11-02:19 01:39-01:47 Pak Blang
02:19-02:22 01:47-01:50 Cendol Hijau
02:23-selesai 01:51-selesai Gerakan tidak terspesifikasi
dalam KRSTI 2016
Tabel 3.2. menjelaskan bahwa pada video yang berjudulkan “Tari Topeng Opening
Sandiwara Musikal Betawi DOEL - Abang None Jakarta (2010) ” dalam menit dan detik
ke 00:00 hingga 00:51 (menit dan detik ke 00:00 hingga 00:18 dalam musik pengiring) para
penari bersiap untuk memasuki panggung dengan melakukan gerakan adeg-adeg, dan pada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
detik ke 51 hingga detik ke 58 penari “Topeng Betawi” melakukan gerakan kewer dan
seterusnya sesuai dengan tabel di atas. Pada menit ke 2 dan detik ke 23 hingga video
maupun musik pengiring berakhir, gerakan yang dilakukan para penari tersebut tidak
dijelaskan dalam panduan peraturan KRSTI 2016. Dalam penelitian ini bagian dari musik
tersebut akan diabaikan. Jika tabel 3.2 diaplikasikan terhadap gambar 3.6 maka didapat
sinyal suara yang memiliki penandaan seperti gambar 3.7, maupun tabel 3.3 sebagai berikut.
Penggambaran spektrogram dari gambar 3.6 terlampir pada lampiran halaman L6 hingga
L9. Spektrogram diambil dengan interval 20 detik, dengan skala frekuensi logaritmik.
Tabel 3.3. Penandaan titik perubahan gerakan penari.
Marker waktu musik
(Menit:Detik)
M0 00:18
M1 00:26
M2 00:33
M3 01:02
M4 01:08
M5 01:26
M6 01:39
M7 01:47
M8 01:50
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Gam
bar
3.7
. P
enggam
bar
an l
agu p
engir
ing K
RS
TI
2016 d
eng
an p
anan
daa
n g
erak
an.
M0
M
1
M2
M3
M
4
M5
M6
M8
M7
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
Dalam Gambar 3.7. digambarkan musik pengiring KRSTI 2016 dengan penandaan
M0, M1, M2, dan seterusnya hingga M8. Titik penandaan ini digambarkan dengan garis
putus-putus berwarna hijau. Titik penandaan M0 hingga M1 merupakan area di mana robot
akan melakukan gerakan kewer. Titik penandaan M1 hingga M2 Merupakan area di mana
robot akan melakukan gerakan gibang dengan urutan terbalik antara berputar dan
melemparkan selendang. Titik penandaan M2 hingga M3 merupakan area di mana robot
akan melakukan gerakan pak blang. Titik penandaan M3 hingga M4 merupakan area di
mana robot akan melakukan gerakan selancar. Titik penandaan M4 hingga M5 merupakan
area di mana robot akan melakukan gerakan pak blang untuk kali kedua. Titik penandaan
M5 hingga M6 merupakan area di mana robot akan melakukan gerakan gibang untuk kali
kedua. Titik penandaan M6 hingga M7 merupakan area di mana robot akan melakukan
gerakan pak blang untuk kali ketiga. Titik penandaan M7 hingga M8 merupakan area di
mana robot akan melakukan gerakan cendol hijau.
Penelitian ini mencoba mendapatkan nilai envelope pada titik-titik penandaan tersebut.
Board Arduino akan dicoba untuk menyample setiap titik dengan kecepatan 11 mikro sekon,
hal ini didasarkan dari sample rate musik pengiring KRSTI 2016 adalah sebesar 44100 Hz.
Agar kriteria Nyquist terpenuhi maka kecepatan sampling harus mencapai dua kali
kecepatan yang akan disampling, maka Arduino harus dapat mensampling setinggi 88200
Hz atau setara dengan 11 mikro sekon.
Penyampelan tersebut akan dilakukan kurang lebih dua detik sebelum hingga dua
detik sesudah titik penandaan. pengambilan data tersebut bertujuan untuk mendapatkan
suatu array data yang dapat dikomparasikan dengan nilai tertentu. Array data yang sesuai
dengan nilai tersebut mengakibatkan board Arduino menghasilkan kode unik untuk memicu
gerakan robot sesuai dengan penandaan dan tabel 3.1. Kode-kode unik tersebut yang akan
digunakan sebagai pemicu robot Bioloid untuk menjalankan salah satu dari gerakan tari
“Topeng Betawi”.
3.5. Rancangan Gerakan Tari Robot
Gerakan tarian robot akan menirukan gerakan-gerakan tarian “Topeng Betawi” yang
dijelaskan peraturan KRSTI 2016. Batasan dari masing masing motor servo dan dimensi
badan robot, maka diperlukannya penyesuaian antara gerakan penari dengan gerakan tarian
robot. Untuk mempermudah perancangan gerakan robot, setiap gerakan robot dirancang
menggunakan sebuah fungsi template initial pose Bioloid premium kit type A yang ada
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
dalam aplikasi Roboplus Motion. Berikut ilustrasi initial pose dari Bioloid premium kit type
A.
Gambar 3.8. Ilustrasi initial pose tampak depan.
Gambar 3.9. Ilustrasi initial pose tampak samping.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
Gambar 3.10. Ilustrasi initial pose tampak belakang.
Gambar 3.11. Ilustrasi initial pose tampak serong.
Gambar diatas akan mendasarkan penelitian ini untuk merancang gerakan-gerakan
yang sesuai dengan penjelasan gerakan tari “Topeng Betawi” menurut KRSTI 2016.
Pengaturan motor-motor servo yang tidak tercantum dalam gambar diatas akan dilakukan
metode pengaturan nilai motor servo yang telah disediakan dalam aplikasi Roboplus Motion.
Nilai dari masing-masing motor servo tambahan pada initial pose adalah titik tengah dari
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
derajad kebebasan masing-masing servo. Gerakan yang akan dirancang adalah sebagai
berikut
3.5.1. Gerakan Adeg-adeg
Perancangan gerakan adeg adeg untuk robot dimulai dengan initial pose. Setelah
melakukan initial pose kaki robot dibuka dengan cara memutar motor servo nomor 7 dan 8
secara berlawanan mengarah keluar. Motor servo nomor 7 dan 8 digerakkan sejauh ±30°
sehingga telapak kaki robot membentuk huruf V. Tangan robot dibuat menyerupai huruf O
yang menyentuh pinggang, untuk mencapai pose tersebut maka motor servo nomor 3 dan 4
diregangkan. motor servo nomor 5 dan 6 menutup mendekati badan robot.
3.5.2. Gerakan Kewer
Gerakan kewer pada robot terdiri atas gerakan-gerakan berikut, kaki kanan robot
diletakkan di depan dengan cara memajukan servo nomor 11. Pergelangan kaki robot
diluruskan dengan mengatur servo nomor 15, sehingga telapak kaki robot rata dengan
permukaan pijakan robot. sedangkan kaki kiri robot silang di belakang dengan memutar
servo nomor 8 mirip seperti pada gerakan adeg-adeg.
Gerakan kedua adalah tangan kiri diletakkan di pinggang dengan cara yang mirip
dengan tangan pada gerakan adeg-adeg. Tangan kanan robot lurus ke samping dan
kemudian digerakkan ke bahu dengan cara membengkokkan servo nomor 5 sejauh 90
derajat mendekat badan robot, kemudian tangan kanan robot diluruskan kembali.
3.5.3. Gerakan Selancar
Gerakan selancar pada robot terdiri atas gerakan-gerakan berikut, tangan kanan robot
diletakkan di depan dengan cara meluruskan servo nomor 3 dan 5, serta menggerakan servo
nomor 1 sehingga tangan kanan robot terlihat seperti didepan badan robot. dan pergelangan
tangan diputar (ukel) dengan cara memutar servo nomor 19. Sedangkan tangan kiri
diluruskan ke samping bersamaan dengan gerakan kaki kiri robot ke depan.
Gerakan berikutnya tangan kiri robot diletakkan di depan dengan cara meluruskan
servo nomor 4 dan 6, serta menggerakan servo nomor 2 sehingga tangan kiri robot terlihat
seperti didepan badan robot. dan pergelangan tangan diputar (ukel) dengan cara memutar
servo nomor 20. Sedangkan tangan kanan diluruskan ke samping bersamaan dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
gerakan kaki kanan ke depan. Gerakan tangan kanan dan tangan kiri dilakukan secara
bergantian.
3.5.4. Gerakan Cendol Hijau
Gerakan cendol hijau adalah gerakan menggoyangkan pinggul robot. Gerakan cendol
hijau terdiri atas gerakan-gerakan berikut, robot melakukan gerakan adeg-adeg. Pinggul
robot (servo nomor 7, 8 dan 22) dibuat seolah olah digoyangkan ke kanan dan ke kiri.
3.5.5. Gerakan Pak Blang
Gerakan pak blang terdiri atas gerakan-gerakan berikut, robot dalam initial pose.
setelah mendasarkan gerakan dengan initial pose tangan kiri robot diangkat ke atas dengan
cara menaikkan servo nomor 4 sejauh 45°, servo nomor 20 diputar 150°, dan servo nomor
6 ditekuk 90° mendekati kepala robot. Kaki kanan robot melangkah ke depan.
Gerakan berikutnya adalah gerakan kebalikan dari gerakan sebelumnya, yakni setelah
melakukan initial pose tangan kanan robot diangkat ke atas dengan cara menaikkan servo
nomor 3 sejauh 45°, servo nomor 19 diputar 150°, dan servo nomor 5 ditekuk 90° mendekati
kepala robot. Kaki kiri robot melangkah ke depan. Gerakan pak blang diulang dan dilakukan
secara bergantian secara lentur dan luwes.
3.5.6. Gerakan Gibang
Gerakan gibang terdiri atas gerakan-gerakan berikut, setelah melakukan initial pose
badan robot dicondongkan ke depan dengan cara mengatur servo nomor 21. Tangan kanan
robot diluruskan ke samping, dan tangan kiri robot di letakkan di pinggang robot.
Kaki kanan robot disilangkan di depan kaki kiri robot. Gerakan tangan robot dan kaki
robot dilakukan secara bergantian. Gerakan selanjutnya yakni, robot berjalan memutar dan
kembali lagi memandang ke depan. Setelah badan robot lurus, robot mencoba untuk
menyangkutkan tangannya ke selendang dan dicoba untuk menghelai selendang tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
BAB IV
HASIL DAN PEMBAHASAN
4.1. Hasil Implementasi
Pengolahan sinyal berhasil dilakukan dengan menggunakan metode FFT, kontroler
pada sistem robot pertama mampu mengolah sinyal suara yang dikirimkan secara nirkabel
menggunakan Bluetooth audio receiver (Rapid i7). Robot sistem pertama mampu bergerak
mengikuti musik sesuai dengan tabel 4.1. Ketika musik kali pertama diputar robot
melakukan gerakan adeg-adeg. Ketika marker M0 pada musik telah dilewati, robot
melakukan gerak tarian kewer. Ketika marker M1 pada musik telah dilewati, robot
melakukan gerakan gibang. Ketika marker M2 pada musik telah dilewati, robot melakukan
gerakan pakblang. Ketika marker M3 pada musik telah dilewati, robot melakukan gerakan
selancar. Ketika marker M4 pada musik telah dilewati, robot melakukan gerakan pakblang.
Ketika marker M5 telah dilewati, robot melakukan gerakan gibang. Ketika marker M6 telah
dilewati, robot melakukan gerakan pakblang. Ketika marker M7 telah dilewati, robot
melakukan gerakan cendol. Ketika marker M8 telah dilewati, robot akan berhenti bergerak.
Foto gerakan robot dapat dilihat pada lampiran halaman L1 hingga L3.
Tabel 4.1. Hasil Pengujian Pemicu Gerakan Robot Sistem Pertama.
Percobaan Marker Lagu
M0 M1 M2 M3 M4 M5 M6 M7 M8
1 (=) (=) (=) (-) (=) (=) (-) (-) (-)
2 (+) (+) (+) (+) (+) (+) (+) (+) (+)
3 (+) (+) (+) (=) (-) (=) (-) (-) (-)
4 (-) (-) (+) (+) (=) (+) (+) (+) (=)
5 (=) (=) (+) (+) (+) (+) (+) (=) (=)
* (-) pemicuan gerak robot terlambat, (+) pemicuan gerak mendahului, (=) pemicuan gerak
robot tepat waktu.
Robot terkadang terlambat melakukan gerakan yang sesuai dengan tabel 3.2,
keterlambatan melakukan gerakan tersebut diakibatkan karena robot belum mencapai
hitungan ketukan frekuensi 260Hz pada marker musik yang bersangkutan. Selain
keterlambatan hasil perhitungan ketukan frekuensi, Robot harus menyelesaikan sebuah
gerakan terlebih dahulu sehingga gerakan selanjutnya terlambat dikerjakan. Robot
terkadang mendahului melakukan gerakan yang sesuai dengan tabel 3.2, ke-terdahuluan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
melakukan gerakan tersebut diakibatkan karena robot sudah mencapai target hitungan
ketukan frekuensi 260Hz pada marker musik yang bersangkutan.
Komunikasi antara kontroler sistem pertama dan sistem kedua berhasil dilakukan
(tabel 4.13). Komunikasi antara Arduino sistem pertama maupun sistem kedua dengan
kontroler robot CM-530 pada masing-masing sistem berhasil dilakukan (tabel 4.14 dan
4.15) , komunikasi hanya terjadi satu arah dari Arduino menuju kontroler robot CM-530.
Tanggal 17 Juni 2017 ketika dilakukan pengujian menggunakan 2 sistem robot,
pengolahan sinyal suara dengan algoritma FFT sempat terganggu dengan adanya proses
komunikasi antara kedua sistem. Pengiriman sinyal suara dilakukan secara nirkabel
menggunakan Bluetooth audio receiver (Rapid i7), dan komunikasi antar Arduino juga
dilakukan secara nirkabel menggunakan modul Bluetooth HC05. Penggunaan dua gawai
Bluetooth untuk melakukan transmisi sinyal berbeda menyebabkan terjadinya interferensi
sinyal komunikasi antar Arduino terhadap sinyal suara yang akan diolah. Bluetooth audio
receiver (Rapid i7) yang digunakan seolah-olah ikut menangkap sinyal yang seharusnya
menjadi sinyal komunikasi antar Arduino.
Gambar 4.1. Perbandingan keluaran FFT tanpa input (A) dengan keluaran FFT tanpa
input terinterferensi (B,C).
Interferensi tersebut mempengaruhi hasil dari pengolahan sinyal audio menggunakan
metode FFT. Gambar 4.1 memperlihatkan hasil pengolahan sinyal suara menggunakan
algoritma FFT tanpa ada masukan dari Bluetooth audio receiver Rapid i7. Gambar 4.1
bagian A merupakan keluaran pengolahan sinyal suara ketika tidak terjalin komunikasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
antara Arduino sistem pertama dengan Arduino sistem kedua, sementara gambar 4.1 bagian
B, dan C merupakan keluaran pengolahan sinyal suara ketika terjalin komunikasi antara
Arduino sistem pertama dengan Arduino sistem kedua. Akibat pengaruh interferensi sinyal
komunikasi terhadap sinyal suara menyebabkan perhitungan ketukan frekuensi 260Hz
menjadi tidak berlaku (unvalid).
Interferensi tersebut tidak lagi menjadi masalah pada alat versi final. Tidak diketahui
apa penyebab terpecahkannya masalah tersebut, karena perangkat lunak dan perangkat keras
yang digunakan sama ketika dilakukan pengujian menggunakan 2 sistem robot. Sistem final
robot bergerak mengikuti musik pada gambar 3.7, tabel 3.2, dan tabel 3.3 dengan error dan
ketepatan sebagai tabel 4.2 berikut. Pemicuan gerak robot sistem pertama dan sistem kedua
berubah bersamaan, sehingga gerakan robot pun berubah bersamaan.
Tabel 4.2. Hasil Pengujian Pemicu Gerakan 2 Robot Sistem final.
Percobaan Marker Lagu
M0 M1 M2 M3 M4 M5 M6 M7 M8
1 (=) (+) (+) (=) (=) (+) (+) (=) (=)
2 (+) (+) (+) (+) (+) (+) (+) (+) (+)
3 (-) (=) (+) (+) (=) (+) (+) (+) (+)
4 (-) (-) (-) (=) (-) (+) (+) (=) (+)
5 (-) (+) (+) (+) (+) (+) (+) (+) (+)
6 (-) (=) (=) (+) (=) (-) (-) (-) (-)
7 (+) (+) (+) (+) (+) (+) (+) (+) (+)
8 (=) (=) (=) (=) (=) (=) (=) (+) (+)
9 (-) (-) (-) (-) (-) (-) (-) (-) (-)
10 (-) (-) (=) (+) (+) (+) (+) (+) (+)
* (-) pemicuan gerak robot terlambat, (+) pemicuan gerak mendahului, (=) pemicuan gerak
robot tepat waktu.
4.2. Perubahan Rancangan
Penelitian ini mengalami perubahan rancangan dibandingkan dengan rancangan
sistem yang terdapat pada Bab III rancangan penelitian. Perubahan perancangan terjadi pada
hal-hal berikut, kontroler pengolah sinyal suara pada sistem robot pertama, metode
pengolahan sinyal suara, metode pengolahan beat detection dan penentu pemicuan gerakan,
serta metode pengiriman kode pemicu antara masing masing kontroler sistem dengan
kontroler robot Bioloid CM-530. Sub-bab ini akan menjelaskan perubahan yang terjadi
dalam penelitian ini.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
4.2.1. Perubahan Kontroler Sistem Robot Pertama
Penelitian direncanakan menggunakan kontroler Arduino Uno untuk mengolah sinyal
audio dan mengatur sistem robot pertama. setelah membaca lebih banyak referensi online
diketahui bahwa kontroler tersebut memiliki clock speed lebih lambat dibandingkan dengan
Arduino Due. Kecepatan clock speed Arduino Uno adalah 16MHz sementara kecepatan
clock speed Arduino due adalah 84MHz. Perbedaan clock speed yang cukup signifikan ini
akan mempengaruhi kecepatan suatu kontroler untuk melakukan pembacaan nilai adc
maupun pemrosesan data lainnya. Selain clock speed yang lebih cepat, Arduino Due dapat
diatur untuk melakukan pembacaan ADC 10 bit sehingga memiliki resolusi pembacaan
ADC yang lebih baik dibandingkan dengan pembacaan ADC 8 bit Arduino Uno.
Gambar 4.2. Board Arduino Due [20].
Tabel 4.3. spesifikasi Board Arduino due [20].
Microcontroller AT91SAM3X8E
Operating Voltage 3,3V
Input Voltage (limits) 6-16V
Digital I/O Pins 54 (of which 12 provide PWM output)
Analog Input Pins 12
Clock Speed 84 MHz
Penelitian ini menggunakan sinyal suara sebagai masukan utama pemrosesan. Sinyal
suara membutuhkan pemrosesan data yang cepat, sehingga penelitian ini akan lebih
diuntungkan jika menggunakan kontroler yang memiliki kapabilitas pembacaan ADC yang
lebih cepat serta resolusi pembacaan ADC yang lebih baik. Spesifikasi dari Arduino due
terdapat pada tabel 4.3.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
4.2.2. Perubahan Metode Pengolahan Sinyal Suara
Penelitian ini direncanakan menggunakan metode envelope untuk memproses sinyal
audio sebagai beat detector yang diterima pada kontroler sistem pertama. Metode tersebut
sensitif terhadap perubahan sebuah amplitudo dari suatu sinyal, sehingga metode tersebut
rawan digunakan untuk mendeteksi dentuman sinyal suara yang dijadikan pemicu gerakan
robot Bioloid. Gangguan terhadap metode envelope ini dapat diakibatkan berbagai faktor
eksternal, sebagai contoh:
1. Derau yang mengakibatkan Interferensi sinyal audio yang mengakibatkan atenuasi
nilai amplitudo sinyal yang akan diproses.
2. Perbedaan level volume suara ketika perancangan dengan level volume suara
ketika pengujian.
Sehingga penelitian ini beralih menggunakan metode yang lebih mengutamakan
penggunaan frekuensi dari sinyal audio untuk memicu gerakan robot. Metode yang
digunakan untuk menggantikan metode envelope pada penelitian ini adalah metode Fast
Fourier Transform (FFT). FFT dapat digunakan untuk mengubah suatu sinyal menjadi
komponen komponen frekuensi dari sinyal tersebut [24]. Penggunaan algoritma FFT
memerlukan komputasi numeris cukup banyak, sehingga dengan menggunakan kontroler
ber-clock speed lebih tinggi akan lebih menguntungkan. Penelitian ini menggunakan library
FFT untuk Arduino Due dari user Magician pada forum Arduino.cc berjudul “FFT Library
for Arduino Due” [21]. Library tersebut menggunakan frekuensi sample sebesar 48kHz,
sehingga memungkinkan untuk melakukan pembacaan sinyal berfrekuensi hingga 24kHz
(teorema Nyquist). Library tersebut menggunakan ukuran FFT sebesar 2048, dan ber-
resolusi per bin sebesar 20 hingga 24Hz (tergantung frekuensi yang diterima, perhitungan
resolusi berada di lampiran halaman L4 dan L5).
4.2.3. Perubahan Metode Beat Detection dan Pemicuan Gerakan
Musik pengiring lomba KRSTI 2016 pada marker lagu M7 berdasarkan gambar 3.7
dilakukan komputasi FFT menggunakan MATLAB dan menghasilkan data sebagai berikut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
Gambar 4.3. Hasil komputasi FFT menggunakan MATLAB pada marker lagu M7.
Gambar 4.4. Hasil perbesaran gambar 4.3 komputasi FFT menggunakan MATLAB
pada marker lagu M7.
Berdasarkan gambar 4.4 Diketahui bahwa terdapat frekuensi 260Hz yang memiliki
gain cukup tinggi dibanding dengan frekuensi lainnya, sehingga dilakukan beat detection
pada frekuensi 260Hz. Dengan menghitung berapa jumlah frekuensi 260Hz pada setiap
marker lagu, Arduino mampu mengidentifikasi marker lagu yang telah dicapai sehingga
robot dapat bergerak sesuai tabel 3.2 dan gambar 3.7.
Tone generator online digunakan untuk membangunkan sinyal audio berfrekuensi
260Hz dengan pengaturan volume maximum pada tone generator dan volume komputer
diatur sebesar 100%. Sinyal audio tersebut dikirimkan melalui Bluetooth kepada arduino
sistem pertama untuk diolah menggunakan FFT. dikarenakan sinyal suara yang diterima
diproses menggunakan algoritma FFT, maka frekuensi-frekuensi penyusun sinyal suara
tersebut dapat diidentifikasi. Library dari magician menampilkan keluaran seperti gambar
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
4.5 berikut, setiap frekuensi penyusun memiliki suatu magnitudo yang disimpan pada suatu
array yang disebut bin frekuensi.
Gambar 4.5. Bin frekuensi 260Hz.
Magnitudo frekuensi 260Hz yang diterima direpresentasikan dalam bin frekuensi
nomor 11, 12, dan 13 (gambar 4.5). Teridentifikasinya frekuensi penyusun sinyal suara
memungkinkan sistem untuk “menghitung ketukan” dari sinyal suara pada musik pengiring
KRSTI 2016. Arduino Due pada sistem pertama menghitung ketukan frekuensi pada bin
frekuensi nomor 12 dan 13. Berdasarkan gambar 3.7 pada masing-masing marker lagu 0
hingga 8, Arduino Due menghitung (mencacah) ketukan frekuensi 260Hz pada masing-
masing marker lagu sebanyak tabel 4.4 berikut.
Tabel 4.4. Jumlah ketukan frekuensi 260Hz pada masing-masing marker lagu
pengiring KRSTI 2016.
Mark Percobaan
1 2 3 4 5 6 7 8 9 10
M0 279 295 293 284 287 291 285 292 304 275
M1 405 419 422 416 406 423 409 412 425 397
M2 509 528 528 515 513 529 512 517 529 507
M3 789 798 798 792 798 806 795 801 803 796
M4 864 868 875 864 867 884 871 872 873 881
M5 1120 1126 1140 1102 1109 1125 1128 1151 1114 1144
M6 1290 1297 1311 1271 1265 1307 1305 1324 1285 1312
M7 1418 1412 1435 1387 1392 1426 1422 1440 1413 1432
M8 1445 1444 1465 1420 1424 1456 1450 1473 1445 1463
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
Tabel 4.5. Hasil rata-rata data dari tabel 4.4 pada setiap marker lagu dan gerakan
robot.
Marker Average Akhir dari
Gerakan
Awal dari
Gerakan
M0 289 Adeg-adeg Kewer
M1 413 Kewer Gibang
M2 519 Gibang Pak Blang
M3 798 Pak Blang Selancar
M4 872 Selancar Pak Blang
M5 1126 Pak Blang Gibang
M6 1297 Gibang Pak Blang
M7 1418 Pak Blang Cendol
M8 1449 Cendol Diam
Jumlah hitungan ketukan frekuensi 260 Hz pada masing-masing marker lagu
fluktuatif sehingga data dirata-rata pada setiap marker dan didapat tabel 4.5 pada kolom
Average. Sistem pertama melakukan pengambilan keputusan berdasarkan hasil hitungan
dari ketukan tersebut dan dijadikan pemicu gerakan robot sehingga robot bergerak sesuai
dengan tabel 3.2. Agar sistem robot kedua melakukan gerakan yang sama dengan sistem
robot pertama maka dikirimkan kode gerakan robot seperti yang dicantumkan dalam tabel
4.6.
Tabel 4.6 kode gerakan yang dikirimkan sistem pertama untuk sistem kedua.
Gerakan
Robot
Kode
Gerakan
Diam 0
Kewer 1
Gibang 2
Cendol 3
Pak-Blang 4
Selancar 5
Adeg-adeg 6
4.2.4. Perubahan Komunikasi antara Arduino dengan CM-530
Penelitian ini direncanakan menggunakan komunikasi serial untuk berkomunikasi
antara Arduino dengan kontroler robot CM-530 pada masing-masing sistem. Metode
komunikasi tersebut memiliki beberapa kendala, yakni
1. Tidak diketahuinya secara pasti berapa baud rate dari kontroler robot CM-530.
Meski demikian, secara umum nilai baud rate dari dongle modul BT101 dan
modul zigbee yang dapat berkerja pada CM-530 yakni sebesar 57600 baud.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
Gambar 4.6. Format penulisan communication packet Robotis [22].
2. Kontroler robot CM-530 hanya dapat menerima perintah serial jika data dalam
format communication packet spesifik dari robotis, setiap packet terdiri dari 6 byte
data dengan format penulisan hexadesimal. Format penulisan communication
packet dan contoh yang dikirimkan oleh remot pendukung robotis terdapat dalam
gambar 4.6.
Gambar 4.7. rangkaian circuit konverter PWM ke DC [23].
Kedua persyaratan diatas telah dicoba untuk dipenuhi dengan cara mengatur baud rate
pengiriman serial dari arduino menjadi 57600 dan mencoba mengirim data menggunakan
format yang diberikan Robotis. Hasil dari percobaan tersebut tetap tidak mendapatkan
respon dari kontroler robot, sehingga untuk mengatasi masalah tersebut metode komunikasi
antar kontroler Arduino dan kontroler robot Bioloid CM-530 menggunakan pengiriman
sinyal PWM dari Arduino yang dikonversi menjadi tegangan DC.
Pengkonversian ini menggunakan rangkaian PWM to DC Converter seperti
ditampilkan pada gambar 4.7. Nilai R1 adalah 4700Ω sementara nilai C1 adalah 10uF.
Tegangan DC tersebut kemudian dibaca oleh pin analog input yang dimiliki kontroler robot
Bioloid CM-530. Nilai sinyal PWM dirancang tidak melebihi 3,3 volt, hal tersebut bertujuan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
agar rangkaian PWM to DC Converter mampu menangani konversi. Jika sinyal PWM
melebihi 3,3 volt, output rangkaian akan saturasi pada tegangan 3,3 volt. Saturasi tegangan
tersebut diakibatkan IC LM358 dalam penelitian ini hanya dirancang menerima supply 5
volt dari Arduino. Arduino Due mampu menghasilkan 3,3 volt pada nilai PWM sebesar 255,
sementara Arduino Nano menghasilkan 3,3 volt pada nilai PWM sebesar 168. Robot
membutuhkan 6 kode gerakan dan 1 kode untuk berhenti, maka nilai maksimum PWM dari
masing masing Arduino dibagi 7. Tabel 4.7 berisikan output PWM Arduino dan korelasi
dengan gerakan robot, tegangan DC terukur AVO meter, serta nilai analog yang terbaca
kontroler CM-530 pada sistem robot pertama. Tabel 4.8 berisikan output PWM Arduino dan
korelasi dengan gerakan robot, tegangan DC terukur AVO meter, serta nilai analog yang
terbaca kontroler CM-530 pada sistem robot kedua.
Tabel 4.7. Tabel output PWM, Tegangan DC, nilai Analog pada sistem robot
pertama.
Nilai PWM (8bit) Gerakan Tegangan DC (V) Terbaca Analog CM-530
(10bit, Vref 5V)
36 Stop/Diam 0,5 110
72 Kewer 1,1 210
108 Gibang 1,5 300
144 Cendol 2 400
180 Pak Blang 2,5 500
216 Selancar 2,9 610
252 Adeg-Adeg 3,4 700
Tabel 4.8. Tabel output PWM, Tegangan DC, nilai analog pada sistem robot kedua.
Nilai PWM (8bit) Gerakan Tegangan DC (V) Terbaca Analog CM-530
(10bit, Vref 5V)
24 Stop/Diam 0,4 75
48 Kewer 0,8 160
72 Gibang 1,2 240
96 Cendol 1,6 330
120 Pak Blang 1,9 400
144 Selancar 2,3 490
168 Adeg-Adeg 2.7 580
Dengan diketahuinya nilai-nilai analog yang terbaca kontroler CM-530 dari setiap
output pwm, maka nilai tersebut dapat dipetakan untuk menjadi pemicu gerakan tertentu.
Tabel 4.9 digunakan sebagai range analog yang akan digunakan untuk memicu gerakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
robot pada sistem robot pertama. Tabel 4.10 digunakan sebagai range analog yang akan
digunakan untuk memicu gerakan robot pada sistem robot kedua.
Tabel 4.9. Pemetaan batas analog yang terbaca CM-530 sistem pertama dengan
gerakan sistem pertama.
Batas Analog Gerakan
Bawah Atas
60 160 Stop/Diam
165 260 Kewer
265 350 Gibang
355 450 Cendol
455 550 Pak Blang
560 660 Selancar
665 750 Adeg-Adeg
Tabel 4.10. Pemetaan batas analog yang terbaca CM-530 sistem kedua dengan
gerakan sistem kedua.
Batas Analog Gerakan
Bawah Atas
0 95 Stop/Diam
100 200 Kewer
205 300 Gibang
305 365 Cendol
370 450 Pak Blang
455 530 Selancar
535 620 Adeg-Adeg
Berdasarkan tabel 4.9 dan tabel 4.10 diketahui batas atas dan batas bawah dari masing-
masing gerakan dibuat jarak kurang lebih 100 poin, sehingga terdapat toleransi yang cukup
besar untuk membaca nilai PWM jika terjadi fluktuasi tegangan dari PWM yang dihasilkan
Arduino pada masing-masing sistem.
4.2.5. Perubahan Perangkat Lunak pada Arduino Sistem Pertama
Terjadi perubahan dalam logika diagram alir pada Arduino sistem pertama. Perubahan
tersebut guna mengatasi perubahan metode yang digunakan untuk mendeteksi ketukan
musik, metode penentuan gerakan robot, dan metode pengiriman kode yang dikirimkan ke
kontroler robot CM-530. Gambar 4.8. berisikan flowchart Arduino pada sistem pertama,
sementara gambar 4.9 adalah flowchart sub program fungsi pemilih gerakan robot.
Penjelasan perangkat lunak pada Arduino sistem pertama akan dibahas lebih lanjut dalam
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
sub bab Penjelasan Perangkat Lunak pada bagaian Pembahasan Perangkat Lunak
pada Arduino Sistem Pertama
Gambar 4.8. Flowchart Arduino pada sistem pertama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
Gambar 4.9. Flowchart fungsi pemilih.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
4.2.6. Perubahan Perangkat Lunak pada Arduino Sistem Kedua
Terjadi perubahan dalam logika diagram alir pada Arduino sistem kedua. Perubahan
tersebut guna mengatasi metode pengiriman kode untuk dikirimkan ke kontroler robot CM-
530. Gambar 4.10. berisikan flowchart Arduino pada sistem kedua. Penjelasan perangkat
lunak pada Arduino sistem kedua akan dibahas lebih lanjut dalam sub bab Penjelasan
Perangkat Lunak pada bagian Pembahasan Perangkat Lunak pada Arduino Sistem
Kedua.
Gambar 4.10. Flowchart Arduino pada sistem ke dua.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
4.2.7. Perubahan perangkat lunak pada kontroler robot CM-530
Terjadi perubahan dalam logika diagram alir pada kontroler robot CM-530 pada
masing masing sistem. Perubahan tersebut guna mengatasi perubahan metode pengiriman
kode yang dikirimkan dari Arduino pada masing-masing sistem. Berikut masing masing
flowchart dari setiap sistem. Gambar 4.11 merupakan flowchart kontroler robot CM-530
sistem pertama, sementara gambar 4.12 merupakan flowchart kontroler robot CM-530
sistem kedua. Perbedaan sistem pertama dan kedua terdapat pada pengambilan keputusan
terbaca analog port 1 yang diterima untuk masing-masing sistem untuk setiap gerakan.
Gambar 4.11. Flowchart CM-530 pada sistem pertama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
56
Gambar 4.12. Flowchart CM-530 pada sistem kedua.
4.3. Analisa Keberhasilan Sistem
Analisa dari hasil implementasi adalah sebagai berikut.
4.3.1. Pengolahan Sinyal Suara dan Kesesuaian Pemicu Gerakan Robot
Tabel 4.11 didapat dari penghitungan ketepatan, pendahuluan, dan keterlambatan
pemicuan gerakan terhadap lagu pengiring lomba KRSTI 2016 yang sudah diberi marker
(gambar 3.7) berdasarkan tabel 4.1. Setiap percobaan memiliki 9 titik marker lagu untuk
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
57
menjadi acuan keberhasilan sistem. Ketepatan pemicuan gerakan untuk masing-masing
percobaan terdapat dalam kolom “Keberhasilan (%)”, nilai dihitung dari jumlah ketepatan
pemicuan dibagi 9 (jumlah marker). Rata-rata keberhasilan pemicuan gerakan untuk sistem
pertama adalah sebesar 33%, meski demikian robot sistem pertama tetap mampu bergerak
mengikuti tabel 3.2 dan gambar 3.7 walaupun terlambat maupun mendahului musik
pengiring.
Tabel 4.11. Keberhasilan pemicuan gerakan robot sistem pertama sesuai musik
pengiring KRSTI 2016.
Percobaan Mendahului Terlambat Tepat Keberhasilan (%)
1 0 4 5 56
2 9 0 0 0
3 3 2 4 44
4 5 2 2 22
5 5 0 4 44
Ketika musik dimainkan robot melakukan gerakan adeg-adeg. Ketika marker 0 pada
musik telah dilewati, robot melakukan gerak tarian kewer. Ketika marker 1 pada musik telah
dilewati, robot melakukan gerakan gibang. Ketika marker 2 pada musik telah dilewati, robot
melakukan gerakan pakblang. Ketika marker 3 pada musik telah dilewati, robot melakukan
gerakan selancar. Ketika marker 4 pada musik telah dilewati, robot melakukan gerakan
pakblang. Ketika marker 5 telah dilewati, robot melakukan gerakan gibang. Ketika marker
6 telah dilewati, robot melakukan gerakan pakblang. Ketika marker 7 telah dilewati, robot
melakukan gerakan cendol. Ketika marker 8 telah dilewati, robot akan berhenti bergerak.
Sistem final adalah sistem robot pertama dan sistem robot kedua telah dihubungkan
secara nirkabel menggunakan modul Bluetooth HC-05 , serta musik siap dimainkan melalui
Bluetooth menggunakan Bluetooth audio receiver Rapid i7. Hasil percobaan respon sistem
terhadap musik yang dimainkan, berada pada tabel 4.2. Tabel 4.12 didapat dari
penghitungan ketepatan, pendahuluan dan keterlambatan respon sistem final jika
dibandingkan dengan musik pengiring pada gambar 3.7. Ketepatan pemicuan gerakan untuk
masing-masing percobaan terdapat dalam kolom “Keberhasilan (%)”, nilai dihitung dari
jumlah ketepatan pemicuan dibagi 9 (jumlah marker). Rata-rata keberhasilan pemicuan
gerakan untuk sistem final adalah sebesar 22%.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
58
Tabel 4.12. Keberhasilan pemicuan gerakan robot sistem final sesuai musik
pengiring KRSTI 2016.
Percobaan Mendahului Terlambat Tepat Keberhasilan (%)
1 4 0 5 56
2 9 0 0 0
3 6 1 2 22
4 3 4 2 22
5 8 1 0 0
6 1 5 3 33
7 9 0 0 0
8 2 0 7 78
9 0 9 0 0
10 6 2 1 11
4.3.2. Komunikasi Antar Sistem Arduino
Pengujian komunikasi antar sistem arduino dilakukan dengan cara “mencetak” data
yang terkirim dari Arduino sistem pertama, dan data yang diterima pada Arduino sistem
kedua pada serial monitor dua komputer yang berbeda. Data-data tersebut dibandingkan
antar sistem Arduino pertama dan sistem Arduino kedua.
Gambar 4.13 dan Gambar 4.14 diambil dari masing masing serial monitor Arduino
ketika tidak ada musik yang dimainkan. Format pengiriman adalah XYYY, X adalah data
terkirim (sistem 1) maupun data diterima (sistem 2), data terkirim maupun data diterima
diikuti dengan penulisan nilai sinyal PWM (YYY) yang dibangkitkan masing-masing
Arduino. Gambar 4.13 data yang ditampilkan adalah 036, maka data terkirim adalah 0,
PWM yang dibangkitkan sebesar 36. Gambar 4.14 data yang ditampilkan adalah 024, maka
data diterima adalah 0, PWM yang dibangkitkan sebesar 24.
Gambar 4.13. Data terkirim Arduino sistem pertama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
59
Gambar 4.14. Data diterima Arduino sistem kedua.
Nilai yang ditampilkan serial monitor akan berubah mengikuti hasil dari pengkodean
dari Arduino sistem pertama terhadap kondisi musik, sehingga didapat nilai seperti tabel
4.13. Berikut tabel perbandingan data terkirim dan data diterima pada masing masing sistem
arduino.
Tabel 4.13. Perbandingan data terkirim Arduino sistem pertama dengan data
diterima Arduino sistem kedua.
Gerakan Data terlihat
serial monitor
sistem 1
Data terlihat
serial monitor
sistem 2
Data terkirim
(sistem 1)
Data diterima
(sistem 2)
Diam 036 024 0 0
Kewer 172 148 1 1
Gibang 2108 272 2 2
Cendol 3144 396 3 3
Pak Blang 4180 4120 4 4
Selancar 5216 5144 5 5
Adeg-Adeg 6252 6168 6 6
Data yang diterima Arduino sistem kedua dan data dikirim Arduino sistem pertama
sesuai antara yang terkirim, diterima, serta tabel 4.6. Maka pengiriman data antar Arduino
menggunakan modul Bluetooth HC-05 secara serial berhasil, tingkat ketepatan data terkirim
dengan data diterima adalah sebesar 100%. Nilai PWM sistem pertama dan kedua memang
berbeda dan tidak mempengaruhi komunikasi antara kedua Arduino masing-masing sistem.
4.3.3. Komunikasi Antara Arduino dengan Kontroler Robot CM-530
Pengujian komunikasi antara Arduino dengan kontroler robot CM-530 dilakukan
dengan cara mengirimkan nilai sinyal PWM tertentu dari Arduino yang dikonversi menjadi
tegangan DC, kemudian dibaca secara ADC oleh kontroler robot CM-530 untuk
menggerakkan sistem robot.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
60
Tabel 4.14. tabel pengujian komunikasi Arduino sistem pertama dengan CM-530.
Percobaan PWM yang dibangkitkan Arduino Due (8bit, 3,3V)
36 72 108 144 180 216 252
1 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
2 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
3 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
4 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
5 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
Berdasarkan tabel 4.14. kontroler robot CM-530 sistem pertama mampu bergerak
berdasarkan nilai PWM yang dikirimkan Arduino sistem pertama. Robot bergerak sesuai
dengan tabel 4.7 dengan kesesuaian gerakan 100%. Komunikasi antara Arduino sistem
pertama dengan kontroler robot CM-530 berhasil.
Tabel 4.15. Tabel pengujian komunikasi Arduino sistem kedua dengan CM-530.
Percobaan PWM yang dibangkitkan Arduino Nano (8bit, 5V)
24 48 72 96 120 144 168
1 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
2 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
3 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
4 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
5 Diam Kewer Gibang Cendol Pak-blang Selancar Adeg-adeg
Berdasarkan tabel 4.15. kontroler robot CM-530 sistem kedua mampu bergerak
berdasarkan nilai PWM yang dikirimkan Arduino sistem kedua. Robot bergerak sesuai
dengan tabel 4.8 dengan kesesuaian gerakan 100%. Komunikasi antara Arduino sistem
kedua dengan kontroler robot CM-530 berhasil.
Kontroler robot CM-530 dianggap mampu menerima kode yang dikirimkan Arduino.
Berdasarkan tabel 4.7 dan 4.8 resolusi dari 10bit Analog read CM-530 adalah 5mV.
4.3.4. Perbandingan dengan Robot Tanpa Sistem Tambahan
Robot tanpa sistem tambahan hanya mampu mendeteksi perubahan tegangan yang
dihasilkan Bluetooth audio receiver Rapid i7, karena kontroler CM-530 tidak memiliki
library maupun fungsi pengambil nilai frekuensi. Nihilnya fungsi maupun library
menyebabkan pengolahan data rawan dengan atenuasi amplitudo dan derau yang diterima
Rapid i7. Kontroler CM-530 juga tidak ditemukan cara untuk melakukan komunikasi
dengan kontroler CM-530 lainnya. Berikut kelebihan dengan adanya penambahan sistem
Arduino pada masing-masing robot:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
61
1. Memungkinkan musik yang diterima Bluetooth audio receiver Rapid i7 dapat diolah
sehingga menghasilkan gerakan yang lebih sesuai dengan musik yang diputar.
2. Memungkinkan untuk dilakukannya komunikasi antar kedua robot.
3. Tidak terlalu bergantung pada amplitudo dari musik pengiring KRSTI 2016.
4. Memungkinkan dilakukannya penambahan fungsi yang mendukung dalam
perlombaan
4.4. Pembahasan Perangkat Keras
Berikut pembahasan perangkat keras pada masing masing sistem yang digunakan
dalam penelitian ini.
4.4.1. Pembahasan Perangkat Keras Sistem Pertama
Perangkat keras sistem pertama (gambar 4.15) terdiri dari Arduino Due, rangkaian
PWM to DC konverter, modul Bluetooth HC-05, Bluetooth Rapid i7 audio receiver,
rangkaian pengkondisi sinyal audio, kontroler robot CM-530 dan aktuator servo AX-12A.
Sub bab ini akan menjelaskan fungsi, kegunaan komponen dalam sistem, serta schematic
yang digunakan pada Arduino sistem pertama.
Gambar 4.15. Schematic perangkat keras Arduino sistem pertama.
Gambar 4.16. Rangkaian pengkondisi sinyal audio (DC offset).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
62
Berdasarkan gambar 4.15. modul Bluetooth HC-05 terhubung langsung dengan
Arduino Due. Pin Rx modul Bluetooth HC-05 tersambung dengan pin Tx1 Arduino Due,
sementara pin Tx modul Bluetooth HC-05 tersambung dengan pin Rx1 Arduino Due. Modul
Bluetooth HC-05 telah diatur untuk mengunci (bind) pairing dengan modul Bluetooth HC-
05 sistem robot kedua. Modul tersebut digunakan untuk melakukan komunikasi serial
dengan sistem robot kedua. Rangkaian PWM to DC terhubung dengan pin D3 Arduino Due.
Schematic rangkaian konverter PWM to DC mengikuti gambar 4.16. Fungsi rangkaian
tersebut mengkonversi sinyal PWM menjadi tegangan DC. Keluaran rangkaian tersebut
terhubung dengan kontroler robot CM-530 pada port ADC1. Kontroler robot CM-530
“membaca” tegangan dari rangkaian konverter PWM to DC dan memerintah servo AX-12A
yang terhubung untuk bergerak sesuai dengan gerakan yang sudah ditentukan.
Output Bluetooth audio receiver Rapid i7 menggunakan audio jack 3,5 mm. Audio
jack tersebut terhubung pada port IN di dalam rangkaian pengkondisi sinyal audio.
Rangkaian pengkondisi sinyal audio tersebut berisikan rangkaian DC offset (gambar 4.16).
Fungsi rangkaian DC offset digunakan untuk mengubah nilai titik nol dari suatu sinyal
masukan. Pengubahan titik nol dari sinyal masukan memungkinkan sinyal suara (audio)
yang diterima Arduino Due tidak terpotong yang diakibatkan ketidakmampuan pin analog
Arduino untuk membaca tegangan negatif. Tegangan output dari pengkondisi sinyal audio
terhubung dengan pin analog A0 Arduino Due.
Gambar 4.17. Arduino sistem pertama.
Keterangan gambar 4.15:
1. Arduino Due
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
63
2. Modul Bluetooth HC-05
3. Rangkaian pengkondisi sinyal audio
4. Bluetooth audio receiver Rapid i7
5. Rangkaian konverter PWM to DC
Gambar 4.18. Robot sistem pertama tampak depan.
Gambar 4.19. Robot sistem pertama tampak samping.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
64
Gambar 4.20. Robot sistem pertama tampak belakang.
Keterangan gambar 4.18:
1. Kontroler robot CM-530
2. Arduino sistem pertama
4.4.2. Pembahasan Perangkat Keras Sistem Kedua
Perangkat keras sistem kedua (gambar 4.21) terdiri dari Arduino Nano, modul Bi-
Directional logic level converter (LLC), rangkaian konverter PWM to DC, modul Bluetooth
HC-05, kontroler robot CM-530 dan aktuator servo AX-12A. Sub bab ini akan menjelaskan
kegunaan, serta schematic yang digunakan pada Arduino sistem kedua.
Gambar 4.21. Schematic perangkat keras Arduino sistem kedua.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
65
Berdasarkan gambar 4.21 modul Bi-directional logic level converter (LLC) pada sisi
Hv terhubung dengan Arduino Nano pada port digital 10 dan 11. Fungsi modul tersebut
mengkonversi tegangan 5V menjadi tegangan 3.3V. Keluaran modul LLC tersambung
dengan modul Bluetooth HC-05. Rangkaian converter PWM to DC terhubung dengan
Arduino Nano pada port digital 3. Schematic rangkaian konverter PWM to DC mengikuti
gambar 4.16. Fungsi rangkaian tersebut mengkonversi sinyal PWM menjadi tegangan DC.
Keluaran rangkaian tersebut terhubung dengan kontroler robot CM-530 pada port ADC1.
Kontroler robot CM-530 “membaca” tegangan dari rangkaian konverter PWM to DC dan
memerintah servo AX-12A yang terhubung untuk bergerak sesuai dengan gerakan yang
sudah ditentukan.
Gambar 4.22. Arduino sistem kedua.
Keterangan gambar 4.20:
1. Arduino Nano
2. Modul Bi-Directional logic level converter (LLC)
3. Rangkaian konverter PWM to DC
4. Modul Bluetooth HC-05
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
66
Gambar 4.23. Robot sistem kedua tampak depan.
Gambar 4.24. Robot sistem kedua tampak serong.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
67
Gambar 4.25. Robot sistem kedua tampak belakang.
Keterangan gambar 4.23:
1. Kontroler robot CM-530
2. Arduino sistem kedua
4.5. Pembahasan Perangkat Lunak
Berikut pembahasan perangkat lunak pada masing masing kontroler yang digunakan
dalam penelitian ini.
4.5.1. Perangkat Lunak dalam Arduino pada Sistem Pertama
Berdasarkan gambar 4.8 dan 4.9, Arduino sistem pertama memulai program dengan
menginisialisasi beberapa variabel serta menggunakan library FFT. Arduino Due pada
sistem pertama dirancang untuk membaca nilai ADC dari pin A0, dan dilakukan komputasi
FFT pada nilai ADC tersebut. Keluaran proses FFT berupa bin frekuensi. Frekuensi 260Hz
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
68
akan dijadikan titik pengambilan frekuensi pemicu sesuai dengan penjelasan pada sub bab
4.2.3, magnitudo frekuensi 260Hz direpresentasikan pada bin 11, 12, dan 13. Ketika bin 12
dan bin 13 memiliki magnitudo, maka variabel counter akan dijumlahkan increment 1. Jika
counter sudah mencapai nilai tertentu (sesuai tabel 4.5 kolom Average) , maka sistem akan
mengirimkan data ke Arduino sistem kedua melalui Bluetooth HC-05 secara serial, serta
menentukan nilai PWM yang akan dihasilkan Arduino sistem pertama untuk diterima
kontroler robot CM-530. Berikut penjelasan dari listing program yang digunakan dalam
Arduino sistem pertama,
Gambar 4.26. Listing program pada Arduino sistem pertama (Inisialisasi).
Berdasarkan gambar 4.26 Arduino sistem pertama menginisialisasikan beberapa
variabel dan mengikutsertakan header file SplitRadixRealP. Beberapa variabel yang
digunakan adalah jji, inx, terkirimHC, dan counter. Berikut penjelasan kegunaan dari
masing-masing variabel.
1. Variabel jji bertipe integer dan digunakan untuk pemilih data yang berada didalam
array variabel terkirimHC.
2. Variabel inx bertipe integer dan digunakan untuk nilai PWM yang akan
dibangkitkan Arduino sistem pertama.
3. Array terkirimHC bertipe integer dan memiliki panjang sebesar 7 data, isi dari
array terkirimHC adalah 0, 1, 2, 3, 4, 5, dan 6. Data didalam array tersebut adalah
data yang akan dikirimkan ke Arduino sistem kedua. Data 0 untuk robot diam, 1
untuk Kewer, 2 untuk Gibang, 3 untuk Cendol, 4 untuk Pak-blang, 5 untuk
Selancar, dan 6 untuk Adeg-adeg.
4. Variabel counter bertipe unsigned long dan digunakan untuk menyimpan nilai
incremental hasil penghitungan bin frekuensi 260Hz.
5. Pengikutsertaan header file SplitRadixRealP merupakan bagian dari library FFT
untuk Arduino Due.
Selain pengikutsertaan header file SplitRadixRealP terdapat juga beberapa variabel
yang digunakan untuk perhitungan FFT pada Arduino Due, seperti ukuran FFT, pengaturan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
69
clock speed, dan beberapa pengaturan lainnya yang sudah termasuk dalam contoh library
FFT.
Gambar 4.27. Listing program pada Arduino sistem pertama (setup).
Void setup berisikan listing program di dalam Arduino yang akan dijalankan sekali.
Berdasarkan gambar 4.27 fungsi tersebut berisikan pengaturan port Serial, port Serial1,
pengaturan ADC, dan pengaturan timer. Berikut penjelasan kegunaan masing-masing baris.
1. Serial.begin (9600) berfungsi untuk membangkitkan serial port 0 dengan baud
rate 9600 baud.
2. Serial1.begin (38400) berfungsi untuk membangkitkan serial port 1 dengan baud
rate 38400 baud.
3. adc_setup digunakan untuk memanggil fungsi pengatur ADC Arduino Due yang
telah disediakan dalam contoh library FFT.
4. tmr_setup digunakan untuk memanggil fungsi pengatur timer Arduino Due yang
telah disediakan dalam contoh library FFT.
Gambar 4.28. Listing program pada Arduino sistem pertama (main program).
Gambar 4.28 Merupakan sebuah cuplikan listing program yang diambil didalam
program utama (loop function). Listing tersebut diambil dari contoh library FFT yang
dimodifikasi sehingga berguna dalam penelitian ini. Berikut penjelasan kegunaan masing-
masing baris.
1. Serial1.write (terkirimHC[jji]) berfungsi untuk mengirimkan data terkirimHC
untuk arduino sistem kedua melalui serial port 1 dengan modul HC-05.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
70
2. analogWrite (3, inx) berfungsi untuk membangkitkan sinyal PWM di port 3
Arduino dengan nilai sebesar inx.
3. prnt_out2 digunakan untuk memanggil fungsi prnt_out 2 yang telah disediakan
dalam contoh library FFT.
Gambar 4.29. Listing program pada Arduino sistem pertama (Fungsi prnt_out2).
Berdasarkan gambar 4.29 fungsi prnt_out2 dari contoh library FFT sangat berbeda
dengan listing program final. Fungsi tersebut berguna untuk memeriksa nilai bin frekuensi
260Hz dan memanggil fungsi pemilih untuk melakukan pemilihan kode pemicu gerakan.
Selain pemanggilan fungsi pemilih dan pemeriksaan bin frekuensi 260Hz, fungsi prnt_out2
juga digunakan untuk memeriksa nilai counter setelah user menginputkan ‘ ‘ kedalam serial
monitor Arduino. Berikut penjelasan kegunaan masing-masing baris.
1. Serial.print (“\n\t”) berfungsi untuk menuliskan tab dan newline pada serial
monitor.
2. if (array[12]!=0 && array[13]!=0) berfungsi untuk pengambilan keputusan pada
bin frekuensi nomor 12 dan 13. Ketika kedua bin frekuensi tidak bernilai 0, maka
baris program yang ada didalam if akan dijalankan.
3. counter = counter + 1 berfungsi untuk menjumlahkan nilai variabel counter
increment 1.
4. Pemilih() berfungsi untuk memanggil fungsi pemilih.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
71
5. while (Serial.available>0) digunakan untuk memeriksa apakah dalam port serial
ada data atau tidak. Jika Serial memiliki data maka sistem akan masuk loop
tersebut.
6. Variabel input bertipe uint8_t berfungsi untuk menyimpan hasil pembacaan port
Serial.
7. switch (input) melakukan pengambilan keputusan switch case pada variabel input
8. case ‘ ‘ ketika kondisi variabel input berisi “<spasi>“, maka arduino menuliskan
isi variabel counter.
Berdasarkan gambar 4.30 fungsi pemilih berisikan beberapa pengambilan keputusan
untuk menentukan kode gerakan robot yang akan dikirimkan ke Arduino sistem kedua dan
kontroler robot CM-530 sistem pertama. Berikut penjelasan untuk beberapa baris program.
1. if (counter <= 289) ketika variabel counter kurang dari atau sama dengan 289,
variabel jji bernilai 6, sementara variabel inx bernilai 252.
2. if (counter <= X && counter >Y) ketika variabel counter berada diantara X dan
Y maka variabel jji, dan inx akan bernilai sesuai dengan gambar 4.30.
3. if (counter > 1449) ketika variabel counter kurang dari atau sama dengan 1449,
variabel jji bernilai 0, sementara variabel inx bernilai 0.
Nilai variabel counter mengikuti nilai yang ada pada tabel 4.5.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
72
Gambar 4.30. Listing program pada Arduino sistem pertama (Fungsi pemilih).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
73
4.5.2. Pembahasan Perangkat Lunak dalam Kontroler Robot CM-530
pada Sistem Pertama
Berdasarkan flowchart pada gambar 4.11 kontroler Robot CM-530 sistem pertama
dirancang untuk membaca nilai analog yang ada pada port satu. Nilai yang terbaca tersebut
dipetakan sesuai dengan tabel 4.9. Masing masing nilai tersebut digunakan untuk memicu
gerakan yang sesuai dalam tabel 4.9. Gambar 4.31 menunjukan Listing program CM-530
pada sistem pertama dalam Roboplus Task (part 1). Kegunaan dari masing masing baris
adalah sebagai berikut,
1. Baris 1, START PROGRAM : digunakan untuk memulai program utama.
2. Baris 3, CALL inisialisasi : digunakan untuk memanggil fungsi dengan
nama inisialisasi, fungsi ini dipakai sebagai penentu pose robot ketika
dinyalakan untuk kali pertama.
Gambar 4.31. Listing program CM-530 pada sistem pertama dalam Roboplus Task
(part 1).
3. Baris 4 hingga 8, berisikan inisialisasi variabel motion page untuk masing-
masing gerakan dan mengacu pada tabel 4.14 pada kolom “Nilai Awal
Variabel”.
4. Baris 9, ENDLESS LOOP : berfungsi sama seperti loop while (1) maupun
Void Loop, sehingga robot tidak keluar dari mode play pada CM-530
5. Baris 11, data merupakan suatu variabel yang digunakan untuk menyimpan
nilai dari port 1 kontroler robot CM-530.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
74
Gambar 4.32. Listing program pada CM-530 pada sistem pertama dalam Roboplus
Task (part 2a).
Selain listing program pada gambar 4.31, untuk mewujudkan gerakan yang sesuai
tabel 4.9, maka digunakanlah listing program yang tercantum dalam gambar 4.32. Setiap
gerakan robot memiliki penentuan putusan tersendiri. Setiap gerakan memiliki proses yang
kurang lebih sama, yang membedakan adalah kondisi pemutusan nilai analog yang terbaca
pada variabel data.
Baris 13 hingga baris ke 23 dalam gambar 4.32 adalah bagian dari proses robot untuk
gerak adeg-adeg. Pengecualian pada baris 18 hingga baris ke 22, Baris-baris tersebut
digunakan sebagai sinyal robot untuk berganti gerakan jika musik yang dimainkan sudah
melewati marker tertentu (baris ini juga hadir dalam listing gerakan tari lainnya). Berikut
penjelasan kegunaan dari masing masing baris.
1. Baris 13, IF digunakan untuk memeriksa kondisi dari nilai variabel data.
Jika data berada pada range 665 hingga 750, maka kondisi IF terpenuhi
2. Baris 16, Motion Index Number merupakan suatu fungsi yang disediakan
RoboPlus Task untuk menggerakkan robot sesuai dengan gerakan robot
yang telah dirancang dan di download kedalam kontroler CM-530 melalui
aplikasi RoboPlus Motion. Nomor gerakan mengikuti angka yang berada
setelah tanda sama-dengan(=).
3. Baris 18, IF digunakan untuk memeriksa kondisi dari nilai variabel data.
Jika data berada pada range diluar 665 hingga 750 (mengikuti kondisi tabel
4.9), maka kondisi IF terpenuhi. Jika kondisi terpenuhi, robot akan
memanggil fungsi inisialisasi dan berhenti bergerak.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
75
Gambar 4.33. Listing program pada CM-530 pada sistem pertama dalam Roboplus
Task (part 2b).
Baris 25 hingga baris ke 40 pada gambar 4.33 adalah bagian dari proses robot untuk
gerak kewer. Faktor yang membedakan proses robot untuk gerak kewer dan gerak adeg-
adeg yakni, adanya penambahan variabel kewer (baris 4 gambar 4.31) untuk mengatur
motion page index sehingga pengulangan gerakan tidak perlu dilakukan di dalam RoboPlus
Motion. Penambahan variabel tersebut memungkinkan robot untuk menghentikan gerakan
lebih cepat jika dibandingkan pengulangan dilakukan di dalam RoboPlus Motion. Selain
penambahan variabel kewer kondisi persyaratan nilai IF berbeda, dan mengikuti tabel 4.9.
Berikut penjelasan kegunaan variabel kewer dalam proses robot gerak kewer,
1. Baris 30, kewer = kewer + 1 : Berfungsi untuk menambahkan nilai 1 pada nilai
variabel kewer yang terdahulu.
2. Baris 31, IF digunakan untuk mendeteksi jika variabel kewer sudah bernilai
sama-dengan 6 (nilai akhir variabel, mengacu tabel 4.15), maka variabel
kewer di atur kembali menjadi 3(nilai awal variabel, mengacu tabel 4.15).
Gerakan-gerakan lainnya menggunakan fungsi yang identik dengan fungsi gerakan
kewer. Nilai IF penentu gerakan utama mengikuti range nilai-nilai yang sesuai pada tabel
4.9. Selain nilai penentu keputusan yang berbeda, variabel dan nilai variabel yang digunakan
untuk membatasi awal dan akhir gerakan berbeda. Tabel 4.14 berisikan variabel untuk
inisialisasi variabel sebuah gerakan, serta pengakhir gerakan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
76
Tabel 4.16. Hubungan gerakan, variabel, dan nilai awal dan akhir variabel.
Target
Gerakan Variabel
Nilai
Awal
Variabel
Nilai
Akhir
Variabel
Kewer kewer 3 6
Selancar selancar 6 9
Cendol cendol 9 12
Pak-
Blang pakblang 12 16
Gibang gibang 16 19
Gambar 4.34. Listing program pada CM-530 pada sistem pertama dalam Roboplus
Task (part 3).
Gambar 4.34 merupakan listing isi fungsi yang digunakan dalam listing program
utama kontroler CM-530. Berikut penjelasan dari gambar 4.34.
1. Baris 134, WAIT WHILE (MotionStatus == TRUE) : Berguna untuk
menunggu robot selesai melakukan suatu gerakan(Motion).
2. Baris 128, Motion Index Number = 1 : Digunakan untuk memanggil pose
inisialisasi robot yang telah diatur dalam RoboPlus Motion.
4.5.3. Perangkat Lunak dalam Arduino pada Sistem Kedua
Berdasarkan gambar 4.10, Arduino pada sistem kedua dirancang untuk menerima
kode yang dikirimkan dari kontroler Arduino pada sistem pertama melalui Bluetooth HC-
05 secara serial. Kode tersebut digunakan untuk menentukan nilai PWM yang akan
dihasilkan dari Arduino sistem kedua untuk diterima pada kontroler robot CM-530. Berikut
penjelasan dari listing program yang digunakan dalam Arduino sistem kedua,
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
77
Gambar 4.35. Listing program pada Arduino sistem kedua (inisialisasi).
Gambar 4.37 merupakan listing program yang digunakan pada Arduino sistem kedua
yang berfungsi sebagai inisialisator beberapa variabel dan inisialisator software serial.
Variabel yang digunakan dalam sistem kedua adalah inx dan terimaHC, inx digunakan
sebagai nilai PWM, sementara terimaHC adalah variabel yang digunakan untuk menerima
nilai yang dikirimkan oleh Arduino sistem pertama melalui Bluetooth HC-05 secara serial.
Software serial merupakan sebuah fungsi yang digunakan Arduino untuk mengatur sebagian
pin Arduino sebagai transmitter, dan receiver selain pada pin 0 dan pin 1 Arduino. Arduino
sistem kedua ini menggunakan software serial bernama nanoSerial. Pin yang digunakan
untuk menjadi pin software serial adalah pin 10 sebagai receiver dan pin 11 sebagai
transmitter.
Gambar 4.36. Listing program pada Arduino sistem kedua (setup).
Gambar 4.38 merupakan listing program yang digunakan pada Arduino sistem kedua
yang dijalankan sekali untuk mempersiapkan kode utama dari sistem. Void setup tersebut
berisikan pengaktifan baudrate dari serial yang digunakan untuk berkomunikasi dengan
komputer pengguna dan pengaktifan baudrate software serial yang digunakan Arduino
sistem kedua untuk menerima data yang dikirimkan Arduino sistem pertama melalui
Bluetooth HC-05. Nilai baudrate pada software serial sebesar 38400 mengikuti nilai
baudrate pengaturan pabrik dari modul Bluetooth HC-05.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
78
Gambar 4.37. Listing program pada Arduino sistem kedua (utama).
Gambar 4.39 merupakan listing program utama yang digunakan pada Arduino sistem
kedua. Program utama Arduino pada sistem kedua berisikan pembacaan data yang diterima
dari sistem pertama dan membandingkan data tersebut dengan beberapa nilai numeris. Jika
data yang dikomparasikan sesuai, maka variabel inx akan diberi nilai tertentu. Pemberian
nilai inx ini akan digunakan untuk membangkitkan sinyal PWM mengikuti nilai inx tersebut.
Berikut penjelasan dari baris program yang digunakan,
1. While(nanoSerial.available()>0) digunakan untuk memeriksa apakah dalam
software serial bernama nanoSerial ada data atau tidak. Jika nanoSerial memiliki
data maka sistem akan masuk loop tersebut.
2. terimaHC = nanoSerial.read(); digunakan untuk membaca data yang ada di dalam
nanoSerial, dan menyimpannya di variabel terimaHC.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
79
3. Serial.print(terimaHC); digunakan untuk menuliskan data yang ada pada variabel
terimaHC ke dalam PC pengguna.
4. if (terimaHC == n) maupun else if (terimaHC == n) adalah proses pembandingan
data yang terdapat pada variabel terimaHC dengan suatu nilai n, n bernilai 0, 1, 2,
3, 4, 5, dan 6. Nilai variabel terimaHC 0 digunakan untuk robot diam, 1 untuk
Kewer, 2 untuk Gibang, 3 untuk Cendol, 4 untuk Pak-blang, 5 untuk Selancar,
dan 6 untuk Adeg-adeg.
5. inx = m; adalah proses pemberian nilai m pada variabel inx. Nilai m adalah nilai
PWM yang dibangkitkan Arduino sistem kedua. Nilai m tersebut tidak lebih dari
168, ini bertujuan agar nilai PWM tidak melebihi 3.3v sesuai pembahasan pada
perangkat keras. Karena terdapat enam jenis gerakan dan satu fungsi stop, maka
nilai pwm tersebut (168) dibagi menjadi 7 sehingga didapat nilai dengan
incremental yang sama pada setiap kondisi. Maka 168/7 didapat nilai 24, sehingga
m bernilai 24, 48, 72, 96, 120, 144, dan 168.
6. analogWrite(3, inx); digunakan untuk membangkitkan sinyal PWM pada pin 3
sesuai dengan nilai inx.
7. Serial.println(inx); digunakan untuk menuliskan data yang ada pada variabel inx
ke dalam PC pengguna.
4.5.4. Pembahasan Perangkat Lunak dalam Kontroler Robot CM-530
pada Sistem Kedua
Perangkat lunak dalam kontroler robot CM-530 pada sistem kedua merupakan
implementasi dari flowchart Arduino sistem kedua yang ada pada gambar 4.12. perangkat
lunak dalam kontroler robot CM-530 pada sistem kedua tidak jauh berbeda jika
dibandingkan dengan perangkat lunak dalam kontroler robot CM-530 pada sistem pertama.
Perbedaan terdapat pada nilai nilai penentu keputusan IF. Nilai penentu keputusan if akan
mengikuti range nilai-nilai yang ada pada tabel 4.10. Penjelasan masing-masing kegunaan
baris program masih identik dengan penjelasan kegunaan baris program yang ada pada
sistem pertama.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
80
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Dari hasil pengujian dan pengambilan data pengolahan sinyal suara sebagai pemicu
gerakan robot bioloid CM-530 menggunakan arduino, dapat disimpulkan:
1. Robot yang dihasilkan dari penelitian ini lebih baik dalam pemrosesan lagu jika
dibandingkan dengan robot yang tidak menggunakan sistem tambahan.
2. Arduino masing-masing sistem mampu berkomunikasi dengan kontroler robot
CM-530 dengan tingkat keberhasilan 100%.
3. Gerakan robot pertama, robot kedua, serta musik pengiring belum berhasil
disingkronkan sepenuhnya (ketepatan pemicuan gerakan satu sistem sebesar 33%,
ketepatan pemicuan gerakan sistem final sebesar 22%).
5.2. Saran
Saran yang diajukan untuk memperbaiki sistem ini adalah sebagai berikut
1. Gunakan kontroler OpenCM untuk mengurangi jumlah kontroler yang ada pada
setiap sistem.
2. Gunakan metode penerima audio Bluetooth dengan cara yang lain, sehingga tidak
perlu menerima dalam bentuk analog.
3. Jika tidak ditemukan pengganti metode penerima audio Bluetooth lainnya, maka
setiap sistem gunakan pengolahan sinyal suara masing-masing.
4. Gunakan metode lain (contoh: pencocokan bin frekuensi pada setiap marker lagu)
untuk melakukan pengkodean gerakan, karena dengan penghitungan frekuensi
tingkat ketepatan pemicuan gerakan robot satu sistem sebesar 33% dan pemicuan
gerakan robot dua sistem sebesar 22%.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
81
DAFTAR PUSTAKA
[1] 2015, Panduan KRSTI 2016-ver.
[2] 2014, Panduan KRSI 2015-ver.
[3] Arduino Uno Data Sheet, https://www.arduino.cc/en/Main/ArduinoBoardUno,
diakses 01 November 2016.
[4] Lasmi Ni Ketut, 2012, Seri Pendalaman Materi Fisika untuk SMA dan MA,
Bandung.
[5] Arduino Audio Input Instructables, http://www.instructables.com/id/Arduino-
Audio-Input/?ALLSTEPS, diakses 05 Desember 2016
[6] Peckett Damian, Beat Detection on the Arduino, http://dpeckett.com/beat-detection-
on-the-arduino, diakses 03 Desember 2016.
[7] C.Richart Johnson, jr; William A. Sethares; Andrew G. Klein (2011). “Figure C.1:
The envelope of a function outlines its extremes in a smooth manner”. Software
Receiver Design: Build Yout Own Digital Communication System in Five Easy
Steps. Cambridge University Press. P. 417. ISBN 0521189446.
[8] rumus envelope rc, http://electronics.stackexchange.com/questions/196586/how-to-
calculate-r-and-c-for-am-demodulation-envelope-detection?answertab=active#tab-
top, diakses 06 Desember 2016
[9] Parallel vs. Serial On-Chip Communication, VLSI Systems Research Centerm
Electrical Engineering Department Technion – Israel Institute of Technology, Haifa,
Israel.
[10] Arduino Mikro Data Sheet, https://www.arduino.cc/en/Main/ArduinoBoardMicro,
diakses 01 November 2016.
[11] Data Sheet CM-530, Robotis, http://www.robotis.us/cm-530/
[12] Rapid I7 Bluetooth Audio Receiver product page,
https://alnect.net/product/5603/Page-Bluetooth-Audio-Receiver-Rapid., diakses 01
November 2016.
[13] Data sheet Bluetooth modul HC-05, Itead Studio.
[14] Using the Logic Level Converter,http://learb.sparkfun.com/tutorials/using-the-
logic-level-converter, diakses 25 Oktober 2016.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
82
[15] Pengolahan sinyal, http://adys.blog.uns.ac.id/2009/09/30/pengolahan-sinyal/,
diakses 12 Januari 2017.
[16] http://www.elektroindonesia.com/elektro/elek35a.html, diakses 12 Januari 2017.
[17] http://staff.uny.ac.id/sites/default/files/Sampling%20dan%20Kuantisasi_1.pdf,
diakses 12 Januari 2017
[18] Kanal YouTube AbangNoneJakarta video yang berjudulkan “ Tari Topeng Opening
Sandiwara Musikal Betawi DOEL - Abang None Jakarta
(2010) ”,https://www.youtube.com/watch?v=hYF_cs-JVUU, diakses 13 Januari
2017.
[19] Spesifikasi motor servo dynamixel AX-12A,
http://support.robotis.com/en/product/actuator/dynamixel/ax_series/dxl_ax_actuato
r.htm, diakses 17 Januari 2017
[20] Spesifikasi Arduino Due, https://www.arduino.cc/en/Main/arduinoBoardDue
[21] Magician, forum arduino.cc dengan judul “FFT Library for Arduino Due”, Library
FFT Arduino Due , https://forum.arduino.cc/index.php?topic=225204.0
[22] Robotis, format penulisan serial CM-530,
http://support.robotis.com/en/product/auxdevice/communication/rc100_manual.ht
m, diakses 11 Maret 2017
[23] Henrybench, rangkaian konverter PWM to
DC .http://henrysbench.capnfatz.com/henrys-bench/arduino-projects-tips-and-
more/arduino-lm358-op-amp-pwm-to-voltage-converter/, diakses 11 Maret 2017
[24] kegunaan FFT,http://jakevdp.github.io/blog/2013/08/28/understanding-the-fft/
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L1
LAMPIRAN
Gerakan Robot
Adeg-Adeg
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L3
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L4
Perhitungan Resolusi Bin FFT Arduino Due
Hasil pengujian frekuensi 100 Hz, bin 5
Hasil pengujian frekuensi 200 Hz, bin 9,5
Hasil pengujian frekuensi 250 Hz, bin 11,5
Hasil pengujian frekuensi 270 Hz, bin 12,5
Hasil pengujian frekuensi 300 Hz, bin 14
Hasil pengujian frekuensi 350 Hz, bin 16
Hasil pengujian frekuensi 400 Hz, bin 18
Hasil pengujian frekuensi 1000 Hz, bin 44
Hasil pengujian frekuensi 2600 Hz, bin 111,5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L5
Jika masing-masing hasil percobaan pada halaman L4 dibandingkan
(Δ frekuensi Δ bin⁄ ) dengan frekuensi 260 Hz (frekuensi pencacahan gerak) yang memiliki
nilai tengah berada pada bin 12 maka didapat resolusi bin FFT Arduino Due seperti tabel
berikut (Tabel perhitungan resolusi bin FFT)
Tabel perhitungan resolusi bin FFT
Frekuensi
(HZ)
Lokasi
Bin
Δ Frekuensi
(HZ) Δ Bin
Resolusi Bin FFT
(Hz/Bin)
100 5 -160 -7 22,85714286
200 9,5 -60 -2,5 24
250 11,5 -10 -0,5 20
270 11,5 10 -0,5 -20
300 14 40 2 20
350 16 90 4 22,5
400 18 140 6 23,33333333
1000 44 740 32 23,125
2600 111,5 2340 99,5 23,51758794
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L6
Gambaran Musik Pengirim dalam Spetrogram
Musik pengiring dari detik 0:00 hingga 0:19.
Musik pengiring dari detik 00:18 hingga 00:38.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L7
Musik pengiring dari detik 00:33 hingga 00:53.
Musik pengiring dari detik 00:51 hingga 01:11.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L8
Musik pengiring dari detik 01:04 hingga 01:24.
Musik pengiring dari detik 01:22 hingga 01:42.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L9
Musik pengiring dari detik 01:33 hingga 01:53.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L10
Listing Program
Listing program utama Arduino Due pada sistem pertama
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L11
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L12
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L13
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L14
Listing CPP library FFT untuk Arduino Due pada sistem pertama
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L15
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L16
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L17
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L18
Listing header file splitRadixRealP library FFT untuk Arduino Due pada sistem
pertama
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L19
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L20
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L21
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L22
Listing program utama Arduino Nano pada sistem kedua
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L23
Listing program kontroler robot CM-530 pada sistem pertama
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L24
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L25
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L26
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L27
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L28
Listing program kontroler robot CM-530 pada sistem kedua
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L29
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L30
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L31
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
L32
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI